修复:经销商平级奖判断错误导致平级奖未成功发放的问题
修复:经销商提成明细中心的经销商等级显示错误(文创等级提现显示的普通经销商等级)
This commit is contained in:
parent
7f22303acb
commit
5ebec37964
|
|
@ -397,7 +397,7 @@ class TeamAgencyController extends BaseController
|
|||
// $set = \Setting::get('plugin.team_dividend');
|
||||
// (new NewUpgrateJob($model->uid, $set, $model->uniacid, TeamDividendLevelUpgrade::ORDER_PAY, $model))->handle();
|
||||
|
||||
// $order = Order::find(87);
|
||||
// $order = Order::find(169);
|
||||
// $TeamReturnService = ReturnConfig::getClass();
|
||||
// if (app('plugins')->isEnabled('team-sideways')) debug('经销商订单创建终止:team-sideways');
|
||||
// $set = $order->getSetting('plugin.team_dividend');
|
||||
|
|
|
|||
|
|
@ -29,9 +29,9 @@ class GetAgentsService
|
|||
$parents = MemberParent::with([
|
||||
'hasOneTeam' => function ($team) {
|
||||
$team->with(['hasOneLevel'=>function($query){
|
||||
$query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']);
|
||||
// $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']);
|
||||
},'culturalLevel'=>function($query){
|
||||
$query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']);
|
||||
// $query->select(['id','award_gratitude','award_ratio','dividend_ratio','level_weight']);
|
||||
}]);
|
||||
}
|
||||
])->whereHas('hasOneParentMember')
|
||||
|
|
|
|||
|
|
@ -107,7 +107,6 @@ class TeamReturnService
|
|||
// 额外分红
|
||||
$this->extraDividend($agent);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private function totalDividend()
|
||||
|
|
@ -179,13 +178,12 @@ class TeamReturnService
|
|||
// 经销商奖励
|
||||
private function dividendAward($agent)
|
||||
{
|
||||
|
||||
//平级跳出
|
||||
if ($this->dividend_level_ids[$agent['level']]) {
|
||||
if ($this->dividend_level_ids[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']]) {
|
||||
return;
|
||||
}
|
||||
// 平级奖处理初始化
|
||||
$this->dividend_level_ids[$agent['level']]['hierarchy'] = 0;
|
||||
$this->dividend_level_ids[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']]['hierarchy'] = 0;
|
||||
$this->hierarchy_uid = $agent['uid'];
|
||||
|
||||
// 分红比例
|
||||
|
|
@ -245,21 +243,13 @@ class TeamReturnService
|
|||
private function hierarchyAward($agent)
|
||||
{
|
||||
// 是否开启平级奖
|
||||
if (!$this->set['is_flat_prize']) {
|
||||
return;
|
||||
}
|
||||
if (!$this->set['is_flat_prize']) return;
|
||||
// 商品是否开启平级奖
|
||||
if (!$this->amount_service->isHierarchy()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->flat_prize_limit) {
|
||||
\Log::debug('经销商平级奖限制,取消平级奖', $this->order->id.'_'.$this->order_goods->id.'_'.$agent['uid']);
|
||||
return;
|
||||
}
|
||||
if (!$this->amount_service->isHierarchy()) return;
|
||||
if ($this->flat_prize_limit) return;
|
||||
|
||||
// 经销商奖励层级 经销商等级奖励层级 >= 当前奖励层级
|
||||
$dividend_level = $this->dividend_level_ids[$agent['level']];
|
||||
$dividend_level = $this->dividend_level_ids[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']];
|
||||
if ($dividend_level == null) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -268,6 +258,7 @@ class TeamReturnService
|
|||
if ($dividend_level && ($award_hierarchy <= $dividend_level['hierarchy'] || $this->hierarchy_uid == $agent['uid'])) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 平级奖奖励比例
|
||||
$award_ratio = $this->amount_service->getAwardHierarchyRatio();
|
||||
if (!isset($award_ratio) || $award_ratio <= 0) {
|
||||
|
|
@ -290,7 +281,7 @@ class TeamReturnService
|
|||
|
||||
// 是否开启平级奖下级获得经销商奖励计算方式
|
||||
if ($this->set['calculate_formula'] == 1) {
|
||||
$finishPrice = $this->obtainInfos[$agent['level']];
|
||||
$finishPrice = $this->obtainInfos[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']];
|
||||
if (!$finishPrice) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -367,7 +358,7 @@ class TeamReturnService
|
|||
}
|
||||
|
||||
// 平级奖层数增加
|
||||
$this->dividend_level_ids[$agent['level']]['hierarchy'] += 1;
|
||||
$this->dividend_level_ids[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']]['hierarchy'] += 1;
|
||||
}
|
||||
|
||||
//额外分红
|
||||
|
|
@ -382,12 +373,12 @@ class TeamReturnService
|
|||
return;
|
||||
}
|
||||
|
||||
if (!$dividend_extra['level_' . $agent['level']]) {
|
||||
if (!$dividend_extra['level_' . ($this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level'])]) {
|
||||
return;
|
||||
}
|
||||
|
||||
//计算总获得分红
|
||||
$dividendData['amount'] = $this->order_goods->total * $dividend_extra['level_' . $agent['level']];
|
||||
$dividendData['amount'] = $this->order_goods->total * $dividend_extra['level_' . ($this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level'])];
|
||||
|
||||
if($this->dividendType == 1) {
|
||||
$agent['cultural_level']['dividend_ratio'] = 1;
|
||||
|
|
@ -430,7 +421,7 @@ class TeamReturnService
|
|||
}
|
||||
|
||||
$dividendData['member_id'] = $agent['uid'];
|
||||
$dividendData['agent_level'] = $agent['level'];
|
||||
$dividendData['agent_level'] = $this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level'];
|
||||
$dividendData['dividend_rate'] = 0;
|
||||
$dividendData['type'] = 3;
|
||||
$dividendData['lower_level_rate'] = $this->finish_ratio;
|
||||
|
|
@ -472,7 +463,7 @@ class TeamReturnService
|
|||
'member_id' => $agent['uid'],
|
||||
'order_sn' => $this->order->order_sn,
|
||||
'order_amount' => $this->order->price,
|
||||
'agent_level' => $agent['level'],
|
||||
'agent_level' => $this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level'],
|
||||
'status' => 0,
|
||||
'create_month' => date('Y-m'),
|
||||
'settle_days' => $this->set['settle_days'] ?: 0,
|
||||
|
|
@ -517,7 +508,7 @@ class TeamReturnService
|
|||
// $this->dividend_level_ids[$agent['level']]['hierarchy'] = 0;
|
||||
// 获得奖励的UID
|
||||
$this->award_uid = $agent['uid'];
|
||||
$this->obtainInfos[$agent['level']] = $dividend_amount;
|
||||
$this->obtainInfos[$this->dividendType == 1 ? $agent['cultural_level_id'] : $agent['level']] = $dividend_amount;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -168,9 +168,7 @@
|
|||
<td>
|
||||
{{$row['level_name']}}
|
||||
<br>
|
||||
{{ $row['type_name'] }}
|
||||
-
|
||||
比例:{{$row['dividend_rate']}}%</td>
|
||||
{{ $row['type_name'] }} - 比例:{{$row['dividend_rate']}}%</td>
|
||||
<td>{{$row['order_amount']}}</td>
|
||||
<td>{{$row['amount']}}</td>
|
||||
<td>{{$row['lower_level_rate']}}%</td>
|
||||
|
|
|
|||
Loading…
Reference in New Issue