zhangqian
2024-07-01 73b6baf6af3d88cdcb0e2df7932a9bd96b0b85c5
models/product_category.go
@@ -10,14 +10,15 @@
type (
   // ProductCategory 产品分类
   ProductCategory struct {
      BaseModelInt
      Name                 string                        `json:"name" gorm:"index;type:varchar(255);not null;comment:分类名称"` //位置名称
      WmsModel
      Id                   int                           `json:"id"  gorm:"column:id;primary_key;AUTO_INCREMENT"`
      Name                 string                        `json:"name" gorm:"index;type:varchar(255);not null;comment:分类名称"` //分类名称
      ParentId             int                           `json:"parentId" gorm:"type:int;comment:上级分类id"`                   //上级id
      RouteId              int                           `json:"routeId" gorm:"type:int;comment:路线id"`
      RouteName            string                        `json:"routeName" gorm:"type:varchar(512);comment:路线名称"`         //公司
      ForceRemovalStrategy constvar.ForceRemovalStrategy `json:"forceRemovalStrategy" gorm:"type:tinyint;comment:强制下架策略"` //强制下架策略
      CostingMethod        constvar.CostingMethod        `json:"costingMethod" gorm:"type:tinyint;comment:成本方法"`          //成本方法
      InventoryValuation   constvar.InventoryValuation   `json:"inventoryValuation" gorm:"type:tinyint;comment:库存计价"`     //库存计价
      RouteId              int                           `json:"routeId" gorm:"type:int;comment:路线id"`                      //路线id
      RouteName            string                        `json:"routeName" gorm:"type:varchar(512);comment:路线名称"`           //公司
      ForceRemovalStrategy constvar.ForceRemovalStrategy `json:"forceRemovalStrategy" gorm:"type:tinyint;comment:强制下架策略"`   //强制下架策略
      CostingMethod        constvar.CostingMethod        `json:"costingMethod" gorm:"type:tinyint;comment:成本方法"`            //成本方法
      InventoryValuation   constvar.InventoryValuation   `json:"inventoryValuation" gorm:"type:tinyint;comment:库存计价"`       //库存计价
   }
   ProductCategorySearch struct {
@@ -28,6 +29,7 @@
      Keyword  string
      Orm      *gorm.DB
      Preload  bool
      Ids      []int
   }
)
@@ -54,8 +56,8 @@
   return slf
}
func (slf *ProductCategorySearch) SetID(id uint) *ProductCategorySearch {
   slf.ID = id
func (slf *ProductCategorySearch) SetID(id int) *ProductCategorySearch {
   slf.Id = id
   return slf
}
@@ -73,12 +75,16 @@
   slf.Preload = preload
   return slf
}
func (slf *ProductCategorySearch) SetIds(ids []int) *ProductCategorySearch {
   slf.Ids = ids
   return slf
}
func (slf *ProductCategorySearch) build() *gorm.DB {
   var db = slf.Orm.Model(&ProductCategory{})
   if slf.ID != 0 {
      db = db.Where("id = ?", slf.ID)
   if slf.Id != 0 {
      db = db.Where("id = ?", slf.Id)
   }
   if slf.Order != "" {
@@ -92,6 +98,9 @@
   if slf.Name != "" {
      db = db.Where("name = ?", slf.Name)
   }
   if len(slf.Ids) > 0 {
      db = db.Where("id in (?)", slf.Ids)
   }
   return db
}