get_user_list.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package handler
  2. import (
  3. "errors"
  4. "github.com/gin-gonic/gin"
  5. "github.com/sirupsen/logrus"
  6. "youngee_m_api/db"
  7. "youngee_m_api/model/http_model"
  8. )
  9. func WrapGetUserListHandler(ctx *gin.Context) {
  10. handler := newGetUserListHandler(ctx)
  11. BaseRun(handler)
  12. }
  13. func newGetUserListHandler(ctx *gin.Context) *GetUserListHandler {
  14. return &GetUserListHandler{
  15. req: http_model.NewGetUserListRequest(),
  16. resp: http_model.NewGetUserListResponse(),
  17. ctx: ctx,
  18. }
  19. }
  20. type GetUserListHandler struct {
  21. req *http_model.UserListRequest
  22. resp *http_model.CommonResponse
  23. ctx *gin.Context
  24. }
  25. func (h *GetUserListHandler) getRequest() interface{} {
  26. return h.req
  27. }
  28. func (h *GetUserListHandler) getContext() *gin.Context {
  29. return h.ctx
  30. }
  31. func (h *GetUserListHandler) getResponse() interface{} {
  32. return h.resp
  33. }
  34. func (h *GetUserListHandler) run() {
  35. data, err := db.GetUserList(h.ctx, h.req.PageNum, h.req.PageSize)
  36. if err != nil {
  37. logrus.Errorf("[GetUserListHandler] GetUserList err:%+v\n", err)
  38. logrus.Info("GetUserList fail,req:%+v", h.req)
  39. return
  40. }
  41. h.resp.Data = data
  42. }
  43. func (h *GetUserListHandler) checkParam() error {
  44. var errs []error
  45. if h.req.PageNum < 0 || h.req.PageSize <= 0 {
  46. errs = append(errs, errors.New("page param error"))
  47. }
  48. h.req.PageNum--
  49. return nil
  50. }