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.

87 lines
2.5 KiB

5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. <?php
  2. declare(strict_types=1);
  3. /**
  4. * This file is part of Hyperf.
  5. *
  6. * @link https://www.hyperf.io
  7. * @document https://doc.hyperf.io
  8. * @contact group@hyperf.io
  9. * @license https://github.com/hyperf/hyperf/blob/master/LICENSE
  10. */
  11. namespace App\Controller;
  12. use App\Service\CouponRebateServiceInterface;
  13. use Hyperf\Di\Annotation\Inject;
  14. use App\Request\CouponRebateReceiveRequest;
  15. use App\Request\CouponRebateTieRequest;
  16. use App\Request\UserRequest;
  17. class CouponRebateController extends BaseController
  18. {
  19. /**
  20. * @Inject
  21. * @var CouponRebateServiceInterface
  22. */
  23. protected $CouponRebateService;
  24. /**
  25. * 用户是否领取过领取优惠券
  26. */
  27. public function isCouponRebate(UserRequest $validator)
  28. {
  29. $user_id = $this->request->input('user_id', 0);
  30. $res = $this->CouponRebateService->isCouponRebate($user_id);
  31. return $this->success($res);
  32. }
  33. /**
  34. * 返回活动信息
  35. */
  36. public function getActiveInfo()
  37. {
  38. $res = $this->CouponRebateService->getActiveInfo();
  39. return $this->success($res);
  40. }
  41. /**
  42. * 用户领取优惠券
  43. */
  44. public function userReceiveCoupon(CouponRebateReceiveRequest $validator)
  45. {
  46. return $this->success($this->CouponRebateService->userReceiveCoupon($this->request->all()));
  47. }
  48. public function couponRebate()
  49. {
  50. $order_id = $this->request->input('order_id', 0);
  51. $res = $this->CouponRebateService->couponRebate($order_id);
  52. return $this->success($res);
  53. }
  54. /**
  55. * 将优惠券绑定活动
  56. */
  57. public function tieCouponActive(CouponRebateTieRequest $validator)
  58. {
  59. $couponForward = $this->request->input('coupon_forward_ids',[]);
  60. $couponForward = is_array($couponForward) ? implode(',',$couponForward) : $couponForward ;
  61. $couponRepay = $this->request->input('coupon_repay_id',0);
  62. $couponActivity = $this->request->input('coupon_activity',0);
  63. $res = $this->CouponRebateService->tieCouponActive($couponActivity,$couponForward,$couponRepay);
  64. return $this->success($res);
  65. }
  66. /**
  67. * 清优惠券领取记录(SSDB)
  68. */
  69. public function clearSsdbCouponReceiveByName(){
  70. $activity = $this->request->input('activity_type',0);
  71. $userId = $this->request->input('user_id',0);
  72. $get = $this->request->input('get',0);
  73. $isAll = $this->request->input('is_all',0);;
  74. return $this->success($this->CouponRebateService->clearSsdbCouponReceiveByName($activity,$userId, $get, $isAll));
  75. }
  76. }