6
0

system.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. package handler
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/micro_libary/micro_srv"
  6. "dashoo.cn/micro_libary/myerrors"
  7. "errors"
  8. "github.com/gogf/gf/frame/g"
  9. system2 "lims_adapter/model/system"
  10. "lims_adapter/model/user"
  11. "lims_adapter/service/system"
  12. )
  13. type System struct{}
  14. // DictInfo 获取字典数据
  15. func (s *System) DictInfo(ctx context.Context, req *system2.DictReq, rsp *comm_def.CommonMsg) error {
  16. tenant, err := micro_srv.GetTenant(ctx)
  17. if err != nil {
  18. return err
  19. }
  20. g.Log().Info("Received user.DictInfo request @ " + tenant)
  21. if req.DictCode == "" {
  22. return errors.New("字典类型不能为空")
  23. }
  24. dictInfo, err := system.NewSrv(tenant).DictInfo(req)
  25. _, err, code, _ := myerrors.CheckError(err)
  26. if err != nil {
  27. return err
  28. }
  29. rsp.Code = code
  30. rsp.Data = dictInfo
  31. return nil
  32. }
  33. // UserList 设备预约权管理:获取用户信息
  34. func (s *System) UserList(ctx context.Context, req *user.UserInfoReq, rsp *comm_def.CommonMsg) error {
  35. tenant, err := micro_srv.GetTenant(ctx)
  36. if err != nil {
  37. return err
  38. }
  39. g.Log().Info("Received user.UserList request @ " + tenant)
  40. userList, err := system.NewSrv(tenant).UserList(req)
  41. _, err, code, _ := myerrors.CheckError(err)
  42. if err != nil {
  43. return err
  44. }
  45. rsp.Code = code
  46. rsp.Msg = ""
  47. rsp.Data = userList
  48. return nil
  49. }
  50. // GetProgramGroup 获取课题组信息
  51. func (s *System) GetProgramGroup(ctx context.Context, req *user.UserQualification, rsp *comm_def.CommonMsg) error {
  52. tenant, err := micro_srv.GetTenant(ctx)
  53. if err != nil {
  54. return err
  55. }
  56. g.Log().Info("Received user.GetProgramGroup request @ " + tenant)
  57. programGroup, err := system.NewSrv(tenant).GetProgramGroup(req.Id)
  58. _, err, _, _ = myerrors.CheckError(err)
  59. if err != nil {
  60. return err
  61. }
  62. rsp.Data = programGroup
  63. return nil
  64. }
  65. // GetUserList 主从用户管理:获取用户信息
  66. // 请求类型参数 req.ReqType 1 查询主用户 2 查询相关从用户 3 查询可添加为从主用户
  67. func (s *System) GetUserList(ctx context.Context, req *user.UserInfoReq, rsp *comm_def.CommonMsg) error {
  68. tenant, err := micro_srv.GetTenant(ctx)
  69. if err != nil {
  70. return err
  71. }
  72. userInfo, err := micro_srv.GetUserInfo(ctx)
  73. if err != nil {
  74. return err
  75. }
  76. g.Log().Info("Received user.GetUserList request @ " + tenant)
  77. userList, err := system.NewSrv(tenant).GetUserList(req, userInfo.Id)
  78. _, err, code, _ := myerrors.CheckError(err)
  79. if err != nil {
  80. return err
  81. }
  82. rsp.Code = code
  83. rsp.Msg = ""
  84. rsp.Data = userList
  85. return nil
  86. }
  87. // AddMainUserOrSubUser 添加主从用户
  88. // 请求类型参数 req.ReqType 1 添加主用户(只需修改base_user的IsMain字段)
  89. func (s *System) AddMainUserOrSubUser(ctx context.Context, req *user.AddMainOrSubReq, rsp *comm_def.CommonMsg) error {
  90. tenant, err := micro_srv.GetTenant(ctx)
  91. if err != nil {
  92. return err
  93. }
  94. userInfo, err := micro_srv.GetUserInfo(ctx)
  95. if err != nil {
  96. return err
  97. }
  98. g.Log().Info("Received user.AddMainUserOrSubUser request @ " + tenant)
  99. err = system.NewSrv(tenant).AddMainUserOrUser(req, userInfo)
  100. _, err, code, _ := myerrors.CheckError(err)
  101. if err != nil {
  102. return err
  103. }
  104. rsp.Code = code
  105. rsp.Msg = "添加用户成功!"
  106. return nil
  107. }
  108. // DeleteMainUserOrSubUser 删除主从用户
  109. func (s *System) DeleteMainUserOrSubUser(ctx context.Context, req *user.AddMainOrSubReq, rsp *comm_def.CommonMsg) error {
  110. tenant, err := micro_srv.GetTenant(ctx)
  111. if err != nil {
  112. return err
  113. }
  114. userInfo, err := micro_srv.GetUserInfo(ctx)
  115. if err != nil {
  116. return err
  117. }
  118. g.Log().Info("Received user.DeleteMainUserOrSubUser request @ " + tenant)
  119. err = system.NewSrv(tenant).DeleteMainUserOrSubUser(req, userInfo)
  120. _, err, code, msg := myerrors.CheckError(err)
  121. if err != nil {
  122. return err
  123. }
  124. rsp.Msg = msg
  125. rsp.Code = code
  126. return nil
  127. }
  128. // UserBindAccount 用户绑定
  129. func (s *System) UserBindAccount(ctx context.Context, req *user.UserBindAccountReq, rsp *comm_def.CommonMsg) error {
  130. tenant, err := micro_srv.GetTenant(ctx)
  131. if err != nil {
  132. return err
  133. }
  134. g.Log().Info("Received user.UserBindAccount request @ " + tenant)
  135. err = system.NewSrv(tenant).UserBindAccount(req)
  136. _, err, code, msg := myerrors.CheckError(err)
  137. if err != nil {
  138. return err
  139. }
  140. rsp.Msg = msg
  141. rsp.Code = code
  142. return nil
  143. }
  144. // 获取登录人信息
  145. func (s *System) GetLoginUser(ctx context.Context, _, rsp *comm_def.CommonMsg) error {
  146. userInfo, err := micro_srv.GetUserInfo(ctx)
  147. if err != nil {
  148. return err
  149. }
  150. rsp.Msg = "登录成功"
  151. rsp.Code = 200
  152. rsp.Data = userInfo
  153. return nil
  154. }