jiangshuai
2023-09-20 6becb6b281b34e17197a25af86acd35628e88811
models/warehouse.go
@@ -11,17 +11,22 @@
   // Warehouse 仓库
   Warehouse struct {
      WmsModel
      Id               int          `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
      Name             string       `json:"name" gorm:"index;type:varchar(255);not null;comment:仓库名称"`                                 //仓库名称
      Active           bool         `json:"active" gorm:"type:tinyint(1);not null;comment:是否激活"`                                       //是否启用,传true就行
      Code             string       `json:"code" binding:"required,min=1,max=5"  gorm:"index;type:varchar(255);not null;comment:仓库编码"` //仓库编码
      PartnerID        int          `json:"partnerId"  gorm:"type:int;not null;comment:合作伙伴id"`                                        //合作伙伴id
      BuyToResupply    bool         `json:"buyToResupply" gorm:"type:tinyint(1);not null;comment:是否购买补给"`                              //是否购买补给,已购买产品能够发送到此仓库
      ResupplyWhIdsStr string       `json:"-" gorm:"column:resupply_wh_ids;type:varchar(255);not null;comment:补给来源仓库ID"`               //补给来源仓库ID
      ResupplyWhIds    []string     `json:"resupplyWhIds" gorm:"-"`                                                                    //补给来源仓库ID
      ResupplyWh       []*Warehouse `json:"resupplyWh" gorm:"-"`                                                                       //补给来源仓库
      CompanyId        int          `json:"companyId" gorm:"type:int;not null;comment:公司id"`
      Company          Company      `json:"company" gorm:"foreignKey:CompanyId"`
      Id                     int          `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
      Name                   string       `json:"name" gorm:"index;type:varchar(255);not null;comment:仓库名称"`                                 //仓库名称
      Active                 bool         `json:"active" gorm:"type:tinyint(1);not null;comment:是否激活"`                                       //是否启用,传true就行
      Code                   string       `json:"code" binding:"required,min=1,max=5"  gorm:"index;type:varchar(255);not null;comment:仓库编码"` //仓库编码
      PartnerID              int          `json:"partnerId"  gorm:"type:int;not null;comment:合作伙伴id"`                                        //合作伙伴id
      BuyToResupply          bool         `json:"buyToResupply" gorm:"type:tinyint(1);not null;comment:是否购买补给"`                              //是否购买补给,已购买产品能够发送到此仓库
      ResupplyWhIdsStr       string       `json:"-" gorm:"column:resupply_wh_ids;type:varchar(255);not null;comment:补给来源仓库ID"`               //补给来源仓库ID
      ResupplyWhIds          []string     `json:"resupplyWhIds" gorm:"-"`                                                                    //补给来源仓库ID
      ResupplyWh             []*Warehouse `json:"resupplyWh" gorm:"-"`                                                                       //补给来源仓库
      CompanyId              int          `json:"companyId" gorm:"type:int;not null;comment:公司id"`
      Company                Company      `json:"company" gorm:"foreignKey:CompanyId"`
      Address                string       `json:"address" gorm:"type:varchar(512);comment:地址"`         //地址
      InboundTransportation  int          `json:"inboundTransportation" gorm:"type:int;comment:入向运输"`  //入向运输
      OutboundTransportation int          `json:"outboundTransportation" gorm:"type:int;comment:出库运输"` //出库运输
      LocationId             int          `json:"locationId" gorm:"type:int;comment:位置id"`             //位置id
      WarehouseLocation      string       `json:"warehouseLocation" gorm:"-"`                          //库存位置
   }
   WarehouseSearch struct {
@@ -63,8 +68,8 @@
   return slf
}
func (slf *WarehouseSearch) SetID(id uint) *WarehouseSearch {
   slf.ID = id
func (slf *WarehouseSearch) SetID(id int) *WarehouseSearch {
   slf.Id = id
   return slf
}
@@ -89,10 +94,10 @@
}
func (slf *WarehouseSearch) build() *gorm.DB {
   var db = slf.Orm.Model(&Warehouse{})
   var db = slf.Orm.Table(slf.TableName())
   if slf.ID != 0 {
      db = db.Where("id = ?", slf.ID)
   if slf.Id != 0 {
      db = db.Where("id = ?", slf.Id)
   }
   if slf.Order != "" {
@@ -109,6 +114,9 @@
   if slf.Preload {
      db = db.Preload("Company")
   }
   if slf.Code != "" {
      db = db.Where("code = ?", slf.Code)
   }
   return db
@@ -172,7 +180,7 @@
func (slf *WarehouseSearch) Delete() error {
   var db = slf.build()
   return db.Delete(&Warehouse{}).Error
   return db.Unscoped().Delete(&Warehouse{}).Error
}
func (slf *WarehouseSearch) First() (*Warehouse, error) {