943 Commits

Author SHA1 Message Date
masaaki
75dc79c5e7 Merged PR 117: [Sp9-1絶対着手] eslintのanchor-is-validルールを無効にする(ライセンス注文機能の画面実装と同時にやる)
## 概要
[Task1664: [Sp9-1絶対着手] eslintのanchor-is-validルールを無効にする(ライセンス注文機能の画面実装と同時にやる)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1664)

- eslintのanchor-is-validルール無効化について、個別に記載しなくても全体的に無効化されるよう対応しました
- 合わせて、既存ソースで個別に無効化していた部分を削除しました

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

## UIの変更
- 無し

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

## 補足
- 無し
2023-05-25 11:28:47 +00:00
oura.a
4ec3d7c51f Merged PR 114: [MISOチーム] ユーザ追加時のAuthorIDの重複チェックがエラーの場合にAzureにアカウント追加しないよう修正する
## 概要
[Task1765: [MISOチーム] ユーザ追加時のAuthorIDの重複チェックがエラーの場合にAzureにアカウント追加しないよう修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1765)

タスク 1765: [MISOチーム] ユーザ追加時のAuthorIDの重複チェックがエラーの場合にAzureにアカウント追加しないよう修正する
・ユーザ追加時、Azureへのユーザ登録前に同一アカウント内のAuthorIDの重複チェックを追加。

## レビューポイント
処理に問題がないか。

## UIの変更
なし

## 動作確認状況
ローカルでユーザ追加APIを実行し、同一AuthorIDの際にエラーが出ることを確認。

## 補足
なし
2023-05-25 06:54:50 +00:00
oura.a
24a784b02f Merged PR 115: [MISOチーム] typeが「None」のステータスについてアカウント追加時(none)とユーザ追加時(None)で表記ゆれがある
## 概要
[Task1766: [MISOチーム] typeが「None」のステータスについてアカウント追加時(none)とユーザ追加時(None)で表記ゆれがある](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1766)

タスク 1766: [MISOチーム] typeが「None」のステータスについてアカウント追加時(none)とユーザ追加時(None)で表記ゆれがある
・アカウント追加時のtypeを「none」から「None」に修正。

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

## UIの変更
なし

## 動作確認状況
ローカルでアカウント登録APIを実行し、DBへの登録内容が「None」に修正されていることを確認。

## 補足
なし
2023-05-25 01:37:03 +00:00
iwata
fa23f7f2e2 Revert "anchor-is-validルールを全体的に無効化"
This reverts commit dc8fa3564b8aaed37a2f8ef1d0f1334302661a1c.
2023-05-24 11:48:05 +09:00
iwata
9d73f24b55 Revert "個別にanchor-is-validを使っている処理を削除"
This reverts commit 2c5909189e741ccba98add5ce581e7855b40b65e.
2023-05-24 11:47:47 +09:00
iwata
2c5909189e 個別にanchor-is-validを使っている処理を削除 2023-05-24 11:34:16 +09:00
iwata
dc8fa3564b anchor-is-validルールを全体的に無効化 2023-05-24 11:33:59 +09: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
湯本 開
6a8cfd5530 Merged PR 94: [Sp8-2で絶対着手] 認証・認可を宣言的に扱える仕組みの実装
## 概要
[Task1725: [Sp8-2で絶対着手] 認証・認可を宣言的に扱える仕組みの実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1725)

- 認証(アクセストークンが正しいか)の認証を `@UseGuards(AuthGuard)` をControllerに追加することで確認できる仕組みを追加
  - 実際の修正は別Task想定
- 権限チェック(アクセストークンに含まれる権限でAPI呼び出し可能か)のチェックを `@UseGuards(RoleGuards.configure({ ... }))` をControllerに追加することで確認できる仕組みを追加
  - 実際の修正は別Task想定
- 具体的な使い方はテスト、あるいはUsersControllerのGET /usersのコメントアウトされたコード参照
- 無駄に重複していたコードを共通化

## レビューポイント
- 使いやすそうか?
- この認証Guardsを使用して認証する時の懸念点はないか
- コードに問題はなさそうか
- テスト容易性のため、公開するべきでないメソッドを公開している事に対して納得できるか

