40 Commits

Author SHA1 Message Date
湯本 開
cf56239da2 Merged PR 669: Pipeline上でdocker-composeを用いてMySQLを起動する方法を調査する
## 概要
[Task3427: Pipeline上でdocker-composeを用いてMySQLを起動する方法を調査する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3427)

- MySQLでUnitTestを実施する仕組みを作成
  - DevContainerにUnitTestからのみアクセスされるMySQLが動くコンテナ( `test_mysql_db` )を追加
  - テストでMySQLを使用し、上記 `test_mysql_db` に対してアクセスするよう構成
  - テストの前処理で `test_mysql_db` の全てのテーブルをTRUNCATEする処理を実行し、データをクリアする
    - 常にテスト用MySQLは起動しているが、テスト実行前にクリアされるので空っぽ前提の状態でテストを実施できる
  - 実際にMySQLを使用して実行されるテストを1つ追加
    - `users.service.spec.ts | UsersService.createUser` が対象
- Pipeline上でDevContainerを起動し、DevContainer内で `npm ci` `(UnitTest用DBへの) migration` `npm run test` を行う仕組みを作成
  - Pipelineを追加
    - **StagingPipelineでテスト・ステップを切り出し**
  - Pipelineテスト用DevContainer(のdocker-compose.yml)を作成
    - 構成は通常の物と同一だが、ネットワーク設定だけ外部のMySQLやRedisと通信しない前提に変更している
  - テストの実行環境を自己ホストではなく、一般で提供されているマシンに変更
    - 自己ホストのマシンにdocker-composeが入ってない/ビルド後のクリア処理が大変等の理由
- テストで使用する環境変数を `.env.test` という別環境変数に切り出し
  - そうすることで、PipelineでKeyVaultへのアクセスをする必要がなくなる
- **migrationの漏れを修正**
  - テストが通らないことで発覚したmigration漏れを修正
- **テストコードを修正**
  - **Date型のミリ秒単位の誤差を setMillseconds(0) を用いることで0にセットするコードを追加(ライセンス付近)**

## レビューポイント
- **WIPレビュー以降の追加の修正で違和感のある箇所はないか**
  - コミット履歴等で追っていただいた方が楽かと思います
  - 直近の`Merge branch 'develop' into feature/3427/poc-mysql-test` 以降がWIP以降に変更されたコードです
- **レビュー通過後、developのPipelineについては手動で同等のコードに変更→PRをdevelopにマージ予定だが進め方として問題はないか**
- [※WIPでレビュー済み] テスト用DevContainerを別途作成したが、現行のDevContainerを使用するよう頑張った方がいいか?
  - [※WIPでレビュー済み] CI/CDの実行速度面を考慮し、使用されないMySQLとRedisのサービスとネットワーク作成が同居しているdocker-compose.ymlの実行を避けたが、管理対象は増えているので議論の余地はある
- [※WIPでレビュー済み] MySQLでUnitTestを実行する際に懸念事項はないか
- [※WIPでレビュー済み] Dockerを起動する関係でCI/CDのスピードが数分遅くなると思われるが、許容可能か
- [※WIPでレビュー済み] `.env.test` に置き換えて問題ないか

## 動作確認状況
- ローカル&Pipelineで実行して確認済
2024-01-23 07:58:42 +00:00
makabe.t
4c427d2632 Merged PR 692: マイグレーションファイル適用
## 概要
[Task3487: マイグレーションファイル適用](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3487)

- DB定義に齟齬が出てしまうため、DBマイグレーションファイルをCCBからdevelopにも適用します。

## レビューポイント
- 適用内容は適切でしょうか?
2024-01-16 10:15:56 +00:00
saito.k
0edad18545 Merged PR 674: DBからLicenseAlertカラム削除
## 概要
[Task3429: DBから該当カラム削除](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3429)

- UsersテーブルからLicenseAlertを削除

## レビューポイント
- 追加したマイグレーションファイルの内容に認識違いはないか

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2024-01-12 07:03:59 +00:00
oura.a
4a73d5f8c4 Merged PR 665: マイグレーションファイル修正
## 概要
[Task3416: マイグレーションファイル修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3416)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)

