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 },
});
return await tx.taskOrder.create({
include: {
taskList: {
include: {
requestWorkStep: {
include: {
requestWork: {
include: {
request: {
include: {
employee: true,
quotation: {
include: {
customerBranch: {
include: {
customer: true,
},
},
},
},
},
},
productService: {
include: {
service: {
include: {
workflow: {
include: {
step: {
include: {
value: true,
responsiblePerson: {
include: { user: true },
},
responsibleInstitution: true,
},
return await tx.taskOrder
.create({
include: {
taskList: {
include: {
requestWorkStep: {
include: {
requestWork: {
include: {
request: {
include: {
employee: true,
quotation: {
include: {
customerBranch: {
include: {
customer: 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,
createdBy: true,
},
data: {
...rest,
code,
urgent: work.some((v) => v.requestWork.request.quotation.urgent),
registeredBranchId: userAffiliatedBranch.id,
createdByUserId: req.user.sub,
taskList: { create: taskList },
taskProduct: { create: taskProduct },
},
});
data: {
...rest,
code,
urgent: work.some((v) => v.requestWork.request.quotation.urgent),
registeredBranchId: userAffiliatedBranch.id,
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",
detail: "รหัสใบสั่งงาน / Order : " + record.code,
receiverId: record.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
},
});
}
@ -737,6 +749,7 @@ export class TaskActionController extends Controller {
title: "มีการส่งงาน / Task Submitted",
detail: "รหัสใบสั่งงาน / Order : " + record.code,
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")}`;
await Promise.all([
tx.taskOrder.update({
where: { id: taskOrderId },
data: {
urgent: false,
taskOrderStatus: TaskOrderStatus.Complete,
codeProductReceived: code,
userTask: {
updateMany: {
where: { taskOrderId },
data: {
userTaskStatus: UserTaskStatus.Submit,
tx.taskOrder
.update({
where: { id: taskOrderId },
data: {
urgent: false,
taskOrderStatus: TaskOrderStatus.Complete,
codeProductReceived: code,
userTask: {
updateMany: {
where: { taskOrderId },
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({
where: {
task: {
@ -888,10 +912,28 @@ export class TaskActionController extends Controller {
if (completeCheck) completed.push(item.id);
});
await tx.requestData.updateMany({
where: { id: { in: completed } },
data: { requestDataStatus: RequestDataStatus.Completed },
});
await tx.requestData
.updateManyAndReturn({
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
.updateManyAndReturn({
where: {
@ -936,6 +978,7 @@ export class TaskActionController extends Controller {
title: "สถานะใบเสนอราคาเปลี่ยนแปลง / Quotation Status Updated",
detail: "รหัส / code : " + v.code + " Completed",
receiverId: v.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
})),
});
@ -1176,19 +1219,21 @@ export class UserTaskController extends Controller {
},
})
.then(async (v) => {
await tx.notification.createMany({
data: [
{
title: "สถานะใบส่งงานมีการเปลี่ยนแปลง / Order Status Changed",
detail: "รหัสใบสั่งงาน / Order : " + v.code + " InProgress",
receiverId: v.createdByUserId,
},
{
title: "มีการรับงาน / Task Accepted",
detail: "รหัสใบสั่งงาน / Order : " + v.code,
receiverId: v.createdByUserId,
},
],
await tx.notification.create({
data: {
title: "สถานะใบส่งงานมีการเปลี่ยนแปลง / Order Status Changed",
detail: "รหัสใบสั่งงาน / Order : " + v.code + " InProgress",
receiverId: v.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
},
});
await tx.notification.create({
data: {
title: "มีการรับงาน / Task Accepted",
detail: "รหัสใบสั่งงาน / Order : " + v.code,
receiverId: v.createdByUserId,
groupReceiver: { create: { name: "document_checker" } },
},
});
}),
tx.task.updateMany({