From a904aa32e66688ba76c9e4b71b6738b0ba5f5d4f Mon Sep 17 00:00:00 2001
From: yinbentan <yinbentan@live.com>
Date: 星期四, 25 七月 2024 11:44:09 +0800
Subject: [PATCH] 添加字段,工种添加工种编码,用于计算工资(id无法固定工种信息)

---
 models/fineness_check.go          |   22 ++++++++---
 models/fineness.go                |   10 +++++
 models/worker_position.go         |    1 
 models/worker.go                  |    3 +
 models/raw_silk_price_standard.go |   26 +++++++++++++
 5 files changed, 55 insertions(+), 7 deletions(-)

diff --git a/models/fineness.go b/models/fineness.go
index 3fedf1a..32a86bd 100644
--- a/models/fineness.go
+++ b/models/fineness.go
@@ -17,6 +17,7 @@
 		WorkshopNumber  string          `gorm:"type:varchar(255);comment:杞﹂棿缂栧彿" json:"workshopNumber" `           // 杞﹂棿缂栧彿
 		WorkshopName    string          `gorm:"type:varchar(255);comment:杞﹂棿鍚嶇О" json:"workshopName" `             // 杞﹂棿鍚嶇О
 		WorkshopGroup   int             `gorm:"type:int(11);not null;default:0;comment:杞︾粍" json:"workshopGroup"` //杞︾粍
+		MarketId        uint            `gorm:"type:int(11);comment:搴勫彛ID" json:"marketId"`                       //搴勫彛ID
 		MarketNumber    string          `gorm:"size:255;comment:搴勫彛" json:"marketNumber"`                         //搴勫彛缂栧彿
 		Market          string          `gorm:"type:varchar(255);not null;comment:搴勫彛" json:"market"`             //搴勫彛鍚嶇О
 		Spec            string          `gorm:"type:varchar(255);not null;comment:瑙勬牸" json:"spec"`               //瑙勬牸
@@ -101,6 +102,11 @@
 	return slf
 }
 
+func (slf *FinenessRegisterSearch) SetFinishDate(finishDate string) *FinenessRegisterSearch {
+	slf.FinishDate = finishDate
+	return slf
+}
+
 func (slf *FinenessRegisterSearch) build() *gorm.DB {
 	var db = slf.Orm.Table(slf.TableName())
 
@@ -140,6 +146,10 @@
 		db = db.Where("workshop_group = ?", slf.WorkshopGroup)
 	}
 
+	if slf.FinishDate != "" {
+		db = db.Where("finish_date = ?", slf.FinishDate)
+	}
+
 	return db
 }
 
diff --git a/models/fineness_check.go b/models/fineness_check.go
index 278189c..180aa1a 100644
--- a/models/fineness_check.go
+++ b/models/fineness_check.go
@@ -26,12 +26,13 @@
 	}
 	FinenessCheckSearch struct {
 		FinenessCheck
-		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
+		FinenessRegisterIDs []uint
 	}
 )
 
@@ -73,6 +74,11 @@
 	return slf
 }
 
+func (slf *FinenessCheckSearch) SetFinenessRegisterIDs(ids []uint) *FinenessCheckSearch {
+	slf.FinenessRegisterIDs = ids
+	return slf
+}
+
 func (slf *FinenessCheckSearch) SetKeyword(keyword string) *FinenessCheckSearch {
 	slf.Keyword = keyword
 	return slf
@@ -97,6 +103,10 @@
 		db = db.Where("fineness_register_id = ?", slf.FinenessRegisterID)
 	}
 
+	if len(slf.FinenessRegisterIDs) != 0 {
+		db = db.Where("fineness_register_id in ?", slf.FinenessRegisterIDs)
+	}
+
 	if slf.Preload {
 		db = db.Model(&FinenessCheck{}).Preload("FinenessRegister")
 	}
