|
|
@@ -865,11 +865,11 @@ class StoreOrder extends BaseModel
|
|
|
//支付成功后
|
|
|
event('OrderPaySuccess', [$order, $formId]);
|
|
|
$type = User::where('uid', $order['uid'])->value('is_first');
|
|
|
-// if ($type == 1){
|
|
|
-// self::team_rewards($order, 2); //分发团队奖励 2复购
|
|
|
-// }else{
|
|
|
-// self::team_rewards($order, 1); //分发团队奖励 1首单
|
|
|
-// }
|
|
|
+ if ($type == 1){
|
|
|
+ self::team_rewards($order, 2); //分发团队奖励 2复购
|
|
|
+ }else{
|
|
|
+ self::team_rewards($order, 1); //分发团队奖励 1首单
|
|
|
+ }
|
|
|
$res = $res1 && $resPink && UserSpread::setSpreadSure($order['uid']) && User::backOrderBrokerage($order);
|
|
|
return false !== $res;
|
|
|
}
|
|
|
@@ -883,7 +883,7 @@ class StoreOrder extends BaseModel
|
|
|
$groupIds = array_column($group_info, 'level');
|
|
|
// 统计每个level出现的次数
|
|
|
$levelCounts = array_count_values($groupIds);
|
|
|
- $model = new User();
|
|
|
+ @file_put_contents('quanju.txt', json_encode($levelCounts) . "-所有等级的人数\r\n", 8);
|
|
|
if ($type == 1) {
|
|
|
$field = 'first_ratio';
|
|
|
$title = '首单奖励';
|
|
|
@@ -892,24 +892,27 @@ class StoreOrder extends BaseModel
|
|
|
$title = '复购奖励';
|
|
|
}
|
|
|
foreach ($levelCounts as $k => $v) { //遍历所有等级
|
|
|
+ if ($v>0){
|
|
|
+ @file_put_contents('quanju.txt', $v . "-当前等级的人数\r\n", 8);
|
|
|
+ @file_put_contents('quanju.txt', $k . "-当前等级\r\n", 8);
|
|
|
+ $level_group = User::where('level', $k)->column('uid,nickname,brokerage_price,level'); //获取这个等级的所有用户
|
|
|
+ $make = app()->make(SystemUserLevel::class);
|
|
|
+ $level = $make->where('level',$k)->find(); //用户等级
|
|
|
+ if ($level) {
|
|
|
+ $ratio = bcmul($level[$field],0.01,2); //奖励比例
|
|
|
+ $award_price = bcmul($order['pay_price'], $ratio, 2); //奖励金额
|
|
|
+ $user_award = bcdiv($award_price,$v,2); //每个用户奖励金额
|
|
|
+ foreach ($level_group as $key => $value){
|
|
|
+ $after = bcadd($value['brokerage_price'], $user_award, 2); //更新用户奖励金额
|
|
|
+ $mark = $value.'获得分账健康币'.$title . ':' . $award_price . '元';
|
|
|
+ $res = UserBill::income('获得分账健康币', $value['uid'], 'brokerage_price', 'spread_award', $award_price, $order['id'], $after, $mark, 0);
|
|
|
+ User::where('uid', $value['uid'])->update(['brokerage_price' => $after]);
|
|
|
+ }
|
|
|
|
|
|
- $level_group = User::where('level', $k)->column('uid,nickname,brokerage_price,level'); //获取这个等级的所有用户
|
|
|
- $make = app()->make(SystemUserLevel::class);
|
|
|
- $level = $make->where('level',$k)->find(); //用户等级
|
|
|
- if ($level) {
|
|
|
- $ratio = bcmul($level[$field],0.01,2); //奖励比例
|
|
|
- $award_price = bcmul($order['pay_price'], $ratio, 2); //奖励金额
|
|
|
- $user_award = bcdiv($award_price,$v,2); //每个用户奖励金额
|
|
|
- foreach ($level_group as $key => $value){
|
|
|
- $after = bcadd($value['brokerage_price'], $user_award, 2); //更新用户奖励金额
|
|
|
- $mark = $value.'获得分账健康币'.$title . ':' . $award_price . '元';
|
|
|
- $res = UserBill::income('获得分账健康币', $value['uid'], 'brokerage_price', 'spread_award', $award_price, $order['id'], $after, $mark, 0);
|
|
|
- User::where('uid', $value['uid'])->update(['brokerage_price' => $after]);
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
- } catch (Exception $e) {
|
|
|
+ } catch (\Exception $e) {
|
|
|
@file_put_contents('quanju.txt', $e->getMessage() . "-团队奖励错误信息\r\n", 8);
|
|
|
@file_put_contents('quanju.txt', $e->getLine() . "-团队奖励错误位置\r\n", 8);
|
|
|
}
|