WxOrderArousePay.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. namespace App\Modules\Trade\Pay;
  3. use App\Libs\Pay\PayFactory;
  4. use App\Modules\Trade\Services\PayMerchantService;
  5. use Exception;
  6. use Illuminate\Support\Facades\Log;
  7. class WxOrderArousePay extends OrderArousePayAbstract
  8. {
  9. public function arouse(array $data)
  10. {
  11. $pay_merchant_id = (int) $data['pay_merchant_id'];
  12. $config = PayMerchantService::findPayConfig($pay_merchant_id);
  13. $pay = PayFactory::official($config);
  14. try {
  15. $payOrder = [
  16. 'trade_type' => $data['trade_type'], // 交易类型
  17. 'trade_no' => $data['trade_no'], // 订单号
  18. 'price' => $data['price'], // 订单金额,单位:分
  19. 'body' => '快应用 小说', // 订单描述
  20. 'create_ip' => _getIp(), // 支付人的 IP
  21. 'remark' => $pay_merchant_id
  22. ];
  23. $result = $pay->send($payOrder);
  24. if ($result) {
  25. return $result;
  26. } else {
  27. Log::error("创建微信订单失败: " . json_encode($result));
  28. return false;
  29. }
  30. } catch (Exception $e) {
  31. Log::error("创建微信订单失败: " . $e->getMessage());
  32. return false;
  33. }
  34. }
  35. }