## 動作確認状況
- ローカルで確認
2023-05-22 08:08:02 +00:00
masaaki
713d587abf Merged PR 112: 画面実装(ライセンス情報)
## 概要
[Task1683: 画面実装(ライセンス情報)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1683)

- ライセンス情報画面を仮実装。ライセンス注文を起動するためのボタンを用意しました。
- 画面デザイン上に登場する文言については、多言語対応を実施しています。
- このPull Requestで対象外
  - 細かな画面の実装部分は別PBIのため対象外
  - ライセンス注文のボタン実装については、「タスク 1684: 画面実装(ライセンス注文ポップアップ)」で実装するため対象外

- AppRouter.tsxの定義について、本来、ログイン後の画面のため、RouteAuthGuardの設定を行う必要がありますが、タスク1786の事象により多言語でのログインが出来なく、多言語対応の確認ができないため一時的に外しています。タスク1789で対応予定です。(ソースコメントにも記載)

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

## 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/Task1683?csf=1&web=1&e=agPOmO

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

## 補足
- 無し
2023-05-22 01:11:00 +00:00
斎藤 快斗
58203f39c8 許可するヘッダーを追加 2023-05-17 11:05:58 +09:00
斎藤 快斗
de2b2227e2 許可するメソッドを追加 2023-05-17 10:50:47 +09:00
斎藤 快斗
1ceab68b42 特定のオリジンからのリクエストを許可する 2023-05-17 10:40:43 +09:00
saito.k
4cf444ab42 Merged PR 98: API実装(SASトークン発行)
## 概要
[Task1737: API実装(SASトークン発行)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1737)

- SASトークンを発行する処理を実装
- コンテナ作成処理を実装
  - 本来はアカウント登録時に作成されるが、動作検証のためSAS発行時に作成するように実装している
- コンテナ存在確認の処理を実装

## レビューポイント
- 実装した処理に漏れはないか
- エラーの処理に考慮漏れはないか
- テストケースは十分か

## 動作確認状況
- ローカルでコンテナ作成とURL発行を確認

## 補足
- 相談、参考資料などがあれば
2023-05-17 00:38:39 +00:00
x.sunamoto.k
7da5a1fda4 Merged PR 111: 次回サインインにおけるパスワード変更の要否を指定していない
## 概要
[Task1761: 次回サインインにおけるパスワード変更の要否を指定していない](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1761)

- パスワード変更後、ログインしようするとすると「Your password has expired.」となる事象について対応を実施。パスワード変更時「forceChangePasswordNextSignIn: false」を設定するよう修正。

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

## UIの変更
- 無し

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

## 補足
- 相談、参考資料などがあれば
2023-05-16 23:58:15 +00:00
maruyama.t
b07ede7f1b Merged PR 109: confirmUserAndInitPasswordのtry分の中身の順序を入れ替える。
## 概要
[Task1755: confirmUserAndInitPasswordのtry分の中身の順序を入れ替える。](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1755)

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

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

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

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

## 補足
- 相談、参考資料などがあれば
2023-05-16 01:08:50 +00:00
maruyama.t
a891d7fb64 Merged PR 110: メール本文に仮パスワードを記載する
## 概要
[Task1756: メール本文に仮パスワードを記載する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1756)

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

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

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

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

## 補足
- 相談、参考資料などがあれば
2023-05-16 00:52:43 +00:00
maruyama.t
d104864f08 Merged PR 108: changePassword処理時の権限の調査
## 概要
[Task1754: changePassword処理時の権限の調査](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1754)

- graphClient.api.patchは戻り値を返さないので、changePasswordの戻り値をvoidに変更しました
- Azure AD B2C上のアプリケーション「adb2c-graph-app」に対して以下の変更を行いました
  - アクセス許可に「Directory.ReadWrite.All」「User.ManageIdentities.All」「User.ReadWrite.All」を追加
  - 「adb2c-graph-app」にユーザー管理者権限を付与
    参考URL:https://blog.kokoni.jp/2021-01-23-142542/

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

## UIの変更
- 無し

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

## 補足
- 相談、参考資料などがあれば
2023-05-16 00:28:50 +00:00
oura.a
d982d7e129 Merged PR 107: ユーザ作成時の認証メール内URL修正
## 概要
[Task1753: ユーザ作成時のメール内認証URL修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1753)

タスク 1753: ユーザ作成時のメール内認証URL修正
・ユーザ作成時のメール内リンクが「mail-confirm/?~」になっているのを「mail-confirm/user/?~」に変更。
・リンク先の動作は本タスクでは対象外。

## レビューポイント
変更箇所が合っているか?

## UIの変更
なし

## 動作確認状況
ローカルでユニットテスト実施済み。
ユーザ作成APIを実行し、送信されたメール内のリンクが「mail-confirm/user/?~」になっていることを確認。

## 補足
なし
2023-05-16 00:15:38 +00:00
x.sunamoto.k
3ebfe4a585 Merged PR 103: DBのユーザIDではなくAzureのIDを条件に取得できるよう修正
## 概要
[Task1744: DBのユーザIDではなくAzureのIDを条件に取得できるよう修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1744)

タスク 1744: DBのユーザIDではなくAzureのIDを条件に取得できるよう修正
・アクセストークンのIDからアカウントIDを取得する際に使用する関数を「findUserById」から「findUserByExternalId」に変更。
・ユーザ一覧取得時のDB処理を修正。

## レビューポイント
・アクセストークンのIDからアカウントIDを取得する際に、斎藤さんがPR93で作成している「findUserByExternalId」を使用しているが問題ないか?
・ユーザ一覧取得時の処理に問題がないか?

## UIの変更
なし

## 動作確認状況
ローカルでのユニットテスト実施済み。
ユーザ作成APIを実行し、ユーザ作成ができることを確認。
ユーザ一覧取得APIを実行し、ユーザ一覧が取得できることを確認。

## 補足
なし
2023-05-15 06:37:33 +00:00
masaaki
c5ebd6ec50 Merged PR 106: ユーザ一覧のurlを修正
## 概要
[Task1746: ユーザ一覧のurlを修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1746)

- ユーザ一覧のURLについて、userListとしていましたが、ヘッダコンポーネントのタブ押下時に呼び出すURL(user)に合わせて修正を行いました。

## レビューポイント
- AppRouter.tsxの記載を見たところ、仮でのuserページの定義上は「RouteAuthGuard」という記載がありました。現状は、初回作成時のまま「RouteAuthGuard」を指定しない定義としていますが、問題ないか確認をお願いします。

## UIの変更
- 無し

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

## 補足
- 無し
2023-05-15 05:47:07 +00:00
oura.a
4a5307842c Merged PR 104: ユーザ作成API呼び出し時に、アクセストークンを渡すように修正
## 概要
[Task1745: ユーザ作成API呼び出し時に、アクセストークンを渡すように修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1745)

タスク 1745: ユーザ作成API呼び出し時に、アクセストークンを渡すように修正
ユーザ作成API4(signup)呼び出し時の引数にアクセストークンを追加。
(/app/dictation_client/src/features/user/operations.ts)

## レビューポイント
アクセストークンの渡し方が正しいかどうか
不足している処理はないか

## UIの変更
なし

## 動作確認状況
ローカルでの動作確認にてheader内にauthorizationが追加されたことを確認

## 補足
なし
2023-05-15 02:30:32 +00:00
makabe.t
7353de035f Merged PR 100: 外部連携API、アップロード完了の認証ヘッダを追加&抜け漏れがないか再確認
## 概要
[Task1738: 外部連携API、アップロード完了の認証ヘッダを追加&抜け漏れがないか再確認](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1738)

- 外部連携APIの修正
  - 音声ファイルアップロード完了APIの認証ヘッダを追加

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

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-05-12 08:19:07 +00:00
saito.k
b91d260015 Merged PR 93: [WIP]API実装
## 概要
[Task1630: API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1630)

- アップロード先取得APIの実行権限をチェックするためにアクセストークンに権限情報とロール情報を追加する
- ログイン時に発行しているトークンにパラメータを追加
  - role
    - ユーザーのrole情報(typist/author)
  - scope
    - 管理者権限があるか (admin/空文字)

