Browse Source

fix:支付宝支付信息错误;

Wang Chen 4 years ago
parent
commit
50b253467b

+ 13 - 5
app/Http/Controllers/QuickApp/Order/OrdersController.php

@@ -506,11 +506,9 @@ class OrdersController extends BaseController
     {
     {
         if ($params = $this->getPayParams($request)) {
         if ($params = $this->getPayParams($request)) {
             $params['pay_merchant_id'] = $this->app_pay_merchat_id;
             $params['pay_merchant_id'] = $this->app_pay_merchat_id;
-            myLog('pay-order')->info('wxIndex.params1', compact('params'));
 
 
             // 针对聚裕的包无法支付的问题(注册时传入了仙女阅读的包名,导致支付时取的支付信息不一致)
             // 针对聚裕的包无法支付的问题(注册时传入了仙女阅读的包名,导致支付时取的支付信息不一致)
-            $payMerchantId = 0;
-            $package       = $request->header('x-package', '');
+            $package = $request->header('x-package', '');
             if ($package === 'com.juyu.kuaiying.rmyq') {
             if ($package === 'com.juyu.kuaiying.rmyq') {
                 $packageInfo   = QappPackage::getPackageByPackage($package);
                 $packageInfo   = QappPackage::getPackageByPackage($package);
                 $payMerchantId = getProp($packageInfo, 'app_pay_merchat_id');
                 $payMerchantId = getProp($packageInfo, 'app_pay_merchat_id');
@@ -518,7 +516,6 @@ class OrdersController extends BaseController
                     $params['pay_merchant_id'] = $payMerchantId;
                     $params['pay_merchant_id'] = $payMerchantId;
                 }
                 }
             }
             }
-            myLog('pay-order')->info('wxIndex.params2', compact('params', 'package', 'payMerchantId'));
 
 
         } else {
         } else {
             return response()->error('QAPP_PARAM_ERROR');
             return response()->error('QAPP_PARAM_ERROR');
@@ -618,7 +615,18 @@ class OrdersController extends BaseController
     {
     {
         if ($params = $this->getPayParams($request)) {
         if ($params = $this->getPayParams($request)) {
             $params['pay_merchant_id'] = $this->ali_pay_merchat_id;
             $params['pay_merchant_id'] = $this->ali_pay_merchat_id;
-            $params['type']            = 'App';
+
+            // 针对聚裕的包无法支付的问题(注册时传入了仙女阅读的包名,导致支付时取的支付信息不一致)
+            $package = $request->header('x-package', '');
+            if ($package === 'com.juyu.kuaiying.rmyq') {
+                $packageInfo   = QappPackage::getPackageByPackage($package);
+                $payMerchantId = getProp($packageInfo, 'ali_pay_merchat_id');
+                if ($payMerchantId) {
+                    $params['pay_merchant_id'] = $payMerchantId;
+                }
+            }
+
+            $params['type'] = 'App';
         } else {
         } else {
             return response()->error('QAPP_PARAM_ERROR');
             return response()->error('QAPP_PARAM_ERROR');
         }
         }

+ 10 - 10
app/Modules/Trade/Pay/AliOrderArousePay.php

@@ -11,21 +11,21 @@ class AliOrderArousePay extends OrderArousePayAbstract
 {
 {
     public function arouse(array $data)
     public function arouse(array $data)
     {
     {
-        $pay_merchant_id = (int) $data['pay_merchant_id'];
-        $ali_param = [
-            'body' => '小说阅读',
-            'subject' => $this->getSubjectName($data['distribution_channel_id']),
-            'out_trade_no' => $data['trade_no'],
+        $pay_merchant_id = (int)$data['pay_merchant_id'];
+        $ali_param       = [
+            'body'            => '小说阅读',
+            'subject'         => $this->getSubjectName($data['distribution_channel_id']),
+            'out_trade_no'    => $data['trade_no'],
             'timeout_express' => '90m',
             'timeout_express' => '90m',
-            'total_amount' => $data['price'] / 100,
-            'product_code' => 'QUICK_WAP_WAY',
-            'return_url' => '',
-            'type' => $data['type'],
+            'total_amount'    => $data['price'] / 100,
+            'product_code'    => 'QUICK_WAP_WAY',
+            'return_url'      => '',
+            'type'            => $data['type'],
             'pay_merchant_id' => $pay_merchant_id,
             'pay_merchant_id' => $pay_merchant_id,
         ];
         ];
         try {
         try {
             $config = PayMerchantService::findAliPayConfig($pay_merchant_id);
             $config = PayMerchantService::findAliPayConfig($pay_merchant_id);
-            $pay = PayFactory::aliPay($config);
+            $pay    = PayFactory::aliPay($config);
             $result = $pay->send($ali_param);
             $result = $pay->send($ali_param);
             return $result;
             return $result;
         } catch (Exception $e) {
         } catch (Exception $e) {