role.go 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. package handler
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/micro/app/model"
  6. "dashoo.cn/micro/app/service"
  7. "dashoo.cn/opms_libary/myerrors"
  8. "github.com/gogf/gf/errors/gerror"
  9. "github.com/gogf/gf/frame/g"
  10. "github.com/gogf/gf/util/gvalid"
  11. )
  12. type RoleHandler struct{}
  13. // GetList 获取列表
  14. func (h *RoleHandler) GetList(ctx context.Context, req *model.SelectPageReq, rsp *comm_def.CommonMsg) error {
  15. roleService, err := service.NewRoleService(ctx)
  16. if err != nil {
  17. g.Log().Error(err)
  18. return gerror.New("系统异常,请重新尝试")
  19. }
  20. total, list, err := roleService.GetRoleListSearch(req)
  21. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  22. rsp.Data = g.Map{"list": list, "total": total}
  23. return nil
  24. }
  25. // GetEntityById 详情
  26. func (o *RoleHandler) GetEntityById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  27. // 参数校验
  28. if req.Id == 0 {
  29. return NoParamsErr
  30. }
  31. roleService, err := service.NewRoleService(ctx)
  32. if err != nil {
  33. g.Log().Error(err)
  34. return gerror.New("系统异常,请重新尝试")
  35. }
  36. entity, err := roleService.GetRoleById(req.Id)
  37. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  38. rsp.Data = entity
  39. return nil
  40. }
  41. // Create 添加
  42. func (h *RoleHandler) Create(ctx context.Context, req *model.SysRoleReq, rsp *comm_def.CommonMsg) error {
  43. // 检查请求参数
  44. if v := gvalid.CheckStruct(ctx, req, nil); v != nil {
  45. g.Log().Error(v)
  46. return v
  47. }
  48. roleService, err := service.NewRoleService(ctx)
  49. if err != nil {
  50. g.Log().Error(err)
  51. return gerror.New("系统异常,请重新尝试")
  52. }
  53. err = roleService.CreateRole(req)
  54. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  55. return nil
  56. }
  57. // UpdateById 编辑
  58. func (h *RoleHandler) UpdateById(ctx context.Context, req *model.UpdateSysRoleReq, rsp *comm_def.CommonMsg) error {
  59. // 检查请求参数
  60. if v := gvalid.CheckStruct(ctx, req, nil); v != nil {
  61. g.Log().Error(v)
  62. return v
  63. }
  64. roleService, err := service.NewRoleService(ctx)
  65. if err != nil {
  66. g.Log().Error(err)
  67. return gerror.New("系统异常,请重新尝试")
  68. }
  69. err = roleService.UpdateRole(req)
  70. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  71. return nil
  72. }
  73. // DeleteByIds 删除菜单
  74. func (h *RoleHandler) DeleteByIds(ctx context.Context, req *comm_def.IdsReq, rsp *comm_def.CommonMsg) error {
  75. roleService, err := service.NewRoleService(ctx)
  76. if err != nil {
  77. g.Log().Error(err)
  78. return gerror.New("系统异常,请重新尝试")
  79. }
  80. err = roleService.DeleteByIds(req.Ids)
  81. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  82. return nil
  83. }
  84. // GetRoleDeptTreeselect 获取角色下的自定义部门
  85. func (h *RoleHandler) GetRoleDeptTreeselect(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  86. roleService, err := service.NewRoleService(ctx)
  87. if err != nil {
  88. g.Log().Error(err)
  89. return gerror.New("系统异常,请重新尝试")
  90. }
  91. deptIds, err := roleService.GetRoleDeptTreeselect(req.Id)
  92. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  93. rsp.Data = deptIds
  94. return nil
  95. }
  96. // UpdateRoleStatus 修改角色状态
  97. func (h *RoleHandler) UpdateRoleStatus(ctx context.Context, req *model.StatusSetReq, rsp *comm_def.CommonMsg) error {
  98. roleService, err := service.NewRoleService(ctx)
  99. if err != nil {
  100. g.Log().Error(err)
  101. return gerror.New("系统异常,请重新尝试")
  102. }
  103. err = roleService.UpdateRoleStatus(req)
  104. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  105. return nil
  106. }
  107. // UpdateRoleDataScope 角色下的数据权限
  108. func (h *RoleHandler) UpdateRoleDataScope(ctx context.Context, req *model.DataScopeReq, rsp *comm_def.CommonMsg) error {
  109. roleService, err := service.NewRoleService(ctx)
  110. if err != nil {
  111. g.Log().Error(err)
  112. return gerror.New("系统异常,请重新尝试")
  113. }
  114. err = roleService.UpdateRoleDataScope(req)
  115. _, _, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  116. return nil
  117. }