7 Commits

Author SHA1 Message Date
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