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