summaryrefslogtreecommitdiff
path: root/lib/admin-users/service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/admin-users/service.ts')
-rw-r--r--lib/admin-users/service.ts24
1 files changed, 18 insertions, 6 deletions
diff --git a/lib/admin-users/service.ts b/lib/admin-users/service.ts
index 2b6bed83..c253f481 100644
--- a/lib/admin-users/service.ts
+++ b/lib/admin-users/service.ts
@@ -53,15 +53,27 @@ export async function getUsers(input: GetUsersSchema) {
joinOperator: input.joinOperator,
});
- // (2) globalWhere
+ // (2) globalWhere - 선택된 컬럼 대상 검색
let globalWhere;
if (input.search) {
const s = `%${input.search}%`;
- globalWhere = or(
- ilike(userView.user_name, s),
- ilike(userView.user_email, s),
- ilike(userView.company_name, s)
- );
+
+ // 검색 대상 컬럼들
+ const searchableColumns = [
+ userView.user_name,
+ userView.user_email,
+ userView.user_phone,
+ userView.employee_number,
+ userView.dept_name,
+ userView.knox_id,
+ ];
+
+ // 검색 조건 생성
+ const searchConditions = searchableColumns
+ .filter(col => col !== undefined)
+ .map(col => ilike(col, s));
+
+ globalWhere = or(...searchConditions);
}
// (3) 디폴트 domainWhere = eq(userView.domain, "partners")