修复奖金分润
parent
b2cd493af4
commit
f376f58fe2
|
|
@ -42,6 +42,7 @@ class AfterSale extends Model
|
||||||
'images',
|
'images',
|
||||||
'remarks',
|
'remarks',
|
||||||
'tracking_number',
|
'tracking_number',
|
||||||
|
'sales_value',
|
||||||
];
|
];
|
||||||
|
|
||||||
public static $stateText = [
|
public static $stateText = [
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,7 @@ class Order extends Model
|
||||||
'auto_complete_at',
|
'auto_complete_at',
|
||||||
'is_change',
|
'is_change',
|
||||||
'is_settle',
|
'is_settle',
|
||||||
|
'sales_value',
|
||||||
];
|
];
|
||||||
|
|
||||||
public static $payWayText = [
|
public static $payWayText = [
|
||||||
|
|
|
||||||
|
|
@ -315,17 +315,16 @@ class DistributionPreIncomeJobService
|
||||||
$assignedLvlDiffBonusRate = 0;
|
$assignedLvlDiffBonusRate = 0;
|
||||||
|
|
||||||
foreach ($agents as $agent) {
|
foreach ($agents as $agent) {
|
||||||
// 如果当前代理可以享受奖励
|
$rule = Arr::get($config, "rules.{$agent->agent_level_key}");
|
||||||
if ($agent->bonusable) {
|
|
||||||
$rule = Arr::get($config, "rules.{$agent->agent_level_key}");
|
|
||||||
|
|
||||||
if ($lastAgent && $agent->agent_level === $lastAgent->agent_level) {
|
if ($lastAgent && $agent->agent_level === $lastAgent->agent_level) {
|
||||||
/*
|
/*
|
||||||
|-----------------------------------------------
|
|-----------------------------------------------
|
||||||
| 平级奖励
|
| 平级奖励
|
||||||
|-----------------------------------------------
|
|-----------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if ($agent->bonusable) {
|
||||||
$bonusRate = $rule['lvl_same_bonus_rate'] ?? '0';
|
$bonusRate = $rule['lvl_same_bonus_rate'] ?? '0';
|
||||||
|
|
||||||
if (bccomp($bonusRate, '0') === 1) {
|
if (bccomp($bonusRate, '0') === 1) {
|
||||||
|
|
@ -364,24 +363,26 @@ class DistributionPreIncomeJobService
|
||||||
'updated_at' => $preIncome->created_at,
|
'updated_at' => $preIncome->created_at,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
/*
|
} else {
|
||||||
|-----------------------------------------------
|
/*
|
||||||
| 级差奖励
|
|-----------------------------------------------
|
||||||
|-----------------------------------------------
|
| 级差奖励
|
||||||
*/
|
|-----------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
$lvlDiffBonusRate = $rule['lvl_diff_bonus_rate'] ?? '0';
|
$lvlDiffBonusRate = $rule['lvl_diff_bonus_rate'] ?? '0';
|
||||||
|
|
||||||
if (bccomp($lvlDiffBonusRate, '0') === 1) {
|
if (bccomp($lvlDiffBonusRate, '0') === 1) {
|
||||||
// 可得级差奖励比例 = 当前等级的级差奖励 - 已分配的级差奖励比例
|
// 可得级差奖励比例 = 当前等级的级差奖励 - 已分配的级差奖励比例
|
||||||
$bonusRate = bcsub($lvlDiffBonusRate, $assignedLvlDiffBonusRate);
|
$bonusRate = bcsub($lvlDiffBonusRate, $assignedLvlDiffBonusRate);
|
||||||
|
|
||||||
// 如果可得级差奖励比例小于或等于0,则停止分润
|
// 如果可得级差奖励比例小于或等于0,则停止分润
|
||||||
if (bccomp($bonusRate, '0') <= 0) {
|
if (bccomp($bonusRate, '0') <= 0) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($agent->bonusable) {
|
||||||
// 手续费率
|
// 手续费率
|
||||||
$feeRate = $config['lvl_diff_bonus_fee_rate'] ?? '0';
|
$feeRate = $config['lvl_diff_bonus_fee_rate'] ?? '0';
|
||||||
|
|
||||||
|
|
@ -418,10 +419,9 @@ class DistributionPreIncomeJobService
|
||||||
'created_at' => $preIncome->created_at,
|
'created_at' => $preIncome->created_at,
|
||||||
'updated_at' => $preIncome->created_at,
|
'updated_at' => $preIncome->created_at,
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
$assignedLvlDiffBonusRate = $lvlDiffBonusRate;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$assignedLvlDiffBonusRate = $lvlDiffBonusRate;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue