24 Commits

Author SHA1 Message Date
水本 祐希
d7bb56af54 Merged PR 580: [Sp20]既存APIのログを強化(外部連携API以外)
## 概要
[Task2295: [Sp20]既存APIのログを強化(外部連携API以外)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2295)

- 何をどう変更したか、追加したライブラリなど
誰が操作したのかを追えるようにログを強化

## レビューポイント
- 特にレビューしてほしい箇所
特になし

## 動作確認状況
- ユニットテスト
2023-11-17 02:54:18 +00:00
makabe.t
b314fe4b46 Merged PR 513: 次タスク取得API実装
## 概要
[Task2874: 次タスク取得API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2874)

- 次タスク取得APIとテストを実装しました。

## レビューポイント
- リポジトリからのタスク取得ロジックは適切か
- テストケースは適切か

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-10-26 10:46:15 +00:00
saito.k
8ace80de74 Merged PR 517: API IF実装(代行操作用トークン生成)
## 概要
[Task2904: API IF](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2904)

- 以下のAPIのIF実装
  - POST /api/auth/delegation-token
  - POST /api/auth/delegation-access-token
- OpenApiを生成
- 不要なas変換を削除

## レビューポイント
- リクエスト・レスポンスの型は認識通りか
  - 代行操作用トークン生成APIの引数のパラメータ名はよさそうか(delegatedAccountId)
- アクセストークン再生成APIについてはガードを付けず、service内で引数に受け取ったリフレッシュトークンを検証し、正しいロール、階層かチェックする方向でよさそうか(通常のアクセストークン再生成と同様に)

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

## 補足
- 相談、参考資料などがあれば
2023-10-26 01:37:35 +00:00
saito.k
f553bfc95b Merged PR 501: strictNullChecks修正①(accounts,auth,Repositoiesのaccounts,common)
## 概要
[Task2835: 修正①(accounts,auth,Repositoiesのaccounts,common)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2835)

- features
  - accounts
  - auth
- common
- repositories
  - accounts
- 各entity
  - Nullableの項目の`@Column`デコレータに`type`を追加しないとTypeORMがエラーになりテストが通らないので追加
    - https://qiita.com/maruware/items/08c9ad594e14e4ea1497#%E5%95%8F%E9%A1%8C

## レビューポイント
- コメントとして記載

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

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

## 補足
- レビュー完了後、TODOコメント(strictNullChecks対応)は削除します
2023-10-19 07:13:56 +00:00
saito.k
d2c2223acf Merged PR 497: strictNullChecks修正③(task,users ,Repositoriesのusers)
## 概要
[Task2837: 修正③(task,users ,Repositoriesのusers)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2837)

- feature
  - tasks
  - users
- Repositories
  - users

## レビューポイント
- 該当箇所にコメントで記載

## 動作確認状況
- ローカルでテストが通ることを確認

## 補足
- 相談、参考資料などがあれば
2023-10-16 10:25:45 +00:00
maruyama.t
c4848eb007 Merged PR 363: QueryBuilderのままにするか、service層でソートするか検討する
## 概要
[Task2465: QueryBuilderのままにするか、service層でソートするか検討する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2465)
[タスク 2404: controller.tsに不要なログが残っている](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%2016-1?workitem=2404)
- 元PBI or タスクへのリンク(内容・目的などはそちらにあるはず)
- 何をどう変更したか、追加したライブラリなど
割り当て可能ライセンス取得APIのQueryBuilder使用部分に対してコメント文を追加した。
ついでに過去MISOチームで実装したcontrollerの処理で残っていた不要なデバッグログを削除した。
- このPull Requestでの対象/対象外
- 影響範囲(他の機能にも影響があるか)
なし

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

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

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

## 補足
- 相談、参考資料などがあれば
2023-08-25 08:04:28 +00:00
saito.k
d70b471d55 Merged PR 311: Task一覧取得でstatus未設定の場合に0件となってしまうので対応
## 概要
[Task2367: Task一覧取得でstatus未設定の場合に0件となってしまうので対応](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2367)

- タイトルの通り

## レビューポイント
- 修正箇所はこれでよいか

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

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

## 補足
- 相談、参考資料などがあれば
2023-08-07 08:59:38 +00:00
makabe.t
794099f37d Merged PR 292: 外部連携APIにログを入れ込む(強化)
## 概要
[Task2294: 外部連携APIにログを入れ込む(強化)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2294)

- 外部連携APIのログを強化しました。
  - contextオブジェクトで操作者情報を渡すようにしています。
- ログポリシーに従って追加しています。
  - [ログポリシー](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_wiki/wikis/OMDSDictation_wiki/223/%E3%83%AD%E3%82%B0%E3%83%9D%E3%83%AA%E3%82%B7%E3%83%BC)

## レビューポイント
- 出力内容に過不足はないか
- ログ追加対象に過不足はないか。
- contextで操作者情報を渡しているが想定通りか

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
2023-08-02 01:07:02 +00:00
湯本 開
cfb7bdb4dc Merged PR 250: [Sp13-1完了]Todoを一斉駆逐する
## 概要
[Task1774: [Sp13-1完了]Todoを一斉駆逐する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1774)

