Notify.php 1.2 KB

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