123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package system
  2. import (
  3. "spaceofcheng/services/controllers"
  4. "spaceofcheng/services/models/model"
  5. "spaceofcheng/services/service/system"
  6. )
  7. // RoleController 用户
  8. type RoleController struct {
  9. dao *system.RoleServ
  10. controllers.BaseController
  11. }
  12. // Constructor 初始化 Controller
  13. // @Title Constructor
  14. // @Description 初始化 Controller, 系统自动调用
  15. func (c *RoleController) Constructor() {
  16. c.dao = system.NewRoleServ(c.Context)
  17. }
  18. // GetRoleList 获取角色列表
  19. func (c *RoleController) GetRoleList() {
  20. // cases := c.Context.Get("cases").([]model.SysUserCase)
  21. // caseIDs := c.GetCaseIDs(cases)
  22. page, _ := c.GetInt("page")
  23. pageSize, _ := c.GetInt("pagesize")
  24. name := c.GetString("name")
  25. // caseid := c.GetString("caseid")
  26. list, err := c.dao.GetRoleList(name, page, pageSize)
  27. if err != nil {
  28. c.ResponseError(err)
  29. }
  30. c.ResponseJSON(list)
  31. }
  32. // GetRoleByID 根据ID获取角色信息
  33. func (c *RoleController) GetRoleByID() {
  34. roleid := c.GetString(":roleid")
  35. info, err := c.dao.GetRoleByID(roleid)
  36. if err != nil {
  37. c.ResponseError(err)
  38. }
  39. c.ResponseJSON(info)
  40. }
  41. // GetRoleMenuByRole 获取角色菜单
  42. func (c *RoleController) GetRoleMenuByRole() {
  43. roleid := c.GetString(":roleid")
  44. menus, err := c.dao.GetRoleMeneByID(roleid)
  45. if err != nil {
  46. c.ResponseError(err)
  47. }
  48. c.ResponseJSON(menus)
  49. }
  50. // SaveCaseRole 保存角色
  51. func (c *RoleController) SaveCaseRole() {
  52. role := model.SysRole{}
  53. if err := c.ParseForm(&role); err != nil {
  54. c.ResponseError(err)
  55. }
  56. newRole, err := c.dao.SaveRole(role)
  57. if err != nil {
  58. c.ResponseError(err)
  59. }
  60. c.ResponseJSON(newRole)
  61. }
  62. // SaveRoleMenus 保存角色对应菜单
  63. func (c *RoleController) SaveRoleMenus() {
  64. roleid := c.GetString(":roleid")
  65. menuids := c.GetString("menuids")
  66. err := c.dao.SaveRoleMenu(roleid, menuids)
  67. if err != nil {
  68. c.ResponseError(err)
  69. }
  70. c.ResponseJSON("保存成功!")
  71. }
  72. // DelCaseRole 删除角色
  73. func (c *RoleController) DelCaseRole() {
  74. roleid := c.GetString(":roleid")
  75. err := c.dao.DelRole(roleid)
  76. if err != nil {
  77. c.ResponseError(err)
  78. }
  79. c.ResponseJSON("删除成功!")
  80. }