## レビューポイント
- 特にレビューしてほしい箇所
- 軽微なものや自明なものは記載不要
- 修正範囲が大きい場合などに記載
- 全体的にや仕様を満たしているか等は本当に必要な時のみ記載

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認、develop環境で確認など

## 補足
- 相談、参考資料などがあれば
2023-12-27 02:44:19 +00:00
oura.a
9852004a36 Merged PR 636: ライセンス発行処理が遅い問題の解決およびトランザクションが効いてなければ効くよう修正する
## 概要
[Task3243: ライセンス発行処理が遅い問題の解決およびトランザクションが効いてなければ効くよう修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3243)

ライセンス発行処理が重複して実行できてしまう不具合を修正しました。
■修正内容
・ライセンス注文テーブルの情報を取得する際に、行ロックを取得するよう修正
・ライセンス注文テーブルに、「注文元アカウントID、POナンバー」の2カラムを対象とするインデックスを作成
・以前に外部キー制約をつけた際、自動で作成されていたインデックスを削除

■ロックについて
共有ロックと排他ロックがある
・共有ロック:共有ロック取得中でも、他のトランザクションが共有ロックを取得できる
       排他ロックは取得できない
・排他ロック:排他ロック取得中は、他のトランザクションは共有ロック・排他ロック共に取得できない
今回の修正では、デフォルト設定で共有ロックを取得していた箇所を、明示的に排他ロックを取得するようにした。

■行ロックについて
・インデックス行に対してロックをかけている
 →インデックスが作成されていない、検索条件にヒットしないなどでうまく動かない
  例)インデックスが作成されていないと、テーブル全体のロックとなってしまう
・上記の都合で検索条件が範囲指定のものにロックをかける際は注意が必要。(今回は一意指定なので問題なし)

■SQLiteを使ったユニットテストが`pessimistic_write`に対応していない件について
`process.env.NODE_ENV`の値を参照(テスト実行中は`test`、ビルドした環境で動かすと`undifind`)し、
テスト実行の場合`pessimistic_write`を付与しないようクエリを修正した。

## レビューポイント
インデックスについて懸念点があるか?

## UIの変更
なし

## 動作確認状況
ローカルで以下を確認
■発行処理について
・同じ注文に対し複数タブで発行処理を実行し、後発の処理が「ライセンス発行済みエラー」となることを確認
・同一アカウントからの異なるPOナンバーの注文を同時に発行し、行ロックによる待ちが発生せず並列に処理されることを確認
・別アカウントからの同一POナンバーの注文を同時に発行し、行ロックによる待ちが発生せず並列に処理されることを確認
■インデックスについて
同一アカウントからの異なるPOナンバーの注文を同時に発行
・インデックスを作成している状態で、行ロックによる待ちが発生せず並列に処理されることを確認
・インデックスを削除した状態で、行ロックによる待ちが発生することを確認
・migrate:up/downが正しく動作することを確認

## 補足
以前のアカウント削除PBIで一時的に設定した外部キー制約の作成時に、自動でインデックスも作成されていたようです。
必要ないインデックスはどこかで削除する必要があるかと思っています。
2023-12-27 02:01:24 +00:00
maruyama.t
40da605780 Merged PR 605: DBマイグレーション(PrivacyNotice)
## 概要
[Task3213: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3213)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)
とくになし

## レビューポイント
- とくになし

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-12-05 04:22:58 +00:00
saito.k
87dd0f6d6b Merged PR 582: ユーザー一覧取得が異常に遅い問題を調査する
## 概要
[Task2996: ユーザー一覧取得が異常に遅い問題を調査する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2996)

- ユーザー一覧取得に関連するテーブルにインデックスを追加
  - 3秒→18ミリ秒

## レビューポイント
- 特になし

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- develop環境に適用して確認

## 補足
- インデックス追加後のログ
  - UsersServiceのIN・OUTまで
