From 440392a932fb2dc8118caf1f4996e7d8b72574a1 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期一, 29 四月 2024 19:18:21 +0800
Subject: [PATCH] 编辑纤度检验支持编辑明细并重新生成个人生丝等级
---
models/fineness.go | 73 +++++++++++++++++++++++++++++++-----
1 files changed, 63 insertions(+), 10 deletions(-)
diff --git a/models/fineness.go b/models/fineness.go
index 72dab54..18e6461 100644
--- a/models/fineness.go
+++ b/models/fineness.go
@@ -2,6 +2,7 @@
import (
"fmt"
+ "github.com/shopspring/decimal"
"gorm.io/gorm"
"silkserver/pkg/mysqlx"
)
@@ -10,27 +11,34 @@
// FinenessRegister 绾ゅ害鐧昏
FinenessRegister struct {
gorm.Model
- Number string `gorm:"type:varchar(255);not null;comment:缂栧彿" json:"number"` //缂栧彿
- FinishDate string `gorm:"type:varchar(255);not null;comment:钀戒笣鏃堕棿" json:"finishDate"` //钀戒笣鏃堕棿
- Workshop string `gorm:"type:varchar(255);not null;comment:杞﹂棿" json:"name"` //杞﹂棿
- WorkshopGroup string `gorm:"type:varchar(255);not null;comment:杞︾粍" json:"workshopGroup"` //杞︾粍
- Market string `gorm:"type:varchar(255);not null;comment:搴勫彛" json:"market"` //搴勫彛
- Spec string `gorm:"type:varchar(255);not null;comment:瑙勬牸" json:"spec"` //瑙勬牸
- StartCircle uint8 `gorm:"type:varchar(255);not null;comment:寮�濮嬪洖鏁�" json:"startCircle"` //寮�濮嬪洖鏁�
- EndCircle uint8 `gorm:"type:varchar(255);not null;comment:缁撴潫鍥炴暟" json:"endCircle"` //缁撴潫鍥炴暟
+ Number string `gorm:"type:varchar(255);not null;comment:缂栧彿" json:"number"` //缂栧彿
+ FinenessCheckID uint `gorm:"not null;comment:绾ゅ害妫�楠岃〃ID" json:"finenessCheckID"` //绾ゅ害妫�楠岃〃ID
+ FinishDate string `gorm:"type:varchar(255);not null;comment:钀戒笣鏃堕棿" json:"finishDate"` //钀戒笣鏃堕棿
+ WorkshopNumber string `json:"workshopNumber" gorm:"type:varchar(255);comment:杞﹂棿缂栧彿"`
+ WorkshopName string `json:"workshopName" gorm:"type:varchar(255);comment:杞﹂棿鍚嶇О"`
+ WorkshopGroup int `gorm:"type:int(11);not null;default:0;comment:杞︾粍" json:"workshopGroup"` //杞︾粍
+ Market string `gorm:"type:varchar(255);not null;comment:搴勫彛" json:"market"` //搴勫彛
+ Spec string `gorm:"type:varchar(255);not null;comment:瑙勬牸" json:"spec"` //瑙勬牸
+ Circle uint8 `gorm:"not null;default:0;comment:鍥炴暟" json:"circle"` //鍥炴暟
+ TotalCircle uint8 `gorm:"not null;default:0;comment:鎬诲洖鏁�" json:"totalCircle"` //鎬诲洖鏁�
+ FinenessList []FinenessItem `gorm:"foreignkey:FinenessRegisterID;references:ID" json:"finenessList"`
+ SumFineness decimal.Decimal `gorm:"type:decimal(12,2);not null;comment:鍚堣绾ゅ害" json:"sumFineness"`
+ SumQuantity decimal.Decimal `gorm:"type:decimal(12,2);not null;comment:鍚堣鏁伴噺" json:"sumQuantity"`
+ Position int `gorm:"not null;default:0;comment:杞﹀彿" json:"position"` //鏈�鍚庝竴涓溅鍙�
}
-
FinenessRegisterSearch struct {
FinenessRegister
Order string
PageNum int
PageSize int
Orm *gorm.DB
+ Preload bool
+ Keyword string
}
)
func (slf *FinenessRegister) TableName() string {
- return "fineness_register"
+ return "silk_fineness_register"
}
func NewFinenessRegisterSearch() *FinenessRegisterSearch {
@@ -52,6 +60,11 @@
return slf
}
+func (slf *FinenessRegisterSearch) SetPreload() *FinenessRegisterSearch {
+ slf.Preload = true
+ return slf
+}
+
func (slf *FinenessRegisterSearch) SetID(id uint) *FinenessRegisterSearch {
slf.ID = id
return slf
@@ -59,6 +72,26 @@
func (slf *FinenessRegisterSearch) SetNumber(number string) *FinenessRegisterSearch {
slf.Number = number
+ return slf
+}
+
+func (slf *FinenessRegisterSearch) SetKeyword(keyword string) *FinenessRegisterSearch {
+ slf.Keyword = keyword
+ return slf
+}
+
+func (slf *FinenessRegisterSearch) SetWorkshopName(workshop string) *FinenessRegisterSearch {
+ slf.WorkshopName = workshop
+ return slf
+}
+
+func (slf *FinenessRegisterSearch) SetMarket(market string) *FinenessRegisterSearch {
+ slf.Market = market
+ return slf
+}
+
+func (slf *FinenessRegisterSearch) SetWorkshopGroup(group int) *FinenessRegisterSearch {
+ slf.WorkshopGroup = group
return slf
}
@@ -77,6 +110,26 @@
db = db.Where("number = ?", slf.Number)
}
+ if slf.Preload {
+ db = db.Model(&FinenessRegister{}).Preload("FinenessList")
+ }
+
+ if slf.Keyword != "" {
+ db = db.Where("number like ?", fmt.Sprintf("%%%s%%", slf.Keyword))
+ }
+
+ if slf.WorkshopName != "" {
+ db = db.Where("workshop_name = ?", slf.WorkshopName)
+ }
+
+ if slf.Market != "" {
+ db = db.Where("market = ?", slf.Market)
+ }
+
+ if slf.WorkshopGroup > 0 {
+ db = db.Where("workshop_group = ?", slf.WorkshopGroup)
+ }
+
return db
}
--
Gitblit v1.8.0