fox
zhangqian
2024-05-07 7d06c6472f1acea6b2e49e7b8837bf555e94e219
models/yield_register.go
@@ -14,7 +14,7 @@
      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"`
      WorkshopNumber          string                 `json:"workshopNumber" gorm:"type:varchar(255);comment:车间编码"`
      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:是否结庄"`
@@ -30,6 +30,9 @@
      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"`
      SelectOne               bool                   `json:"selectOne" gorm:"type:int(1);comment:落丝桶数1选中"`
      SelectTwo               bool                   `json:"selectTwo" gorm:"type:int(1);comment:落丝桶数2选中"`
      SelectThree             bool                   `json:"selectThree" gorm:"type:int(1);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:第一回"`
@@ -38,6 +41,10 @@
      Total                   decimal.Decimal        `json:"total" gorm:"type:decimal(12,2);comment:总产量"`
      Items                   []*YieldRegisterItem   `json:"items" gorm:"foreignKey:YieldRegisterId"`
      Circles                 []*YieldRegisterCircle `json:"circles" gorm:"foreignKey:YieldRegisterId"`
      MarketName   string `json:"marketName" gorm:"-"`   //庄口名
      WorkshopName string `json:"workshopName" gorm:"-"` //车间名
   }
   YieldRegisterSearch struct {
      YieldRegister
@@ -49,7 +56,7 @@
)
func (slf YieldRegister) TableName() string {
   return "yield_register"
   return "silk_yield_register"
}
func NewYieldRegisterSearch() *YieldRegisterSearch {
@@ -76,6 +83,31 @@
   return slf
}
func (slf *YieldRegisterSearch) SetCreateTime(createTime string) *YieldRegisterSearch {
   slf.CreateTime = createTime
   return slf
}
func (slf *YieldRegisterSearch) SetMarketId(marketId uint) *YieldRegisterSearch {
   slf.MarketId = marketId
   return slf
}
func (slf *YieldRegisterSearch) SetWorkshopNumber(workshopNumber string) *YieldRegisterSearch {
   slf.WorkshopNumber = workshopNumber
   return slf
}
func (slf *YieldRegisterSearch) SetGroupNumber(groupNumber int) *YieldRegisterSearch {
   slf.GroupNumber = groupNumber
   return slf
}
func (slf *YieldRegisterSearch) SetSpec(spec string) *YieldRegisterSearch {
   slf.Spec = spec
   return slf
}
func (slf *YieldRegisterSearch) build() *gorm.DB {
   db := slf.Orm.Table(slf.TableName())
@@ -87,6 +119,25 @@
      db = db.Where("number = ?", slf.Number)
   }
   if slf.CreateTime != "" {
      db = db.Where("create_time = ?", slf.CreateTime)
   }
   if slf.WorkshopNumber != "" {
      db = db.Where("workshop_number = ?", slf.WorkshopNumber)
   }
   if slf.MarketId > 0 {
      db = db.Where("market_id = ?", slf.MarketId)
   }
   if slf.GroupNumber > 0 {
      db = db.Where("group_number = ?", slf.GroupNumber)
   }
   if slf.Spec != "" {
      db = db.Where("spec = ?", slf.Spec)
   }
   return db
}
@@ -165,3 +216,15 @@
   return nil
}
func (slf *YieldRegisterSearch) Count() (int64, error) {
   var (
      total int64
      db    = slf.build()
   )
   if err := db.Count(&total).Error; err != nil {
      return total, fmt.Errorf("find count err: %v", err)
   }
   return total, nil
}