fix: query condition for get canceled work

This commit is contained in:
Methapon2001 2025-02-19 15:09:05 +07:00
parent ee33c7abb3
commit a9cf88d6d4
2 changed files with 28 additions and 14 deletions

View file

@ -1,4 +1,4 @@
import { PayCondition, Prisma, QuotationStatus, Status } from "@prisma/client"; import { PayCondition, Prisma, QuotationStatus, RequestDataStatus, Status } from "@prisma/client";
import config from "../config.json"; import config from "../config.json";
import { import {
Body, Body,
@ -223,12 +223,22 @@ export class QuotationController extends Controller {
requestData: hasCancel requestData: hasCancel
? { ? {
some: { some: {
requestWork: { OR: [
some: { {
creditNoteId: null, requestDataStatus: RequestDataStatus.Canceled,
stepStatus: { some: { workStatus: RequestWorkStatus.Canceled } }, requestWork: {
some: { creditNoteId: null },
},
}, },
}, {
requestWork: {
some: {
creditNoteId: null,
stepStatus: { some: { workStatus: RequestWorkStatus.Canceled } },
},
},
},
],
}, },
} }
: undefined, : undefined,

View file

@ -324,12 +324,6 @@ export class RequestListController extends Controller {
}; };
} }
if (cancelOnly) {
statusCondition = {
some: { workStatus: RequestWorkStatus.Canceled },
};
}
if (workStatus && !readyToTask && !cancelOnly) { if (workStatus && !readyToTask && !cancelOnly) {
statusCondition = { statusCondition = {
some: { workStatus }, some: { workStatus },
@ -337,8 +331,18 @@ export class RequestListController extends Controller {
} }
const where = { const where = {
stepStatus: readyToTask || cancelOnly || workStatus ? statusCondition : undefined, OR: cancelOnly
creditNote: cancelOnly ? null : undefined, ? [
{
stepStatus: { some: { workStatus: RequestWorkStatus.Canceled } },
},
{
request: { requestDataStatus: RequestDataStatus.Canceled },
},
]
: undefined,
stepStatus: readyToTask || workStatus ? statusCondition : undefined,
creditNoteId: cancelOnly ? null : undefined,
request: { request: {
id: requestDataId, id: requestDataId,
requestDataStatus: readyToTask requestDataStatus: readyToTask