From cc7c2094568ea8f9d1697da5ed0a2c759ca81abd Mon Sep 17 00:00:00 2001
From: yinbentan <yinbentan@live.com>
Date: 星期五, 30 八月 2024 17:18:30 +0800
Subject: [PATCH] 方法修改,修改薪资列表,添加分页查询

---
 controllers/worker_position_controller.go |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/controllers/worker_position_controller.go b/controllers/worker_position_controller.go
index 51015a3..c66e5c3 100644
--- a/controllers/worker_position_controller.go
+++ b/controllers/worker_position_controller.go
@@ -3,7 +3,6 @@
 import (
 	"github.com/gin-gonic/gin"
 	"github.com/spf13/cast"
-	"gorm.io/gorm"
 	"silkserver/controllers/request"
 	"silkserver/extend/code"
 	"silkserver/extend/util"
@@ -31,9 +30,9 @@
 	}
 
 	//鏌ヨ鏄惁閲嶅
-	_, err = models.NewWorkerPositionSearch().SetWorkerID(params.WorkerId).First()
-	if err != gorm.ErrRecordNotFound {
-		util.ResponseFormat(c, code.RequestParamError, "璇峰嬁閲嶅娣诲姞")
+	_, err = models.NewWorkerPositionSearch().SetWorkerID(params.WorkerId).SetOverlappingDate(params.StartDate, params.EndDate).First()
+	if err == nil {
+		util.ResponseFormat(c, code.RequestParamError, "鏃堕棿鑼冨洿鍜岃宸ヤ汉浠ュ線娣诲姞璁板綍鏈夐噸澶嶏紝璇锋鏌�")
 		return
 	}
 
@@ -81,6 +80,15 @@
 		return
 	}
 
+	//鏌ヨ鏄惁閲嶅
+	old, err := models.NewWorkerPositionSearch().SetWorkerID(params.WorkerId).First()
+	if err == nil {
+		if old.ID != params.Id {
+			util.ResponseFormat(c, code.RequestParamError, "鏃堕棿鑼冨洿鍜岃宸ヤ汉浠ュ線娣诲姞璁板綍鏈夐噸澶嶏紝璇锋鏌�")
+			return
+		}
+	}
+
 	record := &models.WorkerPosition{
 		StartDate:           params.StartDate,
 		EndDate:             params.EndDate,
@@ -120,7 +128,7 @@
 		util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
 		return
 	}
-	WorkerPositions, total, err := models.NewWorkerPositionSearch().SetPage(params.Page, params.PageSize).SetKeyword(params.Keyword).SetPreload().Find()
+	WorkerPositions, total, err := models.NewWorkerPositionSearch().SetPage(params.Page, params.PageSize).SetKeyword(params.Keyword).SetPreload().SetOrder("id desc").Find()
 	if err != nil {
 		util.ResponseFormat(c, code.RequestParamError, "鏌ヨ澶辫触")
 		return

--
Gitblit v1.8.0