package models import ( "eta/eta_api/global" "eta/eta_api/utils" "time" ) // ClassifyMenu 报告分类-子目录表 //type ClassifyMenu struct { // MenuId int `orm:"column(menu_id);pk"` // MenuName string `description:"子目录名称"` // ClassifyId int `description:"一级分类ID"` // Sort int `description:"排序"` // CreateTime time.Time `description:"创建时间"` // ModifyTime time.Time `description:"更新时间"` //} type ClassifyMenu struct { MenuId int `gorm:"column:menu_id;primaryKey;autoIncrement"` // `orm:"column(menu_id);pk" gorm:"primaryKey" ` MenuName string `gorm:"column:mobile"` //`description:"子目录名称"` ClassifyId int `gorm:"column:classify_id"` //`description:"一级分类ID"` Sort int `gorm:"column:sort"` //`description:"排序"` CreateTime time.Time `gorm:"column:create_time"` //`description:"创建时间"` ModifyTime time.Time `gorm:"column:modify_time"` //`description:"更新时间"` } func (item *ClassifyMenu) TableName() string { return "classify_menu" } func (item *ClassifyMenu) Create() (err error) { err = global.DbMap[utils.DbNameReport].Create(item).Error return } func (item *ClassifyMenu) Update(cols []string) (err error) { err = global.DbMap[utils.DbNameReport].Select(cols).Updates(item).Error return } func (item *ClassifyMenu) InsertMulti(items []*ClassifyMenu) (err error) { err = global.DbMap[utils.DbNameReport].CreateInBatches(items, utils.MultiAddNum).Error return } // GetClassifyMenuById 主键获取子目录 //func GetClassifyMenuById(id int) (item *ClassifyMenu, err error) { // o := global.DbMap[utils.DbNameReport] // sql := `SELECT * FROM classify_menu WHERE menu_id = ? LIMIT 1` // err = o.Raw(sql, id).QueryRow(&item) // return //} // GetClassifyMenuList 获取子目录列表 func GetClassifyMenuList(condition string, pars []interface{}) (list []*ClassifyMenu, err error) { o := global.DbMap[utils.DbNameReport] sql := `SELECT * FROM classify_menu WHERE 1 = 1 ` sql += condition sql += ` ORDER BY sort ASC, create_time ASC` err = o.Raw(sql, pars...).Find(&list).Error return } // ClassifyMenuSaveReq 保存分类子目录请求体 type ClassifyMenuSaveReq struct { MenuId int `description:"子目录ID, 0为新增, 大于0为编辑"` MenuName string `description:"子目录名称"` //ClassifyId int `description:"一级分类ID"` } // InsertAndUpdateClassifyMenu 新增/编辑/删除分类子目录 //func InsertAndUpdateClassifyMenu(insertMenus []*ClassifyMenu, editMenus []*ClassifyMenu, deleteMenuIds []int) (err error) { // o := global.DbMap[utils.DbNameReport] // tx, err := o.Begin() // if err != nil { // return // } // defer func() { // if err != nil { // _ = tx.Rollback() // } else { // _ = tx.Commit() // } // }() // // // 编辑 // sql := `` // if len(editMenus) > 0 { // for i := range editMenus { // sql = fmt.Sprintf(`UPDATE classify_menu SET menu_name = '%s', sort = %d, modify_time = NOW() WHERE menu_id = %d`, // editMenus[i].MenuName, editMenus[i].Sort, editMenus[i].MenuId) // if _, e := tx.Raw(sql).Exec(); e != nil { // err = e // return // } // } // } // // // 删除 // if len(deleteMenuIds) > 0 { // for i := range deleteMenuIds { // sql = fmt.Sprintf(`DELETE FROM classify_menu WHERE menu_id = %d LIMIT 1`, deleteMenuIds[i]) // if _, e := tx.Raw(sql).Exec(); e != nil { // err = e // return // } // // 删除关联关系 // sql = fmt.Sprintf(`DELETE FROM classify_menu_relation WHERE menu_id = %d`, deleteMenuIds[i]) // if _, e := tx.Raw(sql).Exec(); e != nil { // err = e // return // } // } // } // // // 新增 // if len(insertMenus) > 0 { // _, e := tx.InsertMulti(len(insertMenus), insertMenus) // if e != nil { // err = e // return // } // } // return //}