From 067650e77790adeb5222b7736649cb5b6b016162 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期日, 28 四月 2024 10:49:44 +0800
Subject: [PATCH] 时间范围和该工人以往添加记录重复性校验

---
 controllers/dict.go |   25 ++++++++++++++++++-------
 1 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/controllers/dict.go b/controllers/dict.go
index f5b2799..31f0965 100644
--- a/controllers/dict.go
+++ b/controllers/dict.go
@@ -88,16 +88,19 @@
 }
 
 func (slf DictController) ParamsCheck(params models.Dict) (err error) {
-	dict, err := models.NewDictSearch().SetNumber(params.Number).First()
-	if err != gorm.ErrRecordNotFound && dict != nil && dict.ID != params.ID {
-		return errors.New("缂栧彿閲嶅")
+	if params.Name == "" {
+		return errors.New("鍙傛暟缂哄け")
 	}
-
-	dict, err = models.NewDictSearch().SetName(params.Name).First()
+	dict, err := models.NewDictSearch().SetName(params.Name).First()
 	if err != gorm.ErrRecordNotFound && dict != nil && dict.ID != params.ID {
 		return errors.New("鍚嶇О閲嶅")
 	}
-
+	if params.Number != "" {
+		dict, err := models.NewDictSearch().SetDictType(params.DictType).SetNumber(params.Number).First()
+		if err != gorm.ErrRecordNotFound && dict != nil && dict.ID != params.ID {
+			return errors.New("缂栧彿閲嶅")
+		}
+	}
 	return nil
 }
 
@@ -115,7 +118,11 @@
 		return
 	}
 
-	list, err := models.NewDictSearch().SetDictType(params.DictType).FindAll()
+	search := models.NewDictSearch()
+	if params.DictType != nil {
+		search = search.SetDictType(params.DictType)
+	}
+	list, err := search.SetKeyword(params.Keyword).FindAll()
 
 	if err != nil {
 		util.ResponseFormat(c, code.RequestParamError, "鏌ユ壘澶辫触")
@@ -140,6 +147,10 @@
 	}
 
 	id := convertx.StringToUInt(idStr)
+	if id == 0 {
+		util.ResponseFormat(c, code.RequestParamError, "绌虹殑璁板綍id")
+		return
+	}
 	err := models.NewDictSearch().SetID(id).Delete()
 	if err != nil {
 		util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎澶辫触")

--
Gitblit v1.8.0