```
2023-11-20T05:52:04.027057549Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [UsersService] [IN] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] getUsers
2023-11-20T05:52:04.058189825Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [AdB2cService] [IN] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] getUsers | params: { externalIds:[c7e9f495-caa2-43d8-9e6e-3bb6dc192646,34938cf0-6a8d-41a7-89a1-d7025172ab66,91807c29-5a77-4bc2-b85b-529839cc131d,a3e8167b-8967-4e19-9ad6-8ded12d8ea1c] };
2023-11-20T05:52:04.058698126Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [RedisService] [IN] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] mget;
2023-11-20T05:52:04.067994949Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [RedisService] [OUT] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] mget
2023-11-20T05:52:04.068313050Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [AdB2cService] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] [CACHE HIT] ids: c7e9f495-caa2-43d8-9e6e-3bb6dc192646,34938cf0-6a8d-41a7-89a1-d7025172ab66,91807c29-5a77-4bc2-b85b-529839cc131d,a3e8167b-8967-4e19-9ad6-8ded12d8ea1c
2023-11-20T05:52:04.068993451Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [AdB2cService] [OUT] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] getUsers
2023-11-20T05:52:04.069013351Z [Nest] 1  - 11/20/2023, 5:52:04 AM     LOG [UsersService] [OUT] [c7e9f495-caa2-43d8-9e6e-3bb6dc192646] getUsers
```
2023-11-20 06:32:20 +00:00
masaaki
855cfbf347 Merged PR 527: terms初期値用のmigrateファイルが誤っていたのを修正する
## 概要
[Task2901: terms初期値用のmigrateファイルが誤っていたのを修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2901)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- termsテーブルの初期値について、ドキュメントタイプが「EURA」で登録していたので「EULA」となるように修正しました

## レビューポイント
- 特になし

## UIの変更
- 無し

## 動作確認状況
- migrate upおよびdown実施+ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-10-25 06:44:59 +00:00
水本 祐希
364bfb5135 Merged PR 504: 利用規約テーブルの初期値を設定
## 概要
[Task2853: 利用規約テーブルの初期値を設定](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2853)

- termsテーブルの初期データを登録するmigrateファイルを追加しました。

## レビューポイント
- 特にありません

## UIの変更
- なし

## 動作確認状況
- migrate upでデータ登録されること、downで削除されることを確認

## 補足
- 相談、参考資料などがあれば
2023-10-18 01:29:02 +00:00
maruyama.t
00f4966aa9 Merged PR 470: [Sp-19]アカウント削除時に削除するテーブルについて、on delete cascadeではなくコード上で削除を行うよう修正する
## 概要
[Task2783: [Sp-19]アカウント削除時に削除するテーブルについて、on delete cascadeではなくコード上で削除を行うよう修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2783)

アカウント削除時に削除するテーブルについて、on delete cascadeではなくコード上で削除を行うよう修正
一部ユニットテスト用にutilityのcreateForeignKeyConstraints: falseに指定
LGTM後、すべてのテーブルのレコード削除の動作確認をDEV環境で実施します。

## レビューポイント
DBマイグレーションファイルが正しく修正されているか

## UIの変更
なし

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-10-16 09:02:38 +00:00
oura.a
0e57d0cb81 Merged PR 471: DBマイグレーション
## 概要
[Task2805: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2805)

利用規約情報管理テーブルを作成しました。
ユーザーテーブル・ユーザー退避テーブルの同意済み利用規約バージョンカラムを、EULA、DPA用に分割しました。
また、ユーザーテーブルの変更に伴うソースコード修正を実施しました。

## レビューポイント
DB定義の認識が合っているか。

## UIの変更
なし

## 動作確認状況
migration up/downでの動作を確認
既存UTがすべて正常に動作することを確認

## 補足
なし
2023-10-10 04:59:57 +00:00
oura.a
d942dc73f1 Merged PR 457: Accountレコード削除時に同時に削除されるよう外部キー制約を追加
## 概要
[Task2766: Accountレコード削除時に同時に削除されるよう外部キー制約を追加](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2766)

