666 Commits

Author SHA1 Message Date
masaaki
21695a6590 Merged PR 97: API I/F実装(ライセンス注文登録API)
## 概要
[Task1681: API I/F実装(ライセンス注文登録API)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1681)

- 元PBIへのリンク(内容・目的などはそちらにあるはず)
 [プロダクト バックログ項目 1221: ライセンスを注文したい](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1221)

- 何をどう変更したか、追加したライブラリなど
 ラフスケッチに基づき、ライセンス注文登録APIのI/F実装とopenapi化を行いました。

- このPull Requestでの対象/対象外
 変更分すべてが対象になります

- 影響範囲(他の機能にも影響があるか)
 無し

## レビューポイント
- Swagger UI上でテスト実行すると、正常時のレスポンスコードが200ではなく201となります。
湯本さんが実施されたユーザ追加のAPI I/F実装の動画を見ると、その時も201となっていたので、そのまま進めましたが、もし問題ある場合は指摘お願いします。

## UIの変更
- 無し

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

## 補足
- 相談、参考資料などがあれば
2023-05-12 01:00:10 +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
oura.a
e9af39bd47 Merged PR 71: API実装(ユーザー登録)
## 概要
[Task1593: API実装(ユーザー登録)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1593)

https://dev.azure.com/ODMSCloud/ODMS%20Cloud/_git/ODMS%20Cloud
users.controllerにアクセストークン取得処理を追加
users.serviceにユーザ追加処理を追加
user.entityにauto_renew、license_alert、notificationを追加
users.repository.serviceにユーザ追加・AuthorId検索処理を追加

## レビューポイント
処理の記載場所が適切かどうか
期待通りの処理になっているかどうか
テストコードの記載方法が正しいかどうか

## UIの変更
なし

## 動作確認状況
ローカルでのビルド・実行を確認

## 補足
テスト実装について不安要素があります。
・テストの粒度はこれでよいのでしょうか?
・テスト実行に40分かかってしまうのですが実装方法を間違えている箇所がありそうでしょうか?
2023-05-11 09:05:54 +00:00
maruyama.t
d297301212 Merged PR 82: API実装(メール認証)
## 概要
[Task1594: API実装(メール認証)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1594)

- メール認証APIを作成
- src/api/common/にpasswordを追加(ランダムパスワード発行ロジック)
- src/fuatures/gateway/adb2c.service.tsにユーザのパスワードを変更するメソッドchangePasswordを追加
- user.service.spec.tsにメール認証と仮パスワード発行のテストケースを追加
- 影響範囲
(user.service.spec.tsで行っていた既存のテストケース)

## レビューポイント
- commonにpasswordを追加したが、配置として適切かどうか
- user.service.tsのエラー発生時のロジックが十分であるか

## 動作確認状況
- ローカルで確認
2023-05-11 07:45:30 +00:00
iwata
94ab0e5b0d Revert "ラフスケッチを元に新規APIをNestJS上で実装する"
This reverts commit 12cd9c5a035efa493d4e85fd7ed6f696da8dc520.
2023-05-11 13:54:35 +09:00
iwata
dac315c8cb Revert "openapiを生成する"
This reverts commit 95017df699d24471d5c3a0594f2a47599c9e2134.
2023-05-11 13:54:00 +09:00
iwata
95017df699 openapiを生成する 2023-05-11 13:41:40 +09:00
iwata
12cd9c5a03 ラフスケッチを元に新規APIをNestJS上で実装する 2023-05-11 10:52:48 +09:00
makabe.t
904d65780b Merged PR 96: 外部連携APISwaggerエラー修正
## 概要
[Task1732: 外部連携APISwaggerエラー修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1732)

- Swaggerの構文で不要な文言が残ったままでしたので削除しました。

## レビューポイント
- 共有

## UIの変更
無し

## 動作確認状況
- ローカルで確認
  - Swaggerでエラーがないことを確認
2023-05-10 23:54:20 +00:00
makabe.t
a740ec3c36 Merged PR 95: (最最最優先)fileSizeをstringからnumberに修正
## 概要
[Task1728: (最最最優先)fileSizeをstringからnumberに修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1728)

