Merge branch 'develop'
All checks were successful
Spell Check / Spell Check with Typos (push) Successful in 4s

This commit is contained in:
Methapon2001 2025-07-21 11:17:32 +07:00
commit 92762c512d

View file

@ -337,49 +337,51 @@ export class TaskController extends Controller {
where: { OR: taskList }, where: { OR: taskList },
}); });
return await tx.taskOrder.create({ return await tx.taskOrder
include: { .create({
taskList: { include: {
include: { taskList: {
requestWorkStep: { include: {
include: { requestWorkStep: {
requestWork: { include: {
include: { requestWork: {
request: { include: {
include: { request: {
employee: true, include: {
quotation: { employee: true,
include: { quotation: {
customerBranch: { include: {
include: { customerBranch: {
customer: true, include: {
}, customer: true,
},
},
},
},
},
productService: {
include: {
service: {
include: {
workflow: {
include: {
step: {
include: {
value: true,
responsiblePerson: {
include: { user: true },
},
responsibleInstitution: true,
},
}, },
}, },
}, },
}, },
}, },
work: true, },
product: true, productService: {
include: {
service: {
include: {
workflow: {
include: {
step: {
include: {
value: true,
responsiblePerson: {
include: { user: true },
},
responsibleInstitution: true,
},
},
},
},
},
},
work: true,
product: true,
},
}, },
}, },
}, },
@ -387,20 +389,29 @@ export class TaskController extends Controller {
}, },
}, },
}, },
institution: true,
createdBy: true,
}, },
institution: true, data: {
createdBy: true, ...rest,
}, code,
data: { urgent: work.some((v) => v.requestWork.request.quotation.urgent),
...rest, registeredBranchId: userAffiliatedBranch.id,
code, createdByUserId: req.user.sub,
urgent: work.some((v) => v.requestWork.request.quotation.urgent), taskList: { create: taskList },
registeredBranchId: userAffiliatedBranch.id, taskProduct: { create: taskProduct },
createdByUserId: req.user.sub, },
taskList: { create: taskList }, })
taskProduct: { create: taskProduct }, .then(async (v) => {
}, await prisma.notification.create({
}); data: {
title: "ใบสั่งงานใหม่ / New Task Order",
detail: "รหัส / code : " + v.code,
groupReceiver: { create: { name: "document_checker" } },
},
});
return v;
});
}); });
} }
@ -543,6 +554,7 @@ export class TaskController extends Controller {
title: "มีการส่งงาน / Task Submitted", title: "มีการส่งงาน / Task Submitted",
detail: "รหัสใบสั่งงาน / Order : " + record.code, detail: "รหัสใบสั่งงาน / Order : " + record.code,
receiverId: record.createdByUserId, receiverId: record.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
}, },
}); });
} }
@ -737,6 +749,7 @@ export class TaskActionController extends Controller {
title: "มีการส่งงาน / Task Submitted", title: "มีการส่งงาน / Task Submitted",
detail: "รหัสใบสั่งงาน / Order : " + record.code, detail: "รหัสใบสั่งงาน / Order : " + record.code,
receiverId: record.createdByUserId, receiverId: record.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
}, },
}), }),
]); ]);
@ -769,22 +782,33 @@ export class TaskActionController extends Controller {
const code = `RI${year}${month}${last.value.toString().padStart(6, "0")}`; const code = `RI${year}${month}${last.value.toString().padStart(6, "0")}`;
await Promise.all([ await Promise.all([
tx.taskOrder.update({ tx.taskOrder
where: { id: taskOrderId }, .update({
data: { where: { id: taskOrderId },
urgent: false, data: {
taskOrderStatus: TaskOrderStatus.Complete, urgent: false,
codeProductReceived: code, taskOrderStatus: TaskOrderStatus.Complete,
userTask: { codeProductReceived: code,
updateMany: { userTask: {
where: { taskOrderId }, updateMany: {
data: { where: { taskOrderId },
userTaskStatus: UserTaskStatus.Submit, data: {
userTaskStatus: UserTaskStatus.Submit,
},
}, },
}, },
}, },
}, })
}), .then(async (record) => {
await tx.notification.create({
data: {
title: "ใบงานเสร็จสิ้น / Task Complete",
detail: "รหัสใบสั่งงาน / Order : " + record.code,
receiverId: record.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
},
});
}),
tx.requestWorkStepStatus.updateMany({ tx.requestWorkStepStatus.updateMany({
where: { where: {
task: { task: {
@ -888,10 +912,28 @@ export class TaskActionController extends Controller {
if (completeCheck) completed.push(item.id); if (completeCheck) completed.push(item.id);
}); });
await tx.requestData.updateMany({ await tx.requestData
where: { id: { in: completed } }, .updateManyAndReturn({
data: { requestDataStatus: RequestDataStatus.Completed }, where: { id: { in: completed } },
}); include: {
quotation: {
select: {
createdByUserId: true,
},
},
},
data: { requestDataStatus: RequestDataStatus.Completed },
})
.then(async (res) => {
await tx.notification.createMany({
data: res.map((v) => ({
title: "รายการคำขอเสร็จสิ้น / Request Complete",
detail: "รหัส / code : " + v.code + " Completed",
receiverId: v.quotation.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
})),
});
});
await tx.quotation await tx.quotation
.updateManyAndReturn({ .updateManyAndReturn({
where: { where: {
@ -936,6 +978,7 @@ export class TaskActionController extends Controller {
title: "สถานะใบเสนอราคาเปลี่ยนแปลง / Quotation Status Updated", title: "สถานะใบเสนอราคาเปลี่ยนแปลง / Quotation Status Updated",
detail: "รหัส / code : " + v.code + " Completed", detail: "รหัส / code : " + v.code + " Completed",
receiverId: v.createdByUserId, receiverId: v.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
})), })),
}); });
@ -1176,19 +1219,21 @@ export class UserTaskController extends Controller {
}, },
}) })
.then(async (v) => { .then(async (v) => {
await tx.notification.createMany({ await tx.notification.create({
data: [ data: {
{ title: "สถานะใบส่งงานมีการเปลี่ยนแปลง / Order Status Changed",
title: "สถานะใบส่งงานมีการเปลี่ยนแปลง / Order Status Changed", detail: "รหัสใบสั่งงาน / Order : " + v.code + " InProgress",
detail: "รหัสใบสั่งงาน / Order : " + v.code + " InProgress", receiverId: v.createdByUserId,
receiverId: v.createdByUserId, groupReceiver: { create: { name: "document_checker" } },
}, },
{ });
title: "มีการรับงาน / Task Accepted", await tx.notification.create({
detail: "รหัสใบสั่งงาน / Order : " + v.code, data: {
receiverId: v.createdByUserId, title: "มีการรับงาน / Task Accepted",
}, detail: "รหัสใบสั่งงาน / Order : " + v.code,
], receiverId: v.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
},
}); });
}), }),
tx.task.updateMany({ tx.task.updateMany({