各テーブルに外部キー制約を追加しました。
アカウント削除時にアカウントテーブルのデータを削除した際、ON DELETE CASCADEにより関連項目をすべて削除する用途になります。

## レビューポイント
設定内容は適切か。
設定箇所に過不足はないか。
マイグレーションの途中で元データの不整合などで失敗した場合、それまでに外部キー制約の追加・削除に成功していた分が巻き戻らなかったのですが、何か巻き戻す方法はあるでしょうか?

## UIの変更
なし

## 動作確認状況
ローカルでmigrate Up/Downの動作を確認

## 補足
なし
2023-10-03 02:22:19 +00:00
makabe.t
90a4d99cf5 Merged PR 446: DBマイグレーション
## 概要
[Task2733: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2733)

- 以下のテーブルを追加するマイグレーションファイルを追加しました。
  - ワークフローテーブル
  - ルーティング候補テーブル

## レビューポイント
- テーブル名、カラム名は適切か
- 外部キー制約は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - migurate up/down
2023-10-02 01:45:04 +00:00
oura.a
98e207f19f Merged PR 455: ユーザー退避テーブル修正
## 概要
[Task2768: ユーザー退避テーブル修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2768)

ユーザー退避テーブルに対して以下の修正を行いました。
・accepted_terms_versionのNOT NULLを削除
 (オリジナルのユーザーテーブルで後から修正を入れていたのですが、退避テーブルへの反映が漏れていました)
・DEFAULTを削除
・作成時刻などにオリジナルテーブルのものである旨のコメントを追加
・archived_atカラムを追加

## レビューポイント
なし

## UIの変更
なし

## 動作確認状況
ローカルで動作確認済み

## 補足
なし
2023-09-29 05:44:00 +00:00
oura.a
d016242bab Merged PR 452: DBマイグレーション(ライセンス系の退避テーブル作成)
## 概要
[Task2765: DBマイグレーション(ライセンス系の退避テーブル作成)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2765)

以下テーブルの退避用テーブルを作成しました。
・ライセンス
・ライセンス割り当て履歴

## レビューポイント
保持するべきではない情報は持っていないか。

## UIの変更
なし

## 動作確認状況
ローカルで動作確認済み

## 補足
両テーブルとも、もともとのテーブルをほぼそのままの形で作成しています。
(idのAUTO_INCREMENTだけ外しています)
2023-09-29 02:51:49 +00:00
oura.a
423e5ab1e3 Merged PR 445: DBマイグレーション(削除ユーザの情報退避テーブル)
## 概要
[Task2682: DBマイグレーション(削除ユーザの情報退避テーブル)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2682)

削除ユーザー退避テーブルを作成しました。
license_allocation_historyテーブルにaccountIdのカラムを追加しました。
また、ライセンス割り当て・割り当て解除時にlicense_allocation_historyテーブルにaccountIdを登録するようにしました。

## レビューポイント
なし

## UIの変更
なし

## 動作確認状況
ローカルでUT、動作確認実施済み

## 補足
削除ユーザー退避テーブルは現在のユーザーテーブルをほぼそのままの形で作成しています。
(idのAUTO_INCREMENTだけ外しています)
2023-09-28 08:16:20 +00:00
saito.k
41e4fbb8de Merged PR 419: DBマイグレーション
## 概要
[Task2662: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2662)

- テンプレートファイルテーブルからdeleted_atを削除

## レビューポイント
-  内容に誤りはないか

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-09-20 01:38:45 +00:00
makabe.t
24d3117bdc Merged PR 405: DBマイグレーション
## 概要
[Task2624: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2624)

- AccountテーブルにActiveWorktypeIDを設定するカラムを追加しました。
  - 外部キー制約によってWorkTypeのIDと紐づけてWorkTypeに連動してカラムがNULLになるようにしています。

## レビューポイント
- カラムの設定は適切か
- 外部キー制約は適切に設定されているか

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - up/down
  - WorkTypeの削除によるSet NULL
