Commit 151fe314 authored by suntengda's avatar suntengda

Merge branch 'colonel' into test

parents c6c61bdf f2f599e7
......@@ -15,11 +15,6 @@ class ColonelConfigValidate extends BaseValidate
'marketing_id' => 'marketing_id 参数不能为空',
];
public function sceneDate()
{
return $this->only(["date"])->append("date", "require");
}
public function sceneAdd()
{
return $this->only(["date","config","marketing_id"])->append("marketing_id", "require");
......
......@@ -101,7 +101,7 @@ class ColonelorderController extends Job
*/
private function getInviteNewUserData($userIds, &$colonelPayInfoData)
{
if ($inviteNewUserList = $this->getInviteNewUserList($userIds)) {
if ($inviteNewUserList = $this->getInviteNewUserList($userIds,$this->startTime,$this->endTime)) {
$userNickList = $this->getUserList(array_column($inviteNewUserList, 'user_id'));
foreach ($inviteNewUserList as $newUser) {
$colonelPayInfoData[] = [
......@@ -148,24 +148,19 @@ class ColonelorderController extends Job
/**
* 团长任务配置
* @param $yesterday
* @param $settlementDate
* @return array
*/
private function getColonelConfig($yesterday): array
private function getColonelConfig($settlementDate): array
{
$config = ColonelDistributorConfig::getRecord([
'date' => $yesterday,
'type' => ColonelDistributorConfig::TYPE_COLONEL
'date[<=]' => $settlementDate,
'type' => ColonelDistributorConfig::TYPE_COLONEL,
'ORDER' => ['date' => 'DESC'],
'LIMIT' => 1
]);
if (empty($config)) {
$config = ColonelDistributorConfig::getRecord([
'date[<=]' => $yesterday,
'ORDER' => ['date' => 'DESC'],
'LIMIT' => 1
]);
}
$configData = [];
if (empty($config['data'])) {
if (!empty($config['data'])) {
$configData = json_decode($config['data'], true);
}
return $configData;
......@@ -193,10 +188,12 @@ class ColonelorderController extends Job
* User: pengfei@yidian-inc.com
* Date: 2021/9/3 4:03 下午
* @param $userIds
* @param $startTime
* @param $endTime
* @return array
* @throws InterfaceException
*/
private function getInviteNewUserList($userIds): array
private function getInviteNewUserList($userIds,$startTime,$endTime): array
{
$url = config('interface', 'coupon.background.wx_invite_relation_list_by_user_ids');
if (empty($url)) {
......@@ -204,7 +201,7 @@ class ColonelorderController extends Job
}
$res = HttpUtil::get($url,
['user_ids' => $userIds, 'start_time' => $this->startTime, 'end_time' => $this->endTime]);
['user_ids' => $userIds, 'start_time' => $startTime, 'end_time' => $endTime]);
if (!empty($res['response']['result'])) {
return array_values(array_column($res['response']['result'], null, 'user_id'));
}
......
......@@ -34,6 +34,8 @@ class ColonelwalletController extends Job
if ($this->toWallet($payInfoList)) {
if ($this->handlePayInfoStatus(array_column($payInfoList, 'pay_info_id'))) {
$this->loggerInfo('success');
} else {
$this->loggerInfo('更新状态失败');
}
}
}
......
......@@ -68,8 +68,6 @@ class ColonelController extends Base
*/
public function colonel_configAction()
{
(new ColonelConfigValidate())->scene("date")->validate();
$params = $this->params;
$data = PindanActivityColonelConfigService::colonelConfig($params);
return $this->success(["result" => $data]);
......
......@@ -65,9 +65,16 @@ class PindanActivityColonelConfigService
*/
public static function colonelConfig($params = [])
{
$day = empty($params["date"]) ? date("Y-m-d") : $params["date"];
$day = $params["date"];
$type = empty($params["type"]) ? ColonelDistributorConfig::TYPE_COLONEL : $params["type"];
$config = ColonelDistributorConfig::getRecord(["date" => $day, "type" => $type]);
if(empty($day)) {
//默认取最近更新的一条配置
$config = ColonelDistributorConfig::getRecord([
"type" => $type,"ORDER" => ["update_time" => "DESC"], "LIMIT" => 1
]);
}else {
$config = ColonelDistributorConfig::getRecord(["date" => $day, "type" => $type]);
}
if (empty($config)) {
$config = ColonelDistributorConfig::getRecord([
"date[<=]" => $day,
......
......@@ -32,11 +32,9 @@ class PindanActivityInviteOrderService
return true;
}
$date = date("Y-m-d");
$inviteOrderNumData = [
"colonel_user_id" => $params["colonel_user_id"],
"date" => $date,
"date" => date("Y-m-d")
];
$inviteOrderNum = ColonelDistributorInviteOrderNum::selectMaster("*", $inviteOrderNumData, []);
......@@ -75,10 +73,9 @@ class PindanActivityInviteOrderService
"order_id" => $orderId,
];
$date = date("Y-m-d");
$inviteOrderNumData = [
"colonel_user_id" => $inviteOrder[0]["colonel_user_id"],
"date" => $date,
"date" => date("Y-m-d"),
];
ColonelDistributorInviteOrder::beginTransaction();
......@@ -98,22 +95,13 @@ class PindanActivityInviteOrderService
}
/**
* 团长分销,昨日收入,总收入
* 团长分销,总收入
* @param array $params
* @return array
*/
public static function incomeStatistics($params = [])
{
$userIds = $params["user_ids"];
$yesterday = date("Y-m-d", strtotime("-1 day"));
$yesterdayRewards = ColonelDistributorPayInfo::select(["colonel_user_id", "reward"], ["date" => $yesterday, "colonel_user_id" => $userIds], []);
$yesterdayData = [];
if (!empty($yesterdayRewards)) {
foreach ($yesterdayRewards as $item) {
$yesterdayData[$item["colonel_user_id"]][] = $item["reward"];
}
}
$allRewards = ColonelDistributorPayInfo::select(["colonel_user_id", "reward"], ["colonel_user_id" => $userIds], []);
$allData = [];
......@@ -125,11 +113,7 @@ class PindanActivityInviteOrderService
$data = [];
foreach ($userIds as $userId) {
$data[$userId]["yesterday_reward"] = 0;
$data[$userId]["all_reward"] = 0;
if (!empty($yesterdayData[$userId])) {
$data[$userId]["yesterday_reward"] = sprintf("%.1f", array_sum($yesterdayData[$userId]) / 100);
}
if (!empty($allData[$userId])) {
$data[$userId]["all_reward"] = sprintf("%.1f", array_sum($allData[$userId]) / 100);
}
......@@ -146,22 +130,12 @@ class PindanActivityInviteOrderService
public static function inviteOrderNumberStatistics($params = [])
{
$userIds = $params["user_ids"];
$yesterday = date("Y-m-d", strtotime("-1 day"));
$yesterdayNums = ColonelDistributorInviteOrderNum::select(["colonel_user_id", "num"],
["date" => $yesterday, "colonel_user_id" => $userIds], []);
$yesterdayData = array_column($yesterdayNums, null, "colonel_user_id");
$allNums = ColonelDistributorInviteOrderNum::select(["colonel_user_id", "num"], ["colonel_user_id" => $userIds], []);
$allData = array_column($allNums, null, "colonel_user_id");
$data = [];
foreach ($userIds as $userId) {
$data[$userId]["yesterday_order_num"] = 0;
$data[$userId]["all_order_num"] = 0;
if (!empty($yesterdayData[$userId])) {
$data[$userId]["yesterday_order_num"] = $yesterdayData[$userId]["num"];
}
if (!empty($allData[$userId])) {
$data[$userId]["all_order_num"] = $allData[$userId]["num"];
}
......
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