- 外部連携APIのパラメータについてファイルサイズをnumberとするように修正しました。
- 外部連携API、音声ファイルアップロード完了APIに401認証エラーを追加しました。

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

## UIの変更
無し

## 動作確認状況
- ローカルSwaggerで確認
2023-05-10 07:25:59 +00:00
makabe.t
8ccc2a82e8 Merged PR 92: OptionItem対応
## 概要
[Task1701: OptionItem対応](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1701)

- 以下のAPIでOptionItemを配列で持つように修正しました。
  - 音声ファイルアップロード完了API
  - タスク情報取得API

## レビューポイント
- 対応箇所に過不足はないか
- 対応内容として適切か

## UIの変更
無し

## 動作確認状況
- ローカルでSwagger確認
2023-05-09 06:16:44 +00:00
makabe.t
b3ab401cbc Merged PR 90: 全体見直しをかけ、レビュー依頼する
## 概要
[Task1677: 全体見直しをかけ、レビュー依頼する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1677)

- 外部連携API IFについて見直し、各APIに説明を追加しました。
  - ユーザー情報取得API
  - 認証情報再生成API
  - 音声ファイルアップロード完了API(タスク追加API)
  - ステータス変更API
    - チェックアウト
    - チェックイン
    - キャンセル
    - 中断
    - 差し戻し
    - バックアップ
  - テンプレートファイルダウンロード先取得API
  - 次ファイル情報取得API
  - 音声ファイル、タスク情報取得API
  - 認証情報生成API

## レビューポイント
- 外部連携API IFの実装としても漏れはないか
- 各APIの説明は適切か
- 各APIのパス、パラメータは適切か
- API間で文言の統一はできているか

## UIの変更
無し

## 動作確認状況
- ローカルで確認
2023-05-08 08:26:24 +00:00
makabe.t
085f41134a Merged PR 89: IF実装(音声ファイル、タスク情報取得API)
## 概要
[Task1647: IF実装(音声ファイル、タスク情報取得API)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1647)

- 以下の外部連携APIのIFを実装しました
  - 音声ファイル、タスク情報取得API
- blob、taskフォルダにあったAPI定義をfilesフォルダに集めました。

## レビューポイント
- フォルダの変更に問題はないか
- 音声ファイル、タスク情報取得APIのパスを`GET /files/audio/task-info`としましたがAPIのパスとして適切でしょうか?

## UIの変更
- なし
## 動作確認状況
- ローカルのSwaggerで確認
2023-04-28 08:12:05 +00:00
saito.k
0bcb0b071b Merged PR 86: IF実装(ステータス変更要求API)
## 概要
[Task1645: IF実装(ステータス変更要求API/初回音声ファイル情報)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1645)

- ステータス変更要求APIのIF実装
  - 使用目的ごとにAPIを作成
- OpenAPI.json生成

## レビューポイント
- API仕様詳細では引数にファイルIDを渡すように記載されていたが、タスクIDを受け取るようにした。
  - タスクIDで問題ないと思っていますが、認識あってますでしょうか?
- 返却するエラーの種類は足りているか

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

## 動作確認状況
- Swagger UIと生成したOpenAPI.jsonで確認

## 補足
- 相談、参考資料などがあれば
2023-04-26 06:32:50 +00:00
makabe.t
476c810cc3 Merged PR 79: 画面実装(ユーザー追加ダイアログ)
## 概要
[Task1596: 画面実装(ユーザー追加ダイアログ)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1596)

- ユーザ一覧画面にユーザ追加ポップアップを追加しました。

## レビューポイント
- 入力エラーチェックは適切か
- Roleを切り替えた際の内容は適切か
- タイピストの選択はデザインのみです。

## UIの変更
- [Task1596](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/Task1596?csf=1&web=1&e=iiTOxd)

## 動作確認状況
- ローカルで確認
2023-04-26 00:04:48 +00:00
saito.k
16b7416de0 Merged PR 80: 画面実装
## 概要
[Task1618: 画面実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1618)

