refactor: quotation query and relation

This commit is contained in:
Methapon Metanipat 2024-09-30 14:31:27 +07:00
parent 9358cac3f8
commit 4f4b8df9a3

View file

@ -185,17 +185,22 @@ export class QuotationController extends Controller {
@Request() req: RequestWithUser, @Request() req: RequestWithUser,
@Query() page: number = 1, @Query() page: number = 1,
@Query() pageSize: number = 30, @Query() pageSize: number = 30,
@Query() payCondition?: PayCondition,
) { ) {
const [result, total] = await prisma.$transaction([ const where = {
prisma.quotation.findMany({ payCondition,
where: {
customerBranch: { customerBranch: {
customer: { customer: {
registeredBranch: isSystem(req.user) ? undefined : { OR: permissionCond(req.user) }, registeredBranch: isSystem(req.user) ? undefined : { OR: permissionCond(req.user) },
}, },
}, },
}, } satisfies Prisma.QuotationWhereInput;
const [result, total] = await prisma.$transaction([
prisma.quotation.findMany({
where,
include: { include: {
customerBranch: true,
worker: true, worker: true,
service: { service: {
include: { include: {
@ -209,7 +214,7 @@ export class QuotationController extends Controller {
}, },
}, },
}), }),
prisma.quotation.count(), prisma.quotation.count({ where }),
]); ]);
return { result: result, page, pageSize, total }; return { result: result, page, pageSize, total };