OrderSyncController.php 992 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. namespace addons\QiJuhe\console\controllers;
  3. use addons\QiJuhe\common\enums\QiJuheEnum;
  4. use addons\QiJuhe\common\models\OrderModel;
  5. use common\enums\OrderStatusEnum;
  6. use common\enums\RabbitMqEnum;
  7. use common\models\order\Order;
  8. use yii\console\Controller;
  9. class OrderSyncController extends Controller
  10. {
  11. public function actionRetry()
  12. {
  13. /**
  14. * @var $each Order
  15. */
  16. foreach (Order::find()->where(['order_status' => OrderStatusEnum::PAY])->andWhere(['<', 'pay_time', time() - 600])->andWhere(['marketing_type' => QiJuheEnum::PLUGIN_SIGN])->select('id, mall_id')->each() as $each) {
  17. if (empty(OrderModel::findOne(['order_id' => $each->id]))) {
  18. \Yii::$app->services->rabbitMq->push(RabbitMqEnum::EXCHANGE_ORDER, RabbitMqEnum::ORDER_QUEUE, ['mall_id' => $each->mall_id, 'id' => $each->id],
  19. \addons\QiJuhe\common\listeners\OrderPaidListener::class, 'async_handle');
  20. }
  21. }
  22. }
  23. }