- login処理が成功した時にデスクトップアプリを起動するように実装
- デスクトップアプリを起動するURLは確認済み

## レビューポイント
- デスクトップアプリを起動するタイミングは問題ないか
- 実装を追加した場所は問題ないか

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

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

## 補足
- useEffectの依存関係からloginを削除
  - これでAPI呼び出しが複数回行われることは無くなったが再度調査が必要そう
2023-04-25 10:18:00 +00:00
makabe.t
728bd6dfeb Merged PR 87: IF実装(テンプレートファイルダウンロード先取得API/次ファイル情報取得要求API)
## 概要
[Task1646: IF実装(テンプレートファイルダウンロード先取得API/次ファイル情報取得要求API)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1646)

- 以下の外部連携APIのIFを実装しました。
  - テンプレートファイルダウンロード先取得API
  - 次ファイル情報取得要求AP

## レビューポイント
- 次ファイル情報取得要求APIについてFilesフォルダを掘って新規に追加したがフォルダ構成に問題はないか。
- IFの応答ステータスは適切か。
- リクエスト/レスポンスは想定通りか

## UIの変更
- なし

## 動作確認状況
- ローカルで確認Swaggerで確認
2023-04-25 01:56:40 +00:00
masaaki
469eb6542c Merged PR 78: 画面実装(ユーザー一覧)
## 概要
[Task1595: 画面実装(ユーザー一覧)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1595)

- デザイン部門のHTMLをもとに画面レイアウトを作成
- ルーティング処理を実装
- ユーザー一覧取得APIを呼び出してユーザ情報の一覧を取得
- 取得したユーザ情報を画面の一覧に表示
- 多言語対応

## レビュー対象外
- ユーザ追加ボタン押下時の挙動については[Task 1596: 画面実装(ユーザー追加ダイアログ)](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=1596)にて実装のため本タスク対象外

## レビューポイント
- ユーザ一覧の実装についてはPBI対象外ですが、ユーザ登録の動作確認をするうえで問題ないかどうか確認おねがいします

## UIの変更
[スクリーンショット](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/Task1595?csf=1&web=1&e=236oE5)

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

## 補足
- 初実装なので、各コンポーネント(state,operation,selectors...)の使い方が誤っていないかも見ていただきたいです
2023-04-25 00:29:41 +00:00
makabe.t
8a0815821e Merged PR 85: IF実装(ユーザー情報取得API/音声ファイルアップロード完了API)
## 概要
[Task1644: IF実装(ユーザー情報取得API/音声ファイルアップロード完了API)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1644)

- 以下の外部連携APIのIFを実装しました。
  - ユーザー情報取得API
  - 音声ファイルアップロード完了API

## レビューポイント
- 音声ファイルアップロード完了APIについてTaskフォルダを掘って新規に追加したがフォルダ構成に問題はないか。
- IFの応答ステータスは適切か。
- リクエスト/レスポンスは想定通りか
  - ユーザー情報取得API応答のWorkTypeID周りが不安なのでご確認をお願いします。

## UIの変更
- なし

## 動作確認状況
- Swaggerをローカルで確認
2023-04-24 09:58:25 +00:00
makabe.t
d2d95c6b02 Merged PR 77: 言語切り替え対応で暫定対応となっている箇所を整理+Clientコンテナを修正
## 概要
[Task1610: 言語切り替え対応で暫定対応となっている箇所を整理+Clientコンテナを修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1610)

- Clientの言語選択の反映をApp.tsxのuseEffectを
- 不要なclientコンテナの環境変数読み込みを削除しました。

## レビューポイント
- 競合しないようログイン時のログインAPI呼び出しをuseLayoutEffectで処理するようにしています。
  - Reactフックの使い方として問題ないでしょうか?

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
- develop環境でマージ後に再度確認します。
2023-04-20 03:44:43 +00:00
makabe.t
a2a0778dfb Merged PR 81: 画面実装(ユーザー認証画面/認証完了画面)
## 概要
[Task1597: 画面実装(ユーザー認証画面/認証完了画面)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1597)