2023-09-13 08:40:22 +00:00
makabe.t
bb1dd6bce1 Merged PR 393: DBマイグレーション
## 概要
[Task2617: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2617)

オプションアイテムテーブルのカラム長を変更するマイグレーションファイルを追加しました。
- 変更対象カラムは以下の通りです。
  - item_label : 50 ⇒ 16
  - initial_value : 50 ⇒ 20

## レビューポイント
- 修正内容は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-09-12 05:56:50 +00:00
makabe.t
f43e0f779e Merged PR 373: DBマイグレーション
## 概要
[Task2515: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2515)

- オプションアイテムのテーブルを追加するマイグレーションファイルを追加しました。

## レビューポイント
- カラム項目は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - migrate up/down
2023-09-01 06:42:58 +00:00
makabe.t
6b91745b2b Merged PR 368: DBマイグレーション
## 概要
[Task2503: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2503)

- Worktypeテーブルを追加するマイグレーションファイルを追加しました

## レビューポイント
- カラム名は適切か
- カラムの制約は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - up/downできることを確認
2023-08-30 07:39:19 +00:00
masaaki
e1693a7323 Merged PR 356: license_historyテーブルを消し込む
## 概要
[Task2456: license_historyテーブルを消し込む](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2456)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
  - プロダクト バックログ項目 1226: 第五として、自アカウント内ユーザーにライセンスを割り当てたい
    にてライセンス割り当て履歴テーブル(license_allocation_history)を作成したのですが、過去にlicenses_historyという名で同様のテーブルを作成していることが判明しました。
  - 影響調査の結果、過去作成したlicenses_historyについては、使用していないことが分かったので、削除するよう対応を行いました。

- このPull Requestでの対象/対象外
  - すべて対象
- 影響範囲(他の機能にも影響があるか)
  - ソースコードgrepにより、licenses_historyテーブルを使用していないことを確認済

## レビューポイント
- 特にレビューしてほしい箇所
- 軽微なものや自明なものは記載不要
- 修正範囲が大きい場合などに記載
- 全体的にや仕様を満たしているか等は本当に必要な時のみ記載
  - 特にありません。

## UIの変更
- 特にありません。

## 動作確認状況
- 全ユニットテスト実施し正常に通ることを確認

## 補足
- 相談、参考資料などがあれば
2023-08-25 05:53:58 +00:00
masaaki
422622c9ef Merged PR 351: license_allocation_historyのテーブル名が誤っている
## 概要
[Task2469: license_allocation_historyのテーブル名が誤っている](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2469)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)

## レビューポイント
- 特にレビューしてほしい箇所
- 軽微なものや自明なものは記載不要
- 修正範囲が大きい場合などに記載
- 全体的にや仕様を満たしているか等は本当に必要な時のみ記載

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認、develop環境で確認など

## 補足
- 相談、参考資料などがあれば
2023-08-23 01:40:13 +00:00
maruyama.t
bdd10aabf6 Merged PR 324: API修正(ライセンス割り当てAPI)_履歴部分
## 概要
[Task2366: API修正(ライセンス割り当てAPI)_履歴部分](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2366)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
allocateLicenseの割り当て履歴テーブルのレコードを作成するロジックを追加しました。
createLicenseの引数を追加して、種別を指定して作成できるようにしました。
既存テストで項目の値などでべた書きしていた箇所を、定数を使うよう修正しました。
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)
createLicenseの引数を追加して、種別を指定して作成できるようにしました。
ユニットテストでcreateLicenseを使っている既存テストは再テスト済み

## レビューポイント
- 特にレビューしてほしい箇所
- 軽微なものや自明なものは記載不要
- 修正範囲が大きい場合などに記載
- 全体的にや仕様を満たしているか等は本当に必要な時のみ記載
lisence_allocation_historyテーブルのスキーマを変更しています。
プライマリとしてのidを追加(ユーザIDになっていた)、
allocate_typeをallocatedに変更して、boolの値で管理するように変更(割り当て解除or割り当てしかもたないので)。

