1
0

feat: 删除不需要文件夹

This commit is contained in:
TsMask
2023-10-10 10:56:44 +08:00
parent ce7c3cae68
commit d173205528
154 changed files with 32276 additions and 1 deletions

View File

@@ -0,0 +1,15 @@
package sysrolemenu
// SysRoleMenu 角色和菜单关联对象 sys_role_menu
type SysRoleMenu struct {
RoleID string `json:"roleId"` // 角色ID
MenuID string `json:"menuId"` // 菜单ID
}
// NewSysRoleMenu 创建角色和菜单关联对象的构造函数
func NewSysRoleMenu(roleID string, menuID string) SysRoleMenu {
return SysRoleMenu{
RoleID: roleID,
MenuID: menuID,
}
}

View File

@@ -0,0 +1,86 @@
package sysrolemenu
import (
"fmt"
"strings"
"ems.agt/lib/core/datasource"
"ems.agt/lib/core/utils/parse"
"ems.agt/lib/log"
)
// 实例化数据层 RepoSysRoleMenu 结构体
var NewRepoSysRoleMenu = &RepoSysRoleMenu{}
// RepoSysRoleMenu 角色与菜单关联表 数据层处理
type RepoSysRoleMenu struct{}
// CheckMenuExistRole 查询菜单分配给角色使用数量
func (r *RepoSysRoleMenu) CheckMenuExistRole(menuId string) int64 {
querySql := "select count(1) as 'total' from sys_role_menu where menu_id = ?"
results, err := datasource.RawDB("", querySql, []any{menuId})
if err != nil {
log.Errorf("query err => %v", err)
return 0
}
if len(results) > 0 {
return parse.Number(results[0]["total"])
}
return 0
}
// DeleteRoleMenu 批量删除角色和菜单关联
func (r *RepoSysRoleMenu) DeleteRoleMenu(roleIds []string) int64 {
placeholder := datasource.KeyPlaceholderByQuery(len(roleIds))
sql := "delete from sys_role_menu where role_id in (" + placeholder + ")"
parameters := datasource.ConvertIdsSlice(roleIds)
results, err := datasource.ExecDB("", sql, parameters)
if err != nil {
log.Errorf("delete err => %v", err)
return 0
}
affected, err := results.RowsAffected()
if err != nil {
log.Errorf("delete err => %v", err)
return 0
}
return affected
}
// DeleteMenuRole 批量删除菜单和角色关联
func (r *RepoSysRoleMenu) DeleteMenuRole(menuIds []string) int64 {
placeholder := datasource.KeyPlaceholderByQuery(len(menuIds))
sql := "delete from sys_role_menu where menu_id in (" + placeholder + ")"
parameters := datasource.ConvertIdsSlice(menuIds)
results, err := datasource.ExecDB("", sql, parameters)
if err != nil {
log.Errorf("delete err => %v", err)
return 0
}
affected, err := results.RowsAffected()
if err != nil {
log.Errorf("delete err => %v", err)
return 0
}
return affected
}
// BatchRoleMenu 批量新增角色菜单信息
func (r *RepoSysRoleMenu) BatchRoleMenu(sysRoleMenus []SysRoleMenu) int64 {
keyValues := make([]string, 0)
for _, item := range sysRoleMenus {
keyValues = append(keyValues, fmt.Sprintf("(%s,%s)", item.RoleID, item.MenuID))
}
sql := "insert into sys_role_menu(role_id, menu_id) values " + strings.Join(keyValues, ",")
results, err := datasource.ExecDB("", sql, nil)
if err != nil {
log.Errorf("insert err => %v", err)
return 0
}
insertId, err := results.LastInsertId()
if err != nil {
log.Errorf("insert row : %v", err.Error())
return 0
}
return insertId
}