wesmiler 1 年間 前
コミット
41a984ce40

+ 2 - 3
app/Http/Controllers/Api/v1/TestController.php

@@ -23,10 +23,9 @@ class TestController extends webApp
 
     public function check()
     {
+        $result = CregisPayService::make()->withdraw('58YsXE527EojowwqSFDV1V7tCWUGVFbEqnD1f3TUUALQ', 0.66, 'TS'.date('YmdHis'), '1000', '', '手动测试');
 //        $result = FinanceService::make()->developerSettle(2,'58YsXE527EojowwqSFDV1V7tCWUGVFbEqnD1f3TUUALQ');
-        $result = WalletService::make()->getTradeDetail('3uG6jqpEqUwivBCpNKvnX2c7WrzqCRHKR9JYD3sGVUMvbo5VaaemuMXNmsmsdzgCd6DWcmzf5m6iMvcR9oPMp7V1');
-//        $result  = WalletService::make()->getUsdtBalance('58YsXE527EojowwqSFDV1V7tCWUGVFbEqnD1f3TUUALQ',true);
-        var_dump(FinanceService::make()->getError());
+var_dump(CregisPayService::make()->getError());
         var_dump($result);
 //        $result = CregisPayService::make()->withdraw('58YsXE527EojowwqSFDV1V7tCWUGVFbEqnD1f3TUUALQ',1,'TS'.date('YmdHis'),1000);
 //        $result = MemberService::make()->pledgeUserList();

+ 13 - 2
app/Services/CregisPayService.php

@@ -171,7 +171,7 @@ class CregisPayService extends BaseService
             $tokenAddress = ConfigService::make()->getConfigByCode('solana_usdt_token', 'Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB');
             $coinType = $coinType ? $coinType : $tokenAddress;
             RedisService::set("caches:cregisPay:{$orderNo}:withdraw", ['callback'=> $callback,'order_no'=>$orderNo,'amount'=>$amount,'remark'=>$remark,'address'=>$address,'mainType'=>$mainCoinType,'coinType'=>$coinType],7200);
-            return $this->dispatch->payout(self::$config['project_no'], $mainCoinType . '@' . $coinType, $address, $amount, $callback, $orderNo, time(), $remark);
+            return $this->dispatch->payout(self::$config['project_no'], $mainCoinType . '@' . $coinType, $address, $amount, $callback, $orderNo, $remark);
         } catch (\Exception $exception) {
             $this->error = $exception->getMessage();
             RedisService::set("caches:cregisPay:{$orderNo}:withdraw_error", ['order_no'=>$orderNo,'amount'=>$amount,'remark'=>$remark,'address'=>$address,'mainType'=>$mainCoinType],7200);
@@ -235,7 +235,18 @@ class CregisPayService extends BaseService
         }
 
         // 交易Hash验证
-        $tradeData = WalletService::make()->getTradeDetail($txid);
+        $count = 0;
+        $tradeData = [];
+        while($count < 10){
+            $tradeData = WalletService::make()->getTradeDetail($txid);
+            if(empty($tradeData)){
+                $count++;
+                sleep(1);
+            }else {
+                $count = 10;
+            }
+        }
+
         $ownerAddress = isset($tradeData['source_owner'])? $tradeData['source_owner'] : '';
         $toAddress = isset($tradeData['destination_owner'])? $tradeData['destination_owner'] : '';
         $tokenAddress = isset($tradeData['token']['address'])? $tradeData['token']['address'] : '';