## UIの変更
なし

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-08-22 06:06:22 +00:00
maruyama.t
077b63b0dc Merged PR 312: DBマイグレーション
## 概要
[Task2357: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2357)

- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)
新規テーブルのため、なし

## レビューポイント
- 特にレビューしてほしい箇所
ラフスケッチ上、正式ライセンス切り替えフラグと表現されている項目について、
`switch_from_type VARCHAR(1024) NOT NULL COMMENT '切り替え元種別(特になし/カード/トライアル)',`
としたが、認識あっているか。
(直近の、ライセンス.ライセンス種別の意かどうか)

## UIの変更
- Before/Afterのスクショなど
とくになし

## 動作確認状況
- ローカルで確認
「sql-migrate up -config=db/dbconfig.yml -env=local」を実行、DB反映確認。
「sql-migrate down -config=db/dbconfig.yml -env=local」を実行すると、1世代分巻き戻せることを確認

## 補足
- 相談、参考資料などがあれば
2023-08-09 02:49:33 +00:00
saito.k
29bfc9f5a6 Merged PR 296: DBマイグレーション(暗号化パスワード追加)
## 概要
[Task2314: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2314)

- userテーブルに暗号化パスワードのカラムを追加

## レビューポイント
- asciiの設定をカラム自体に追加したが妥当か
  - 使用不可の文字列チェックはServer等で行う

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-08-02 06:53:11 +00:00
saito.k
cba2ef582a Merged PR 278: DBマイグレーション
## 概要
[Task2235: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2235)

- Usersテーブルに以下のカラムを追加
  - encryption
  - prompt

## レビューポイント
- 追加したカラムの型デフォルト値に誤りはないか

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-07-27 06:37:27 +00:00
saito.k
9c0123f4ce Merged PR 247: DBのupdated_atを自動で入力するように設定する
## 概要
[Task2107: DBのupdated_atを自動で入力するように設定する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2107)

- updated_atの自動入力を設定されていないテーブルに追加する

## レビューポイント
- 特になし

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
2023-07-19 06:41:20 +00:00
saito.k
3304ce75c9 Merged PR 194: [Sp12-1着手]カラムにCreated_atがないテーブルにcreated_atを追加する
## 概要
[Task2077: [Sp12-1着手]カラムにCreated_atがないテーブルにcreated_atを追加する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2077)

- 「created_at , created_by , updated_at , updated_by」が存在しないテーブルに対して追加するmigrationファイルを作成

## レビューポイント
- deleted_atについては現状は追加せず、削除系のPBIが来たらその時に考えるとしたいがそれでよいか
- updated_atを更新時に自動で現在日時を入れるように記述したが問題ないか。
  - 問題なさそうであれば、ほかテーブルにもその設定を追加する。(別タスクで)

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認(up/down)

## 補足
- 相談、参考資料などがあれば
2023-07-03 05:27:42 +00:00
makabe.t
e4bc4776b0 Merged PR 184: ローディング表現に関する実装等を行う
## 概要
[Task2015: [Task1895完了後][Sp11-2着手] ローディング表現に関する実装等を行う](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2015)

- 現在実装中のテーブル、ポップアップについてローディング表現を実装しました。
  - ローディング中にローディング中を示すぐるぐるを表示
  - ローディング中はボタンを非活性にする

## レビューポイント
- 対応箇所は適切か
- 表示内容に問題はないか

