diff --git a/src/controllers/06-request-list-controller.ts b/src/controllers/06-request-list-controller.ts index cbd2918..f1b4ac1 100644 --- a/src/controllers/06-request-list-controller.ts +++ b/src/controllers/06-request-list-controller.ts @@ -12,17 +12,50 @@ export class RequestListController extends Controller { @Query() page: number = 1, @Query() pageSize: number = 30, ) { - return await prisma.requestWork.findMany({ - include: { request: true }, - take: pageSize, - skip: (page - 1) * pageSize, - }); + const [result, total] = await prisma.$transaction([ + prisma.requestWork.findMany({ + include: { + request: { + include: { + quotation: true, + employee: true, + }, + }, + productService: { + include: { + service: true, + work: true, + product: true, + }, + }, + }, + take: pageSize, + skip: (page - 1) * pageSize, + }), + prisma.requestWork.count(), + ]); + + return { result, page, pageSize, total }; } @Get("{requestId}") async getRequestById(@Path() requestId: string) { return await prisma.requestWork.findFirst({ - include: { request: true }, + include: { + request: { + include: { + quotation: true, + employee: true, + }, + }, + productService: { + include: { + service: true, + work: true, + product: true, + }, + }, + }, where: { id: requestId }, }); }