| | |
| | | } |
| | | return false; |
| | | } |
| | | /** |
| | | |
| | | * 获取用户所有级差上级 |
| | | |
| | | */ |
| | | |
| | | public static function getAllJcUser($user_id, $jcUser = [], $percent_total = 0, $is_add = true) |
| | | |
| | | { |
| | | |
| | | $user = User::detail($user_id); |
| | | $is_add && $percent_total += $user['grade']['differential_prize'] - $percent_total; |
| | | if($user['referee_id']) { |
| | | $is_add = false; |
| | | $parent = User::detail($user['referee_id']); |
| | | if (!$parent){ |
| | | return $jcUser; |
| | | } |
| | | if ($parent['grade']['weight'] > $user['grade']['weight'] && $parent['grade']['differential_prize'] > $percent_total) { |
| | | $jcUser[] = [ |
| | | 'user_id' => $parent['user_id'], |
| | | 'bonus_percent' => $parent['grade']['differential_prize'] - $percent_total //分红比例 |
| | | ]; |
| | | $is_add = true; |
| | | |
| | | } |
| | | if($parent['user_id']) { |
| | | return self::getAllJcUser($parent['user_id'], $jcUser, $percent_total, $is_add); |
| | | } |
| | | |
| | | } |
| | | return $jcUser; |
| | | |
| | | } |
| | | |
| | | /** |
| | | |
| | | * 获取用户所有平级 |
| | | |
| | | * 每个级别都发放$pjaward_level层平级奖 |
| | | |
| | | */ |
| | | |
| | | public static function getAllPjUser($user_id, $pjaward_level, $pjUser = []) |
| | | |
| | | { |
| | | |
| | | $user = User::detail($user_id); |
| | | $pj_user[$user['grade_id']][] = []; |
| | | $pj_user = self::getPjUser($user_id, $pj_user); |
| | | if ($pj_user) { |
| | | foreach ($pj_user as $u) { |
| | | foreach ($u as $k => $item) { |
| | | if ($k > 0 && $k <= $pjaward_level) { |
| | | $pjUser[] = $item; |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | return $pjUser; |
| | | |
| | | } |
| | | /** |
| | | |
| | | * 获取所有平级 |
| | | |
| | | */ |
| | | |
| | | private static function getPjUser($user_id, $pj_user = []) |
| | | |
| | | { |
| | | |
| | | $user = User::detail($user_id); |
| | | if($user['referee_id']) { |
| | | $parent = User::detail($user['referee_id']); |
| | | if (!$parent){ |
| | | return $pj_user; |
| | | } |
| | | // 记录平级用户 |
| | | if($parent && $parent['grade']['weight'] >= $user['grade']['weight']) { |
| | | if ( $parent['grade']['equal_level_award']){ |
| | | $pj_user[$parent['grade_id']][] = [ |
| | | 'user_id' => $parent['user_id'], |
| | | 'bonus_percent' => $parent['grade']['equal_level_award'], // 平级分红比例 |
| | | ]; |
| | | } |
| | | } |
| | | if($parent['referee_id']) { |
| | | return self::getPjUser($parent['user_id'], $pj_user); |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | return $pj_user; |
| | | |
| | | } |
| | | } |