菜单int64转string
This commit is contained in:
parent
39c28a6ecf
commit
3263520334
@ -5,6 +5,7 @@ import (
|
|||||||
"hospital-admin-api/api/dao"
|
"hospital-admin-api/api/dao"
|
||||||
"hospital-admin-api/api/requests"
|
"hospital-admin-api/api/requests"
|
||||||
"hospital-admin-api/api/responses"
|
"hospital-admin-api/api/responses"
|
||||||
|
"hospital-admin-api/api/responses/menuResponse"
|
||||||
"hospital-admin-api/api/service"
|
"hospital-admin-api/api/service"
|
||||||
"hospital-admin-api/global"
|
"hospital-admin-api/global"
|
||||||
"hospital-admin-api/utils"
|
"hospital-admin-api/utils"
|
||||||
@ -60,13 +61,13 @@ func (r *Menu) AddMenu(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 非模块无父级
|
// 非模块无父级
|
||||||
if MenuRequest.AddMenu.ParentId == 0 && MenuRequest.AddMenu.MenuType != 1 {
|
if MenuRequest.AddMenu.ParentId == "0" && MenuRequest.AddMenu.MenuType != 1 {
|
||||||
responses.FailWithMessage("请选择父节点", c)
|
responses.FailWithMessage("请选择父节点", c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 模块存在父级
|
// 模块存在父级
|
||||||
if MenuRequest.AddMenu.ParentId != 0 && MenuRequest.AddMenu.MenuType == 1 {
|
if MenuRequest.AddMenu.ParentId != "0" && MenuRequest.AddMenu.MenuType == 1 {
|
||||||
responses.FailWithMessage("顶级菜单,无法添加上级菜单", c)
|
responses.FailWithMessage("顶级菜单,无法添加上级菜单", c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -125,13 +126,13 @@ func (r *Menu) PutMenu(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 非模块无父级
|
// 非模块无父级
|
||||||
if MenuRequest.PutMenu.ParentId == 0 && MenuRequest.PutMenu.MenuType != 1 {
|
if MenuRequest.PutMenu.ParentId == "0" && MenuRequest.PutMenu.MenuType != 1 {
|
||||||
responses.FailWithMessage("请选择父节点", c)
|
responses.FailWithMessage("请选择父节点", c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 模块存在父级
|
// 模块存在父级
|
||||||
if MenuRequest.PutMenu.ParentId != 0 && MenuRequest.PutMenu.MenuType == 1 {
|
if MenuRequest.PutMenu.ParentId != "0" && MenuRequest.PutMenu.MenuType == 1 {
|
||||||
responses.FailWithMessage("顶级菜单,无法添加上级菜单", c)
|
responses.FailWithMessage("顶级菜单,无法添加上级菜单", c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -195,5 +196,34 @@ func (r *Menu) GetMenu(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
responses.OkWithData(adminMenu, c)
|
// 转换int64为string
|
||||||
|
MenuId := strconv.FormatInt(adminMenu.MenuId, 10)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
ParentId := strconv.FormatInt(adminMenu.ParentId, 10)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
GetMenuResponse := &menuResponse.GetMenu{
|
||||||
|
MenuId: MenuId,
|
||||||
|
MenuName: adminMenu.MenuName,
|
||||||
|
MenuTitle: adminMenu.MenuTitle,
|
||||||
|
ParentId: ParentId,
|
||||||
|
MenuStatus: adminMenu.MenuStatus,
|
||||||
|
MenuType: adminMenu.MenuType,
|
||||||
|
Permission: adminMenu.Permission,
|
||||||
|
OrderNum: adminMenu.OrderNum,
|
||||||
|
Icon: adminMenu.Icon,
|
||||||
|
Path: adminMenu.Path,
|
||||||
|
Component: adminMenu.Component,
|
||||||
|
CreatedAt: adminMenu.CreatedAt,
|
||||||
|
UpdatedAt: adminMenu.UpdatedAt,
|
||||||
|
}
|
||||||
|
|
||||||
|
responses.OkWithData(GetMenuResponse, c)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -186,12 +186,35 @@ func (r *Role) GetRole(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
RoleService := service.RoleService{}
|
RoleService := service.RoleService{}
|
||||||
GetRoleResponse, err := RoleService.GetRole(roleId)
|
adminRole, menuIds, err := RoleService.GetRole(roleId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
responses.FailWithMessage(err.Error(), c)
|
responses.FailWithMessage(err.Error(), c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 处理返回值
|
||||||
|
// 转换int64为string
|
||||||
|
var menuIdsString []string
|
||||||
|
for _, menuId := range menuIds {
|
||||||
|
menuId := strconv.FormatInt(menuId, 10)
|
||||||
|
menuIdsString = append(menuIdsString, menuId)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 转换int64为string
|
||||||
|
RoleId := strconv.FormatInt(adminRole.RoleId, 10)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
GetRoleResponse := &roleResponse.GetRole{
|
||||||
|
MenuIds: menuIdsString,
|
||||||
|
RoleId: RoleId,
|
||||||
|
RoleName: adminRole.RoleName,
|
||||||
|
RoleStatus: adminRole.RoleStatus,
|
||||||
|
IsAdmin: adminRole.IsAdmin,
|
||||||
|
}
|
||||||
|
|
||||||
responses.OkWithData(GetRoleResponse, c)
|
responses.OkWithData(GetRoleResponse, c)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,35 +8,35 @@ type MenuRequest struct {
|
|||||||
|
|
||||||
// AddMenu 新增菜单
|
// AddMenu 新增菜单
|
||||||
type AddMenu struct {
|
type AddMenu struct {
|
||||||
MenuName string `json:"menu_name" form:"menu_name" validate:"required" label:"菜单名称"`
|
MenuName string `json:"menu_name" form:"menu_name" validate:"required" label:"菜单名称"`
|
||||||
MenuTitle string `json:"menu_title" form:"menu_title" validate:"required" label:"菜单名称"`
|
MenuTitle string `json:"menu_title" form:"menu_title" validate:"required" label:"菜单名称"`
|
||||||
ParentId int64 `json:"parent_id" form:"parent_id" validate:"required,numeric" label:"父菜单ID"` // (0表示一级)
|
ParentId string `json:"parent_id" form:"parent_id" validate:"required,numeric" label:"父菜单ID"` // (0表示一级)
|
||||||
MenuStatus int `json:"menu_status" form:"menu_status" validate:"oneof=0 1" label:"菜单状态"` // (0:隐藏 1:正常)此优先级最高
|
MenuStatus int `json:"menu_status" form:"menu_status" validate:"oneof=0 1" label:"菜单状态"` // (0:隐藏 1:正常)此优先级最高
|
||||||
MenuType int `json:"menu_type" form:"menu_type" validate:"required,oneof=1 2 3" label:"菜单类型"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
MenuType int `json:"menu_type" form:"menu_type" validate:"required,oneof=1 2 3" label:"菜单类型"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
||||||
Permission string `json:"permission" form:"permission" label:"标识"` // 标识
|
Permission string `json:"permission" form:"permission" label:"标识"` // 标识
|
||||||
OrderNum int `json:"order_num" form:"order_num" validate:"numeric" label:"显示顺序"` // 显示顺序
|
OrderNum int `json:"order_num" form:"order_num" validate:"numeric" label:"显示顺序"` // 显示顺序
|
||||||
Icon string `json:"icon" form:"icon" label:"图标地址"` // 图标地址
|
Icon string `json:"icon" form:"icon" label:"图标地址"` // 图标地址
|
||||||
Path string `json:"path" form:"path" label:"页面地址"` // 页面地址(#表示当前页)-按钮不需要
|
Path string `json:"path" form:"path" label:"页面地址"` // 页面地址(#表示当前页)-按钮不需要
|
||||||
Component string `json:"component" form:"component" label:"组件名称"` // 组件名称-按钮不需要
|
Component string `json:"component" form:"component" label:"组件名称"` // 组件名称-按钮不需要
|
||||||
ApiIds []int64 `json:"api_ids" form:"api_ids" label:"接口"` // 接口ids
|
ApiIds []string `json:"api_ids" form:"api_ids" label:"接口"` // 接口ids
|
||||||
}
|
}
|
||||||
|
|
||||||
// PutMenu 修改菜单
|
// PutMenu 修改菜单
|
||||||
type PutMenu struct {
|
type PutMenu struct {
|
||||||
MenuName string `json:"menu_name" form:"menu_name" validate:"required" label:"菜单名称"`
|
MenuName string `json:"menu_name" form:"menu_name" validate:"required" label:"菜单名称"`
|
||||||
MenuTitle string `json:"menu_title" form:"menu_title" validate:"required" label:"菜单名称"`
|
MenuTitle string `json:"menu_title" form:"menu_title" validate:"required" label:"菜单名称"`
|
||||||
ParentId int64 `json:"parent_id" form:"parent_id" validate:"required,numeric" label:"父菜单ID"` // (0表示一级)
|
ParentId string `json:"parent_id" form:"parent_id" validate:"required,numeric" label:"父菜单ID"` // (0表示一级)
|
||||||
MenuStatus int `json:"menu_status" form:"menu_status" validate:"oneof=0 1" label:"菜单状态"` // (0:隐藏 1:正常)此优先级最高
|
MenuStatus int `json:"menu_status" form:"menu_status" validate:"oneof=0 1" label:"菜单状态"` // (0:隐藏 1:正常)此优先级最高
|
||||||
MenuType int `json:"menu_type" form:"menu_type" validate:"required,oneof=1 2 3" label:"菜单类型"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
MenuType int `json:"menu_type" form:"menu_type" validate:"required,oneof=1 2 3" label:"菜单类型"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
||||||
Permission string `json:"permission" form:"permission" label:"标识"` // 标识
|
Permission string `json:"permission" form:"permission" label:"标识"` // 标识
|
||||||
OrderNum int `json:"order_num" form:"order_num" validate:"numeric" label:"显示顺序"` // 显示顺序
|
OrderNum int `json:"order_num" form:"order_num" validate:"numeric" label:"显示顺序"` // 显示顺序
|
||||||
Icon string `json:"icon" form:"icon" label:"图标地址"` // 图标地址
|
Icon string `json:"icon" form:"icon" label:"图标地址"` // 图标地址
|
||||||
Path string `json:"path" form:"path" label:"页面地址"` // 页面地址(#表示当前页)-按钮不需要
|
Path string `json:"path" form:"path" label:"页面地址"` // 页面地址(#表示当前页)-按钮不需要
|
||||||
Component string `json:"component" form:"component" label:"组件名称"` // 组件名称-按钮不需要
|
Component string `json:"component" form:"component" label:"组件名称"` // 组件名称-按钮不需要
|
||||||
ApiIds []int64 `json:"api_ids" form:"api_ids" label:"接口"` // 接口ids
|
ApiIds []string `json:"api_ids" form:"api_ids" label:"接口"` // 接口ids
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeleteMenu 删除菜单
|
// DeleteMenu 删除菜单
|
||||||
type DeleteMenu struct {
|
type DeleteMenu struct {
|
||||||
MenuIds []int64 `json:"menu_ids" form:"menu_ids" validate:"required" label:"菜单id"`
|
MenuIds []string `json:"menu_ids" form:"menu_ids" validate:"required" label:"菜单id"`
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,11 +1,13 @@
|
|||||||
package menuResponse
|
package menuResponse
|
||||||
|
|
||||||
|
import "hospital-admin-api/api/model"
|
||||||
|
|
||||||
// GetMenuList 获取菜单列表
|
// GetMenuList 获取菜单列表
|
||||||
type GetMenuList struct {
|
type GetMenuList struct {
|
||||||
MenuId int64 `json:"menu_id"`
|
MenuId string `json:"menu_id"`
|
||||||
MenuName string `json:"menu_name"` // 菜单名称
|
MenuName string `json:"menu_name"` // 菜单名称
|
||||||
MenuTitle string `json:"menu_title"` // 菜单名称
|
MenuTitle string `json:"menu_title"` // 菜单名称
|
||||||
ParentId int64 `json:"parent_id"` // 父菜单ID(0表示一级)
|
ParentId string `json:"parent_id"` // 父菜单ID(0表示一级)
|
||||||
MenuStatus int `json:"menu_status"` // 菜单状态(0:隐藏 1:正常)此优先级最高
|
MenuStatus int `json:"menu_status"` // 菜单状态(0:隐藏 1:正常)此优先级最高
|
||||||
MenuType int `json:"menu_type"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
MenuType int `json:"menu_type"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
||||||
Permission string `json:"permission"` // 标识
|
Permission string `json:"permission"` // 标识
|
||||||
@ -15,3 +17,20 @@ type GetMenuList struct {
|
|||||||
Component string `json:"component"` // 组件名称
|
Component string `json:"component"` // 组件名称
|
||||||
Children []*GetMenuList `json:"children"` // 下级页面
|
Children []*GetMenuList `json:"children"` // 下级页面
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetMenu 菜单详情
|
||||||
|
type GetMenu struct {
|
||||||
|
MenuId string `json:"menu_id"`
|
||||||
|
MenuName string `json:"menu_name"` // 菜单名称
|
||||||
|
MenuTitle string `json:"menu_title"` // 菜单名称
|
||||||
|
ParentId string `json:"parent_id"` // 父菜单ID(0表示一级)
|
||||||
|
MenuStatus int `json:"menu_status"` // 菜单状态(0:隐藏 1:正常)此优先级最高
|
||||||
|
MenuType int `json:"menu_type"` // 菜单类型(1:模块 2:菜单 3:按钮)
|
||||||
|
Permission string `json:"permission"` // 标识
|
||||||
|
OrderNum int `json:"order_num"` // 显示顺序
|
||||||
|
Icon string `json:"icon"` // 图标地址
|
||||||
|
Path string `json:"path"` // 页面地址(#表示当前页)
|
||||||
|
Component string `json:"component"` // 组件名称
|
||||||
|
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||||||
|
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
|
||||||
|
}
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import (
|
|||||||
"hospital-admin-api/api/requests"
|
"hospital-admin-api/api/requests"
|
||||||
"hospital-admin-api/api/responses/menuResponse"
|
"hospital-admin-api/api/responses/menuResponse"
|
||||||
"hospital-admin-api/global"
|
"hospital-admin-api/global"
|
||||||
|
"strconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
type MenuService struct{}
|
type MenuService struct{}
|
||||||
@ -26,10 +27,10 @@ func (r *MenuService) GetMenuList() ([]*menuResponse.GetMenuList, error) {
|
|||||||
|
|
||||||
for _, menu := range adminMenu {
|
for _, menu := range adminMenu {
|
||||||
node := &menuResponse.GetMenuList{
|
node := &menuResponse.GetMenuList{
|
||||||
MenuId: menu.MenuId,
|
MenuId: strconv.FormatInt(menu.MenuId, 10),
|
||||||
MenuName: menu.MenuName,
|
MenuName: menu.MenuName,
|
||||||
MenuTitle: menu.MenuTitle,
|
MenuTitle: menu.MenuTitle,
|
||||||
ParentId: menu.ParentId,
|
ParentId: strconv.FormatInt(menu.ParentId, 10),
|
||||||
MenuStatus: menu.MenuStatus,
|
MenuStatus: menu.MenuStatus,
|
||||||
MenuType: menu.MenuType,
|
MenuType: menu.MenuType,
|
||||||
Permission: menu.Permission,
|
Permission: menu.Permission,
|
||||||
@ -45,6 +46,9 @@ func (r *MenuService) GetMenuList() ([]*menuResponse.GetMenuList, error) {
|
|||||||
// 构建菜单树
|
// 构建菜单树
|
||||||
for _, menu := range adminMenu {
|
for _, menu := range adminMenu {
|
||||||
if menu.ParentId == 0 {
|
if menu.ParentId == 0 {
|
||||||
|
if menuMap[menu.MenuId] == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
menuTree = append(menuTree, menuMap[menu.MenuId])
|
menuTree = append(menuTree, menuMap[menu.MenuId])
|
||||||
} else if parent, ok := menuMap[menu.ParentId]; ok {
|
} else if parent, ok := menuMap[menu.ParentId]; ok {
|
||||||
parent.Children = append(parent.Children, menuMap[menu.MenuId])
|
parent.Children = append(parent.Children, menuMap[menu.MenuId])
|
||||||
@ -60,9 +64,14 @@ func (r *MenuService) AddMenu(AddMenuRequest requests.AddMenu) (bool, error) {
|
|||||||
AdminMenuApiDao := dao.AdminMenuApiDao{}
|
AdminMenuApiDao := dao.AdminMenuApiDao{}
|
||||||
AdminApiDao := dao.AdminApiDao{}
|
AdminApiDao := dao.AdminApiDao{}
|
||||||
|
|
||||||
|
ParentId, err := strconv.ParseInt(AddMenuRequest.ParentId, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
return false, errors.New("新增失败")
|
||||||
|
}
|
||||||
|
|
||||||
// 判断父级id
|
// 判断父级id
|
||||||
if AddMenuRequest.ParentId != 0 {
|
if ParentId != 0 {
|
||||||
adminMenu, _ := AdminMenuDao.GetAdminMenuById(AddMenuRequest.ParentId)
|
adminMenu, _ := AdminMenuDao.GetAdminMenuById(ParentId)
|
||||||
if adminMenu == nil {
|
if adminMenu == nil {
|
||||||
return false, errors.New("上级菜单错误")
|
return false, errors.New("上级菜单错误")
|
||||||
}
|
}
|
||||||
@ -80,7 +89,7 @@ func (r *MenuService) AddMenu(AddMenuRequest requests.AddMenu) (bool, error) {
|
|||||||
AdminMenuModel := &model.AdminMenu{
|
AdminMenuModel := &model.AdminMenu{
|
||||||
MenuName: AddMenuRequest.MenuName,
|
MenuName: AddMenuRequest.MenuName,
|
||||||
MenuTitle: AddMenuRequest.MenuTitle,
|
MenuTitle: AddMenuRequest.MenuTitle,
|
||||||
ParentId: AddMenuRequest.ParentId,
|
ParentId: ParentId,
|
||||||
MenuStatus: AddMenuRequest.MenuStatus,
|
MenuStatus: AddMenuRequest.MenuStatus,
|
||||||
MenuType: AddMenuRequest.MenuType,
|
MenuType: AddMenuRequest.MenuType,
|
||||||
Permission: AddMenuRequest.Permission,
|
Permission: AddMenuRequest.Permission,
|
||||||
@ -99,6 +108,13 @@ func (r *MenuService) AddMenu(AddMenuRequest requests.AddMenu) (bool, error) {
|
|||||||
// 新增菜单api
|
// 新增菜单api
|
||||||
if len(AddMenuRequest.ApiIds) > 0 {
|
if len(AddMenuRequest.ApiIds) > 0 {
|
||||||
for _, v := range AddMenuRequest.ApiIds {
|
for _, v := range AddMenuRequest.ApiIds {
|
||||||
|
// 将字符串转换为int64类型
|
||||||
|
v, err := strconv.ParseInt(v, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
return false, errors.New("新增失败")
|
||||||
|
}
|
||||||
|
|
||||||
// 检测api
|
// 检测api
|
||||||
adminApi, _ := AdminApiDao.GetAdminApiById(v)
|
adminApi, _ := AdminApiDao.GetAdminApiById(v)
|
||||||
if adminApi == nil {
|
if adminApi == nil {
|
||||||
@ -130,9 +146,14 @@ func (r *MenuService) PutMenu(requestMenuId int64, PutMenuRequest requests.PutMe
|
|||||||
AdminMenuApiDao := dao.AdminMenuApiDao{}
|
AdminMenuApiDao := dao.AdminMenuApiDao{}
|
||||||
AdminApiDao := dao.AdminApiDao{}
|
AdminApiDao := dao.AdminApiDao{}
|
||||||
|
|
||||||
|
ParentId, err := strconv.ParseInt(PutMenuRequest.ParentId, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
return false, errors.New("新增失败")
|
||||||
|
}
|
||||||
|
|
||||||
// 判断父级id
|
// 判断父级id
|
||||||
if PutMenuRequest.ParentId != 0 {
|
if ParentId != 0 {
|
||||||
adminMenu, _ := AdminMenuDao.GetAdminMenuById(PutMenuRequest.ParentId)
|
adminMenu, _ := AdminMenuDao.GetAdminMenuById(ParentId)
|
||||||
if adminMenu == nil {
|
if adminMenu == nil {
|
||||||
return false, errors.New("上级菜单错误")
|
return false, errors.New("上级菜单错误")
|
||||||
}
|
}
|
||||||
@ -156,7 +177,7 @@ func (r *MenuService) PutMenu(requestMenuId int64, PutMenuRequest requests.PutMe
|
|||||||
AdminMenuModel := &model.AdminMenu{
|
AdminMenuModel := &model.AdminMenu{
|
||||||
MenuName: PutMenuRequest.MenuName,
|
MenuName: PutMenuRequest.MenuName,
|
||||||
MenuTitle: PutMenuRequest.MenuTitle,
|
MenuTitle: PutMenuRequest.MenuTitle,
|
||||||
ParentId: PutMenuRequest.ParentId,
|
ParentId: ParentId,
|
||||||
MenuStatus: PutMenuRequest.MenuStatus,
|
MenuStatus: PutMenuRequest.MenuStatus,
|
||||||
MenuType: PutMenuRequest.MenuType,
|
MenuType: PutMenuRequest.MenuType,
|
||||||
Permission: PutMenuRequest.Permission,
|
Permission: PutMenuRequest.Permission,
|
||||||
@ -166,7 +187,7 @@ func (r *MenuService) PutMenu(requestMenuId int64, PutMenuRequest requests.PutMe
|
|||||||
Component: PutMenuRequest.Component,
|
Component: PutMenuRequest.Component,
|
||||||
}
|
}
|
||||||
|
|
||||||
err := AdminMenuDao.EditAdminMenuByIdWithStruct(tx, adminMenu.MenuId, AdminMenuModel)
|
err = AdminMenuDao.EditAdminMenuByIdWithStruct(tx, adminMenu.MenuId, AdminMenuModel)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
tx.Rollback()
|
tx.Rollback()
|
||||||
return false, errors.New("修改失败")
|
return false, errors.New("修改失败")
|
||||||
@ -182,6 +203,13 @@ func (r *MenuService) PutMenu(requestMenuId int64, PutMenuRequest requests.PutMe
|
|||||||
// 新增菜单api
|
// 新增菜单api
|
||||||
if len(PutMenuRequest.ApiIds) > 0 {
|
if len(PutMenuRequest.ApiIds) > 0 {
|
||||||
for _, v := range PutMenuRequest.ApiIds {
|
for _, v := range PutMenuRequest.ApiIds {
|
||||||
|
// 将字符串转换为int64类型
|
||||||
|
v, err := strconv.ParseInt(v, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
return false, errors.New("修改失败")
|
||||||
|
}
|
||||||
|
|
||||||
// 检测api
|
// 检测api
|
||||||
adminApi, _ := AdminApiDao.GetAdminApiById(v)
|
adminApi, _ := AdminApiDao.GetAdminApiById(v)
|
||||||
if adminApi == nil {
|
if adminApi == nil {
|
||||||
@ -237,6 +265,13 @@ func (r *MenuService) DeleteMenu(c *gin.Context, DeleteMenuRequest requests.Dele
|
|||||||
}()
|
}()
|
||||||
|
|
||||||
for _, v := range DeleteMenuRequest.MenuIds {
|
for _, v := range DeleteMenuRequest.MenuIds {
|
||||||
|
// 将字符串转换为int64类型
|
||||||
|
v, err := strconv.ParseInt(v, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
return false, errors.New("删除失败")
|
||||||
|
}
|
||||||
|
|
||||||
// 获取菜单数据
|
// 获取菜单数据
|
||||||
adminMenu, _ := AdminMenuDao.GetAdminMenuById(v)
|
adminMenu, _ := AdminMenuDao.GetAdminMenuById(v)
|
||||||
if adminMenu == nil {
|
if adminMenu == nil {
|
||||||
|
|||||||
@ -116,44 +116,22 @@ func (r *RoleService) PutRoleStatus(roleId int64, roleStatus int) (bool, error)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GetRole 角色详情
|
// GetRole 角色详情
|
||||||
func (r *RoleService) GetRole(roleId int64) (*roleResponse.GetRole, error) {
|
func (r *RoleService) GetRole(roleId int64) (adminRole *model.AdminRole, menuIds []int64, err error) {
|
||||||
// 获取请求角色数据
|
// 获取请求角色数据
|
||||||
AdminRoleDao := dao.AdminRoleDao{}
|
AdminRoleDao := dao.AdminRoleDao{}
|
||||||
adminRole, err := AdminRoleDao.GetAdminRoleFirstById(roleId)
|
adminRole, err = AdminRoleDao.GetAdminRoleFirstById(roleId)
|
||||||
if err != nil || adminRole == nil {
|
if err != nil || adminRole == nil {
|
||||||
return nil, errors.New("非法操作")
|
return nil, nil, errors.New("非法操作")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取角色权限菜单id
|
// 获取角色权限菜单id
|
||||||
AdminRoleMenuDao := dao.AdminRoleMenuDao{}
|
AdminRoleMenuDao := dao.AdminRoleMenuDao{}
|
||||||
menuIds, err := AdminRoleMenuDao.GetAdminRoleMenuIdByRoleId(roleId)
|
menuIds, err = AdminRoleMenuDao.GetAdminRoleMenuIdByRoleId(roleId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, errors.New("角色权限菜单获取失败")
|
return nil, nil, errors.New("角色权限菜单获取失败")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 处理返回数据
|
return adminRole, menuIds, nil
|
||||||
// 转换int64为string
|
|
||||||
var menuIdsString []string
|
|
||||||
for _, menuId := range menuIds {
|
|
||||||
menuId := strconv.FormatInt(menuId, 10)
|
|
||||||
menuIdsString = append(menuIdsString, menuId)
|
|
||||||
}
|
|
||||||
|
|
||||||
// 转换int64为string
|
|
||||||
RoleId := strconv.FormatInt(adminRole.RoleId, 10)
|
|
||||||
if err != nil {
|
|
||||||
return nil, errors.New("数据错误")
|
|
||||||
}
|
|
||||||
|
|
||||||
GetRoleResponse := &roleResponse.GetRole{
|
|
||||||
MenuIds: menuIdsString,
|
|
||||||
RoleId: RoleId,
|
|
||||||
RoleName: adminRole.RoleName,
|
|
||||||
RoleStatus: adminRole.RoleStatus,
|
|
||||||
IsAdmin: adminRole.IsAdmin,
|
|
||||||
}
|
|
||||||
|
|
||||||
return GetRoleResponse, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// AddRole 新增角色
|
// AddRole 新增角色
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user