SpecialTaskLinkList.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package handler
  2. import (
  3. "errors"
  4. "fmt"
  5. "github.com/cstockton/go-conv"
  6. "youngee_m_api/consts"
  7. "youngee_m_api/model/http_model"
  8. "youngee_m_api/pack"
  9. "youngee_m_api/service"
  10. "youngee_m_api/util"
  11. "github.com/gin-gonic/gin"
  12. "github.com/sirupsen/logrus"
  13. )
  14. func WrapSpecialTaskLinkListHandler(ctx *gin.Context) {
  15. handler := newSpecialTaskLinkListHandler(ctx)
  16. BaseRun(handler)
  17. }
  18. func newSpecialTaskLinkListHandler(ctx *gin.Context) *SpecialTaskLinkListHandler {
  19. return &SpecialTaskLinkListHandler{
  20. req: http_model.NewSpecialTaskLinkListRequest(),
  21. resp: http_model.NewSpecialTaskLinkListResponse(),
  22. ctx: ctx,
  23. }
  24. }
  25. type SpecialTaskLinkListHandler struct {
  26. req *http_model.SpecialTaskLinkListRequest
  27. resp *http_model.CommonResponse
  28. ctx *gin.Context
  29. }
  30. func (h *SpecialTaskLinkListHandler) getRequest() interface{} {
  31. return h.req
  32. }
  33. func (h *SpecialTaskLinkListHandler) getContext() *gin.Context {
  34. return h.ctx
  35. }
  36. func (h *SpecialTaskLinkListHandler) getResponse() interface{} {
  37. return h.resp
  38. }
  39. func (h *SpecialTaskLinkListHandler) run() {
  40. conditions := pack.HttpSpecialTaskLinkListRequestToCondition(h.req)
  41. data, err := service.SpecialTask.GetSpecialTaskLinkList(h.ctx, h.req.ProjectId, h.req.PageSize, h.req.PageNum, conditions)
  42. if err != nil {
  43. logrus.WithContext(h.ctx).Errorf("[TaskLogisticsListHandler] error GetProjectTaskList, err:%+v", err)
  44. util.HandlerPackErrorResp(h.resp, consts.ErrorInternal, consts.DefaultToast)
  45. return
  46. }
  47. h.resp.Data = data
  48. }
  49. func (h *SpecialTaskLinkListHandler) checkParam() error {
  50. var errs []error
  51. if h.req.PageNum < 0 || h.req.PageSize <= 0 {
  52. errs = append(errs, errors.New("page param error"))
  53. }
  54. h.req.PageNum--
  55. h.req.LinkStatus = util.IsNull(h.req.LinkStatus)
  56. if _, err := conv.Int64(h.req.LinkStatus); err != nil {
  57. errs = append(errs, err)
  58. }
  59. if len(errs) != 0 {
  60. return fmt.Errorf("check param errs:%+v", errs)
  61. }
  62. return nil
  63. }