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.

42 lines
1022 B

6 years ago
6 years ago
6 years ago
6 years ago
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Amqp\Consumer;
  4. use Hyperf\Amqp\Result;
  5. use Hyperf\Amqp\Annotation\Consumer;
  6. use Hyperf\Amqp\Message\ConsumerMessage;
  7. use PhpAmqpLib\Message\AMQPMessage;
  8. use App\Service\CouponRebateService;
  9. use App\Service\CouponRebateServiceInterface;
  10. use Hyperf\Di\Annotation\Inject;
  11. /**
  12. * @Consumer(exchange="couponRebate", routingKey="couponRebate", queue="couponRebate", name ="couponRebateConsumer", nums=1)
  13. */
  14. class couponRebateConsumer extends ConsumerMessage
  15. {
  16. /**
  17. * @Inject
  18. * @var CouponRebateService
  19. */
  20. protected $CouponRebateService;
  21. public function consumeMessage($data, AMQPMessage $message): string
  22. {
  23. var_dump($data);
  24. var_dump($message->getBody());
  25. $res = $this->CouponRebateService->couponRebate($data);
  26. var_dump($res);
  27. if (false) {
  28. return Result::REQUEUE;
  29. }
  30. return Result::ACK;
  31. }
  32. public function isEnable(): bool
  33. {
  34. return parent::isEnable();
  35. }
  36. }