fix(index) perbaikan sorting index

pull/3/head
Aswin Ashar Abdullah 2024-06-20 17:17:11 +07:00
parent 9445d561ac
commit bc0d8cbb10
1 changed files with 17 additions and 7 deletions

View File

@ -85,15 +85,25 @@ export function getOrderBy(
queryBuilder: SelectQueryBuilder<any>,
tableName: TABLE_NAME,
) {
let orderBy: string = `${tableName}.created_at`;
let orderBys: string[] = [`${ tableName }.created_at`];
const orderType = baseFilter.order_type ?? ORDER_TYPE.DESC;
if (!!baseFilter.order_by) {
orderBy =
orderBys =
baseFilter.order_by.split('.').length > 1
? `${baseFilter.order_by}`
: `${tableName}.${baseFilter.order_by}`;
? [`${ baseFilter.order_by }`]
: [`${ tableName }.${ baseFilter.order_by }`];
if (baseFilter.order_by.split('.').length == 1 && baseFilter.order_by.split('.').pop() != 'id') {
orderBys.push(`${ tableName }.created_at`)
}
}
queryBuilder.orderBy(orderBy, orderType);
for (let i = 0; i < orderBys.length; i++) {
if (i == 0) {
queryBuilder.orderBy(orderBys[i], orderType);
} else {
queryBuilder.addOrderBy(orderBys[i], orderType);
}
}
}