- アカウントへのユーザ追加でメール認証URLから認証を実行した際の画面を実装しました。
  - 完了後の画面はアカウント登録のものをそのまま流用しています。

## レビューポイント
- 認証APIからのレスポンスはアカウント登録と同様のものを想定して、完了画面をそのまま流用していますが問題ないでしょうか。
- 画面のパスを`/mail-confirm/user`としましたが問題ないでしょうか?

## UIの変更
- アカウント登録の認証完了画面と同様

## 動作確認状況
- ローカルで確認
  - 認証APIでアカウント登録と同様のレスポンスを想定
2023-04-19 00:52:47 +00:00
saito.k
0a970e814f Merged PR 76: API実装(I/F)
## 概要
[Task1576: API実装(I/F)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1576)

- sas発行APIのIFを実装
  - アップロード用のSAS発行API
    - GET /blob/uploadSas
  - ダウンロード用のSAS発行API
    - GET /blob/downloadSas
- notification関連のフォーマット修正
- notification関連でlintエラーが出ていた箇所を修正
- openapi.jsonを生成するコマンドを使用できるように修正

## レビューポイント
- レスポンスとして返却する内容に不足は無いか
- URIはこれで良さそうか

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

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

## 補足
- 相談、参考資料などがあれば
2023-04-14 01:08:32 +00:00
湯本 開
6a5926ab3f Merged PR 70: API I/F実装(メール認証)
## 概要
[Task1599: API I/F実装(メール認証)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1599)

- エンドユーザーのメール認証を行うAPIのI/Fを作成

## レビューポイント
- pathは問題なさそうか
- Request/Responseは本質的に同一だと思われるため、管理者の認証と共通としたが問題ないか?

## 動作確認状況
- openapi.jsonの生成を確認
2023-04-12 04:36:20 +00:00
makabe.t
f75b8545b1 Merged PR 74: develop動作確認
## 概要
[Task1498: develop動作確認](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1498)

- 言語の読み取りと描画のタイミングで言語切り替えが凡例されないことがあるので、各ページで実施するように修正しました。

## レビューポイント
- 共有
- 後ほどしっかりしたロジックを検討します。

## UIの変更

## 動作確認状況
- ローカルで確認
2023-04-11 10:50:15 +00:00
makabe
a4c93b3023 Merge branch 'develop' of https://dev.azure.com/ODMSCloud/ODMS%20Cloud/_git/ODMS%20Cloud into develop 2023-04-11 18:03:42 +09:00
makabe
ddbb1e4101 メッセージ更新 2023-04-11 18:03:09 +09:00
makabe
a914f80a3c スナックバーのデザインを修正 2023-04-11 18:01:31 +09:00
makabe
418154fd33 検証済み画面のリンクを修正 2023-04-11 17:51:06 +09:00
makabe
50cbcb1d81 メール認証URLのドメインを環境変数で設定 2023-04-11 17:50:39 +09:00
湯本 開
bfa7fc4f76 Merged PR 68: API実装(I/F)
## 概要
[Task1590: API実装(I/F)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1590)

- ラフスケッチを元にAPI I/Fを実装し、openapi.jsonを生成
- ラフスケッチ時はユーザー登録のリクエストに `authorMetadata` のような拡張可能な形式で考えていた部分を、単に煩雑になるだけと判断して素のAuthorID/TypistGroupIDに変更
- `@POST()/@GET()` の定義箇所をメソッド定義が書かれている行に近づけるよう修正

# レビュー対象外
- メール認証APIは[別Task](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1599)に分割してそちらで対応予定のため今回は未実装

## レビューポイント
- 認証情報の取り方は `@Req()` と `@Body()` を両方引数に定義する方法で問題なさそうか
- ラフスケッチ時からリクエストボディの構造が変わったが問題ないか
- APIの引数の型などは問題ないか

## 動作確認状況
- ビルドが通ることを確認
2023-04-11 04:03:33 +00:00
makabe.t
33509fb228 Merged PR 69: 画面実装(スナックバー)
## 概要
[Task1506: 画面実装(スナックバー)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1506)

- スナックバーを実装し、アカウント登録のエラー時にエラースナックバーを表示するようにしました。

