zhangqian
2023-08-15 550bd8a218224e6c73201f444387d66a299f438b
model/materials.go
File was renamed from model/user_menu.go
@@ -1,19 +1,29 @@
package model
import (
   "apsClient/pkg/mysqlx"
   "apsClient/pkg/sqlitex"
   "fmt"
   "gorm.io/gorm"
)
type (
   UserMenu struct {
      MenuId uint   `json:"menuId" gorm:"type:bigint(20);comment:菜单ID"`
      UserId string `json:"userId" gorm:"index;type:varchar(255);comment:用户ID"`
   //"materialId": "PS",
   //"materialName": "严牌PS",
   //"amount": "10",
   //"unit": "g/㎡"
   Materials struct {
      gorm.Model   `json:"-"`
      Id           int    `json:"id"`
      MaterialId   string `json:"materialId"`
      MaterialName string `json:"materialName"`
      Amount       string `json:"amount"`
      Unit         string `json:"unit"`
   }
   UserMenuSearch struct {
      UserMenu
   MaterialsSearch struct {
      Materials
      Order    string
      PageNum  int
      PageSize int
@@ -21,52 +31,34 @@
   }
)
func (slf *UserMenu) TableName() string {
   return "user_menu"
func (slf *Materials) TableName() string {
   return "materials"
}
func NewUserMenuSearch(db *gorm.DB) *UserMenuSearch {
func NewMaterialsSearch(db *gorm.DB) *MaterialsSearch {
   if db == nil {
      db = mysqlx.GetDB()
      db = sqlitex.GetDB()
   }
   return &UserMenuSearch{Orm: db}
   return &MaterialsSearch{Orm: db}
}
func (slf *UserMenuSearch) SetOrm(tx *gorm.DB) *UserMenuSearch {
func (slf *MaterialsSearch) SetOrm(tx *gorm.DB) *MaterialsSearch {
   slf.Orm = tx
   return slf
}
func (slf *UserMenuSearch) SetPage(page, size int) *UserMenuSearch {
func (slf *MaterialsSearch) SetPage(page, size int) *MaterialsSearch {
   slf.PageNum, slf.PageSize = page, size
   return slf
}
func (slf *UserMenuSearch) SetOrder(order string) *UserMenuSearch {
func (slf *MaterialsSearch) SetOrder(order string) *MaterialsSearch {
   slf.Order = order
   return slf
}
func (slf *UserMenuSearch) SetUserId(userId string) *UserMenuSearch {
   slf.UserId = userId
   return slf
}
func (slf *UserMenuSearch) SetMenuId(menuId uint) *UserMenuSearch {
   slf.MenuId = menuId
   return slf
}
func (slf *UserMenuSearch) build() *gorm.DB {
   var db = slf.Orm.Model(&UserMenu{})
   if slf.MenuId > 0 {
      db = db.Where("menu_id = ?", slf.MenuId)
   }
   if slf.UserId != "" {
      db = db.Where("user_id = ?", slf.UserId)
   }
func (slf *MaterialsSearch) build() *gorm.DB {
   var db = slf.Orm.Model(&Materials{})
   if slf.Order != "" {
      db = db.Order(slf.Order)
@@ -76,7 +68,7 @@
}
// Create 单条插入
func (slf *UserMenuSearch) Create(record *UserMenu) error {
func (slf *MaterialsSearch) Create(record *Materials) error {
   var db = slf.build()
   if err := db.Create(record).Error; err != nil {
@@ -87,7 +79,7 @@
}
// CreateBatch 批量插入
func (slf *UserMenuSearch) CreateBatch(records []*UserMenu) error {
func (slf *MaterialsSearch) CreateBatch(records []*Materials) error {
   var db = slf.build()
   if err := db.Create(&records).Error; err != nil {
@@ -97,7 +89,7 @@
   return nil
}
func (slf *UserMenuSearch) Save(record *UserMenu) error {
func (slf *MaterialsSearch) Save(record *Materials) error {
   var db = slf.build()
   if err := db.Save(record).Error; err != nil {
@@ -107,7 +99,7 @@
   return nil
}
func (slf *UserMenuSearch) UpdateByMap(upMap map[string]interface{}) error {
func (slf *MaterialsSearch) UpdateByMap(upMap map[string]interface{}) error {
   var (
      db = slf.build()
   )
@@ -119,7 +111,7 @@
   return nil
}
func (slf *UserMenuSearch) UpdateByQuery(query string, args []interface{}, upMap map[string]interface{}) error {
func (slf *MaterialsSearch) UpdateByQuery(query string, args []interface{}, upMap map[string]interface{}) error {
   var (
      db = slf.Orm.Table(slf.TableName()).Where(query, args...)
   )
@@ -131,19 +123,19 @@
   return nil
}
func (slf *UserMenuSearch) Delete() error {
func (slf *MaterialsSearch) Delete() error {
   var db = slf.build()
   if err := db.Unscoped().Delete(&UserMenu{}).Error; err != nil {
   if err := db.Unscoped().Delete(&Materials{}).Error; err != nil {
      return err
   }
   return nil
}
func (slf *UserMenuSearch) First() (*UserMenu, error) {
func (slf *MaterialsSearch) First() (*Materials, error) {
   var (
      record = new(UserMenu)
      record = new(Materials)
      db     = slf.build()
   )
@@ -154,9 +146,9 @@
   return record, nil
}
func (slf *UserMenuSearch) Find() ([]*UserMenu, int64, error) {
func (slf *MaterialsSearch) Find() ([]*Materials, int64, error) {
   var (
      records = make([]*UserMenu, 0)
      records = make([]*Materials, 0)
      total   int64
      db      = slf.build()
   )
@@ -174,9 +166,9 @@
   return records, total, nil
}
func (slf *UserMenuSearch) FindNotTotal() ([]*UserMenu, error) {
func (slf *MaterialsSearch) FindNotTotal() ([]*Materials, error) {
   var (
      records = make([]*UserMenu, 0)
      records = make([]*Materials, 0)
      db      = slf.build()
   )
@@ -191,9 +183,9 @@
}
// FindByQuery 指定条件查询.
func (slf *UserMenuSearch) FindByQuery(query string, args []interface{}) ([]*UserMenu, int64, error) {
func (slf *MaterialsSearch) FindByQuery(query string, args []interface{}) ([]*Materials, int64, error) {
   var (
      records = make([]*UserMenu, 0)
      records = make([]*Materials, 0)
      total   int64
      db      = slf.Orm.Table(slf.TableName()).Where(query, args...)
   )
@@ -212,9 +204,9 @@
}
// FindByQueryNotTotal 指定条件查询&不查询总条数.
func (slf *UserMenuSearch) FindByQueryNotTotal(query string, args []interface{}) ([]*UserMenu, error) {
func (slf *MaterialsSearch) FindByQueryNotTotal(query string, args []interface{}) ([]*Materials, error) {
   var (
      records = make([]*UserMenu, 0)
      records = make([]*Materials, 0)
      db      = slf.Orm.Table(slf.TableName()).Where(query, args...)
   )