From 81d78b5ad285b35ac7817669a3841ea37778eb86 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Fri, 6 Dec 2024 13:21:57 +0700 Subject: [PATCH] feat: add complex query support --- src/controllers/07-task-controller.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/controllers/07-task-controller.ts b/src/controllers/07-task-controller.ts index e1bfaa9..f1e58bf 100644 --- a/src/controllers/07-task-controller.ts +++ b/src/controllers/07-task-controller.ts @@ -65,12 +65,26 @@ export class TaskController extends Controller { @Query() page = 1, @Query() pageSize = 30, @Query() taskStatus?: TaskStatus, + ) { + return this.getTaskOrderListByCriteria(req, query, page, pageSize, taskStatus); + } + + @Post("list") + @Security("keycloak") + async getTaskOrderListByCriteria( + @Request() req: RequestWithUser, + @Query() query: string = "", + @Query() page = 1, + @Query() pageSize = 30, + @Query() taskStatus?: TaskStatus, + @Body() body?: { code?: string[] }, ) { const [result, total] = await prisma.$transaction([ prisma.taskOrder.findMany({ where: { taskStatus, registeredBranch: { OR: permissionCondCompany(req.user) }, + code: body?.code ? { in: body.code } : undefined, OR: [ { code: { contains: query, mode: "insensitive" } }, { taskName: { contains: query } },