## レビューポイント
- スナックバーの構成に問題はないか
- 別タスクのコードが混ざっているので、スナックバー実装周りのご確認をお願いします。
  - component/snackbar
  - App.tsx
  - features/ui
  - features/signup/operations

## UIの変更
- [Tack1506](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/Task1506?csf=1&web=1&e=xina6Q)

## 動作確認状況
- ローカルで確認
2023-04-10 10:34:59 +00:00
makabe.t
50f4cf5070 Merged PR 65: 画面実装(ユーザー認証画面)
## 概要
[Task1495: 画面実装(ユーザー認証画面)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1495)

- メールの認証URLから、認証を実行して結果を表示するまでの画面を実装しました。
  - 認証画面
  - 認証完了画面
    - 成功
    - 失敗
    - 認証済み
- エラーハンドリング用のメソッドを`common`に追加しました。
- メールに送信される認証URLのパスを認証画面のパスに修正しました。

## レビューポイント
- エラーハンドリング用の処理は適切でしょうか?
- 改行を画面に対応させるために暫定の処置を入れています。対応に問題はないでしょうか。
- アカウント登録のメール送信について、パスを対象となる画面のパス`mail-confirm/`に変更しました。
  - 対応として適切でしょうか?

## UIの変更
- [Task1495](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/Task1495?csf=1&web=1&e=bqT7nz)

## 動作確認状況
- ローカルで確認
2023-04-10 09:03:21 +00:00
makabe.t
bd4aaa8ae1 Merged PR 63: API実装(メール認証)
## 概要
[Task1497: API実装(メール認証)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1497)

- メール認証APIとテストを実装しました。

- IDトークンの型を現状と合わせて修正しました
  - `family_name`と`given_name`を削除しました。
- auth.serviceのテストも併せて修正しました。
  - テストケースのIDトークンを環境変数の鍵で生成するように修正しました。

## レビューポイント
- DBのユーザを検証済みにする処理について、トランザクション内で取得と更新をしていますがトランザクションの使い方として問題ないでしょうか?
- 本APIで使用するカスタムエラーを`common/error/types`に暫定的においていますがどこに配置するのが適切でしょうか?
  - `common/error/types`に配置する、もしくは`common`配下にカスタムエラー用のフォルダを作成してその下に配置するのが良いかと考えています。
- テストのモックでエラーを発生させる際に、テストケース内でエラーを設定していますがモックファイル内でエラー用のモックを設定するべきでしょうか?

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - テストが通ることを確認
2023-04-10 04:44:16 +00:00
saito.k
ee2e8dbd5d Merged PR 64: デバイス登録API実装
## 概要
[Task1571: デバイス登録API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1571)

- NotificationHubへのデバイス登録APIを実装
  - NotificationHubへの接続
  - 登録処理

## レビューポイント
- ディレクトリ構成に問題は無いか

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

## 動作確認状況
- ローカルでNotificationHubに接続できるところまで確認

## 補足
- 返却するエラーやサーバー側で設定する部分の登録情報については仮です。
  - 「プロダクト バックログ項目 1389: デスクトップアプリ/モバイルアプリに様々な通知をしたい」で実装・設計する想定
2023-04-10 00:41:32 +00:00
saito.k
382bb4e25f Merged PR 62: デバイス登録APIのIF実装
## 概要
[Task1570: デバイス登録APIのIF実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1570)

- NotificationHubへのデバイス登録を行うAPIのIFを実装
  - MSへの問い合わせで想定していた引数で概ね問題ないとの回答
- OpenAPI生成関数が動作しなくなっていたので削除
  - 生成するためにはServiceごとにモックを作成しないといけないため修正コストが高すぎると判断

## レビューポイント
- Requestのプロパティについて認識違いは無いか
- 外部連携用のAPIも他のAPIと同様の場所に配置したが問題ないか
- 返却するステータスコードはこれで良いか?
  - 登録の成功は201?
  - エラー時のステータスコードの種類に過不足は無いか

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

## 動作確認状況
- OpenAPIを生成して確認