- TODOコメントに修正予定Taskを追加
- cors関連の不要な実装を削除

## レビューポイント
- 作業方針は問題ないか
- client側は軽微なTODOのみだったので今回対処しなかったが問題ないか

## 動作確認状況
- テストとビルドが通ることを確認
2023-07-21 03:06:12 +00:00
saito.k
14627ad7e9 Merged PR 231: タスクキャンセルAPI実装
## 概要
[Task2120: タスクキャンセルAPI実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2120)

- タスクキャンセルAPIを実装
- テスト実装

## レビューポイント
- Adminの時とTypistの時の実行条件はあっているか
- テストケースは足りているか

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

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

## 補足
- 中断、チェックインAPIの実装が入っていますが、それに関しては別PRでレビューしていただいているので対象外とさせてください
2023-07-13 06:55:12 +00:00
saito.k
e4ba5229df Merged PR 224: タスク中断API実装
## 概要
[Task2119: タスク中断API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2119)

- タスク中断APIの処理を実装
- テスト実装
- チェックアウト処理のエラーチェックを修正
  - エラーが発生したときに何が原因なのかログに出力するように修正

## レビューポイント
- チェックインと同様の処理部分を切り出さずにそのまま実装したが、スマートに切り出せる方法はありそうか。
  - チェックインとサスペンドの取得処理だけ切り出してもあまりうれしくない(この2つ以外のところで使えなさそう)
    - キャンセルでは使えるかもだけど
  - チェックアウトやその他のメソッドのタスク取得とまとめようとすると、チェック内容や検索条件に差異がありきれいに切り出すことができなさそう。
    - まとめようとすると、引数が膨大でチェック項目も複雑になる

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

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

## 補足
- コンフリクトが発生しているが、現在のdevelopを取り込むとエラーになるので解消し次第、取り込んで競合解決します
- チェックインAPIの実装も入っていますが、そこは別のPRでレビューを行っているので対象外となります
2023-07-12 08:27:46 +00:00
saito.k
7be4da29bb Merged PR 219: タスクチェックインAPI実装
## 概要
[Task2118: タスクチェックインAPI実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2118)

- チェックインAPIの処理を実装
- テスト実装

## レビューポイント
- 文字起こし担当であるかどうかをチェックする方法についてどちらが良いか
  - チェックアウト権限テーブルで、タスクに紐づく割り当て候補を確認する(チェックアウトした時点で個人指定のみとなっているはず)
  - タスク情報にあるtypist_user_idで確認する
- テストケースは足りているか

## UIの変更

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

## 補足
- 相談、参考資料などがあれば
2023-07-12 02:57:53 +00:00
saito.k
1189e676b9 Merged PR 178: API実装(タスクチェックアウトAPI (Typist))
## 概要
[Task1996: API実装(タスクチェックアウトAPI (Typist))](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1996)

- タスクチェックアウトAPIのTypist用の処理を実装
- テスト実装

## レビューポイント
- DBアクセス処理に不足はないか
- テスト内容に不足はないか
- テストのチェック方法に問題はないか
  - 特に今回の「started_at」はcheckoutした日時を入れるが、それがいつなのかを完全一致でチェックするのは大変なため、checkout前とcheckout後で値が異なっていることを確認するまでのチェックとした
- changeCheckoutPermissionsのPathパラメータにつけたコメントについて
## UIの変更
- Before/Afterのスクショなど
- スクショ置き場

## 動作確認状況
- ローカルで確認
- テストが通ることを確認

## 補足
- 「タスク 1476: [Sp12-1]アクセストークンの寿命を2時間にする」も実施しています
2023-07-03 01:09:06 +00:00
saito.k
8c3e1db63b Merged PR 185: API修正(チェックアウト候補変更)
## 概要
[Task2070: API修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2070)

- DBの検索条件を変更
  - ユーザーグループ検索
    - 同一アカウント内という条件を追加
      - ユーザーグループIDは画面側から渡されるが、そのIDが同じアカウント内のIDかわからないため
  - タイピストユーザー検索
    - 同一アカウント内でロールが`typist`という条件を追加
      - 画面側から渡されるユーザーIDが、同じアカウント内のIDかわからないため
      - 画面側から渡されるユーザーIDが、Typistであるかわからないため
  - タスク検索
    - 同一アカウント内という条件を追加
      - 渡される音声ファイルIDが同じアカウント内であるかわからないため
    - 自身のロールが`author`だった場合、AuthorIDが一致するタスクという条件を追加(管理者ロールがある場合は条件無し)

## レビューポイント
- 不要な条件追加ではないか
- ロールの型変換処理に問題はないか

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

## 動作確認状況
- ローカルで確認
## 補足
- 相談、参考資料などがあれば
2023-06-27 07:18:19 +00:00
saito.k
6a1226c62e Merged PR 165: タイピスト割り当て変更API実装
## 概要
[Task1932: タイピスト割り当て変更API実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1932)

