From 1244b56738f8e76bf8074c0c6379e33aa5794293 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Fri, 13 Dec 2024 11:04:50 +0700 Subject: [PATCH] feat: add set task status --- src/controllers/07-task-controller.ts | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/controllers/07-task-controller.ts b/src/controllers/07-task-controller.ts index 86b7ba9..4aab22b 100644 --- a/src/controllers/07-task-controller.ts +++ b/src/controllers/07-task-controller.ts @@ -462,6 +462,37 @@ export class TaskActionController extends Controller { ]); } + @Post("set-task-status") + @Security("keycloak") + async changeTaskOrderTaskListStatus( + @Request() req: RequestWithUser, + @Path() taskId: string, + @Body() + body: { + step: number; + requestWorkId: string; + taskStatus: TaskStatus; + }[], + ) { + return await prisma.$transaction(async (tx) => { + const promises = body.map(async (v) => { + const record = await tx.task.findFirst({ + where: { + step: v.step, + requestWorkId: v.requestWorkId, + taskOrderId: taskId, + }, + }); + if (!record) throw notFoundError("Task List"); + return await tx.task.update({ + where: { id: record.id }, + data: { taskStatus: v.taskStatus }, + }); + }); + return await Promise.all(promises); + }); + } + @Post("submit") @Security("keycloak") async submitTaskOrder(