fixing filter query search + base filtering
This commit is contained in:
@@ -71,13 +71,9 @@ func (r kategoriRepo) SearchableListDokter(c *gin.Context) ([]DokterModel, error
|
||||
},
|
||||
}
|
||||
|
||||
// filtering KSM is not null
|
||||
ksmFilter := []queryUtils.DynamicFilter{
|
||||
{Column: "dp.KSM", Operator: queryUtils.OpNotNull},
|
||||
}
|
||||
query.Filters = append(query.Filters, queryUtils.FilterGroup{Filters: ksmFilter, LogicOp: "AND"})
|
||||
|
||||
// TODO : build query KSM_FILTER AND (SEARCH_FILTER), current condition are all filter with OR operator
|
||||
// base filtering
|
||||
var baseFilter []queryUtils.DynamicFilter
|
||||
baseFilter = append(baseFilter, queryUtils.DynamicFilter{Column: "dp.KSM", Operator: queryUtils.OpNotNull})
|
||||
|
||||
// filtering search results
|
||||
if search != "" {
|
||||
@@ -87,9 +83,14 @@ func (r kategoriRepo) SearchableListDokter(c *gin.Context) ([]DokterModel, error
|
||||
{Column: "dp.Nama_belakang", Operator: queryUtils.OpILike, Value: "%" + search + "%"},
|
||||
{Column: "dk.Nama_ksm", Operator: queryUtils.OpILike, Value: "%" + search + "%"},
|
||||
}
|
||||
|
||||
query.Filters = append(query.Filters, queryUtils.FilterGroup{Filters: searchFilters, LogicOp: "OR"})
|
||||
}
|
||||
|
||||
if len(baseFilter) > 0 {
|
||||
query.Filters = append(query.Filters, queryUtils.FilterGroup{Filters: baseFilter, LogicOp: "AND"})
|
||||
}
|
||||
|
||||
dbconn, err := r.db.GetSQLXDB(DB_NAME)
|
||||
if err != nil {
|
||||
log.Fatalf("unable to connect db %s", err)
|
||||
|
||||
Reference in New Issue
Block a user