package controller import ( "github.com/gin-gonic/gin" "hospital-admin-api/api/dao" "hospital-admin-api/api/requests" "hospital-admin-api/api/responses" "hospital-admin-api/api/service" "hospital-admin-api/global" "hospital-admin-api/utils" ) type Role struct{} // GetRoleMenuList 获取角色菜单列表 func (r *Role) GetRoleMenuList(c *gin.Context) { roleId := c.GetInt64("RoleId") if roleId == 0 { responses.Fail(c) return } // 登陆 RoleService := service.RoleService{} roleMenuList, err := RoleService.GetRoleMenuList(roleId) if err != nil { responses.FailWithMessage(err.Error(), c) return } if len(roleMenuList) == 0 { responses.FailWithMessage("请联系管理人员设置菜单", c) return } responses.OkWithData(roleMenuList, c) } // GetRoleList 获取角色列表 func (r *Role) GetRoleList(c *gin.Context) { var RoleRequest requests.RoleRequest if err := c.ShouldBind(&RoleRequest.GetRoleList); err != nil { responses.FailWithMessage(err.Error(), c) return } // 参数验证 if err := global.Validate.Struct(RoleRequest.GetRoleList); err != nil { responses.FailWithMessage(utils.Translate(err), c) return } if RoleRequest.GetRoleList.Page == 0 { RoleRequest.GetRoleList.Page = 1 } if RoleRequest.GetRoleList.PageSize == 0 { RoleRequest.GetRoleList.PageSize = 20 } AdminRoleDao := dao.AdminRoleDao{} adminRole, err := AdminRoleDao.GetAdminRolePageSearch(RoleRequest.GetRoleList.RoleName, RoleRequest.GetRoleList.Page, RoleRequest.GetRoleList.PageSize) if err != nil || len(adminRole) == 0 { responses.Ok(c) c.Abort() return } responses.OkWithData(adminRole, c) }