diff --git a/soul-api/internal/handler/db.go b/soul-api/internal/handler/db.go index f161f9e2..313e23b5 100644 --- a/soul-api/internal/handler/db.go +++ b/soul-api/internal/handler/db.go @@ -531,7 +531,9 @@ func DBUsersList(c *gin.Context) { pattern := "%" + search + "%" q = q.Where("COALESCE(nickname,'') LIKE ? OR COALESCE(phone,'') LIKE ? OR id LIKE ?", pattern, pattern, pattern) } - if vipFilter == "true" || vipFilter == "1" { + if poolFilter == "complete" { + q = q.Where("(phone IS NOT NULL AND phone != '') AND (nickname IS NOT NULL AND nickname != '')") + } else if vipFilter == "true" || vipFilter == "1" { q = q.Where("id IN (SELECT user_id FROM orders WHERE product_type IN ? AND (status = ? OR status = ?)) OR (is_vip = 1 AND vip_expire_date > ?)", []string{"fullbook", "vip"}, "paid", "completed", time.Now()) }