Commit c9c5d4b5 authored by pengfei's avatar pengfei

update 团长分销-奖励结算脚本

parent 286f1274
...@@ -83,6 +83,7 @@ class ColonelorderController extends Job ...@@ -83,6 +83,7 @@ class ColonelorderController extends Job
if (!ColonelDistributorPayInfo::commit()) { if (!ColonelDistributorPayInfo::commit()) {
throw new Exception(sprintf("事务提交失败 %s", json_encode($data))); throw new Exception(sprintf("事务提交失败 %s", json_encode($data)));
} }
$this->loggerError('success');
} catch (Exception $e) { } catch (Exception $e) {
ColonelDistributorPayInfo::rollback(); ColonelDistributorPayInfo::rollback();
$this->loggerError('error='.$e->getMessage()); $this->loggerError('error='.$e->getMessage());
......
...@@ -32,7 +32,9 @@ class ColonelwalletController extends Job ...@@ -32,7 +32,9 @@ class ColonelwalletController extends Job
if (!empty($payInfoList)) { if (!empty($payInfoList)) {
if ($this->deductingInventory($payInfoList)) { if ($this->deductingInventory($payInfoList)) {
if ($this->toWallet($payInfoList)) { if ($this->toWallet($payInfoList)) {
$this->handlePayInfoStatus(array_column($payInfoList, 'pay_info_id')); if ($this->handlePayInfoStatus(array_column($payInfoList, 'pay_info_id'))) {
$this->loggerInfo('success');
}
} }
} }
} }
...@@ -52,7 +54,7 @@ class ColonelwalletController extends Job ...@@ -52,7 +54,7 @@ class ColonelwalletController extends Job
if (!$url = config('interface', 'wallet.account.transfer')) { if (!$url = config('interface', 'wallet.account.transfer')) {
throw new InterfaceException(['cus' => 0]); throw new InterfaceException(['cus' => 0]);
} }
$data = []; $list = [];
foreach ($payInfoList as $payInfo) { foreach ($payInfoList as $payInfo) {
$tmp = []; $tmp = [];
$tmp['user_id'] = $payInfo['colonel_user_id']; $tmp['user_id'] = $payInfo['colonel_user_id'];
...@@ -63,15 +65,17 @@ class ColonelwalletController extends Job ...@@ -63,15 +65,17 @@ class ColonelwalletController extends Job
$tmp['third_order_desc'] = self::getThirdOrderDesc($payInfo); $tmp['third_order_desc'] = self::getThirdOrderDesc($payInfo);
$tmp['amount'] = $payInfo['reward']; $tmp['amount'] = $payInfo['reward'];
$tmp['extra'] = $payInfo; $tmp['extra'] = $payInfo;
$data[] = $tmp; $list[] = $tmp;
} }
$res = HttpUtil::post($url, ['list' => $data]); $httpParams = self::getWalletHttpParams();
if (!empty($res['response']['result']) && $res['code'] == 0) { $httpParams['list'] = $list;
$this->loggerInfo('写入钱包成功'); $response = HttpUtil::post($url, $httpParams,100000, 3);
$this->loggerInfo("url=$url,response:".json_encode($response));
if (!empty($response['response']['result']) && $response['code'] == 0) {
$this->loggerInfo('调用钱包服务成功,count='.count($payInfoList));
return true; return true;
} else { } else {
$msg = json_encode(['list' => $data]); $this->loggerError('调用钱包服务失败,httpParams=' . json_encode($httpParams));
$this->loggerError($msg);
return false; return false;
} }
} }
...@@ -90,7 +94,9 @@ class ColonelwalletController extends Job ...@@ -90,7 +94,9 @@ class ColonelwalletController extends Job
if (!$url = config('interface', 'coupon.capitalpool.grant_user_amount')) { if (!$url = config('interface', 'coupon.capitalpool.grant_user_amount')) {
throw new InterfaceException(['cus' => 0]); throw new InterfaceException(['cus' => 0]);
} }
$data['capital_pool_id'] = self::CAPITAL_POOL_ID; $httpParams = [
'capital_pool_id' => self::CAPITAL_POOL_ID
];
foreach ($payInfoList as $payInfo) { foreach ($payInfoList as $payInfo) {
$tmp = []; $tmp = [];
$tmp['op'] = self::CAPITAL_POOL_OP; $tmp['op'] = self::CAPITAL_POOL_OP;
...@@ -99,19 +105,55 @@ class ColonelwalletController extends Job ...@@ -99,19 +105,55 @@ class ColonelwalletController extends Job
$tmp['third_order_id'] = $payInfo['colonel_distributor_pay_info_id']; $tmp['third_order_id'] = $payInfo['colonel_distributor_pay_info_id'];
$tmp['third_order_id_type'] = $payInfo['type']; $tmp['third_order_id_type'] = $payInfo['type'];
$tmp['third_order_desc'] = self::getThirdOrderDesc($payInfo); $tmp['third_order_desc'] = self::getThirdOrderDesc($payInfo);
$data['body'][] = $tmp; $httpParams['body'][] = $tmp;
} }
$res = HttpUtil::post($url, $data, 100000, 3); $res = HttpUtil::post($url, $httpParams, 100000, 3);
$this->loggerInfo("url=$url,response:".json_encode($res));
if ($res['code'] == 0 && isset($res['response']['result'])) { if ($res['code'] == 0 && isset($res['response']['result'])) {
$this->loggerInfo('资金池授予用户奖励成功,count='.count($payInfoList)); $this->loggerInfo('调用资金池服务成功,count='.count($payInfoList));
return true; return true;
} else { } else {
$msg = json_encode(['list' => $data]); $this->loggerError('调用资金池服务失败,httpParams=' . json_encode($httpParams));
$this->loggerError("资金池授予用户奖励成功,$msg");
return false; return false;
} }
} }
/**
* Notes: 获取钱包服务请求参数
* User: pengfei@yidian-inc.com
* Date: 2021/9/3 7:34 下午
* @return array
*/
private function getWalletHttpParams()
{
// TODO 此处看后期业务发展 看是否需要封装WalletSdk
$date = date('Y-m-d H:i:s');
return [
'transfer_service_id' => '', //TODO
'sign' => self::getWalletHttpSign($date),
'time' => $date
];
}
/**
* Notes: 获取钱包签名
* User: pengfei@yidian-inc.com
* Date: 2021/9/3 7:34 下午
* @param $date
* @return string
*/
private function getWalletHttpSign($date)
{
$transfer_service_secret = ''; //TODO
return md5($date . $transfer_service_secret);
}
/**
* Notes: 获取待结算数据
* User: pengfei@yidian-inc.com
* Date: 2021/9/3 7:23 下午
* @return array
*/
private function getPayInfoList(): array private function getPayInfoList(): array
{ {
return ColonelDistributorPayInfo::getRecords(['status' => ColonelDistributorPayInfo::STATUS_NOT_USE]); return ColonelDistributorPayInfo::getRecords(['status' => ColonelDistributorPayInfo::STATUS_NOT_USE]);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment