From 4065268820bb548e5277f719d8f6561145ce2ed5 Mon Sep 17 00:00:00 2001 From: Kentaro Fukunaga Date: Wed, 14 Jun 2023 09:50:58 +0000 Subject: [PATCH] =?UTF-8?q?Merged=20PR=20159:=20Task=E4=B8=80=E8=A6=A7?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E3=81=AE=E3=80=81=E6=96=87=E5=AD=97=E8=B5=B7?= =?UTF-8?q?=E3=81=93=E3=81=97=E6=8B=85=E5=BD=93=E8=80=85=E3=81=AE=E5=9E=8B?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 概要 [Task1987: Task一覧取得の、文字起こし担当者の型を修正する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1987) - 型の修正および、既存コードでAssigeeを使うべきでないところをTypistを使うように修正しました ## レビューポイント - 対応抜け漏れ無いか ## UIの変更 - なし ## 動作確認状況 - ローカルでビルド通ることを確認 - ローカルで既存テストに影響ないことを確認 --- dictation_server/src/api/odms/openapi.json | 6 ++---- .../src/features/tasks/types/convert.ts | 13 +++++++++++-- dictation_server/src/features/tasks/types/types.ts | 3 ++- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/dictation_server/src/api/odms/openapi.json b/dictation_server/src/api/odms/openapi.json index 3d38853..9a5c27a 100644 --- a/dictation_server/src/api/odms/openapi.json +++ b/dictation_server/src/api/odms/openapi.json @@ -2551,7 +2551,7 @@ "description": "割り当てられたユーザー", "allOf": [ { - "$ref": "#/components/schemas/Assignee" + "$ref": "#/components/schemas/Typist" } ] }, @@ -2593,9 +2593,7 @@ "isEncrypted", "jobNumber", "assignees", - "status", - "transcriptionStartedDate", - "transcriptionFinishedDate" + "status" ] }, "TasksResponse": { diff --git a/dictation_server/src/features/tasks/types/convert.ts b/dictation_server/src/features/tasks/types/convert.ts index fcd164e..794f757 100644 --- a/dictation_server/src/features/tasks/types/convert.ts +++ b/dictation_server/src/features/tasks/types/convert.ts @@ -5,6 +5,7 @@ import { CheckoutPermission as CheckoutPermissionEntity } from '../../../reposit import { AudioOptionItem as AudioOptionItemEntity } from '../../../repositories/audio_option_items/entity/audio_option_item.entity'; import { Task, Assignee } from './types'; import { AudioOptionItem } from '../../files/types/types'; +import { Typist } from '../../../features/accounts/types/types'; // Repository側のDTOからTaskオブジェクトの一覧を構築する export const createTasks = ( @@ -41,8 +42,8 @@ const createTask = ( const assignees = createAssignees(permissions); // RepositoryDTO => ControllerDTOに変換 - const typist: Assignee = - typist_user != null ? convertUserToAssignee(typist_user) : undefined; + const typist: Typist = + typist_user != null ? convertUserToTypist(typist_user) : undefined; return { audioFileId: task.audio_file_id, @@ -114,3 +115,11 @@ const convertUserGroupToAssignee = (userGroup: UserGroupEntity): Assignee => { typistName: userGroup.name, }; }; + +// RepositoryDTOのUserからTypistオブジェクトを生成します +const convertUserToTypist = (user: UserEntity): Typist => { + return { + id: user.id, + name: `USER_${user?.external_id}`, // XXX Azure AD B2Cから取得した名前を入れる + }; +}; diff --git a/dictation_server/src/features/tasks/types/types.ts b/dictation_server/src/features/tasks/types/types.ts index 381f73b..0bc2d09 100644 --- a/dictation_server/src/features/tasks/types/types.ts +++ b/dictation_server/src/features/tasks/types/types.ts @@ -4,6 +4,7 @@ import { Type } from 'class-transformer'; import { IsIn, IsInt, IsOptional, Min } from 'class-validator'; import { TASK_LIST_SORTABLE_ATTRIBUTES } from '../../../constants'; import { IsStatus } from '../../../common/validators/status.validator'; +import { Typist } from '../../../features/accounts/types/types'; export class TasksRequest { @ApiProperty({ @@ -128,7 +129,7 @@ export class Task { required: false, description: '割り当てられたユーザー', }) - typist?: Assignee | undefined; + typist?: Typist | undefined; @ApiProperty({ type: [Assignee], description: