From dd97f2626579ca8be69b9b6d68ce9d592b62eb6a Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期五, 22 十二月 2023 15:03:26 +0800
Subject: [PATCH] 使用系统设置修改

---
 model/client.go |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/model/client.go b/model/client.go
index a9a5e1c..2f40162 100644
--- a/model/client.go
+++ b/model/client.go
@@ -71,6 +71,9 @@
 	if slf.Name != "" {
 		db.Where("name = ?", slf.Name)
 	}
+	if slf.Number != "" {
+		db.Where("number = ?", slf.Number)
+	}
 
 	if len(slf.SearchMap) > 0 {
 		for key, value := range slf.SearchMap {
@@ -114,17 +117,21 @@
 					db = db.Joins("Member").Where("Member.username LIKE ?", "%"+v+"%")
 				}
 
-			case int, uint, int64, float64:
+			case int, uint, int64, float64, bool:
 				if key == "id" || key == "client_type_id" || key == "client_status_id" || key == "member_id" {
 					db = db.Where(key+" = ?", v)
 				}
 
-				if key == "not_admin" {
-					if v == float64(constvar.NotAdminYes) {
-						db = db.Where("clients.member_id != ?", constvar.UserTypeSuper)
-					} else {
-						db = db.Where("clients.member_id = ?", constvar.UserTypeSuper)
+				if key == "is_public" {
+					if val, ok := v.(bool); ok {
+						if val {
+							db = db.Where("clients.member_id = ?", 0)
+						}
 					}
+				}
+			case []int:
+				if key == "member_ids" {
+					db = db.Where("clients.member_id in ?", v)
 				}
 
 			}
@@ -234,3 +241,11 @@
 	slf.Orm = slf.Orm.Where("id in (?)", ids)
 	return slf
 }
+
+func (slf *ClientSearch) FindAll() ([]*Client, error) {
+	var db = slf.build()
+	var records = make([]*Client, 0)
+
+	err := db.Find(&records).Error
+	return records, err
+}

--
Gitblit v1.8.0