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.

34 lines
804 B

  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. /**
  9. * @Consumer(exchange="devicOrder", routingKey="devicOrder", queue="devicOrder", nums=1)
  10. */
  11. class DevicOrderConsumer extends ConsumerMessage
  12. {
  13. private $msgCount = 0;
  14. public function consumeMessage($data, AMQPMessage $message): string
  15. {
  16. var_dump($data);
  17. var_dump($message->getBody());
  18. if($this->msgCount< 10){
  19. $this->msgCount += 1;
  20. return Result::REQUEUE;
  21. }
  22. return Result::ACK;
  23. }
  24. public function isEnable(): bool
  25. {
  26. //if(env('APP_ENV')!='prod') return false;
  27. return parent::isEnable();
  28. }
  29. }