product.go 2.4 KB

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