refactor: wrap in transaction

This commit is contained in:
Methapon2001 2024-12-24 16:04:54 +07:00
parent f8abb7503b
commit de29f64aaf

View file

@ -512,39 +512,37 @@ export class TaskActionController extends Controller {
if (!record) throw notFoundError("Task Order");
await prisma.$transaction([
prisma.taskOrder.update({
where: { id: taskOrderId },
data: { taskOrderStatus: TaskOrderStatus.Complete },
}),
prisma.requestWorkStepStatus.updateMany({
await prisma.$transaction(async (tx) => {
await Promise.all([
tx.taskOrder.update({
where: { id: taskOrderId },
data: { taskOrderStatus: TaskOrderStatus.Complete },
}),
tx.requestWorkStepStatus.updateMany({
where: {
task: {
some: { taskOrderId, taskStatus: TaskStatus.Redo },
},
},
data: { workStatus: RequestWorkStatus.Ready },
}),
tx.task.updateMany({
where: {
taskOrderId: taskOrderId,
taskStatus: TaskStatus.Validate,
requestWorkStep: { responsibleUserId: submitUserId },
},
data: { taskStatus: TaskStatus.Complete },
}),
]);
await tx.requestWorkStepStatus.updateMany({
where: {
task: {
some: { taskOrderId, taskStatus: TaskStatus.Redo },
some: { taskOrderId, taskStatus: TaskStatus.Complete },
},
},
data: { workStatus: RequestWorkStatus.Ready },
}),
prisma.task.updateMany({
where: {
taskOrderId: taskOrderId,
taskStatus: TaskStatus.Validate,
requestWorkStep: { responsibleUserId: submitUserId },
},
data: { taskStatus: TaskStatus.Complete },
}),
]);
await prisma.requestWorkStepStatus.updateMany({
where: {
task: {
some: { taskOrderId, taskStatus: TaskStatus.Complete },
},
},
data: { workStatus: RequestWorkStatus.Completed },
});
await prisma.$transaction(async (tx) => {
data: { workStatus: RequestWorkStatus.Completed },
});
const requestList = await tx.requestData.findMany({
include: {
requestWork: {
@ -578,7 +576,6 @@ export class TaskActionController extends Controller {
const completed: string[] = [];
requestList.forEach((item) => {
console.log(item);
const completeCheck = item.requestWork.every((work) => {
const stepCount =
work.productService.work?.productOnWork.find(