123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- package models
- import (
- "eta_gn/eta_api/global"
- "eta_gn/eta_api/utils"
- "fmt"
- "time"
- )
- type ClassifyMenu struct {
- MenuId int `gorm:"column:menu_id;primaryKey"`
- MenuName string `gorm:"column:mobile"`
- ClassifyId int `gorm:"column:classify_id"`
- Sort int `gorm:"column:sort"`
- CreateTime time.Time `gorm:"column:create_time"`
- ModifyTime time.Time `gorm:"column:modify_time"`
- }
- func (item *ClassifyMenu) TableName() string {
- return "classify_menu"
- }
- func (item *ClassifyMenu) Create() (err error) {
-
-
-
-
-
-
- err = global.DmSQL["rddp"].Create(item).Error
- return
- }
- func (item *ClassifyMenu) Update(cols []string) (err error) {
-
-
- err = global.DmSQL["rddp"].Select(cols).Updates(item).Error
- return
- }
- func (item *ClassifyMenu) InsertMulti(items []*ClassifyMenu) (err error) {
-
-
- err = global.DmSQL["rddp"].CreateInBatches(items, utils.MultiAddNum).Error
- return
- }
- func GetClassifyMenuById(id int) (item *ClassifyMenu, err error) {
-
-
-
- sql := `SELECT * FROM classify_menu WHERE menu_id = ? LIMIT 1`
- err = global.DmSQL["rddp"].Raw(sql, id).First(&item).Error
- return
- }
- func GetClassifyMenuList(condition string, pars []interface{}) (list []*ClassifyMenu, err error) {
-
- sql := `SELECT * FROM classify_menu WHERE 1 = 1 `
- sql += condition
- sql += ` ORDER BY sort ASC, create_time ASC`
-
- err = global.DmSQL["rddp"].Raw(sql, pars...).Find(&list).Error
- return
- }
- type ClassifyMenuSaveReq struct {
- MenuId int `description:"子目录ID, 0为新增, 大于0为编辑"`
- MenuName string `description:"子目录名称"`
-
- }
- func InsertAndUpdateClassifyMenu(insertMenus []*ClassifyMenu, editMenus []*ClassifyMenu, deleteMenuIds []int) (err error) {
-
-
- tx := global.DmSQL["rddp"].Begin()
- 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.Exec(sql).Error; 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.Exec(sql).Error; e != nil {
- err = e
- return
- }
-
- sql = fmt.Sprintf(`DELETE FROM classify_menu_relation WHERE menu_id = %d`, deleteMenuIds[i])
- if e := tx.Exec(sql).Error; e != nil {
- err = e
- return
- }
- }
- }
-
- if len(insertMenus) > 0 {
- e := tx.CreateInBatches(insertMenus, utils.MultiAddNum).Error
- if e != nil {
- err = e
- return
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- return
- }
|