package service import ( "bkb-seller/global" "bkb-seller/model" "bkb-seller/model/request" "errors" ) // 中文 func GetMenuApiTree(appid, types string) (err error, menus interface{}) { //定义三个变量,用于存储菜单列表、api列表和菜单api列表 var ( menuList []model.SysMenu apiList []model.SysApi menuApis []model.SysMenuApi ) //根据appid和type查询菜单列表 err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&menuList).Error if err != nil { return errors.New("获取菜单树失败"), nil } //根据appid和type查询api列表 err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&apiList).Error if err != nil { return errors.New("获取api树失败"), nil } //遍历菜单列表,查询api列表,将api列表添加到菜单api列表中 for _, menu := range menuList { menuApi := model.SysMenuApi{ SysBaseMenu: menu.SysBaseMenu, } for _, api := range apiList { if menu.Group == api.ApiGroup { menuApi.Children = append(menuApi.Children, model.SysApi{ Appid: api.Appid, Type: api.Type, Path: api.Path, Description: api.Description, ApiGroup: api.ApiGroup, Method: api.Method, }) } } menuApis = append(menuApis, menuApi) } return nil, menuApis } func GetAuthority(appid, types string) (err error, menus []model.SysBaseMenu) { err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&[]model.SysBaseMenu{}).Error if err != nil { return err, nil } return nil, menus } func GetSubAccountList(appid, types string) (err error, menus []model.SysBaseMenu) { err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&[]model.SysBaseMenu{}).Error if err != nil { return err, nil } return nil, menus } // UpdateAuthorityRole 更新权限角色 func UpdateAuthorityRole(info *request.UpdateAuthorityRole, appid, types string) (err error) { // 检查 appid 和 types 参数是否为空 if appid == "" || types == "" { return errors.New("appid 和 types 参数不能为空") } // 查询数据库中是否存在该 appid 和 types 的权限角色 err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&[]model.SysBaseMenu{}).Error if err != nil { // 如果查询失败,返回错误 return err } // 如果查询成功,返回 nil return nil } func AddAuthorityRole(info *request.AddAuthorityRole, appid, types string) (err error) { // 检查 appid 和 types 参数是否为空 if appid == "" || types == "" { return errors.New("appid 和 types 参数不能为空") } // 查询数据库中是否存在该 appid 和 types 的权限角色 err = global.MG_DB.Where("appid = ? and type=?", appid, types).Find(&[]model.SysBaseMenu{}).Error if err != nil { // 如果查询失败,返回错误 return err } return } func AddSubAccount(info *request.AddSubAccount, appid, types string) (err error) { // 检查 appid 和 types 参数是否为空 if appid == "" || types == "" { return errors.New("appid 和 types 参数不能为空") } return }