From 7dd6097d42d6d6f254a84ab0111bac70f0358660 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期二, 30 四月 2024 10:20:40 +0800
Subject: [PATCH] 加一些注释

---
 models/worker_position.go |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/models/worker_position.go b/models/worker_position.go
index 0c3653d..c3a07d7 100644
--- a/models/worker_position.go
+++ b/models/worker_position.go
@@ -23,12 +23,14 @@
 	}
 	WorkerPositionSearch struct {
 		WorkerPosition
-		Order    string
-		PageNum  int
-		PageSize int
-		Orm      *gorm.DB
-		Preload  bool
-		Keyword  string
+		Order                string
+		PageNum              int
+		PageSize             int
+		Orm                  *gorm.DB
+		Preload              bool
+		Keyword              string
+		OverlappingDateStart string
+		OverlappingDateEnd   string
 	}
 )
 
@@ -85,6 +87,12 @@
 	return slf
 }
 
+func (slf *WorkerPositionSearch) SetOverlappingDate(startDate string, endDate string) *WorkerPositionSearch {
+	slf.OverlappingDateStart = startDate
+	slf.OverlappingDateEnd = endDate
+	return slf
+}
+
 func (slf *WorkerPositionSearch) build() *gorm.DB {
 	var db = slf.Orm.Table(slf.TableName())
 
@@ -98,7 +106,7 @@
 
 	if slf.Keyword != "" {
 		kw := "%" + slf.Keyword + "%"
-		db = db.Joins("Worker").Where("silk_mentor.worker_id LIKE ? or Worker.name LIKE ?", kw, kw)
+		db = db.Joins("Worker").Where("silk_worker_position.worker_id LIKE ? or Worker.name LIKE ? or silk_worker_position.workshop like ? or silk_worker_position.workshop_name like ?", kw, kw, kw, kw)
 	}
 
 	if slf.Workshop != "" {
@@ -117,6 +125,10 @@
 		db = db.Model(&WorkerPosition{}).Preload("Worker")
 	}
 
+	if slf.OverlappingDateStart != "" && slf.OverlappingDateEnd != "" {
+		db = db.Where("start_date <=  ? and end_date >= ?", slf.OverlappingDateEnd, slf.OverlappingDateStart)
+	}
+
 	return db
 }
 

--
Gitblit v1.8.0