|
@@ -202,7 +202,7 @@ class CregisPayService extends BaseService
|
|
|
{
|
|
|
$data = file_get_contents('php://input');
|
|
|
$params = $data?json_decode($data, true) : [];
|
|
|
- $params = empty($params)? request()->all() : [];
|
|
|
+ $params = empty($params)? request()->all() : $params;
|
|
|
if(empty($params)){
|
|
|
RedisService::set("caches:cregisPay:recharge_data_".date('YmdHis'),['params'=> $params,'data'=> $data], 3600);
|
|
|
return 'Recharge callback data error';
|
|
@@ -214,7 +214,7 @@ class CregisPayService extends BaseService
|
|
|
$sgin = $this->dispatch->generateSign(self::$config['api_key'], $params);
|
|
|
if($getSign!=$sgin){
|
|
|
RedisService::set("{$cacheKey}:sign",['params'=> request()->all(),'result'=> $params], 3600);
|
|
|
- return '';
|
|
|
+// return 'Sign error';
|
|
|
}
|
|
|
|
|
|
$address = isset($params['address'])? trim($params['address']) : '';
|
|
@@ -226,12 +226,12 @@ class CregisPayService extends BaseService
|
|
|
// 验证金额
|
|
|
if($amount<=0){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'交易金额错误','result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Amount error';
|
|
|
}
|
|
|
|
|
|
if($params['status'] != 1){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'充值交易未成功','result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Trade failed';
|
|
|
}
|
|
|
|
|
|
// 交易Hash验证
|
|
@@ -243,9 +243,10 @@ class CregisPayService extends BaseService
|
|
|
$symbol = isset($tradeData['token']['symbol']) && $tradeData['token']['symbol']? strtoupper($tradeData['token']['symbol']) : 'USDT';
|
|
|
$decimals = isset($tradeData['token']['decimals']) && $tradeData['token']['decimals']? intval($tradeData['token']['decimals']) : 6;
|
|
|
$realAmount = moneyFormat($tradeAmount/pow(10, $decimals), 6);
|
|
|
+ var_dump($tradeData);
|
|
|
if(empty($tradeData) || empty($ownerAddress) || empty($toAddress) || $tradeAmount<=0 || empty($symbol)){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'交易hash验证错误','tradeData'=>$tradeData,'result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Trade hash verify failed';
|
|
|
}
|
|
|
|
|
|
// 处理交易记录
|
|
@@ -256,7 +257,7 @@ class CregisPayService extends BaseService
|
|
|
'token_address' => $tokenAddress,
|
|
|
'source' => isset($tradeData['source'])? $tradeData['source'] : '',
|
|
|
'destination' => isset($tradeData['destination'])? $tradeData['destination'] : '',
|
|
|
- 'token_type' => $symbol,
|
|
|
+ 'token_type' => $symbol=='USDT'? 1: 2,
|
|
|
'hash' => $txid,
|
|
|
'amount' => $amount,
|
|
|
'create_time' => time(),
|
|
@@ -269,19 +270,19 @@ class CregisPayService extends BaseService
|
|
|
|
|
|
if(strtoupper($currency) != $symbol){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'回调币种和交易币种不一致','tradeData'=>$tradeData,'result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Currency error';
|
|
|
}
|
|
|
|
|
|
// hash 验证金额和账户
|
|
|
if(intval($realAmount) != intval($amount)){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'交易金额验证错误','tradeData'=>$tradeData,'result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Trade amount error';
|
|
|
}
|
|
|
|
|
|
// 交易账户和回调账户是否一致
|
|
|
if($address != $toAddress){
|
|
|
RedisService::set("{$cacheKey}:error",['error'=>'充值到账地址错误','tradeData'=>$tradeData,'result'=> $params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Address error';
|
|
|
}
|
|
|
|
|
|
// USDT 充值
|
|
@@ -291,13 +292,13 @@ class CregisPayService extends BaseService
|
|
|
$coinInMin = $coinInMin > 0 ? $coinInMin : 0;
|
|
|
if ($amount < $coinInMin) {
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '金额较小不处理', 'min' => $coinInMin,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Amount limit';
|
|
|
}
|
|
|
|
|
|
// 充值回调是否已经处理过
|
|
|
if (BalanceLogModel::checkExists($txid)) {
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '该笔回调已处理过', 'min' => $coinInMin,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'The callback has been processed';
|
|
|
}
|
|
|
|
|
|
// 查找充值地址绑定用户信息
|
|
@@ -316,7 +317,7 @@ class CregisPayService extends BaseService
|
|
|
$userId = isset($memberInfo['id']) ? intval($memberInfo['id']) : 0;
|
|
|
if (empty($memberInfo) || $userId<=0 || empty($walleturl)) {
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '该笔回调地址未绑定用户信息或账户错误', 'min' => $coinInMin,'info'=>$memberInfo,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Account info no bind';
|
|
|
}
|
|
|
|
|
|
try {
|
|
@@ -326,7 +327,7 @@ class CregisPayService extends BaseService
|
|
|
if (!MemberModel::where(['id' => $userId])->update($updateData)) {
|
|
|
DB::rollBack();
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '该笔回调入账处理失败', 'min' => $coinInMin,'userUsdt'=>$userUsdt,'update'=>$updateData,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Account processing failed';
|
|
|
}
|
|
|
|
|
|
// 充值明细
|
|
@@ -353,7 +354,7 @@ class CregisPayService extends BaseService
|
|
|
if (!BalanceLogModel::insert($data)) {
|
|
|
DB::rollBack();
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '该笔回调入账明细处理失败', 'min' => $coinInMin,'log'=>$data,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Account log processing failed';
|
|
|
}
|
|
|
|
|
|
// 用户账户明细
|
|
@@ -376,7 +377,7 @@ class CregisPayService extends BaseService
|
|
|
if (!AccountLogModel::insert($log)) {
|
|
|
DB::rollBack();
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '该笔回调账户明细处理失败', 'min' => $coinInMin,'log'=>$log,'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'Account bill processing failed';
|
|
|
}
|
|
|
|
|
|
// 平台进账
|
|
@@ -388,7 +389,7 @@ class CregisPayService extends BaseService
|
|
|
} catch (\Exception $exception){
|
|
|
DB::rollBack();
|
|
|
RedisService::set("{$cacheKey}:error", ['error' => '回调处理异常:'.$exception->getMessage(), 'tradeData'=>$tradeData,'params'=>$params], 7200);
|
|
|
- return '';
|
|
|
+ return 'exception';
|
|
|
}
|
|
|
}
|
|
|
|