controllers/request/yield_register_request.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
controllers/workshop_manage_controller.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
controllers/yield_register_controller.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
models/workshop_manage.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
models/yield_register.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
models/yield_register_circle.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
models/yield_register_item.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
controllers/request/yield_register_request.go
New file @@ -0,0 +1,53 @@ package request import "github.com/shopspring/decimal" type YieldRegisterInfo struct { Id uint `json:"id"` Number string `json:"number"` //编号 CreateTime string `json:"createTime"` //创建时间 MarketId uint `json:"marketId"` //庄口id WorkshopId uint `json:"workshopId"` //车间id GroupNumber int `json:"groupNumber"` //组别 Spec string `json:"spec"` //规格 JieZhuang string `json:"jieZhuang"` //是否结庄 Level string `json:"level"` //等级 Record decimal.Decimal `json:"record"` //生产用时 Circle int `json:"circle"` //回数 FallingSilkCocoonNumber decimal.Decimal `json:"fallingSilkCocoonNumber"` //落丝茧数 BucketCocoonNumber decimal.Decimal `json:"bucketCocoonNumber"` //每桶茧数 VehicleSpeed decimal.Decimal `json:"vehicleSpeed"` //实时车速 TimeYi string `json:"timeYi"` //乙班时间 TimeJia string `json:"timeJia"` //甲班时间 GroupReelingdiscount string `json:"groupReelingdiscount"` //车组缫折 FallingSilkBucketOne decimal.Decimal `json:"fallingSilkBucketOne"` //落丝桶数1 FallingSilkBucketTwo decimal.Decimal `json:"fallingSilkBucketTwo"` //落丝桶数2 FallingSilkBucketThree decimal.Decimal `json:"fallingSilkBucketThree"` //落丝桶数3 TheorySilkAmount decimal.Decimal `json:"theorySilkAmount"` //理论丝量 HourYield decimal.Decimal `json:"hourYield"` //台时产量 OneBack string `json:"oneBack"` //第一回 TwoBack string `json:"twoBack"` //第二回 ThreeBack string `json:"threeBack"` //第三回 Total decimal.Decimal `json:"total"` //总产量 ItemInfo []YieldRegisterItemInfo `json:"itemInfo"` CircleInfo []YieldRegisterCircleInfo `json:"circleInfo"` } type YieldRegisterItemInfo struct { YieldRegisterId uint `json:"yieldRegisterId"` //产量登记表id CarNumber int `json:"carNumber"` //车号 OneYield decimal.Decimal `json:"oneYield"` //台产量 PeopleYield decimal.Decimal `json:"peopleYield"` //个人产量 HourYield decimal.Decimal `json:"hourYield"` //台时产量 PersonReelingdiscount string `json:"personReelingdiscount"` //个人缫折 } type YieldRegisterCircleInfo struct { YieldRegisterId uint `json:"yieldRegisterId"` //产量登记表id CarNumber int `json:"carNumber"` //车号 Circle int `json:"circle"` //回数 PieceNumber int `json:"pieceNumber"` //片数 AllYield decimal.Decimal `json:"allYield"` //产量 OneYield decimal.Decimal `json:"oneYield"` //台产 Reelingdiscount string `json:"reelingdiscount"` //缫折 } controllers/workshop_manage_controller.go
@@ -86,5 +86,5 @@ util.ResponseFormat(c, code.RequestParamError, "删除失败") return } util.ResponseFormat(c, code.RequestParamError, "删除成功") util.ResponseFormat(c, code.Success, "删除成功") } controllers/yield_register_controller.go
New file @@ -0,0 +1,28 @@ package controllers import ( "github.com/gin-gonic/gin" "silkserver/controllers/request" "silkserver/extend/code" "silkserver/extend/util" ) type YieldRegisterController struct { } // SaveYieldRegister // // @Tags 生产管理/产量登记表 // @Summary 保存产量登记表 // @Produce application/json // @Param object body models.WorkshopManage true "参数" // @Success 200 {object} util.Response "成功" // @Router /api-jl/v1/system/saveYieldRegister [post] func (slf WorkshopManageController) SaveYieldRegister(c *gin.Context) { var params request.YieldRegisterInfo err := c.BindJSON(¶ms) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } } models/workshop_manage.go
@@ -13,8 +13,8 @@ gorm.Model WorkshopNumber string `json:"workshopNumber" gorm:"type:varchar(255);comment:车间编号"` GroupNumber int `json:"groupNumber" gorm:"type:int(11);comment:组别"` StartCarNumber int `json:"startCarNumber" gorm:"type:int(11);comment:组别"` EndCarNumber int `json:"endCarNumber" gorm:"type:int(11);comment:组别"` StartCarNumber int `json:"startCarNumber" gorm:"type:int(11);comment:开始车号"` EndCarNumber int `json:"endCarNumber" gorm:"type:int(11);comment:结束车号"` CarFlag constvar.CarFlag `json:"carFlag" gorm:"type:int(1);comment:半车标志"` Notes string `json:"notes" gorm:"type:varchar(255);comment:备注"` } @@ -22,6 +22,7 @@ WorkshopManage PageNum int PageSize int Order string Orm *gorm.DB } ) @@ -56,6 +57,11 @@ func (slf *WorkshopManageSearch) SetGroupNumber(groupNumber int) *WorkshopManageSearch { slf.GroupNumber = groupNumber return slf } func (slf *WorkshopManageSearch) SetOrder(order string) *WorkshopManageSearch { slf.Order = order return slf } @@ -100,7 +106,7 @@ if slf.PageNum*slf.PageSize > 0 { db = db.Offset((slf.PageNum - 1) * slf.PageSize).Limit(slf.PageSize) } if err := db.Find(&records).Error; err != nil { if err := db.Order("updated_at desc").Find(&records).Error; err != nil { return records, total, fmt.Errorf("find records err: %v", err) } models/yield_register.go
New file @@ -0,0 +1,145 @@ package models import ( "fmt" "github.com/shopspring/decimal" "gorm.io/gorm" "silkserver/pkg/mysqlx" ) type ( // YieldRegister 产量登记表 YieldRegister struct { gorm.Model Number string `json:"number" gorm:"type:varchar(255);not null;comment:编号"` CreateTime string `json:"createTime" gorm:"type:varchar(255);comment:创建时间"` MarketId uint `json:"marketId" gorm:"type:int(11);comment:庄口id"` WorkshopId uint `json:"workshopId" gorm:"type:int(11);comment:车间id"` GroupNumber int `json:"groupNumber" gorm:"type:int(11);comment:组别"` Spec string `json:"spec" gorm:"type:varchar(255);comment:规格"` JieZhuang string `json:"jieZhuang" gorm:"type:varchar(255);comment:是否结庄"` Level string `json:"level" gorm:"type:varchar(255);comment:等级"` Record decimal.Decimal `json:"record" gorm:"type:decimal(12,2);comment:生产用时"` Circle int `json:"circle" gorm:"type:int(11);comment:回数"` FallingSilkCocoonNumber decimal.Decimal `json:"fallingSilkCocoonNumber" gorm:"type:decimal(12,2);comment:落丝茧数"` BucketCocoonNumber decimal.Decimal `json:"bucketCocoonNumber" gorm:"type:decimal(12,2);comment:每桶茧数"` VehicleSpeed decimal.Decimal `json:"vehicleSpeed" gorm:"type:decimal(12,2);comment:实时车速"` TimeYi string `json:"timeYi" gorm:"type:varchar(255);comment:乙班时间"` TimeJia string `json:"timeJia" gorm:"type:varchar(255);comment:甲班时间"` GroupReelingdiscount string `json:"groupReelingdiscount" gorm:"type:varchar(255);comment:车组缫折"` FallingSilkBucketOne decimal.Decimal `json:"fallingSilkBucketOne" gorm:"type:decimal(12,2);comment:落丝桶数1"` FallingSilkBucketTwo decimal.Decimal `json:"fallingSilkBucketTwo" gorm:"type:decimal(12,2);comment:落丝桶数2"` FallingSilkBucketThree decimal.Decimal `json:"fallingSilkBucketThree" gorm:"type:decimal(12,2);comment:落丝桶数3"` TheorySilkAmount decimal.Decimal `json:"theorySilkAmount" gorm:"type:decimal(12,2);comment:理论丝量"` HourYield decimal.Decimal `json:"hourYield" gorm:"type:decimal(12,2);comment:台时产量"` OneBack string `json:"oneBack" gorm:"type:varchar(255);comment:第一回"` TwoBack string `json:"twoBack" gorm:"type:varchar(255);comment:第二回"` ThreeBack string `json:"threeBack" gorm:"type:varchar(255);comment:第三回"` Total decimal.Decimal `json:"total" gorm:"type:decimal(12,2);comment:总产量"` Items []*YieldRegisterItem `json:"items" gorm:"foreignKey:YieldRegisterId;references:Id"` Circles []*YieldRegisterCircle `json:"circles" gorm:"foreignKey:YieldRegisterId;references:Id"` } YieldRegisterSearch struct { YieldRegister Orm *gorm.DB PageNum int PageSize int Preload bool } ) func (slf YieldRegister) TableName() string { return "yield_register" } func NewYieldRegisterSearch() *YieldRegisterSearch { return &YieldRegisterSearch{Orm: mysqlx.GetDB()} } func (slf *YieldRegisterSearch) SetOrm(tx *gorm.DB) *YieldRegisterSearch { slf.Orm = tx return slf } func (slf *YieldRegisterSearch) SetPage(page, size int) *YieldRegisterSearch { slf.PageNum, slf.PageSize = page, size return slf } func (slf *YieldRegisterSearch) SetPreload(preload bool) *YieldRegisterSearch { slf.Preload = preload return slf } func (slf *YieldRegisterSearch) build() *gorm.DB { db := slf.Orm.Table(slf.TableName()) if slf.Preload { db = db.Model(YieldRegister{}).Preload("Items").Preload("Circles") } return db } // Create 单条插入 func (slf *YieldRegisterSearch) Create(record *YieldRegister) error { db := slf.build() err := db.Create(record).Error if err != nil { return fmt.Errorf("create err: %v, record: %+v", err, record) } return nil } func (slf *YieldRegisterSearch) Find() ([]*YieldRegister, int64, error) { var ( records = make([]*YieldRegister, 0) total int64 db = slf.build() ) if err := db.Count(&total).Error; err != nil { return records, total, fmt.Errorf("find count err: %v", err) } if slf.PageNum*slf.PageSize > 0 { db = db.Offset((slf.PageNum - 1) * slf.PageSize).Limit(slf.PageSize) } if err := db.Find(&records).Error; err != nil { return records, total, fmt.Errorf("find records err: %v", err) } return records, total, nil } func (slf *YieldRegisterSearch) FindNotTotal() ([]*YieldRegister, error) { var ( records = make([]*YieldRegister, 0) db = slf.build() ) if err := db.Find(&records).Error; err != nil { return records, fmt.Errorf("find records err: %v", err) } return records, nil } func (slf *YieldRegisterSearch) Save(record *YieldRegister) error { var db = slf.build() if err := db.Save(record).Error; err != nil { return fmt.Errorf("save err: %v, record: %+v", err, record) } return nil } func (slf *YieldRegisterSearch) Delete() error { var db = slf.build() if err := db.Unscoped().Delete(&YieldRegister{}).Error; err != nil { return err } return nil } models/yield_register_circle.go
New file @@ -0,0 +1,88 @@ package models import ( "fmt" "github.com/shopspring/decimal" "gorm.io/gorm" "silkserver/pkg/mysqlx" ) type ( //YieldRegisterCircle 产量登记回数关系表 YieldRegisterCircle struct { gorm.Model YieldRegisterId uint `json:"yieldRegisterId" gorm:"type:int(11);comment:产量登记表id"` CarNumber int `json:"carNumber" gorm:"type:int(11);comment:车号"` Circle int `json:"circle" gorm:"type:int(11);comment:回数"` PieceNumber int `json:"pieceNumber" gorm:"type:int(11);comment:片数"` Value decimal.Decimal `json:"value" gorm:"type:decimal(12,2);comment:值"` AllYield decimal.Decimal `json:"allYield" gorm:"type:decimal(12,2);comment:产量"` OneYield decimal.Decimal `json:"oneYield" gorm:"type:decimal(12,2);comment:台产"` Reelingdiscount string `json:"reelingdiscount" gorm:"type:varchar(255);comment:缫折"` } YieldRegisterCircleSearch struct { YieldRegisterCircle Orm *gorm.DB } ) func (slf YieldRegisterCircle) TableName() string { return "yield_register_circle" } func NewYieldRegisterCircleSearch() *YieldRegisterCircleSearch { return &YieldRegisterCircleSearch{Orm: mysqlx.GetDB()} } func (slf *YieldRegisterCircleSearch) SetOrm(tx *gorm.DB) *YieldRegisterCircleSearch { slf.Orm = tx return slf } func (slf *YieldRegisterCircleSearch) SetYieldRegisterId(id uint) *YieldRegisterCircleSearch { slf.YieldRegisterId = id return slf } func (slf *YieldRegisterCircleSearch) build() *gorm.DB { db := slf.Orm.Table(slf.TableName()) if slf.YieldRegisterId > 0 { db = db.Where("yield_register_id = ?", slf.YieldRegisterId) } return db } // Create 批量插入 func (slf *YieldRegisterCircleSearch) Create(record []*YieldRegisterCircle) error { db := slf.build() err := db.Create(&record).Error if err != nil { return fmt.Errorf("create err: %v, record: %+v", err, record) } return nil } func (slf *YieldRegisterCircleSearch) FindNotTotal() ([]*YieldRegisterCircle, error) { var ( records = make([]*YieldRegisterCircle, 0) db = slf.build() ) if err := db.Find(&records).Error; err != nil { return records, fmt.Errorf("find records err: %v", err) } return records, nil } func (slf *YieldRegisterCircleSearch) Delete() error { var db = slf.build() if err := db.Unscoped().Delete(&YieldRegisterCircle{}).Error; err != nil { return err } return nil } models/yield_register_item.go
New file @@ -0,0 +1,86 @@ package models import ( "fmt" "github.com/shopspring/decimal" "gorm.io/gorm" "silkserver/pkg/mysqlx" ) type ( //YieldRegisterItem 产量登记详情表 YieldRegisterItem struct { gorm.Model YieldRegisterId uint `json:"yieldRegisterId" gorm:"type:int(11);comment:产量登记表id"` CarNumber int `json:"carNumber" gorm:"type:int(11);comment:车号"` OneYield decimal.Decimal `json:"oneYield" gorm:"type:decimal(12,2);comment:台产量"` PeopleYield decimal.Decimal `json:"peopleYield" gorm:"type:decimal(12,2);comment:个人产量"` HourYield decimal.Decimal `json:"hourYield" gorm:"type:decimal(12,2);comment:台时产量"` PersonReelingdiscount string `json:"personReelingdiscount" gorm:"type:varchar(255);comment:个人缫折"` } YieldRegisterItemSearch struct { YieldRegisterItem Orm *gorm.DB } ) func (slf YieldRegisterItem) TableName() string { return "yield_register_item" } func NewYieldRegisterItemSearch() *YieldRegisterItemSearch { return &YieldRegisterItemSearch{Orm: mysqlx.GetDB()} } func (slf *YieldRegisterItemSearch) SetOrm(tx *gorm.DB) *YieldRegisterItemSearch { slf.Orm = tx return slf } func (slf *YieldRegisterItemSearch) SetYieldRegisterId(id uint) *YieldRegisterItemSearch { slf.YieldRegisterId = id return slf } func (slf *YieldRegisterItemSearch) build() *gorm.DB { db := slf.Orm.Table(slf.TableName()) if slf.YieldRegisterId > 0 { db = db.Where("yield_register_id = ?", slf.YieldRegisterId) } return db } // Create 批量插入 func (slf *YieldRegisterItemSearch) Create(record []*YieldRegisterItem) error { db := slf.build() err := db.Create(&record).Error if err != nil { return fmt.Errorf("create err: %v, record: %+v", err, record) } return nil } func (slf *YieldRegisterItemSearch) FindNotTotal() ([]*YieldRegisterItem, error) { var ( records = make([]*YieldRegisterItem, 0) db = slf.build() ) if err := db.Find(&records).Error; err != nil { return records, fmt.Errorf("find records err: %v", err) } return records, nil } func (slf *YieldRegisterItemSearch) Delete() error { var db = slf.build() if err := db.Unscoped().Delete(&YieldRegisterItem{}).Error; err != nil { return err } return nil }