- トークン発行前にDBからユーザーの情報を取得する処理を追加
- ユーザーを取得するときにユーザーが属しているアカウントの情報も取得するようにentitiyを修正
- `findUserByExternalId`で実行されるSQL
```
SELECT
    `User`.`id` AS `User_id`,
    `User`.`external_id` AS `User_external_id`,
    `User`.`account_id` AS `User_account_id`,
    `User`.`role` AS `User_role`,
    `User`.`author_id` AS `User_author_id`,
    `User`.`accepted_terms_version` AS `User_accepted_terms_version`,
    `User`.`email_verified` AS `User_email_verified`,
    `User`.`deleted_at` AS `User_deleted_at`,
    `User`.`created_by` AS `User_created_by`,
    `User`.`created_at` AS `User_created_at`,
    `User`.`updated_by` AS `User_updated_by`,
    `User`.`updated_at` AS `User_updated_at`,
    `User__User_account`.`id` AS `User__User_account_id`,
    `User__User_account`.`parent_account_id` AS `User__User_account_parent_account_id`,
    `User__User_account`.`tier` AS `User__User_account_tier`,
    `User__User_account`.`country` AS `User__User_account_country`,
    `User__User_account`.`delegation_permission` AS `User__User_account_delegation_permission`,
    `User__User_account`.`locked` AS `User__User_account_locked`,
    `User__User_account`.`company_name` AS `User__User_account_company_name`,
    `User__User_account`.`verified` AS `User__User_account_verified`,
    `User__User_account`.`primary_admin_user_id` AS `User__User_account_primary_admin_user_id`,
    `User__User_account`.`secondary_admin_user_id` AS `User__User_account_secondary_admin_user_id`,
    `User__User_account`.`deleted_at` AS `User__User_account_deleted_at`,
    `User__User_account`.`created_by` AS `User__User_account_created_by`,
    `User__User_account`.`created_at` AS `User__User_account_created_at`,
    `User__User_account`.`updated_by` AS `User__User_account_updated_by`,
    `User__User_account`.`updated_at` AS `User__User_account_updated_at`
FROM
    `users` `User`
    LEFT JOIN `accounts` `User__User_account` ON `User__User_account`.`id` = `User`.`account_id`
WHERE
    ((`User`.`external_id` = ?))
    AND (`User`.`id` IN (?)) -- PARAMETERS: ["B2CのID","2"]

```

## レビューポイント
- 管理者権限の有無とロールは別の概念であるため、別のパラメータとして用意したが問題なさそうか
  - 他の案としてscopeの中に`typist , admin`のようにして、一つのパラメータで権限チェックする?
- DBから取得するデータとしてユーザーが属しているアカウント情報のすべてのカラムを取得するようにしているが、必要なカラムのみにしたほうが良いか?

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

## 動作確認状況
- 実行SQLを確認、JWTの内容を確認

## 補足
- 相談、参考資料などがあれば
2023-05-12 04:48:09 +00:00
x.sunamoto.k
3f7a9ed11a Merged PR 75: API実装(ユーザー一覧取得)
## 概要
[Task1592: API実装(ユーザー一覧取得)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1592)

- ユーザ一覧取得のAPIを実装
- アクセストークンにより権限を確認する
 - src/common/jwt/jwt.ts verifyAuthority([Task1593: API実装(ユーザー登録)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1593)で作成)を呼び出すため追って再修正します。(レビュー対象外です)
 - src/features/users/users.controller.ts getUsersから
  src/features/users/users.service.ts getUsersへ
- DBから同一アカウントのユーザ一覧を取得する
 - findSameAccountUsersを新規作成

- Azure AD B2Cからユーザーを取得してマージ
 - src/gateways/adb2c/adb2c.service.ts getUserを新規作成
 - マージはfor文でまわしています(力技)
- マージした結果を返却

- 影響範囲
 - usersテーブルの変更が入るときにマージ部分の手直しが要ります。(TODOを添えています)

## レビューポイント
- 新規に作成したfindSameAccountUsersの妥当性
- 新規に作成したgetUserの妥当性
→Azureからの返り値はsrc/common/token/types.tsに定義済。
 (Azure AD B2Cから取得できた項目で再定義)

## UIの変更
- 特になし

## 動作確認状況
- ローカルでビルド、テストを実行した後に動作を確認済。

## 補足
- ご不便をおかけしました。よろしくお願いします。
2023-05-12 01:27:19 +00:00
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