laowu 1 неделя назад
Родитель
Сommit
eda18e7d71

+ 4 - 3
app/Http/Controllers/Api/PayPlusController.php

@@ -30,11 +30,12 @@ class PayPlusController implements PayMentInterFace
             return apiReturnFail($logic->getError() ?: 'Payment processing error');
             return apiReturnFail($logic->getError() ?: 'Payment processing error');
         }
         }
 
 
-        if (!empty($res) && isset($res['code']) && (int) $res['code'] === 0) {
+        if (!empty($res) && isset($res['code']) && (int) $res['code'] == 200 && !empty($res['decryptedComponentDelta']['link'])) {
+            
             return apiReturnSuc([
             return apiReturnSuc([
-                'content' => $res['data']['cashierUrl'] ?? '',
+                'content' => $res['decryptedComponentDelta']['link'],
                 'money' => $payAmt,
                 'money' => $payAmt,
-                'prdOrdNo' => $res['data']['mchOrderNo'] ?? '',
+                'prdOrdNo' => $res['decryptedComponentDelta']['order_id'] ?? '',
             ]);
             ]);
         }
         }
 
 

+ 4 - 13
app/Http/logic/api/PayPlusLogic.php

@@ -88,23 +88,14 @@ class PayPlusLogic extends BaseApiLogic
 
 
         try {
         try {
             $result = $this->service->postPayin($payload);
             $result = $this->service->postPayin($payload);
+            Util::WriteLog('PayPlus', 'PayPlus payment response: ' . json_encode($result));
+            return $result;
             
             
         } catch (\Exception $exception) {
         } catch (\Exception $exception) {
             Util::WriteLog('PayPlus_error', $exception->getMessage());
             Util::WriteLog('PayPlus_error', $exception->getMessage());
             $this->error = 'Payment processing error';
             $this->error = 'Payment processing error';
             return false;
             return false;
         }
         }
-
-        $returnData = [
-            'code' => 0,
-            'data' => [
-                'cashierUrl' => $this->resolvePaymentUrl($result),
-                'mchOrderNo' => $orderSn,
-                'raw' => $result,
-            ],
-        ];
-        Util::WriteLog('PayPlus', 'PayPlus payment response: ' . json_encode($returnData));
-        return $returnData;
     }
     }
 
 
     public function buildPaymentPayload(array $input)
     public function buildPaymentPayload(array $input)
@@ -143,8 +134,8 @@ class PayPlusLogic extends BaseApiLogic
                 'email' => $this->emailOrDefault($input['user_email'] ?? '', $input['user_id']),
                 'email' => $this->emailOrDefault($input['user_email'] ?? '', $input['user_id']),
                 'phone' => preg_replace('/\D+/', '', (string) ($input['user_phone'] ?? '')) ?: '0000000000',
                 'phone' => preg_replace('/\D+/', '', (string) ($input['user_phone'] ?? '')) ?: '0000000000',
                 'area_code' => $config['area_code'] ?? '1',
                 'area_code' => $config['area_code'] ?? '1',
-                'first_name' => $this->stringOrDefault($nameParts[0] ?? '', 'unknown'),
-                'last_name' => $this->stringOrDefault($nameParts[1] ?? '', 'user'),
+                'first_name' => 'user',
+                'last_name' => 'user',
                 'vip_level' => 0,
                 'vip_level' => 0,
             ],
             ],
         ];
         ];

+ 7 - 1
app/Services/PayPlus.php

@@ -176,7 +176,13 @@ class PayPlus
 
 
         $decoded = json_decode($response, true) ?: [];
         $decoded = json_decode($response, true) ?: [];
         Util::WriteLog('PayPlus', 'PayPlus raw response: ' . json_encode($decoded));
         Util::WriteLog('PayPlus', 'PayPlus raw response: ' . json_encode($decoded));
-        return $this->decryptPayinResponse($decoded, $encrypted['aes_key'], $encrypted['iv']);
+        $componentDelta = $this->decryptPayinResponse($decoded, $encrypted['aes_key'], $encrypted['iv']);
+        if (!empty($componentDelta)) {
+            Util::WriteLog('PayPlus', 'PayPlus decrypted componentDelta: ' . json_encode($componentDelta));
+            return $componentDelta;
+        }
+        $decoded['decryptedComponentDelta'] = $componentDelta;
+        return $decoded;
     }
     }
 
 
     public function postPayout(string $path, array $payload)
     public function postPayout(string $path, array $payload)