You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
2.2 KiB

6 months ago
  1. package coupon
  2. import (
  3. "CouponBackendGo/api/v1/coupon"
  4. "CouponBackendGo/internal/model/dto"
  5. "CouponBackendGo/internal/service"
  6. "github.com/gogf/gf/v2/frame/g"
  7. "github.com/gogf/gf/v2/net/ghttp"
  8. )
  9. type cCoupon struct{}
  10. func Coupon() *cCoupon {
  11. return &cCoupon{}
  12. }
  13. func (c cCoupon) GetCouponList(r *ghttp.Request) {
  14. var req *coupon.GetCouponListReq
  15. if err := r.Parse(&req); err != nil {
  16. r.Response.WriteJsonExit(dto.Result{
  17. Code: 400,
  18. Message: err.Error(),
  19. })
  20. }
  21. res, err := service.Coupon().GetCouponList(r.Context(), req.PageNo, req.PageSize)
  22. total, err := service.Coupon().GetCouponListTotal(r.Context())
  23. if err != nil {
  24. r.Response.WriteJsonExit(dto.Result{
  25. Code: 400,
  26. Message: err.Error(),
  27. })
  28. }
  29. r.Response.WriteJsonExit(dto.Result{
  30. Code: 200,
  31. Message: "success",
  32. Data: g.Map{
  33. "list": res,
  34. "total": total,
  35. },
  36. })
  37. }
  38. func (c cCoupon) GetCoupon(r *ghttp.Request) {
  39. var req *coupon.GetCouponReq
  40. if err := r.Parse(&req); err != nil {
  41. r.Response.WriteJsonExit(dto.Result{
  42. Code: 400,
  43. Message: err.Error(),
  44. })
  45. }
  46. res, err := service.Coupon().GetCoupon(r.Context(), req.Id)
  47. if err != nil {
  48. r.Response.WriteJsonExit(dto.Result{
  49. Code: 400,
  50. Message: err.Error(),
  51. })
  52. }
  53. r.Response.WriteJsonExit(dto.Result{
  54. Code: 200,
  55. Message: "success",
  56. Data: res,
  57. })
  58. }
  59. func (c cCoupon) DeleteCoupon(r *ghttp.Request) {
  60. var req *coupon.DeleteCouponReq
  61. if err := r.Parse(&req); err != nil {
  62. r.Response.WriteJsonExit(dto.Result{
  63. Code: 400,
  64. Message: err.Error(),
  65. })
  66. }
  67. err := service.Coupon().DeleteCoupon(r.Context(), req.Id)
  68. if err != nil {
  69. r.Response.WriteJsonExit(dto.Result{
  70. Code: 400,
  71. Message: err.Error(),
  72. })
  73. }
  74. r.Response.WriteJsonExit(dto.Result{
  75. Code: 200,
  76. Message: "success",
  77. })
  78. }
  79. func (c cCoupon) InsertCoupon(r *ghttp.Request) {
  80. var req *coupon.InsertCouponReq
  81. if err := r.Parse(&req); err != nil {
  82. r.Response.WriteJsonExit(dto.Result{
  83. Code: 400,
  84. Message: err.Error(),
  85. })
  86. }
  87. err := service.Coupon().InsertCoupon(r.Context(), req)
  88. if err != nil {
  89. r.Response.WriteJsonExit(dto.Result{
  90. Code: 400,
  91. Message: err.Error(),
  92. })
  93. }
  94. r.Response.WriteJsonExit(dto.Result{
  95. Code: 200,
  96. Message: "success",
  97. })
  98. }