77 lines
3.0 KiB
Go
77 lines
3.0 KiB
Go
package roleResponse
|
||
|
||
import (
|
||
"hospital-admin-api/api/model"
|
||
"strconv"
|
||
)
|
||
|
||
// GetRoleMenuList 角色菜单列表
|
||
type GetRoleMenuList struct {
|
||
MenuId string `json:"menu_id"` // 主键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"` // 组件名称
|
||
Children []*GetRoleMenuList `json:"children"` // 下级页面
|
||
}
|
||
|
||
// GetRole 角色详情
|
||
type GetRole struct {
|
||
MenuIds []string `json:"menu_ids"` // 菜单id
|
||
RoleId string `json:"role_id"` // 角色id
|
||
RoleName string `json:"role_name"` // 角色名称
|
||
RoleStatus int `json:"role_status"` // 角色状态(1:正常 2:禁用)
|
||
IsAdmin int `json:"is_admin"` // 是否管理员(0:否 1:是)
|
||
}
|
||
|
||
// GetRolePage 获取角色列表-分页
|
||
type GetRolePage struct {
|
||
RoleId string `json:"role_id"` // 角色id
|
||
RoleName string `json:"role_name"` // 角色名称
|
||
RoleStatus int `json:"role_status"` // 角色状态(1:正常 2:禁用)
|
||
IsAdmin int `json:"is_admin"` // 是否管理员(0:否 1:是)
|
||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
|
||
}
|
||
|
||
// GetRoleList 获取角色列表
|
||
type GetRoleList struct {
|
||
RoleId string `json:"role_id"` // 角色id
|
||
RoleName string `json:"role_name"` // 角色名称
|
||
RoleStatus int `json:"role_status"` // 角色状态(1:正常 2:禁用)
|
||
IsAdmin int `json:"is_admin"` // 是否管理员(0:否 1:是)
|
||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||
UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间
|
||
}
|
||
|
||
// GetRoleListResponse 获取角色列表
|
||
func GetRoleListResponse(adminRole []*model.AdminRole) []GetRoleList {
|
||
// 处理返回值
|
||
getRoleListResponses := make([]GetRoleList, len(adminRole))
|
||
|
||
if len(adminRole) > 0 {
|
||
for i, v := range adminRole {
|
||
// 将原始结构体转换为新结构体
|
||
getRoleListResponse := GetRoleList{
|
||
RoleId: strconv.Itoa(int(v.RoleId)),
|
||
RoleName: v.RoleName,
|
||
RoleStatus: v.RoleStatus,
|
||
IsAdmin: v.IsAdmin,
|
||
CreatedAt: v.CreatedAt,
|
||
UpdatedAt: v.UpdatedAt,
|
||
}
|
||
|
||
// 将转换后的结构体添加到新切片中
|
||
getRoleListResponses[i] = getRoleListResponse
|
||
}
|
||
}
|
||
|
||
return getRoleListResponses
|
||
}
|