feat: 更新多个模块以支持新的数据结构和日志格式
This commit is contained in:
@@ -1,18 +1,71 @@
|
||||
package repository
|
||||
|
||||
import "be.ems/src/modules/system/model"
|
||||
import (
|
||||
"be.ems/src/framework/database/db"
|
||||
"be.ems/src/framework/logger"
|
||||
"be.ems/src/modules/system/model"
|
||||
)
|
||||
|
||||
// ISysRoleMenu 角色与菜单关联表 数据层接口
|
||||
type ISysRoleMenu interface {
|
||||
// CheckMenuExistRole 查询菜单分配给角色使用数量
|
||||
CheckMenuExistRole(menuId string) int64
|
||||
// NewSysRoleMenu 实例化数据层
|
||||
var NewSysRoleMenu = &SysRoleMenu{}
|
||||
|
||||
// DeleteRoleMenu 批量删除角色和菜单关联
|
||||
DeleteRoleMenu(roleIds []string) int64
|
||||
// SysRoleMenu 角色与菜单关联表 数据层处理
|
||||
type SysRoleMenu struct{}
|
||||
|
||||
// DeleteMenuRole 批量删除菜单和角色关联
|
||||
DeleteMenuRole(menuIds []string) int64
|
||||
|
||||
// BatchRoleMenu 批量新增角色菜单信息
|
||||
BatchRoleMenu(sysRoleMenus []model.SysRoleMenu) int64
|
||||
// ExistRoleByMenuId 存在角色使用数量By菜单
|
||||
func (r SysRoleMenu) ExistRoleByMenuId(menuId int64) int64 {
|
||||
if menuId <= 0 {
|
||||
return 0
|
||||
}
|
||||
tx := db.DB("").Model(&model.SysRoleMenu{})
|
||||
tx = tx.Where("menu_id = ?", menuId)
|
||||
// 查询数据
|
||||
var count int64 = 0
|
||||
if err := tx.Count(&count).Error; err != nil {
|
||||
logger.Errorf("query find err => %v", err.Error())
|
||||
return count
|
||||
}
|
||||
return count
|
||||
}
|
||||
|
||||
// DeleteByRoleIds 批量删除关联By角色
|
||||
func (r SysRoleMenu) DeleteByRoleIds(roleIds []int64) int64 {
|
||||
if len(roleIds) <= 0 {
|
||||
return 0
|
||||
}
|
||||
tx := db.DB("").Where("role_id in ?", roleIds)
|
||||
// 执行删除
|
||||
if err := tx.Delete(&model.SysRoleMenu{}).Error; err != nil {
|
||||
logger.Errorf("delete err => %v", err.Error())
|
||||
return 0
|
||||
}
|
||||
return tx.RowsAffected
|
||||
}
|
||||
|
||||
// DeleteByMenuIds 批量删除关联By菜单
|
||||
func (r SysRoleMenu) DeleteByMenuIds(menuIds []int64) int64 {
|
||||
if len(menuIds) <= 0 {
|
||||
return 0
|
||||
}
|
||||
tx := db.DB("").Where("menu_id in ?", menuIds)
|
||||
// 执行删除
|
||||
if err := tx.Delete(&model.SysRoleMenu{}).Error; err != nil {
|
||||
logger.Errorf("delete err => %v", err.Error())
|
||||
return 0
|
||||
}
|
||||
return tx.RowsAffected
|
||||
}
|
||||
|
||||
// BatchInsert 批量新增信息
|
||||
func (r SysRoleMenu) BatchInsert(sysRoleMenus []model.SysRoleMenu) int64 {
|
||||
if len(sysRoleMenus) <= 0 {
|
||||
return 0
|
||||
}
|
||||
// 执行批量删除
|
||||
tx := db.DB("").CreateInBatches(sysRoleMenus, 500)
|
||||
if err := tx.Error; err != nil {
|
||||
logger.Errorf("delete batch err => %v", err.Error())
|
||||
return 0
|
||||
}
|
||||
return tx.RowsAffected
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user