## 補足
2023-04-07 01:05:28 +00:00
makabe.t
444cfda3b2 Merged PR 61: 画面実装(入力確認画面&登録完了画面)
## 概要
[Task1466: 画面実装(入力確認画面&登録完了画面)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1466)

- アカウント登録の確認画面と完了画面を実装しました。

## レビューポイント
- ページコンポーネントの配置、遷移に問題はないか
- API呼び出しは適切か
  - エラー表示はスナックバー実装時にやる想定です。
- デザイン反映は適切か

## UIの変更
- Before/Afterのスクショなど
- [Task1466](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/Task1466?csf=1&web=1&e=DGLJXs)

## 動作確認状況
- ローカルで確認
2023-04-06 09:45:59 +00:00
makabe.t
0099614a5f Merged PR 58: API実装(アカウント登録/Azure AD B2C)
## 概要
[Task1550: API実装(アカウント登録/Azure AD B2C)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1550)

- アカウント登録APIでAzure ADB2Cにユーザを登録する処理を追加しました。
  - GraphAPIで登録処理をしています。

## レビューポイント
- ADB2Cへ登録する情報は認識通りか
- ADB2CへのGraphAPI接続のためにADB2Cテナントにアプリを追加しているが認証として問題ないか。
  - 環境変数にアプリの情報を設定しています
    - ADB2C_TENANT_ID=xxxxxxxx
    - ADB2C_CLIENT_ID=xxxxxxxx
    - ADB2C_CLIENT_SECRET=xxxxxxxx

## UIの変更
無し

## 動作確認状況
- ローカルで確認
  - ADB2C、DBに設定項目が追加されていることを確認
2023-04-05 09:22:50 +00:00
makabe.t
731c633189 Merged PR 57: ログインAPIを修正する
## 概要
[Task1504: ログインAPIを修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1504)

- ログイン時にIDトークンをもとにメールアドレスで認証済みのユーザかをDBから取得して判定する処理を追加しました