- タイピスト割り当て変更APIを実装
- テスト実装

## レビューポイント
- IFのバリデーションを実装したがチェック内容はこれでよさそうか
- DBのデータ取得・更新処理は問題ないか
  - DBへアクセスする回数は問題ない程度か
- パスパラメータのバリデーションは問題ないか

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

## 動作確認状況
- ローカルで確認(swaggerUI,Postman)

## 補足
- 別途sqliteを用いたテストを実装する予定
2023-06-23 04:04:01 +00:00
湯本 開
2cdcae4924 Merged PR 152: API実装(タスク一覧取得 | typist)
## 概要
[Task1865: API実装(タスク一覧取得 | typist)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1865)

- Typist用のRepository呼び出しを追加

## レビュー対象外
- テスト実装(別Taskで対応予定)

## レビューポイント
- SQLの呼び出し回数が増え気味だが問題なさそうか
- Task一覧の取得条件は間違っていなさそうであるか

## 動作確認状況
- ローカルで確認(ユーザーグループ等は各1件程度のデータで確認)
2023-06-15 06:42:57 +00:00
Kentaro Fukunaga
42bc458632 Merged PR 155: API IF実装
## 概要
[Task1930: API IF実装](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1930)

- Typist一覧取得API、TypistGroup一覧取得API、チェックアウト候補変更APIの3本のAPIIFを実装しました。
- 既存のTask系APIで使用していた Typist クラスの名前をAssigneeに変更しました
- npm run formatでフォーマットした内容も含まれています。

## レビューポイント
- IFはラフスケッチで合意した内容に沿っているか
- 既存のTask系APIのTypistクラスの名前変更に関して、修正抜け漏れはないか
- チェックアウト候補変更APIのリクエスト/レスポンスのクラス名は適切か

## UIの変更
- なし

## 動作確認状況
- ローカルでPostmanにてAPIIFの値が返ることを確認しました

## 補足
- 特になし
2023-06-14 07:55:22 +00:00
makabe.t
85d8221186 Merged PR 149: テスト実装(タスク一覧取得|admin)
## 概要
[Task1955: テスト実装(タスク一覧取得|admin)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1955)

- タスク一覧のテストを実装しました。
  - adminの時のテストだけです
  - テストとテストに必要なmockを実装しています。

## レビューポイント
- テスト項目として不足はないか
- mockの構成に問題はないか

## UIの変更
- なし

## 動作確認状況
- ローカルで確認
  - テスト実行
2023-06-13 04:23:21 +00:00
湯本 開
26098cc400 Merged PR 130: API実装(タスク一覧取得 | admin)
## 概要
[Task1831: API実装(タスク一覧取得 | admin)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1831)

- AdminがAPIを呼び出したときの処理である、アカウント内のTask情報すべてを取得するロジックを実装

## レビュー対象外
- Transcription開始日時と終了日時が必須プロパティになっている
  - [Task一覧APIのResponseで省略可能でないといけないプロパティが必須になっている箇所を修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1956)で修正予定のため
- ユニットテストが未実装
  - [テスト実装(タスク一覧取得 | admin)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1955)で実施予定のため
- API I/Fのstatusのバリデーションがされていない
  - [Task一覧APIのstatusの入力チェックを行うデコレータを実装する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1957)で実施予定のため

## レビューポイント
1. SQLの発行方法は問題なさそうか
   - ~.entityに依存関係を記述( `@OneToOne(...)` や `@OneToMany(...)` )し、TypeORMでの取得時の挙動に任せる方法でよさそうか
2. Permissionテーブル以下も含めて一括でTypeORMによるクエリビルダーに任せたかったが、他の上手くいっている構造と同じ指定をしてもSQL発行時に指定したカラム名を取ってこなくなるという問題が解決できなかったため、2回に分けて取ってくるようにしたが許容可能そうか?
3. 各テーブルでRepositoryを作ってEntityを定義し、他RepositoryからはそのRepository配下のディレクトリを参照するという形を取ってみたが、方針として問題ないか
   - 各テーブルを個別に取得したい場合があるかも?という予想があったため
4. Serviceのつくりとして問題はなさそうか(roleによる呼び分けの実装方法など)
5. RepositoryDTO→ControllerDTOの型変換が複雑であったため、専用のconvert.tsというファイルに分離したが、方針として問題なさそうか

## 動作確認状況
- ローカルで確認
2023-06-12 03:50:48 +00:00
湯本 開
1ced5ef66d Merged PR 123: API実装(I/F実装)
## 概要
[Task1836: API実装(I/F実装)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1836)

- タスクのソート条件更新APIのI/Fを実装
- タスク一覧APIのI/Fを修正
- TODO/XXXですぐ対処可能、または単純に消し忘れているものを対処

## レビューポイント
- API I/Fの修正は妥当な内容であるか
  - 特にfilterはカンマ区切りでいいか、指定したものを除外という形式でいいか等
- TODO/XXXの対処は妥当な対処であるか

## 動作確認状況
- ローカルでswagger表示されることを確認
2023-06-02 06:12:35 +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
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
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