delivery_project.go 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. package opsdev
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/opms_libary/myerrors"
  6. opsdevmodel "dashoo.cn/opms_parent/app/model/opsdev"
  7. opsdevSrv "dashoo.cn/opms_parent/app/service/opsdev"
  8. "github.com/gogf/gf/frame/g"
  9. "github.com/gogf/gf/util/gvalid"
  10. )
  11. type DeliveryProjectHandler struct{}
  12. // GetList 获取交付项目列表
  13. func (h *DeliveryProjectHandler) GetList(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectSearchReq, rsp *comm_def.CommonMsg) error {
  14. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  15. if err != nil {
  16. return err
  17. }
  18. total, list, err := srv.GetList(req)
  19. if err != nil {
  20. return err
  21. }
  22. rsp.Data = g.Map{"list": list, "total": total}
  23. return nil
  24. }
  25. // GetListAll 获取所有交付项目列表(不带权限校验,用于下拉选择等场景)
  26. func (h *DeliveryProjectHandler) GetListAll(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectSearchReq, rsp *comm_def.CommonMsg) error {
  27. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  28. if err != nil {
  29. return err
  30. }
  31. total, list, err := srv.GetListAll(req)
  32. if err != nil {
  33. return err
  34. }
  35. rsp.Data = g.Map{"list": list, "total": total}
  36. return nil
  37. }
  38. // GetDelegatedProjectList 获取委托项目列表(自己负责 + 被授权)
  39. func (h *DeliveryProjectHandler) GetDelegatedProjectList(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectDelegatedSearchReq, rsp *comm_def.CommonMsg) error {
  40. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  41. if err != nil {
  42. return err
  43. }
  44. total, list, err := srv.GetDelegatedProjectList(req)
  45. if err != nil {
  46. return err
  47. }
  48. rsp.Data = g.Map{"list": list, "total": total}
  49. return nil
  50. }
  51. // GetEntityById 根据ID获取详情
  52. func (h *DeliveryProjectHandler) GetEntityById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  53. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  54. if err != nil {
  55. return err
  56. }
  57. detail, err := srv.GetEntityById(req)
  58. if err != nil {
  59. return err
  60. }
  61. rsp.Data = detail
  62. return nil
  63. }
  64. func (h *DeliveryProjectHandler) GetById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  65. return h.GetEntityById(ctx, req, rsp)
  66. }
  67. // Create 创建交付项目
  68. func (h *DeliveryProjectHandler) Create(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectReq, rsp *comm_def.CommonMsg) error {
  69. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  70. return myerrors.ValidError(err.Error())
  71. }
  72. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  73. if err != nil {
  74. return err
  75. }
  76. if err := srv.Create(req); err != nil {
  77. return err
  78. }
  79. rsp.Data = g.Map{"message": "创建成功"}
  80. return nil
  81. }
  82. // UpdateById 更新交付项目
  83. func (h *DeliveryProjectHandler) UpdateById(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectUpdateReq, rsp *comm_def.CommonMsg) error {
  84. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  85. return myerrors.ValidError(err.Error())
  86. }
  87. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  88. if err != nil {
  89. return err
  90. }
  91. if err := srv.UpdateById(req); err != nil {
  92. return err
  93. }
  94. rsp.Data = g.Map{"message": "更新成功"}
  95. return nil
  96. }
  97. // DeleteByIds 批量删除
  98. func (h *DeliveryProjectHandler) DeleteByIds(ctx context.Context, req *comm_def.IdsReq, rsp *comm_def.CommonMsg) error {
  99. if len(req.Ids) == 0 {
  100. return myerrors.ValidError("参数有误!")
  101. }
  102. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  103. if err != nil {
  104. return err
  105. }
  106. if err := srv.DeleteByIds(req); err != nil {
  107. return err
  108. }
  109. rsp.Data = g.Map{"message": "删除成功"}
  110. return nil
  111. }
  112. // AssignDeliveryUser 指派/改派交付负责人
  113. func (h *DeliveryProjectHandler) AssignDeliveryUser(ctx context.Context, req *opsdevmodel.AssignDeliveryUserReq, rsp *comm_def.CommonMsg) error {
  114. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  115. return myerrors.ValidError(err.Error())
  116. }
  117. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  118. if err != nil {
  119. return err
  120. }
  121. if err := srv.AssignDeliveryUser(req); err != nil {
  122. return err
  123. }
  124. rsp.Data = g.Map{"message": "操作成功"}
  125. return nil
  126. }
  127. // GetDelegatesByProjectId 获取项目授权人列表
  128. func (h *DeliveryProjectHandler) GetDelegatesByProjectId(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectDelegateListReq, rsp *comm_def.CommonMsg) error {
  129. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  130. if err != nil {
  131. return err
  132. }
  133. list, err := srv.GetDelegatesByProjectId(req)
  134. if err != nil {
  135. return err
  136. }
  137. rsp.Data = list
  138. return nil
  139. }
  140. // AddDelegate 添加授权人
  141. func (h *DeliveryProjectHandler) AddDelegate(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectDelegateAddReq, rsp *comm_def.CommonMsg) error {
  142. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  143. return myerrors.ValidError(err.Error())
  144. }
  145. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  146. if err != nil {
  147. return err
  148. }
  149. if err := srv.AddDelegate(req); err != nil {
  150. return err
  151. }
  152. rsp.Data = g.Map{"message": "添加授权人成功"}
  153. return nil
  154. }
  155. // RemoveDelegate 移除授权人
  156. func (h *DeliveryProjectHandler) RemoveDelegate(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectDelegateDeleteReq, rsp *comm_def.CommonMsg) error {
  157. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  158. return myerrors.ValidError(err.Error())
  159. }
  160. srv, err := opsdevSrv.NewDeliveryProjectService(ctx)
  161. if err != nil {
  162. return err
  163. }
  164. if err := srv.RemoveDelegate(req); err != nil {
  165. return err
  166. }
  167. rsp.Data = g.Map{"message": "移除授权人成功"}
  168. return nil
  169. }