diff --git a/src/modules/users/repositories/users.repository.ts b/src/modules/users/repositories/users.repository.ts index 245a473..9788694 100755 --- a/src/modules/users/repositories/users.repository.ts +++ b/src/modules/users/repositories/users.repository.ts @@ -119,10 +119,21 @@ export class UserRepository extends Repository { .loadRelationCountAndMap("user.ticketsCount", "user.tickets"); if (queryDto.q) { - queryBuilder - .orWhere("user.firstName ILIKE :search", { search: `%${queryDto.q}%` }) - .orWhere("user.lastName ILIKE :search", { search: `%${queryDto.q}%` }) - .orWhere("user.userName ILIKE :search", { search: `%${queryDto.q}%` }); + queryBuilder.andWhere( + `( + user.firstName ILIKE :search + OR user.lastName ILIKE :search + OR CONCAT(user.firstName, ' ', user.lastName) ILIKE :search + OR user.userName ILIKE :search + OR user.phone ILIKE :search + OR legalUser.registrationName ILIKE :search + OR legalUser.phone ILIKE :search + OR realUser.firstName ILIKE :search + OR realUser.lastName ILIKE :search + OR realUser.phone ILIKE :search + )`, + { search: `%${queryDto.q}%` }, + ); } return queryBuilder.getMany(); @@ -166,10 +177,21 @@ export class UserRepository extends Repository { .loadRelationCountAndMap("user.ticketsCount", "user.tickets"); if (queryDto.q) { - queryBuilder - .orWhere("user.firstName ILIKE :search", { search: `%${queryDto.q}%` }) - .orWhere("user.lastName ILIKE :search", { search: `%${queryDto.q}%` }) - .orWhere("user.userName ILIKE :search", { search: `%${queryDto.q}%` }); + queryBuilder.andWhere( + `( + user.firstName ILIKE :search + OR user.lastName ILIKE :search + OR CONCAT(user.firstName, ' ', user.lastName) ILIKE :search + OR user.userName ILIKE :search + OR user.phone ILIKE :search + OR legalUser.registrationName ILIKE :search + OR legalUser.phone ILIKE :search + OR realUser.firstName ILIKE :search + OR realUser.lastName ILIKE :search + OR realUser.phone ILIKE :search + )`, + { search: `%${queryDto.q}%` }, + ); } return await queryBuilder