fix(hjf): 级差下限仅在节点有资格直推奖时更新
创客在 depth>0 被跳过时不应把其直推额并入 nextLower, 否则上级级差被多扣(问题4:云店 uid=2 应得 800 却只得 300)。 文档:问题3 标记已修复,补充问题4 记录。 Made-with: Cursor
This commit is contained in:
@@ -17,12 +17,18 @@
|
||||
|
||||
## 分销员的**直推积分奖励**问题3
|
||||
|
||||
- **重大调整**: **直推积分奖励**落库的时候,上级的分销等级是创客的时候检查必须是直推关系才发放积分奖励, 如果分销员级别大于创客则不需要是直推关系,只要是伞下关系就可以获得级差的**积分奖励**(级差的积分奖励同样更新到“直推积分奖励”的表字段中)。
|
||||
- **已修复****重大调整**: **直推积分奖励**落库的时候,上级的分销等级是创客的时候检查必须是直推关系才发放积分奖励, 如果分销员级别大于创客则不需要是直推关系,只要是伞下关系就可以获得级差的**积分奖励**(级差的积分奖励同样更新到“直推积分奖励”的表字段中)。
|
||||
|
||||
- 范氏国香(mysql:47.94.76.64),用户推荐关系:uid=1->uid=2->uid=54->uid=55->uid=56,
|
||||
- **已修复**范氏国香(mysql:47.94.76.64),用户推荐关系:uid=1->uid=2->uid=54->uid=55->uid=56,
|
||||
用户行为发生(目前数据库中有订单和用户数据):Uid=55和Uid=56有2笔最新的购买报单商品的订单记录后,检查uid=1和Uid=2的直推积分奖励情况.
|
||||
|
||||
|
||||
## 分销员的**直推积分奖励**问题4
|
||||
- 用户推荐关系:uid=1->uid=2->uid=65->uid=66->uid=67, U67购买报单商品的订单记录后, 发现一个NG项:
|
||||
1.Uid=66佣金(OK)
|
||||
2.Uid=65没有直推积分奖励(OK)
|
||||
3.Uid=2得800直推积分奖励(NG)
|
||||
4.Uid=1得200直推积分奖励(OK)
|
||||
uid=2应该拿全部的级差积分奖励800才对
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -165,8 +165,12 @@ class PointsRewardServices extends BaseServices
|
||||
}
|
||||
}
|
||||
|
||||
// 级差下限始终更新(不论本节点是否获奖),保证上级只拿增量差额
|
||||
$nextLower = max($directReward, $lowerDirectReward);
|
||||
// 级差下限仅在本节点实际有资格获奖时才更新:
|
||||
// 若节点被跳过(创客在 depth>0),其 directReward 不应计入下限,
|
||||
// 否则上级会被扣减一笔从未发出的积分(fsgx 问题4)
|
||||
$nextLower = $isEligibleForDirect
|
||||
? max($directReward, $lowerDirectReward)
|
||||
: $lowerDirectReward;
|
||||
if ($user['spread_uid']) {
|
||||
$this->propagateReward(
|
||||
(int)$user['spread_uid'],
|
||||
|
||||
Reference in New Issue
Block a user