## レビューポイント
- IDトークンのSubをもとにUserテーブルの`external_id`でユーザを特定しているが利用法として適切か
- DBからのクエリに問題はないか
- ※アカウント登録の処理が含まれていますが、以下の変更についてご確認をお願いします。
  - feature/auth/*
  - repositories/users/*
  - common/error

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-03-31 07:46:56 +00:00
湯本 開
28a7e246a2 Merged PR 60: アカウント登録APIでメール送信するための設定を修正する
## 概要
[Task1565: アカウント登録APIでメール送信するための設定を修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1565)

- .envにも定義されているとそちらを優先して読んでしまうため、環境変数を修正

## レビューポイント
- 情報共有

## 動作確認状況
- ローカルで確認
2023-03-29 08:14:34 +00:00
saito.k
82e1de1165 Merged PR 59: DBにテーブルを作成する手順を実装(マイグレーション)
## 概要
[Task1493: DBにテーブルを作成する手順を実装(マイグレーション)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1493)

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

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

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

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

## 補足
- 相談、参考資料などがあれば
2023-03-29 06:57:00 +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
saito.k
b4cd0208e6 Merged PR 51: タスク 1468: 部品component作成(ヘッダー・フッター)
## 概要
[Task: 1468](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%204-2?workitem=1468)

- ヘッダーcomponentを作成
  - ログイン前とログイン後でヘッダーが異なるので各ページに配置するようにした
  - 呼び出すcomponentは一つとして作成し、内部でヘッダーを切り替えるようにした
- フッターcomponentを作成
  - ログイン前とログイン後でページのデザインが異なるのでヘッダー同様、各ページに配置することにした

## レビューポイント
- ヘッダーの作成方法に問題はないか

## UIの変更
- 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/Task1468?csf=1&web=1&e=K2tFjK

## 動作確認状況
- 型チェック
- ローカルで動作確認

## 補足
2023-03-27 12:05:56 +00:00
湯本 開
dfd9abc1c3 Merged PR 54: API実装(I/F)
## 概要
[Task1494: API実装(I/F)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1494)

- POST /accounts のAPIを実装
- POST /users/confirm のAPIを実装
- 上記APIからopenapiを実装

## レビューポイント
- ラフスケッチ時から変更になった箇所があるが問題ないか
  - ディーラーIDは省略可能かつIDを指定するべきなのでnumber?に型を変更
  - 管理者ユーザー用に同意済み利用規約バージョンを受け付けるようにした
  - reCAPTCHAを想定して事前にreCAPTCHA用トークンを受け付けるようにした

## 動作確認状況
- openapiが生成されることを確認
2023-03-23 07:56:18 +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
makabe
98eb915366 言語切り替えを描画前に実施するよう修正 2023-03-15 11:55:18 +09:00
saito.k
555b048ca9 Merged PR 12: タスク 1465: 画面実装(アカウント作成画面)
## 概要
[Task: 1465](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%204-1?workitem=1465)

- アカウント登録

## レビューポイント
-

## UIの変更
- 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/Task1465?csf=1&web=1&e=bHB7XJ

## 動作確認状況
- 型チェック
- ローカルで動作確認

## 補足
2023-03-14 07:50:25 +00:00
makabe.t
a69d8b19f3 Merged PR 13: タスク 1470: 画面実装(トップページ)
## 概要
[タスク 1470: 画面実装(トップページ)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1470)

- トップページのデザインを適用しました。

## レビューポイント
- デザイン適用は適切か
- CSSの使い方に問題はないか

## UIの変更
- トップページのデザイン適用
  - [Task1470](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/Task1470?csf=1&web=1&e=BgUfMX)

## 動作確認状況
- ローカルで起動してデザイン確認
2023-03-14 07:17:36 +00:00
makabe.t
5d4ef8e094 Merged PR 11: タスク 1482: AADB2Cのログイン画面で、言語変更できる仕組みを入れる
## 概要
[タスク 1482: [手が空いたらor簡単なら] AADB2Cのログイン画面で、言語変更できる仕組みを入れる](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1482)

- ログイン画面の言語がトップ画面の言語選択と対応するようにしました。
  - クライアントでの言語選択状態をそのままクエリパラメータui_localesで渡すことで言語選択を実現しています(参考:[Azure Active Directory B2C での言語のカスタマイズ](https://learn.microsoft.com/ja-jp/azure/active-directory-b2c/language-customization?pivots=b2c-user-flow))

## レビューポイント
- 言語選択実現方法として適切か

## UIの変更
- ログイン画面の言語
  - [Task1482](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/Task1482?csf=1&web=1&e=lHBZZJ)

## 動作確認状況
- ローカルからログイン画面の言語が変わることを確認
2023-03-13 10:40:32 +00:00
makabe.t
6bcbabc897 Merged PR 7: タスク 1477: 存在しないURLを指定した場合の挙動を実装する
## 概要
[タスク 1477: 存在しないURLを指定した場合の挙動を実装する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1477)

- 存在しないURLを指定した場合にNot Foundページへ遷移するようルーティングしました。
  - エラーページ自体は仮デザインです。

## レビューポイント
- エラー時の対応として問題ないか

## UIの変更
- エラーページ追加
  - [Task1477](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/Task1477?csf=1&web=1&e=nc0yx5)

## 動作確認状況
- 画面を起動して存在しないURLでエラーページに遷移することを確認
2023-03-09 08:47:13 +00:00
makabe.t
8822ddaee4 Merged PR 6: タスク 1484: 言語切り替えの仕組みをいれる
## 概要
[タスク 1484: 言語切り替えの仕組みをいれる](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1484)

- トップ画面での言語切り替え機能を実装しました。
  - 英語、ドイツ語、フランス語、スペイン語で切り替えできるようにしています。

## レビューポイント
- 言語切り替えとして機能に不足はないか
- デザインは仮組なので対象外
  - コンボボックスで言語切り替えできるところのみ確認をお願いします。

## UIの変更
- 言語切り替え追加
  - [Task1484](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/Task1484?csf=1&web=1&e=e3lu7p)

## 動作確認状況
- 画面上で言語切り替えできることを確認

## 補足
- デザインはタグだけの仮組ですので無視してください。
2023-03-09 08:46:31 +00:00