## UIの変更
- [Task2015](https://ndstokyo.sharepoint.com/:f:/r/sites/Piranha/Shared%20Documents/General/OMDS/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88/Task2015?csf=1&web=1&e=TmrOXa)

## 動作確認状況
- ローカルで確認
2023-06-30 05:51:14 +00:00
Kentaro Fukunaga
f36d298383 Merged PR 190: DBマイグレーション(PBI1133 音声ファイル/テンプレートファイルをダウンロードしたい)
## 概要
[Task2040: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2040)

文字起こしテンプレートファイルテーブルを作成しました

## レビューポイント
- テーブル名は適切か?
   - template_filesか悩んだ。
- 各カラムの型や制約に認識違いはないか?

## 動作確認状況
- ローカルで確認
   - migrate up/migrate downでテーブルの追加と削除がされることを確認しました
2023-06-30 03:58:56 +00:00
maruyama.t
22bd761d10 Merged PR 161: DBマイグレーション
## 概要
[Task1990: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1990)

- 何をどう変更したか、追加したライブラリなど
以下を追加
カードライセンステーブル
カードライセンス発行テーブル

- 影響範囲(他の機能にも影響があるか)
新規追加テーブルのため、なし

## レビューポイント
- 各カラムの物理名が妥当であるか
- NOT NULL制約は正しいか
## UIの変更
テーブルの新規追加のため、なし

## 動作確認状況
- ローカルで確認
server側のターミナルで「sql-migrate up -config=db/dbconfig.yml -env=local」を実行
→DBへ反映されていることを確認。
「sql-migrate down -config=db/dbconfig.yml -env=local」を実行
→1世代巻き戻ることを確認。

## 補足
- インプットと資料としてラフスケッチをご参照ください
2023-06-19 04:10:32 +00:00
saito.k
0ca766f309 Merged PR 127: Task1856: DBマイグレーション(タスク一覧取得)
## 概要
[Task1856: DBマイグレーション(タスク一覧取得)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_sprints/taskboard/OMDSDictation%20%E3%83%81%E3%83%BC%E3%83%A0/OMDSDictation/%E3%82%B9%E3%83%97%E3%83%AA%E3%83%B3%E3%83%88%2010-1?workitem=1856)

- 必要なテーブルを作成
  - ユーザーグループテーブル
  - ユーザーグループ所属テーブル
  - ソート条件テーブル
  - チェックアウト権限テーブル

## レビューポイント
- テーブル名は妥当か
- 各カラムの型や制約、コメントは妥当か
  - ユーザーグループ名はNOT NULLでよい?
  - ソート条件のカラム名はNOT NULLでよい? 
- チェック制約を追加したが問題なさそうか

## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認
  - Migrate up /Migrate downでテーブル追加・削除を確認
  - チェック制約で片方のカラムのみ値が入ることを確認(両方値がある or 両方NULLではNG)

## 補足
2023-06-02 08:13:33 +00:00
oura.a
ab618984eb Merged PR 120: DBマイグレーション
## 概要
[Task1839: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1839)

- migrationファイルの追加(ライセンステーブル/ライセンス割り当て履歴テーブル)

## レビューポイント
-カラム名などに違和感がないか
-NOT NULL制約や型が正しいか

## UIの変更
- なし

## 動作確認状況
- MySQL Workbenchでの確認
DBのマイグレート
sql-migrate up -config=db/dbconfig.yml -env=localを実行してテーブルが作成されるのを確認
sql-migrate down -config=db/dbconfig.yml -env=localを実施して巻き戻せることも確認

## 補足
- licenses.type(ライセンス種別:トライアル/通常/カード)
- licenses.status(ライセンス状態:未割当/割り当て済/削除済)
- licenses_history.oparation_type(割り当て種別:割り当て/割り当て解除)
- licenses_history.exchange_type(ライセンス切り替え種別:なし/トライアル→通常/紙→通常)
2023-06-02 04:34:25 +00:00
makabe.t
3191e22ab6 Merged PR 119: 音声ファイルアップロード完了API実装
## 概要
[Task1712: 音声ファイルアップロード完了API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1712)

- 音声ファイルアップロード完了APIを実装しました。
  - DBへの登録処理を追加しています
    - 音声ファイルテーブル
    - オプションアイテムテーブル
    - 文字起こしタスクテーブル
- jwtトークンデコードがうまくいかないことがありましたので応急対応を入れています。
  - 参考:https://github.com/auth0/node-jsonwebtoken/issues/875

## レビューポイント
- DBへの登録処理・内容は適切か
- JOBナンバーの採番は適切か
- jwtデコードの対応は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-05-30 03:40:36 +00:00
makabe.t
a430bd01e5 Merged PR 118: DBマイグレーション
## 概要
[Task1713: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1713)
[Task1711: [タスク追加PBIでまとめて対応] Userテーブルのaccepted_terms_versionのNOT NULL制約を削除する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1711)

- タスク追加で必要となるテーブル作成するマイグレーションファイルを追加
  - 音声ファイル
  - 文字起こしタスク
  - オプションアイテム(音声ファイルメタデータ)
- Userテーブルの「同意済み利用規約バージョン」カラムのNOT NULL制約を外すマイグレーションファイルを追加

## レビューポイント
- タスク追加で必要となるテーブルを1ファイルにまとめているが問題ないか
- 各テーブルのカラム名、型は適切か

## UIの変更
- 無し

## 動作確認状況
- ローカルで確認
  - UP/DOWN
2023-05-26 06:23:41 +00:00
oura.a
810be5c055 Merged PR 99: ライセンス注文テーブルをMySQL上に作成する
## 概要
[Task1680: ライセンス注文テーブルをMySQL上に作成する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1680)

タスク 1680: ライセンス注文テーブルをMySQL上に作成する
ライセンス注文テーブルを作成するマイグレーションファイルを作成。

## レビューポイント
テーブル定義・カラム定義が正しいかどうか。
テーブル名・カラム名が適切かどうか。

## UIの変更
なし

## 動作確認状況
ローカルで動作確認し、テーブルが作成されることを確認。
また、世代巻き戻しでテーブルが削除されることを確認。

## 補足
なし
2023-05-24 01:30:36 +00:00
oura.a
3f16e84317 Merged PR 88: usersテーブルにAuto Renew/License Alert/Notificationの列を追加する
## 概要
Task1619: usersテーブルにAuto Renew/License Alert/Notificationの列を追加する

https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_sprints/taskboard/OMDSDictation%20%E3%83%81%E3%83%BC%E3%83%A0/OMDSDictation/%E3%82%B9%E3%83%97%E3%83%AA%E3%83%B3%E3%83%88%207-1?workitem=1619
ユーザテーブルへ「autoRenew、licenseAlert、notification」のカラムを追加するマイグレーションファイルを作成

レビューポイント
カラム定義が認識通りであるか
既存処理には定義追加以外の影響はないと判断したが、問題ないか
(user.entityとusers.repository.serviceへの定義追加は
タスク1593「API実装(ユーザー登録)」で事前に行っていました。)

UIの変更
なし

動作確認状況
ローカルDBでマイグレーションを実施。
カラムの追加と「autoRenew、licenseAlert、notification」が未指定でも「1」となることを確認。

補足
なし
2023-05-11 09:08:16 +00:00
湯本 開
9f5252baf8 Merged PR 56: API実装(アカウント登録)
## 概要
[Task1496: API実装(アカウント登録)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1496)

- アカウント登録のAzureAD B2Cへのユーザー作成部分以外について実装
- migration SQLに足りない要素があった箇所を修正(default追加)
- 各種環境変数を追加
- 秘密鍵/公開鍵を取得する方法を環境変数に変更(KeyVaultからWebAppsの機能で環境変数へ流し込む想定)

## レビューポイント
- 実装方法として問題がありそうな箇所が存在しないか
- 可読性の低い箇所が存在しないか
- Moduleの分け方、つなげ方などは問題ないか
- ラフスケッチと違い、Account作成と管理者ユーザー作成を同一トランザクションで行うよう修正したが問題ないか

## 動作確認状況
- メール送信以外はローカルで確認、メール送信部分は未確認
2023-03-29 03:55:44 +00:00
湯本 開
6fe1cc4d6d Merged PR 50: タスク 1500: DBのテーブル作成SQL実装
[タスク 1500: DBのテーブル作成SQL実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1500)
- SQLを実装
- sql-migrate前提で設定ファイルを追加
# レビューポイント
- 本PBIの範囲で不足しているものはなさそうか
# 動作確認状況
- ローカルのMySQL DBにSQLを流して確認
2023-03-22 08:34:36 +00:00