refactor: wrap in transaction
This commit is contained in:
parent
f8abb7503b
commit
de29f64aaf
1 changed files with 27 additions and 30 deletions
|
|
@ -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(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue