docs(filter) dokumentasi filter search enum
continuous-integration/drone/tag Build is passing Details

pull/2/head devel_7.1
ashar 2024-06-10 16:01:15 +07:00
parent a8322e13e5
commit f4ddbe08a8
1 changed files with 4 additions and 0 deletions

View File

@ -15,10 +15,14 @@ export function setQueryFilterDefault(
queryBuilder.andWhere( queryBuilder.andWhere(
new Brackets((qb) => { new Brackets((qb) => {
baseFilter.statuses.map((status) => { baseFilter.statuses.map((status) => {
// trim search
const statusData = status.includes("'") const statusData = status.includes("'")
? status.trim().replace(/'/g, "''").replace(/\s+/g, ' ') ? status.trim().replace(/'/g, "''").replace(/\s+/g, ' ')
: status.trim().replace(/\s+/g, ' '); : status.trim().replace(/\s+/g, ' ');
// jika searching status terdapat dalam enum, maka dia mencari specific data
// ? karena jika tidak, ketika dia search "active" maka "inactive" juga ikut
if (STATUS[statusData.toUpperCase()]) if (STATUS[statusData.toUpperCase()])
qb.orWhere(`${tableName}.status = :statusData`, { qb.orWhere(`${tableName}.status = :statusData`, {
statusData: statusData, statusData: statusData,