CloudStockPriceDifferenceGiftPackageNotify.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace addons\CloudStock\common\logic\notify;
  3. use addons\CloudStock\common\services\CloudStockPriceDifferenceGiftPackageOrderService;
  4. use common\models\common\PaymentTrade;
  5. use common\models\order\Order;
  6. use common\traits\ErrorTrait;
  7. use Exception;
  8. class CloudStockPriceDifferenceGiftPackageNotify
  9. {
  10. use ErrorTrait;
  11. /**
  12. * @Author: hua
  13. * @DateTime: 2021/10/18 9:57
  14. * @Copyright: copyright (c) 2021 广东七件事集团
  15. * @param $order_info
  16. * @return bool
  17. */
  18. public function notify($order_info)
  19. {
  20. try {
  21. $payment_trade = PaymentTrade::findOne(['id' => $order_info['trade_id']]);
  22. $res = (new CloudStockPriceDifferenceGiftPackageOrderService(['mall_id' => $payment_trade['mall_id'], 'user_id' => $payment_trade['user_id']]))
  23. ->pay($order_info['order_no'], $order_info['pay_type'], $payment_trade['out_trade_no']);
  24. if ($res === false) throw new Exception(Order::getStaticError());
  25. return true;
  26. } catch (Exception $e) {
  27. \Yii::$app->custom->logs('notify:' . $e->getMessage());
  28. $this->setStaticError($e->getMessage());
  29. return false;
  30. }
  31. }
  32. }