package query import ( "gorm.io/gorm" ) type InventoryIssueFilter struct { ClientID string `form:"client_id"` IssuerBy string `form:"issuer_by"` PerPage int `form:"per_page"` Page int `form:"page"` Status string `form:"status"` } func ApplyInventoryIssueFilters(db *gorm.DB, filter InventoryIssueFilter) *gorm.DB { if filter.ClientID != "" { db = db.Where("client_id = ?", filter.ClientID) } if filter.IssuerBy != "" { db = db.Where("issuer_by = ?", filter.IssuerBy) } if filter.Status != "" { db = db.Where("status = ?", filter.Status) } return db }