wesmiler 1 ano atrás
pai
commit
cf1a9da69d
1 arquivos alterados com 11 adições e 8 exclusões
  1. 11 8
      app/Services/CregisPayService.php

+ 11 - 8
app/Services/CregisPayService.php

@@ -221,14 +221,6 @@ class CregisPayService extends BaseService
         $txid = isset($params['txid'])? trim($params['txid']) : '';
         $amount = isset($params['amount'])? floatval($params['amount']) : 0;
         $currency = isset($params['currency'])? trim($params['currency']) : '';
-        $tokenId = isset($params['token_id'])? trim($params['token_id']) : '';
-        $payStatus = $params['status'] == 1? 1 : 2;
-        $remark = '充值回调成功';
-        if ($params['status'] == 1) {
-            $remark = '充值回调成功';
-        } else if ($params['status'] == 2) {
-            $remark = '充值回调失败';
-        }
 
         // 验证金额
         if($amount<=0){
@@ -236,6 +228,11 @@ class CregisPayService extends BaseService
             return '';
         }
 
+        if($params['status'] != 1){
+            RedisService::set("{$cacheKey}:error",['error'=>'充值交易未成功','result'=> $params], 7200);
+            return '';
+        }
+
         // 交易Hash验证
         $tradeData = WalletService::make()->getTradeDetail($txid);
         $ownerAddress = isset($tradeData['source_owner'])? $tradeData['source_owner'] : '';
@@ -269,6 +266,11 @@ class CregisPayService extends BaseService
             WalletLogModel::insert($log);
         }
 
+        if(strtoupper($currency) != $symbol){
+            RedisService::set("{$cacheKey}:error",['error'=>'回调币种和交易币种不一致','tradeData'=>$tradeData,'result'=> $params], 7200);
+            return '';
+        }
+
         // hash 验证金额和账户
         if(intval($realAmount) != intval($amount)){
             RedisService::set("{$cacheKey}:error",['error'=>'交易金额验证错误','tradeData'=>$tradeData,'result'=> $params], 7200);
@@ -340,6 +342,7 @@ class CregisPayService extends BaseService
                     'hash' => $txid,
                     'wallet_url' => $walleturl,
                     'pt_wallet_url' => $address,
+                    'trade_cid' => $tradeCid,
                     'date' => date('Y-m-d'),
                     'create_time' => time(),
                     'update_time' => time(),