product.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package base
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/opms_libary/myerrors"
  6. "github.com/gogf/gf/errors/gerror"
  7. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/util/gvalid"
  9. model "dashoo.cn/micro/app/model/base"
  10. server "dashoo.cn/micro/app/service/base"
  11. )
  12. type ProductHandler struct{}
  13. // GetList 获取列表
  14. func (h *ProductHandler) GetList(ctx context.Context, req *model.ProductSearchReq, rsp *comm_def.CommonMsg) error {
  15. s, err := server.NewProductService(ctx)
  16. if err != nil {
  17. return err
  18. }
  19. total, list, err := s.GetList(req)
  20. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  21. if err != nil {
  22. g.Log().Error(err)
  23. return err
  24. }
  25. rsp.Data = g.Map{"list": list, "total": total}
  26. return nil
  27. }
  28. // Create 添加产品信息
  29. func (h *ProductHandler) Create(ctx context.Context, req *model.AddProductReq, rsp *comm_def.CommonMsg) error {
  30. // 参数校验
  31. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  32. return err
  33. }
  34. s, err := server.NewProductService(ctx)
  35. if err != nil {
  36. g.Log().Error(err)
  37. return err
  38. }
  39. _, err = s.Create(req)
  40. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  41. if err != nil {
  42. g.Log().Error(err)
  43. return err
  44. }
  45. return nil
  46. }
  47. //DeleteByIds 批量删除数据
  48. func (h *ProductHandler) DeleteByIds(ctx context.Context, req *model.DeIds, rsp *comm_def.CommonMsg) error {
  49. // 参数校验
  50. if len(req.Ids) == 0 {
  51. return gerror.New("参数为空,操作失败")
  52. }
  53. s, err := server.NewProductService(ctx)
  54. if err != nil {
  55. g.Log().Error(err)
  56. return err
  57. }
  58. err = s.DeleteByIds(req.Ids)
  59. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  60. if err != nil {
  61. g.Log().Error(err)
  62. return err
  63. }
  64. return nil
  65. }
  66. // GetEntityById 根据ID查询详细信息
  67. func (h *ProductHandler) GetEntityById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  68. // 参数校验
  69. if req.Id == 0 {
  70. return gerror.New("参数有误!")
  71. }
  72. s, err := server.NewProductService(ctx)
  73. if err != nil {
  74. g.Log().Error(err)
  75. return err
  76. }
  77. product, err := s.GetEntityById(req.Id)
  78. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  79. if err != nil {
  80. g.Log().Error(err)
  81. return err
  82. }
  83. rsp.Data = product
  84. return nil
  85. }
  86. //UpdateById 更新信息
  87. func (h *ProductHandler) UpdateById(ctx context.Context, req *model.UpdateProductReq, rsp *comm_def.CommonMsg) error {
  88. s, err := server.NewProductService(ctx)
  89. if err != nil {
  90. g.Log().Error(err)
  91. return err
  92. }
  93. err = s.UpdateById(req)
  94. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  95. if err != nil {
  96. g.Log().Error(err)
  97. return err
  98. }
  99. return nil
  100. }