refactor: wrap inside transaction

This commit is contained in:
Methapon2001 2024-12-26 10:34:28 +07:00
parent f7c84e21f7
commit 8032906a2d

View file

@ -506,40 +506,40 @@ export class RequestListController extends Controller {
) {
if (!payload.responsibleUserId) payload.responsibleUserId = undefined;
const record = await prisma.requestWorkStepStatus.upsert({
include: {
requestWork: true,
},
where: {
step_requestWorkId: {
await prisma.$transaction(async (tx) => {
const record = await tx.requestWorkStepStatus.upsert({
include: {
requestWork: true,
},
where: {
step_requestWorkId: {
step: step,
requestWorkId,
},
},
create: {
...payload,
step: step,
requestWorkId,
},
},
create: {
...payload,
step: step,
requestWorkId,
},
update: payload,
});
update: payload,
});
switch (payload.workStatus) {
case "InProgress":
case "Waiting":
case "Validate":
case "Completed":
case "Ended":
await prisma.requestData.update({
where: {
id: record.requestWork.requestDataId,
},
data: { requestDataStatus: "InProgress" },
});
break;
}
switch (payload.workStatus) {
case "InProgress":
case "Waiting":
case "Validate":
case "Completed":
case "Ended":
await tx.requestData.update({
where: {
id: record.requestWork.requestDataId,
},
data: { requestDataStatus: "InProgress" },
});
break;
}
await prisma.$transaction(async (tx) => {
const requestList = await tx.requestData.findMany({
include: {
requestWork: {