mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-30 14:38:12 +00:00
vehicle
This commit is contained in:
@@ -45,20 +45,22 @@ export class DriversService {
|
|||||||
sortBy?: string;
|
sortBy?: string;
|
||||||
sortOrder?: 'ASC' | 'DESC';
|
sortOrder?: 'ASC' | 'DESC';
|
||||||
} = {}): Promise<Driver[]> {
|
} = {}): Promise<Driver[]> {
|
||||||
let qb = this.driverRepo.createQueryBuilder('d');
|
const qb = this.driverRepo.createQueryBuilder('d');
|
||||||
|
|
||||||
if (query.search) {
|
if (query.search) {
|
||||||
qb = qb.where(
|
const searchTerm = `%${query.search}%`;
|
||||||
'd.firstName ILIKE :search OR d.lastName ILIKE :search OR d.email ILIKE :search OR d.licenseNumber ILIKE :search OR d.phoneNumber ILIKE :search',
|
qb.where('d.firstName ILIKE :search', { search: searchTerm })
|
||||||
{ search: `%${query.search}%` },
|
.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) {
|
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
|
? query.sortBy
|
||||||
: 'createdAt';
|
: 'createdAt';
|
||||||
const sortOrder = (query.sortOrder ?? 'DESC').toUpperCase();
|
const sortOrder = (query.sortOrder ?? 'DESC').toUpperCase();
|
||||||
|
|||||||
Reference in New Issue
Block a user