|
|
@@ -629,20 +629,32 @@ class UserController
|
|
|
*/
|
|
|
public function weighting(Request $request)
|
|
|
{
|
|
|
+// $userbll = UserBill::where('type', 'brokerage')->where('add_time', '=', 1675395623)->select();
|
|
|
+// foreach ($userbll as $item)
|
|
|
+// {
|
|
|
+// $user = User::where('uid', $item['uid'])->dec('brokerage_price', $item['number'])->update();
|
|
|
+// UserSingleAward::where('uid', $item['uid'])->dec('grant', $item['number'])->update();
|
|
|
+// }
|
|
|
+// halt(111);
|
|
|
$start = strtotime('yesterday');
|
|
|
$end = strtotime('today');
|
|
|
$money = StoreOrder::where('paid', 1)->whereBetweenTime('add_time', $start, $end)->where('is_explosion_order', 1)->sum('pay_price'); // 全网业绩
|
|
|
|
|
|
- $partnerCount = User::sum('stock_right');//合伙人股权总数
|
|
|
- $shareholderCount = User::where('level', 3)->count();// 股东总数
|
|
|
- $directorCount = User::where('level', 4)->count();// 董事总数
|
|
|
+ $userUid = User::where('level', 1)->column('uid');//当前是会员的用户
|
|
|
+ $userOrder = StoreOrder::where('paid', 1)->where('is_explosion_order', 1)->sum('total_num');
|
|
|
+ $partnerCount = User::where('level', '>=',2)->count();//合伙人总数
|
|
|
+ $shareholderCount = User::where('level', '>=',3)->count();// 股东总数
|
|
|
+ $directorCount = User::where('level', '>=',4)->count();// 董事总数
|
|
|
|
|
|
$partner = sys_config('partner')/100;//合伙人比列
|
|
|
$shareholder = sys_config('shareholder')/100;//股东比列
|
|
|
$director = sys_config('director')/100;//董事比列
|
|
|
$user = User::where('level', '>=', 1)->select()->toArray();
|
|
|
|
|
|
-
|
|
|
+ $userMoney = 0;
|
|
|
+ if ($userOrder > 0){
|
|
|
+ $userMoney = $money * $partner/$userOrder;//会员单个奖励
|
|
|
+ }
|
|
|
$partnerMoney = 0;
|
|
|
if ($partnerCount > 0){
|
|
|
$partnerMoney = $money * $partner/$partnerCount;//合伙人单个奖励
|
|
|
@@ -660,26 +672,34 @@ class UserController
|
|
|
foreach ($user as $vo) {
|
|
|
$jl = 0;
|
|
|
$str = '';
|
|
|
- if ($vo['level'] == 1) {
|
|
|
- //会员
|
|
|
- $str = '会员分红';
|
|
|
- $jl += $partnerMoney * $vo['stock_right'];// 合伙人加权奖励
|
|
|
- $sp_jl = $partnerMoney * $vo['stock_right'];// 合伙人上级奖励
|
|
|
- } elseif ($vo['level'] == 2) {
|
|
|
- //合伙人
|
|
|
- $str = '合伙人分红';
|
|
|
- $jl += $partnerMoney * $vo['stock_right'];// 合伙人加权奖励
|
|
|
- } elseif ($vo['level'] == 3) {
|
|
|
+ $orderCount = StoreOrder::where('paid', 1)->where('uid', $vo['uid'])->where('is_explosion_order', 1)->sum('total_num');
|
|
|
+ $jl += $userMoney * $orderCount;// 合伙人加权奖励
|
|
|
+ $userjl = $userMoney * $orderCount;//会员分红
|
|
|
+ $sp_jl = $userMoney * $orderCount;//上级奖励
|
|
|
+// if ($vo['level'] == 1) {
|
|
|
+// //会员
|
|
|
+// $orderCount = StoreOrder::where('paid', 1)->where('uid', $vo['uid'])->where('is_explosion_order', 1)->sum('total_num');
|
|
|
+// $jl += $userMoney * $orderCount;// 合伙人加权奖励
|
|
|
+// $userjl = $userMoney * $orderCount;//会员分红
|
|
|
+// $sp_jl = $userMoney * $orderCount;//上级奖励
|
|
|
+// } elseif ($vo['level'] == 2) {
|
|
|
+// //合伙人
|
|
|
+// $orderCount = StoreOrder::where('paid', 1)->where('uid', $vo['uid'])->where('is_explosion_order', 1)->sum('total_num');
|
|
|
+// $jl += $userMoney * $orderCount;// 会员分红
|
|
|
+// $jl += $partnerMoney;// 合伙人加权奖励
|
|
|
+// $userjl = $userMoney * $orderCount;//会员分红
|
|
|
+// $partnerjl = $partnerMoney;//合伙人分红
|
|
|
+// } elseif ($vo['level'] == 3) {
|
|
|
+ if ($vo['level'] == 3){
|
|
|
//股东
|
|
|
- $str = '股东分红';
|
|
|
- $jl += $partnerMoney * $vo['stock_right'];// 合伙人加权奖励
|
|
|
$jl += $shareholderMoney;// 股东加权奖励
|
|
|
+ $shareholderjl = $shareholderMoney;//股东分红
|
|
|
} elseif ($vo['level'] == 4) {
|
|
|
//董事
|
|
|
- $str = '董事分红';
|
|
|
- $jl += $partnerMoney * $vo['stock_right'];// 合伙人加权奖励
|
|
|
$jl += $shareholderMoney;// 股东加权奖励
|
|
|
$jl += $directorMoney;// 董事加权奖励
|
|
|
+ $shareholderjl = $shareholderMoney;//股东分红
|
|
|
+ $directorjl = $directorMoney;//股东分红
|
|
|
}
|
|
|
$model = new UserSingleAward();
|
|
|
$award = $model->where('uid', $vo['uid'])->where('status', 0)->select()->toArray();
|
|
|
@@ -701,39 +721,47 @@ class UserController
|
|
|
}
|
|
|
}
|
|
|
$model->saveAll($award);
|
|
|
- UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $bdjl, '', $vo['brokerage_price'] + $bdjl, $str);
|
|
|
+ UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $userjl, '', $vo['brokerage_price'] + $userjl, '会员分红');
|
|
|
+ if ($vo['level'] == 3){
|
|
|
+// UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $partnerjl, '', $vo['brokerage_price'] + $bdjl, '合伙人分红');
|
|
|
+ UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $shareholderjl, '', $vo['brokerage_price'] + $userjl+ $shareholderjl, '股东分红');
|
|
|
+ }elseif ($vo['level'] == 4){
|
|
|
+// UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $partnerjl, '', $vo['brokerage_price'] + $bdjl, '合伙人分红');
|
|
|
+ UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $shareholderjl, '', $vo['brokerage_price'] + $userjl + $shareholderjl, '股东分红');
|
|
|
+ UserBill::income('佣金', $vo['uid'], 'now_money', 'brokerage', $directorjl, '', $vo['brokerage_price'] + $userjl + $shareholderjl + $directorjl, '董事分红');
|
|
|
+ }
|
|
|
User::where('uid', $vo['uid'])->inc('brokerage_price', $bdjl)->update();
|
|
|
|
|
|
- if ($vo['level'] == 1){
|
|
|
- // 如果是会员
|
|
|
- if ($vo['spread_uid']){
|
|
|
- $spread = User::where('uid', $vo['spread_uid'])->where('level', '>=', 1)->find();
|
|
|
- if ($spread){
|
|
|
- $model = new UserSingleAward();
|
|
|
- $award = $model->where('uid', $spread['uid'])->where('status', 0)->select()->toArray();
|
|
|
- if ($award){
|
|
|
- $bdjl = 0; // 爆单剩余奖励
|
|
|
- foreach ($award as &$item){
|
|
|
- $surplus = $item['money'] - $item['grant'];
|
|
|
- if ($sp_jl > 0){
|
|
|
- if ($surplus < $sp_jl){
|
|
|
- $bdjl += $surplus;
|
|
|
- $sp_jl -= $surplus;
|
|
|
- $item['status'] = 1;
|
|
|
- $item['grant'] = $item['money'];
|
|
|
- }else{
|
|
|
- $bdjl += $sp_jl;
|
|
|
- $item['grant'] += $sp_jl;
|
|
|
- $sp_jl = 0;
|
|
|
- }
|
|
|
+// if ($vo['level'] == 1){
|
|
|
+ // 如果是会员
|
|
|
+ if ($vo['spread_uid']){
|
|
|
+ $spread = User::where('uid', $vo['spread_uid'])->where('level', '>=', 1)->find();
|
|
|
+ if ($spread){
|
|
|
+ $model = new UserSingleAward();
|
|
|
+ $award = $model->where('uid', $spread['uid'])->where('status', 0)->select()->toArray();
|
|
|
+ if ($award){
|
|
|
+ $bdjl = 0; // 爆单剩余奖励
|
|
|
+ foreach ($award as &$item){
|
|
|
+ $surplus = $item['money'] - $item['grant'];
|
|
|
+ if ($sp_jl > 0){
|
|
|
+ if ($surplus < $sp_jl){
|
|
|
+ $bdjl += $surplus;
|
|
|
+ $sp_jl -= $surplus;
|
|
|
+ $item['status'] = 1;
|
|
|
+ $item['grant'] = $item['money'];
|
|
|
+ }else{
|
|
|
+ $bdjl += $sp_jl;
|
|
|
+ $item['grant'] += $sp_jl;
|
|
|
+ $sp_jl = 0;
|
|
|
}
|
|
|
}
|
|
|
- $model->saveAll($award);
|
|
|
- UserBill::income('佣金', $spread['uid'], 'now_money', 'brokerage', $bdjl, '', $spread['brokerage_price']+$bdjl, '分享会员分红');
|
|
|
- User::where('uid', $spread['uid'])->inc('brokerage_price', $bdjl)->update();
|
|
|
}
|
|
|
+ $model->saveAll($award);
|
|
|
+ UserBill::income('佣金', $spread['uid'], 'now_money', 'brokerage', $userjl, '', $spread['brokerage_price']+$userjl, '合伙人分红');
|
|
|
+ User::where('uid', $spread['uid'])->inc('brokerage_price', $bdjl)->update();
|
|
|
}
|
|
|
}
|
|
|
+// }
|
|
|
}
|
|
|
}
|
|
|
}
|