diff --git a/models/raw_silk_price_standard.go b/models/raw_silk_price_standard.go
index fea5114..888f6d3 100644
--- a/models/raw_silk_price_standard.go
+++ b/models/raw_silk_price_standard.go
@@ -12,6 +12,7 @@
 	RawSilkPriceStandard struct {
 		gorm.Model
 		MarketId     uint            `json:"marketId" gorm:"type:int(11);comment:搴勫彛id"`
+		MarketNumber string          `json:"marketNumber" gorm:"type:varchar(255);comment:搴勫彛缂栫爜"`
 		MarketName   string          `json:"marketName" gorm:"type:varchar(255);comment:搴勫彛鍚嶇О"`
 		RawSilkGrade string          `json:"rawSilkGrade" gorm:"type:varchar(255);comment:鐢熶笣绛夌骇"`
 		PayStandard  decimal.Decimal `json:"payStandard" gorm:"type:decimal(20,3);comment:钖叕鏍囧噯"`
@@ -56,6 +57,11 @@
 	return slf
 }
 
+func (slf *RawSilkPriceStandardSearch) SetMarketNumber(marketNumber string) *RawSilkPriceStandardSearch {
+	slf.MarketNumber = marketNumber
+	return slf
+}
+
 func (slf *RawSilkPriceStandardSearch) SetMarketNames(names []string) *RawSilkPriceStandardSearch {
 	slf.MarketNames = names
 	return slf
@@ -66,6 +72,10 @@
 
 	if slf.ID > 0 {
 		db = db.Where("id = ?", slf.ID)
+	}
+
+	if len(slf.MarketNumber) > 0 {
+		db = db.Where("market_number = ", slf.MarketNumber)
 	}
 
 	if len(slf.MarketNames) > 0 {
@@ -105,6 +115,22 @@
 	return records, total, nil
 }
 
+func (slf *RawSilkPriceStandardSearch) FindNotTotal() ([]*RawSilkPriceStandard, error) {
+	var (
+		records = make([]*RawSilkPriceStandard, 0)
+		db      = slf.build()
+	)
+
+	if slf.PageNum*slf.PageSize > 0 {
+		db = db.Offset((slf.PageNum - 1) * slf.PageSize).Limit(slf.PageSize)
+	}
+	if err := db.Order("updated_at desc").Find(&records).Error; err != nil {
+		return records, fmt.Errorf("find records err: %v", err)
+	}
+
+	return records, nil
+}
+
 func (slf *RawSilkPriceStandardSearch) Save(record *RawSilkPriceStandard) error {
 	var db = slf.build()
 
diff --git a/models/worker.go b/models/worker.go
index 091693d..ba2cc2a 100644
--- a/models/worker.go
+++ b/models/worker.go
@@ -18,7 +18,8 @@
 		ShopName       string                `gorm:"type:varchar(191);comment:杞﹂棿鍚嶇О锛屼粎鏌ヨ鐢�" json:"shopName"`
 		Status         constvar.WorkerStatus `gorm:"index;type:int(11);comment:浜哄憳鐘舵��" json:"status"`
 		WorkTypeId     uint                  `gorm:"type:int(11);comment:宸ョid" json:"workTypeId"`
-		WorkType       string                `gorm:"type:varchar(255);comment:宸ョ" json:"workType"`
+		WorkTypeCode   constvar.JobType      `gorm:"type:varchar(255);comment:宸ョ浠g爜" json:"workTypeCode"`
+		WorkType       string                `gorm:"type:varchar(255);comment:宸ョ鍚嶇О" json:"workType"`
 		GroupNumber    int                   `gorm:"type:int(11);comment:缁勫埆" json:"groupNumber"`
 		EmploymentTime string                `gorm:"type:varchar(255);comment:鍏ヨ亴鏃堕棿" json:"employmentTime"`
 		AddPeople      string                `gorm:"type:varchar(255);comment:娣诲姞浜�" json:"addPeople"`
diff --git a/models/worker_position.go b/models/worker_position.go
index c3a07d7..7907e4e 100644
--- a/models/worker_position.go
+++ b/models/worker_position.go
@@ -31,6 +31,7 @@
 		Keyword              string
 		OverlappingDateStart string
 		OverlappingDateEnd   string
+		WorkerDate           string
 	}
 )
 

--
Gitblit v1.8.0