From 7ab1a94782a21cd20afac5fa459ca4a1d43fe531 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Fri, 24 Jan 2025 09:40:54 +0700 Subject: [PATCH] feat: add urgent task order field --- prisma/schema.prisma | 2 ++ src/controllers/07-task-controller.ts | 31 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index d90b7f9..2cc73fe 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -1552,6 +1552,8 @@ model TaskOrder { contactName String contactTel String + urgent Boolean @default(false) + institution Institution @relation(fields: [institutionId], references: [id]) institutionId String diff --git a/src/controllers/07-task-controller.ts b/src/controllers/07-task-controller.ts index bd9da4c..1b8737a 100644 --- a/src/controllers/07-task-controller.ts +++ b/src/controllers/07-task-controller.ts @@ -295,6 +295,21 @@ export class TaskController extends Controller { ); } + const work = await tx.requestWorkStepStatus.findMany({ + include: { + requestWork: { + include: { + request: { + include: { + quotation: true, + }, + }, + }, + }, + }, + where: { OR: taskList }, + }); + return await tx.taskOrder.create({ include: { taskList: { @@ -352,6 +367,7 @@ export class TaskController extends Controller { data: { ...rest, code, + urgent: work.some((v) => v.requestWork.request.quotation.urgent), registeredBranchId: userAffiliatedBranch.id, createdByUserId: req.user.sub, taskList: { create: taskList }, @@ -437,6 +453,19 @@ export class TaskController extends Controller { data: { workStatus: RequestWorkStatus.InProgress }, }); + const work = await tx.requestWorkStepStatus.findMany({ + include: { + requestWork: { + include: { + request: { + include: { quotation: true }, + }, + }, + }, + }, + where: { OR: body.taskList }, + }); + return await tx.taskOrder.update({ where: { id: taskOrderId }, include: { @@ -455,6 +484,7 @@ export class TaskController extends Controller { }, data: { ...body, + urgent: work.some((v) => v.requestWork.request.quotation.urgent), taskList: { deleteMany: record?.taskList .filter( @@ -629,6 +659,7 @@ export class TaskActionController extends Controller { tx.taskOrder.update({ where: { id: taskOrderId }, data: { + urgent: false, taskOrderStatus: TaskOrderStatus.Complete, userTask: { updateMany: {