This commit is contained in:
natib21
2026-06-19 12:06:01 +00:00
parent 4c37426040
commit fb8ade77cd

View File

@@ -45,20 +45,22 @@ export class DriversService {
sortBy?: string;
sortOrder?: 'ASC' | 'DESC';
} = {}): Promise<Driver[]> {
let qb = this.driverRepo.createQueryBuilder('d');
const qb = this.driverRepo.createQueryBuilder('d');
if (query.search) {
qb = qb.where(
'd.firstName ILIKE :search OR d.lastName ILIKE :search OR d.email ILIKE :search OR d.licenseNumber ILIKE :search OR d.phoneNumber ILIKE :search',
{ search: `%${query.search}%` },
);
const searchTerm = `%${query.search}%`;
qb.where('d.firstName ILIKE :search', { search: searchTerm })
.orWhere('d.lastName ILIKE :search', { search: searchTerm })
.orWhere('d.email ILIKE :search', { search: searchTerm })
.orWhere('d.licenseNumber ILIKE :search', { search: searchTerm })
.orWhere('d.phoneNumber ILIKE :search', { search: searchTerm });
}
if (query.status) {
qb = qb.andWhere('d.status = :status', { status: query.status });
qb.andWhere('d.status = :status', { status: query.status });
}
const sortBy = ['firstName', 'lastName', 'status', 'createdAt'].includes(query.sortBy ?? '')
const sortBy = query.sortBy && ['firstName', 'lastName', 'status', 'createdAt'].includes(query.sortBy)
? query.sortBy
: 'createdAt';
const sortOrder = (query.sortOrder ?? 'DESC').toUpperCase();