From 213ec2856590c4544c5a9b975a4f8ce51707476b Mon Sep 17 00:00:00 2001 From: Methapon Metanipat Date: Mon, 9 Sep 2024 14:59:15 +0700 Subject: [PATCH] refactor: only query if have --- .../03-customer-branch-controller.ts | 50 ++++++++++--------- 1 file changed, 26 insertions(+), 24 deletions(-) diff --git a/src/controllers/03-customer-branch-controller.ts b/src/controllers/03-customer-branch-controller.ts index 7fe51e4..0d6504f 100644 --- a/src/controllers/03-customer-branch-controller.ts +++ b/src/controllers/03-customer-branch-controller.ts @@ -152,30 +152,32 @@ export class CustomerBranchController extends Controller { @Query() pageSize: number = 30, ) { const where = { - OR: [ - { registerName: { contains: query } }, - { registerNameEN: { contains: query } }, - { email: { contains: query } }, - { code: { contains: query } }, - { address: { contains: query } }, - { addressEN: { contains: query } }, - { province: { name: { contains: query } } }, - { province: { nameEN: { contains: query } } }, - { district: { name: { contains: query } } }, - { district: { nameEN: { contains: query } } }, - { subDistrict: { name: { contains: query } } }, - { subDistrict: { nameEN: { contains: query } } }, - { - customer: { - OR: [ - { firstName: { contains: query } }, - { firstNameEN: { contains: query } }, - { lastName: { contains: query } }, - { lastNameEN: { contains: query } }, - ], - }, - }, - ], + OR: query + ? [ + { registerName: { contains: query } }, + { registerNameEN: { contains: query } }, + { email: { contains: query } }, + { code: { contains: query } }, + { address: { contains: query } }, + { addressEN: { contains: query } }, + { province: { name: { contains: query } } }, + { province: { nameEN: { contains: query } } }, + { district: { name: { contains: query } } }, + { district: { nameEN: { contains: query } } }, + { subDistrict: { name: { contains: query } } }, + { subDistrict: { nameEN: { contains: query } } }, + { + customer: { + OR: [ + { firstName: { contains: query } }, + { firstNameEN: { contains: query } }, + { lastName: { contains: query } }, + { lastNameEN: { contains: query } }, + ], + }, + }, + ] + : undefined, AND: { customer: isSystem(req.user) ? undefined