|
|
@@ -252,12 +252,15 @@ class User extends BaseController
|
|
252
|
252
|
}
|
|
253
|
253
|
|
|
254
|
254
|
|
|
255
|
|
- $getteamscon = $this->getPerformance($user->uid);
|
|
|
255
|
+ // $getteamscon = $this->getPerformance($user->uid);
|
|
|
256
|
+
|
|
|
257
|
+ $getcon = $this->getPerformance_getcon( $user->uid);
|
|
|
258
|
+
|
|
256
|
259
|
//我的团队贡献值
|
|
257
|
|
- $data['team_gongxian_num'] = $getteamscon['sum_nums_pv'];
|
|
|
260
|
+ $data['team_gongxian_num'] = $getcon['common_nums_pv'] + $getcon['person_nums_pv'];
|
|
258
|
261
|
|
|
259
|
262
|
//为生贡献值
|
|
260
|
|
- $data['no_total_source']=Db::name('user_sign_gongxian')->where('status', -1)->where('uid', $user->uid)->sum('number');;
|
|
|
263
|
+ $data['no_total_source']=Db::name('user_sign_gongxian')->where('status', -1)->where('uid', $user->uid)->sum('number');
|
|
261
|
264
|
log::info("====spread_info_yhc=={$data['total_source']}======={$data['no_total_source']}");
|
|
262
|
265
|
return app('json')->success($data);
|
|
263
|
266
|
|
|
|
@@ -1403,7 +1406,7 @@ class User extends BaseController
|
|
1403
|
1406
|
|
|
1404
|
1407
|
|
|
1405
|
1408
|
if($teamid == 592){
|
|
1406
|
|
- $teamid = 222;//593
|
|
|
1409
|
+ $teamid = 454;//593
|
|
1407
|
1410
|
|
|
1408
|
1411
|
// $ss= $this->userupdates($teamid);
|
|
1409
|
1412
|
// var_dump($ss);
|
|
|
@@ -3781,27 +3784,28 @@ return app("json")->success($data);
|
|
3781
|
3784
|
}
|
|
3782
|
3785
|
|
|
3783
|
3786
|
//1.0用户直属的部门和2.0直属的部门,进行比较,获取大部门和小部门数据
|
|
3784
|
|
- public function getparents_child_pv11($user_id, $bigamount, $smallamount,$common_nums,$person_nums) {
|
|
|
3787
|
+ public function getparents_child_pv11($user_id, $bigamount, $smallamount, $common_nums, $person_nums) {
|
|
3785
|
3788
|
// 获取直接下级的 UID 列表
|
|
3786
|
3789
|
$get_childs = Db::name("user")
|
|
3787
|
|
- ->where("spread_uid", $user_id)
|
|
3788
|
|
- ->column("uid");
|
|
3789
|
|
-
|
|
3790
|
|
- // var_dump($get_childs);
|
|
|
3790
|
+ ->where("spread_uid", $user_id)
|
|
|
3791
|
+ ->column("uid");
|
|
|
3792
|
+
|
|
3791
|
3793
|
// 初始化变量
|
|
3792
|
3794
|
$all_departments = []; // 用于存储所有直属下级的业绩和人数
|
|
3793
|
|
-
|
|
|
3795
|
+
|
|
3794
|
3796
|
// 遍历每个直属下级
|
|
3795
|
3797
|
foreach ($get_childs as $child) {
|
|
3796
|
3798
|
// 获取当前下级及其子级
|
|
3797
|
3799
|
$child_group = [$child];
|
|
3798
|
3800
|
$recursive_children = $this->getRecursiveChildren($child);
|
|
3799
|
|
-
|
|
3800
|
3801
|
$child_group = array_merge($child_group, $recursive_children);
|
|
3801
|
|
-
|
|
|
3802
|
+
|
|
3802
|
3803
|
// 获取当前分组的业绩和人数
|
|
3803
|
3804
|
$result = $this->getteampv($child_group);
|
|
3804
|
|
-
|
|
|
3805
|
+ // if($user_id == 593){
|
|
|
3806
|
+ // var_dump($result);
|
|
|
3807
|
+ // }
|
|
|
3808
|
+
|
|
3805
|
3809
|
// 将直属下级的业绩和人数加入数组
|
|
3806
|
3810
|
$all_departments[] = [
|
|
3807
|
3811
|
'value' => $result['totalPv'],
|
|
|
@@ -3814,39 +3818,39 @@ return app("json")->success($data);
|
|
3814
|
3818
|
'value' => $bigamount,
|
|
3815
|
3819
|
'count' => $common_nums // 大部门的人数
|
|
3816
|
3820
|
];
|
|
|
3821
|
+
|
|
3817
|
3822
|
$all_departments[] = [
|
|
3818
|
3823
|
'value' => $smallamount,
|
|
3819
|
3824
|
'count' => $person_nums // 小部门的人数
|
|
3820
|
3825
|
];
|
|
3821
|
3826
|
|
|
3822
|
|
- //
|
|
3823
|
|
- // 找出最大业绩及其对应的人数
|
|
|
3827
|
+ // 初始化最大部门和小部门
|
|
3824
|
3828
|
$max_department = null;
|
|
3825
|
|
- foreach ($all_departments as $department) {
|
|
3826
|
|
- if ($max_department === null || $department['value'] > $max_department['value']) {
|
|
3827
|
|
- $max_department = $department;
|
|
3828
|
|
- }
|
|
3829
|
|
- }
|
|
3830
|
|
-
|
|
3831
|
|
- // 计算小部门业绩和人数:总和 - 最大值
|
|
3832
|
3829
|
$small_department = [
|
|
3833
|
3830
|
'value' => 0,
|
|
3834
|
3831
|
'count' => 0
|
|
3835
|
3832
|
];
|
|
|
3833
|
+
|
|
|
3834
|
+ // 遍历 $all_departments,找出最大值并累加小部门的值
|
|
3836
|
3835
|
foreach ($all_departments as $department) {
|
|
3837
|
|
- if ($department['value'] !== $max_department['value']) {
|
|
|
3836
|
+ if ($max_department === null || $department['value'] > $max_department['value']) {
|
|
|
3837
|
+ // 如果当前部门的业绩大于最大部门的业绩,更新最大部门
|
|
|
3838
|
+ $small_department['value'] += $max_department['value'] ?? 0; // 将旧的最大值累加到小部门
|
|
|
3839
|
+ $small_department['count'] += $max_department['count'] ?? 0;
|
|
|
3840
|
+
|
|
|
3841
|
+ $max_department = $department; // 更新最大部门
|
|
|
3842
|
+ } else {
|
|
|
3843
|
+ // 如果当前部门的业绩小于或等于最大部门的业绩,累加到小部门
|
|
3838
|
3844
|
$small_department['value'] += $department['value'];
|
|
3839
|
3845
|
$small_department['count'] += $department['count'];
|
|
3840
|
3846
|
}
|
|
3841
|
3847
|
}
|
|
3842
|
|
- //var_dump($max_department,$small_department);
|
|
|
3848
|
+
|
|
3843
|
3849
|
// 返回结果
|
|
3844
|
3850
|
return [
|
|
3845
|
3851
|
'big_department' => $max_department,
|
|
3846
|
3852
|
'small_department' => $small_department
|
|
3847
|
3853
|
];
|
|
3848
|
|
-
|
|
3849
|
|
-
|
|
3850
|
3854
|
}
|
|
3851
|
3855
|
|
|
3852
|
3856
|
//根据父级IDS获取伞下的所有子级ID
|
|
|
@@ -3940,7 +3944,7 @@ return app("json")->success($data);
|
|
3940
|
3944
|
|
|
3941
|
3945
|
$team_amount = 0;
|
|
3942
|
3946
|
$person_amount = 0;
|
|
3943
|
|
- $user_id = 780; //598 523 536
|
|
|
3947
|
+ $user_id = 454; //598 523 536
|
|
3944
|
3948
|
|
|
3945
|
3949
|
$result_big_team_arr = [];
|
|
3946
|
3950
|
$get_teams_comm_datas = [];//在2.0中获取父级下面的所有团队数据
|
|
|
@@ -4044,7 +4048,7 @@ return app("json")->success($data);
|
|
4044
|
4048
|
//var_dump($team_amount);
|
|
4045
|
4049
|
//1.0获取小区业绩
|
|
4046
|
4050
|
$person_nums = $this->getPersonageNums($user_id);
|
|
4047
|
|
- // var_dump($person_nums);
|
|
|
4051
|
+ //var_dump($person_nums);
|
|
4048
|
4052
|
$result_small_team_arr = [];
|
|
4049
|
4053
|
//1.0系统中有下级,需要在2.0中再加下级数据
|
|
4050
|
4054
|
|
|
|
@@ -4106,8 +4110,8 @@ return app("json")->success($data);
|
|
4106
|
4110
|
$amount = $this->getPerformance1($value);
|
|
4107
|
4111
|
$person_amount += $amount;
|
|
4108
|
4112
|
}
|
|
4109
|
|
- // var_dump($team_amount);
|
|
4110
|
|
- //var_dump($person_amount);
|
|
|
4113
|
+ // var_dump($team_amount);
|
|
|
4114
|
+ // var_dump($person_amount);
|
|
4111
|
4115
|
|
|
4112
|
4116
|
//
|
|
4113
|
4117
|
|
|
|
@@ -4212,6 +4216,9 @@ return app("json")->success($data);
|
|
4212
|
4216
|
$per_num = count($person_nums) + $get_teams_per_num;
|
|
4213
|
4217
|
|
|
4214
|
4218
|
|
|
|
4219
|
+ // var_dump($team_amount);
|
|
|
4220
|
+ // var_dump($person_amount);
|
|
|
4221
|
+
|
|
4215
|
4222
|
//如果当前用户是1.0用户,找到其直推所有的业绩,根据业绩找到大小部门的同时,还要比对1.0中大小部门的业绩,摘出一个最大业绩的部门是大部门,其余都是小部门()
|
|
4216
|
4223
|
if($user_id < 611){
|
|
4217
|
4224
|
|
|
|
@@ -4222,16 +4229,16 @@ return app("json")->success($data);
|
|
4222
|
4229
|
//例子:17所有下面uid是speard_uid都是17的,和所有伞下的业绩。分出大小部门,加到1.0的大小部门中
|
|
4223
|
4230
|
$b_s = $this->getparents_child_pv11($user_id,$team_amount,$person_amount,count($common_nums)+ $get_teams_comm_num,count($person_nums)+ $get_teams_per_num);
|
|
4224
|
4231
|
|
|
4225
|
|
- var_dump($b_s);
|
|
|
4232
|
+ //var_dump($b_s);
|
|
4226
|
4233
|
// var_dump($team_amount,$person_amount);
|
|
4227
|
4234
|
// var_dump(count($common_nums)+ $get_teams_comm_num,count($person_nums)+ $get_teams_per_num);
|
|
4228
|
4235
|
//var_dump( $b_s);echo "yyyyyyyyyyyyy";
|
|
4229
|
4236
|
$team_amount = $b_s['big_department']['value'];
|
|
4230
|
|
- $teams_num = $b_s['big_department']['count'];
|
|
4231
|
|
- // var_dump($b_s['team_pv']);
|
|
4232
|
|
- // var_dump($b_s['per_pv']);
|
|
|
4237
|
+ $teams_num = $b_s['big_department']['count'];
|
|
|
4238
|
+ // var_dump($b_s['team_pv']);
|
|
|
4239
|
+ // var_dump($b_s['per_pv']);
|
|
4233
|
4240
|
|
|
4234
|
|
- $person_amount = $b_s['small_department']['value'];
|
|
|
4241
|
+ $person_amount = $b_s['small_department']['value'];
|
|
4235
|
4242
|
|
|
4236
|
4243
|
$per_num = $b_s['small_department']['count'];//小部门人数
|
|
4237
|
4244
|
//var_dump( $b_s['team_num'],$b_s['per_num']);
|
|
|
@@ -5321,6 +5328,656 @@ return app("json")->success($data);
|
|
5321
|
5328
|
// }
|
|
5322
|
5329
|
|
|
5323
|
5330
|
|
|
|
5331
|
+ //获取大小部门贡献值
|
|
|
5332
|
+ /**
|
|
|
5333
|
+ * 获取当前用户大小部门贡献值
|
|
|
5334
|
+ */
|
|
|
5335
|
+ public function getPerformance_getcon($user_id) {
|
|
|
5336
|
+
|
|
|
5337
|
+
|
|
|
5338
|
+
|
|
|
5339
|
+ $team_amount = 0;
|
|
|
5340
|
+ $person_amount = 0;
|
|
|
5341
|
+ // $user_id = 593; //598 523 536
|
|
|
5342
|
+
|
|
|
5343
|
+ $result_big_team_arr = [];
|
|
|
5344
|
+ $get_teams_comm_datas = [];//在2.0中获取父级下面的所有团队数据
|
|
|
5345
|
+ //共建联盟业绩 个人联盟业绩 共建联盟总pv 个人联盟业绩pv
|
|
|
5346
|
+ $common_nums = $this->getCommonNums_getcon($user_id);
|
|
|
5347
|
+
|
|
|
5348
|
+ //var_dump($common_nums);
|
|
|
5349
|
+ $get_teams_comm_num = 0;
|
|
|
5350
|
+ $get_teams_comm_pv = 0;
|
|
|
5351
|
+
|
|
|
5352
|
+ $get_teams_per_num = 0;//小部门人数
|
|
|
5353
|
+ //1.0系统中有下级,需要在2.0中再加下级数据
|
|
|
5354
|
+ if($user_id < 611){
|
|
|
5355
|
+ //梅红在2.0中的ID是780
|
|
|
5356
|
+
|
|
|
5357
|
+ //var_dump( $common_nums);
|
|
|
5358
|
+ //用户三峡所有在2.0系统下面的业绩和人数 start
|
|
|
5359
|
+ $child_nums = [];
|
|
|
5360
|
+
|
|
|
5361
|
+ //获取当前用户
|
|
|
5362
|
+ foreach($common_nums as $v){
|
|
|
5363
|
+ $child_nums[] = $this->getRecursiveChildren_getcon($v);
|
|
|
5364
|
+ }
|
|
|
5365
|
+
|
|
|
5366
|
+
|
|
|
5367
|
+ //去除空数组,并重新组合有数据的数组
|
|
|
5368
|
+ $filteredData = array_filter($child_nums, function($array) {
|
|
|
5369
|
+ return !empty($array); // 如果数组不为空,则保留
|
|
|
5370
|
+ });
|
|
|
5371
|
+
|
|
|
5372
|
+ // 合并所有非空数组
|
|
|
5373
|
+
|
|
|
5374
|
+ foreach ($filteredData as $array) {
|
|
|
5375
|
+ $result_big_team_arr = array_merge($result_big_team_arr, $array);
|
|
|
5376
|
+ }
|
|
|
5377
|
+ //var_dump($result_big_team_arr);
|
|
|
5378
|
+ //获取当前用户下面在2.0中的下级所有PV
|
|
|
5379
|
+ //$get_teams_comm_pv = $this->getteampv($result_big_team_arr);
|
|
|
5380
|
+ $t_pv = $this->getteampv_getcon($result_big_team_arr);
|
|
|
5381
|
+ $get_teams_comm_pv = $t_pv;
|
|
|
5382
|
+ //var_dump($get_teams_comm_pv);echo "ttt";
|
|
|
5383
|
+
|
|
|
5384
|
+ //用户伞下小部门所有在2.0系统下面的业绩和人数 end
|
|
|
5385
|
+ }else{
|
|
|
5386
|
+
|
|
|
5387
|
+ //当前用户在1.0没有下级,那直接在新系统2.0找下级获取数据,并区分大小部门
|
|
|
5388
|
+ $child_nums = $this->getChildren_getcon($user_id);
|
|
|
5389
|
+
|
|
|
5390
|
+ //获取父级子级下面的个人
|
|
|
5391
|
+ $num_teams = $this->getTeamSize_getcon($child_nums);
|
|
|
5392
|
+
|
|
|
5393
|
+ //var_dump($num_teams);
|
|
|
5394
|
+ foreach($child_nums as $v){
|
|
|
5395
|
+
|
|
|
5396
|
+ $get_teams_comm_datas[] = $this->getTeamPv11_getcon($v);//如果有多个父级ID,需要获取他们伞下的子级,所有的业绩进行
|
|
|
5397
|
+ }
|
|
|
5398
|
+
|
|
|
5399
|
+ //$s = $this->getparents_child_pv($user_id);
|
|
|
5400
|
+
|
|
|
5401
|
+ //var_dump($get_teams_comm_datas);
|
|
|
5402
|
+ //如果只有一个部门,就是默认大部门
|
|
|
5403
|
+ if( count($get_teams_comm_datas) ==1 ){
|
|
|
5404
|
+
|
|
|
5405
|
+ $get_teams_comm_pv =$get_teams_comm_datas[0];
|
|
|
5406
|
+ $get_teams_comm_num = $num_teams[0]['total_count'];
|
|
|
5407
|
+
|
|
|
5408
|
+ }else if(count($get_teams_comm_datas) >1){
|
|
|
5409
|
+
|
|
|
5410
|
+ // var_dump( $get_teams_comm_datas);
|
|
|
5411
|
+ //获取一个最大值,设为大部门,其他的加载一块是小部门
|
|
|
5412
|
+ $getss = $this->processArray_getcon($get_teams_comm_datas);
|
|
|
5413
|
+ //var_dump($getss);
|
|
|
5414
|
+ $max_value_count = $num_teams[$getss['max_index']]['total_count'];
|
|
|
5415
|
+
|
|
|
5416
|
+ unset($num_teams[$getss['max_index']]);
|
|
|
5417
|
+
|
|
|
5418
|
+ //获取小部门的人数
|
|
|
5419
|
+ $per_num = 0;
|
|
|
5420
|
+ foreach($num_teams as $k=>$v){
|
|
|
5421
|
+ $per_num +=$v['total_count'];
|
|
|
5422
|
+ }
|
|
|
5423
|
+
|
|
|
5424
|
+ //找到最大值的(大部门)
|
|
|
5425
|
+ //$get_teams_comm_num = $max_value_count;
|
|
|
5426
|
+ //小部门的数量
|
|
|
5427
|
+ // $get_teams_per_num = $per_num;
|
|
|
5428
|
+ //var_dump($getss['max_value']);
|
|
|
5429
|
+ $person_amount = $getss['remaining_sum'];
|
|
|
5430
|
+ $get_teams_comm_pv = $getss['max_value'];
|
|
|
5431
|
+ }
|
|
|
5432
|
+
|
|
|
5433
|
+ }
|
|
|
5434
|
+ //var_dump($get_teams_comm_pv);
|
|
|
5435
|
+ //合并业绩和人数
|
|
|
5436
|
+ $team_amount += $get_teams_comm_pv;
|
|
|
5437
|
+
|
|
|
5438
|
+ //var_dump($team_amount);
|
|
|
5439
|
+ //1.0获取小区业绩
|
|
|
5440
|
+ $person_nums = $this->getPersonageNums_getcon($user_id);
|
|
|
5441
|
+ //var_dump($person_nums);
|
|
|
5442
|
+ $result_small_team_arr = [];
|
|
|
5443
|
+ //1.0系统中有下级,需要在2.0中再加下级数据
|
|
|
5444
|
+
|
|
|
5445
|
+
|
|
|
5446
|
+
|
|
|
5447
|
+ //用户三峡所有在2.0系统下面的业绩和人数 start
|
|
|
5448
|
+ $child_nums_mix = [];
|
|
|
5449
|
+
|
|
|
5450
|
+ //获取当前用户
|
|
|
5451
|
+ foreach($person_nums as $v){
|
|
|
5452
|
+ $child_nums_mix[] = $this->getRecursiveChildren_getcon($v);
|
|
|
5453
|
+ }
|
|
|
5454
|
+
|
|
|
5455
|
+ //去除空数组,并重新组合有数据的数组
|
|
|
5456
|
+ $filteredData_1 = array_filter($child_nums_mix, function($array) {
|
|
|
5457
|
+ return !empty($array); // 如果数组不为空,则保留
|
|
|
5458
|
+ });
|
|
|
5459
|
+
|
|
|
5460
|
+ // 合并所有非空数组
|
|
|
5461
|
+ $result_small_team_arr = [];
|
|
|
5462
|
+ foreach ($filteredData_1 as $array) {
|
|
|
5463
|
+ $result_small_team_arr = array_merge($result_small_team_arr, $array);
|
|
|
5464
|
+ }
|
|
|
5465
|
+
|
|
|
5466
|
+
|
|
|
5467
|
+ //var_dump($result_small_team_arr);
|
|
|
5468
|
+ //获取当前用户下面在2.0中的下级所有PV
|
|
|
5469
|
+ // $get_teams_per_pv = $this->getteampv($result_small_team_arr);
|
|
|
5470
|
+ $t_pv = $this->getteampv_getcon($result_small_team_arr);
|
|
|
5471
|
+ $get_teams_per_pv =$t_pv;
|
|
|
5472
|
+ //var_dump( $get_teams_per_pv);
|
|
|
5473
|
+
|
|
|
5474
|
+
|
|
|
5475
|
+
|
|
|
5476
|
+
|
|
|
5477
|
+ //获取当前用户下面在2.0中的下级所有人数
|
|
|
5478
|
+ // $get_teams_per_num += count($result_small_team_arr);
|
|
|
5479
|
+ //合并业绩和人数
|
|
|
5480
|
+ $person_amount += $get_teams_per_pv;
|
|
|
5481
|
+
|
|
|
5482
|
+
|
|
|
5483
|
+ //当前会员直属的业绩(1.0大部门)
|
|
|
5484
|
+ $t_pv = $this->getteampv_getcon($common_nums);
|
|
|
5485
|
+ $team_amount += $t_pv;
|
|
|
5486
|
+
|
|
|
5487
|
+ //当前会员直属的业绩(1.0大部门)
|
|
|
5488
|
+ $p_pv = $this->getteampv_getcon($person_nums);
|
|
|
5489
|
+ $person_amount += $p_pv;
|
|
|
5490
|
+
|
|
|
5491
|
+
|
|
|
5492
|
+
|
|
|
5493
|
+ //var_dump($team_amount,$person_amount);
|
|
|
5494
|
+ //如果当前用户是1.0用户,找到其直推所有的业绩,根据业绩找到大小部门的同时,还要比对1.0中大小部门的业绩,摘出一个最大业绩的部门是大部门,其余都是小部门()
|
|
|
5495
|
+ if($user_id < 611){
|
|
|
5496
|
+
|
|
|
5497
|
+ //获取当前用户直属下级(查询在2.0中直接推荐人和伞下的业绩。并比对大小部门)
|
|
|
5498
|
+ //例子:17所有下面uid是speard_uid都是17的,和所有伞下的业绩。分出大小部门,加到1.0的大小部门中
|
|
|
5499
|
+ $b_s = $this->getparents_child_pv11_getcon($user_id,$team_amount,$person_amount);
|
|
|
5500
|
+
|
|
|
5501
|
+ $team_amount = $b_s[0];
|
|
|
5502
|
+
|
|
|
5503
|
+ $person_amount = $b_s[1];
|
|
|
5504
|
+
|
|
|
5505
|
+ }
|
|
|
5506
|
+
|
|
|
5507
|
+
|
|
|
5508
|
+
|
|
|
5509
|
+ $return_data = [
|
|
|
5510
|
+
|
|
|
5511
|
+ 'common_nums_pv'=> $team_amount,
|
|
|
5512
|
+ 'person_nums_pv'=> $person_amount,
|
|
|
5513
|
+
|
|
|
5514
|
+ ];
|
|
|
5515
|
+
|
|
|
5516
|
+ return $return_data;
|
|
|
5517
|
+
|
|
|
5518
|
+ }
|
|
|
5519
|
+
|
|
|
5520
|
+ /**
|
|
|
5521
|
+ * 获取该用户共建联盟
|
|
|
5522
|
+ */
|
|
|
5523
|
+ public function getCommonNums_getcon($user_id){
|
|
|
5524
|
+
|
|
|
5525
|
+
|
|
|
5526
|
+
|
|
|
5527
|
+ //先获取共建联盟下用户的id
|
|
|
5528
|
+ $son_ids = Db::name("old_user_jbp")->where("spread",$user_id)->where("is_team",1)->select()->toArray();
|
|
|
5529
|
+ $new_array_ids =[];
|
|
|
5530
|
+ foreach ($son_ids as $key => $value) {
|
|
|
5531
|
+ # code...
|
|
|
5532
|
+ $son_id = $value['id'];
|
|
|
5533
|
+ $new_array_ids = array_merge($new_array_ids,[$son_id]);
|
|
|
5534
|
+ $son_value_ids = Db::name("old_user_jbp")->whereRaw("FIND_IN_SET('$son_id',parent_ids)")->field("id")->select()->toArray();
|
|
|
5535
|
+
|
|
|
5536
|
+ if(count($son_value_ids) > 0) {
|
|
|
5537
|
+ $son_value_ids = array_column($son_value_ids,"id");
|
|
|
5538
|
+ $new_array_ids = array_merge($new_array_ids,$son_value_ids);
|
|
|
5539
|
+ }
|
|
|
5540
|
+
|
|
|
5541
|
+ }
|
|
|
5542
|
+ return $new_array_ids;
|
|
|
5543
|
+ }
|
|
|
5544
|
+ /**
|
|
|
5545
|
+ * 获取该用户个人联盟
|
|
|
5546
|
+ */
|
|
|
5547
|
+ public function getPersonageNums_getcon($user_id){
|
|
|
5548
|
+
|
|
|
5549
|
+ $son_ids = Db::name("old_user_jbp")->where("spread",$user_id)->where("is_team",0)->field("id")->select();
|
|
|
5550
|
+ $new_array_ids =[];
|
|
|
5551
|
+ // return 3343;
|
|
|
5552
|
+ foreach ($son_ids as $key => $value) {
|
|
|
5553
|
+ # code...
|
|
|
5554
|
+ $son_id = $value['id'];
|
|
|
5555
|
+ $new_array_ids = array_merge($new_array_ids,[$son_id]);
|
|
|
5556
|
+ $son_value_ids = Db::name("old_user_jbp")->whereRaw("FIND_IN_SET('$son_id',parent_ids)")->field("id")->select()->toArray();
|
|
|
5557
|
+
|
|
|
5558
|
+ if(count($son_value_ids) > 0) {
|
|
|
5559
|
+ $son_value_ids = array_column($son_value_ids,"id");
|
|
|
5560
|
+ $new_array_ids = array_merge($new_array_ids,$son_value_ids);
|
|
|
5561
|
+ }
|
|
|
5562
|
+
|
|
|
5563
|
+ }
|
|
|
5564
|
+ return $new_array_ids;
|
|
|
5565
|
+ }
|
|
|
5566
|
+
|
|
|
5567
|
+ // 根据父级uid,递归获取所有子级UID数组
|
|
|
5568
|
+ public function getRecursiveChildren_getcon($parentUid) {
|
|
|
5569
|
+ $result = []; // 用于存储所有子级的 uid
|
|
|
5570
|
+
|
|
|
5571
|
+ // 定义递归函数
|
|
|
5572
|
+ $recursion = function ($parentUid) use (&$result, &$recursion) {
|
|
|
5573
|
+ // 查询当前父级的所有直接子级
|
|
|
5574
|
+ $children = Db::name("user")
|
|
|
5575
|
+ ->where("spread_uid", $parentUid)
|
|
|
5576
|
+ ->column("uid"); // 获取子级的 uid 列表
|
|
|
5577
|
+
|
|
|
5578
|
+ // 如果没有子级,直接返回
|
|
|
5579
|
+ if (empty($children)) {
|
|
|
5580
|
+ return;
|
|
|
5581
|
+ }
|
|
|
5582
|
+
|
|
|
5583
|
+ // 遍历每个子级
|
|
|
5584
|
+ foreach ($children as $childUid) {
|
|
|
5585
|
+ $result[] = $childUid; // 将子级的 uid 添加到结果数组
|
|
|
5586
|
+ $recursion($childUid); // 递归查询子级的子级
|
|
|
5587
|
+ }
|
|
|
5588
|
+ };
|
|
|
5589
|
+
|
|
|
5590
|
+ // 从初始父级开始递归查询
|
|
|
5591
|
+ $recursion($parentUid);
|
|
|
5592
|
+
|
|
|
5593
|
+ return array_unique($result); // 返回结果数组,并去重
|
|
|
5594
|
+ }
|
|
|
5595
|
+
|
|
|
5596
|
+ //只获取数组中的业绩
|
|
|
5597
|
+ public function getteampv_getcon($common_nums) {
|
|
|
5598
|
+
|
|
|
5599
|
+ // // 查询当前用户及其子级的所有订单
|
|
|
5600
|
+ $orders_gongxian = Db::name("user_sign_gongxian")
|
|
|
5601
|
+ ->whereIn('status', [1])
|
|
|
5602
|
+ ->whereIn("uid", $common_nums)
|
|
|
5603
|
+
|
|
|
5604
|
+ ->select();
|
|
|
5605
|
+ //var_dump( $common_nums);
|
|
|
5606
|
+
|
|
|
5607
|
+ $total_gongxian = 0;
|
|
|
5608
|
+ // // 遍历订单计算业绩
|
|
|
5609
|
+ foreach ($orders_gongxian as $order) {
|
|
|
5610
|
+ if (strpos($order['mark'], "购买") !== false) {
|
|
|
5611
|
+ $total_gongxian += $order['number'];
|
|
|
5612
|
+ }
|
|
|
5613
|
+ }
|
|
|
5614
|
+
|
|
|
5615
|
+ return $total_gongxian;
|
|
|
5616
|
+
|
|
|
5617
|
+ // // // 查询当前用户及其子级的所有订单
|
|
|
5618
|
+ // $orders = Db::name("store_order")
|
|
|
5619
|
+ // ->whereIn('status', [0, 1, 2, 3])
|
|
|
5620
|
+ // ->whereIn("uid", $common_nums)
|
|
|
5621
|
+ // ->whereIn("total_price", [1180, 11800, 10620, 2360, 9440])
|
|
|
5622
|
+ // ->select();
|
|
|
5623
|
+
|
|
|
5624
|
+ // // 初始化业绩和人数
|
|
|
5625
|
+ // $totalPv = 0;
|
|
|
5626
|
+ // $totalUsers = count($common_nums); // 初始化人数为子级总数
|
|
|
5627
|
+
|
|
|
5628
|
+ // // 遍历订单计算业绩
|
|
|
5629
|
+ // foreach ($orders as $order) {
|
|
|
5630
|
+ // if ($order['total_price'] == 1180) {
|
|
|
5631
|
+ // $totalPv += 700;
|
|
|
5632
|
+ // } else if ($order['total_price'] == 11800) {
|
|
|
5633
|
+ // $totalPv += 7000;
|
|
|
5634
|
+ // } else if ($order['total_price'] == 10620) {
|
|
|
5635
|
+ // $totalPv += 6300;
|
|
|
5636
|
+ // } else if ($order['total_price'] == 2360) {
|
|
|
5637
|
+ // $totalPv += 1400;
|
|
|
5638
|
+ // } else if ($order['total_price'] == 9440) {
|
|
|
5639
|
+ // $totalPv += 5600;
|
|
|
5640
|
+ // }
|
|
|
5641
|
+ // }
|
|
|
5642
|
+
|
|
|
5643
|
+ // // 返回业绩和人数
|
|
|
5644
|
+ // return [
|
|
|
5645
|
+ // 'totalPv' => $totalPv,
|
|
|
5646
|
+ // 'totalUsers' => $totalUsers
|
|
|
5647
|
+ // ];
|
|
|
5648
|
+ }
|
|
|
5649
|
+
|
|
|
5650
|
+
|
|
|
5651
|
+ // 2.0 根据父级uid,找到当前用户下面的UID
|
|
|
5652
|
+ public function getChildren_getcon($parentUid) {
|
|
|
5653
|
+ $result = []; // 用于存储所有子级的 uid
|
|
|
5654
|
+
|
|
|
5655
|
+
|
|
|
5656
|
+ $children = Db::name("user")
|
|
|
5657
|
+ ->where("spread_uid", $parentUid)
|
|
|
5658
|
+ ->column("uid"); // 获取子级的 uid 列表
|
|
|
5659
|
+
|
|
|
5660
|
+
|
|
|
5661
|
+ return $children; // 返回结果数组,并去重
|
|
|
5662
|
+ }
|
|
|
5663
|
+
|
|
|
5664
|
+
|
|
|
5665
|
+ // 递归获取所有子级 UID 的业绩
|
|
|
5666
|
+ public function getTeamPv11_getcon($parentUid) {
|
|
|
5667
|
+
|
|
|
5668
|
+ $getRecursiveChildren = function ($parentUid) use (&$getRecursiveChildren) {
|
|
|
5669
|
+ $children = Db::name("user")
|
|
|
5670
|
+ ->where("spread_uid", $parentUid)
|
|
|
5671
|
+ ->column("uid");
|
|
|
5672
|
+ $allChildren = [];
|
|
|
5673
|
+ foreach ($children as $childUid) {
|
|
|
5674
|
+ $allChildren[] = $childUid;
|
|
|
5675
|
+ $allChildren = array_merge($allChildren, $getRecursiveChildren($childUid));
|
|
|
5676
|
+ }
|
|
|
5677
|
+ return $allChildren;
|
|
|
5678
|
+ };
|
|
|
5679
|
+
|
|
|
5680
|
+ // 获取当前用户及其所有子级的 UID
|
|
|
5681
|
+ $allUids = array_merge([$parentUid], $getRecursiveChildren($parentUid));
|
|
|
5682
|
+
|
|
|
5683
|
+
|
|
|
5684
|
+ $orders_gongxian = Db::name("user_sign_gongxian")
|
|
|
5685
|
+ ->whereIn('status', [1])
|
|
|
5686
|
+ ->whereIn("uid", $allUids)
|
|
|
5687
|
+
|
|
|
5688
|
+ ->select();
|
|
|
5689
|
+
|
|
|
5690
|
+
|
|
|
5691
|
+ $total_gongxian = 0;
|
|
|
5692
|
+ // // 遍历订单计算业绩
|
|
|
5693
|
+ foreach ($orders_gongxian as $order) {
|
|
|
5694
|
+ if (strpos($order['mark'], "购买") !== false) {
|
|
|
5695
|
+ $total_gongxian += $order['number'];
|
|
|
5696
|
+ }
|
|
|
5697
|
+
|
|
|
5698
|
+ }
|
|
|
5699
|
+
|
|
|
5700
|
+ return $total_gongxian;
|
|
|
5701
|
+ // // 查询当前用户及其子级的所有订单
|
|
|
5702
|
+ // $orders = Db::name("store_order")
|
|
|
5703
|
+ // ->whereIn('status', [0, 1, 2, 3])
|
|
|
5704
|
+ // ->whereIn("uid", $allUids)
|
|
|
5705
|
+ // ->whereIn("total_price", [1180, 11800, 10620, 2360, 9440])
|
|
|
5706
|
+ // ->select();
|
|
|
5707
|
+
|
|
|
5708
|
+ // // 计算总业绩
|
|
|
5709
|
+ // $totalPv = 0;
|
|
|
5710
|
+ // foreach ($orders as $order) {
|
|
|
5711
|
+ // switch ($order['total_price']) {
|
|
|
5712
|
+ // case 1180:
|
|
|
5713
|
+ // $totalPv += 700;
|
|
|
5714
|
+ // break;
|
|
|
5715
|
+ // case 11800:
|
|
|
5716
|
+ // $totalPv += 7000;
|
|
|
5717
|
+ // break;
|
|
|
5718
|
+ // case 10620:
|
|
|
5719
|
+ // $totalPv += 6300;
|
|
|
5720
|
+ // break;
|
|
|
5721
|
+ // case 2360:
|
|
|
5722
|
+ // $totalPv += 1400;
|
|
|
5723
|
+ // break;
|
|
|
5724
|
+ // case 9440:
|
|
|
5725
|
+ // $totalPv += 5600;
|
|
|
5726
|
+ // break;
|
|
|
5727
|
+ // }
|
|
|
5728
|
+ // }
|
|
|
5729
|
+
|
|
|
5730
|
+ // return $totalPv;
|
|
|
5731
|
+ }
|
|
|
5732
|
+
|
|
|
5733
|
+ //根据传递的父级数组,返回他的对应子级的个数
|
|
|
5734
|
+ public function getTeamSize_getcon($parentUids) {
|
|
|
5735
|
+ // 初始化结果数组
|
|
|
5736
|
+ $result = [];
|
|
|
5737
|
+
|
|
|
5738
|
+ // 遍历每个父级ID
|
|
|
5739
|
+ foreach ($parentUids as $parentUid) {
|
|
|
5740
|
+ // 递归获取所有子级 UID
|
|
|
5741
|
+ $getRecursiveChildren = function ($parentUid) use (&$getRecursiveChildren) {
|
|
|
5742
|
+ $children = Db::name("user")
|
|
|
5743
|
+ ->where("spread_uid", $parentUid)
|
|
|
5744
|
+ ->column("uid");
|
|
|
5745
|
+
|
|
|
5746
|
+ // 确保返回的是数组
|
|
|
5747
|
+ if (!is_array($children)) {
|
|
|
5748
|
+ return [];
|
|
|
5749
|
+ }
|
|
|
5750
|
+
|
|
|
5751
|
+ $allChildren = [];
|
|
|
5752
|
+ foreach ($children as $childUid) {
|
|
|
5753
|
+ $allChildren[] = $childUid;
|
|
|
5754
|
+ $allChildren = array_merge($allChildren, $getRecursiveChildren($childUid));
|
|
|
5755
|
+ }
|
|
|
5756
|
+ return $allChildren;
|
|
|
5757
|
+ };
|
|
|
5758
|
+
|
|
|
5759
|
+ // 获取当前父级及其所有子级的 UID
|
|
|
5760
|
+ $allUids = array_merge([$parentUid], $getRecursiveChildren($parentUid));
|
|
|
5761
|
+
|
|
|
5762
|
+ // 计算总个数(包括父级自身)
|
|
|
5763
|
+ $totalUids = count($allUids);
|
|
|
5764
|
+
|
|
|
5765
|
+ // 将结果存入数组
|
|
|
5766
|
+ $result[] = [
|
|
|
5767
|
+ 'parent_uid' => $parentUid,
|
|
|
5768
|
+ 'total_count' => $totalUids
|
|
|
5769
|
+ ];
|
|
|
5770
|
+ }
|
|
|
5771
|
+
|
|
|
5772
|
+ return $result;
|
|
|
5773
|
+ }
|
|
|
5774
|
+
|
|
|
5775
|
+ public function processArray_getcon($array) {
|
|
|
5776
|
+ // 初始化结果数组
|
|
|
5777
|
+ $result = [
|
|
|
5778
|
+ 'max_value' => null, // 最大值
|
|
|
5779
|
+ 'max_index' => null, // 最大值的下标
|
|
|
5780
|
+ 'remaining_sum' => 0 // 剩余值的总和
|
|
|
5781
|
+ ];
|
|
|
5782
|
+
|
|
|
5783
|
+ // 检查数组是否为空
|
|
|
5784
|
+ if (empty($array)) {
|
|
|
5785
|
+ return $result;
|
|
|
5786
|
+ }
|
|
|
5787
|
+
|
|
|
5788
|
+ // 找出最大值及其下标
|
|
|
5789
|
+ $maxValue = $array[0];
|
|
|
5790
|
+ $maxIndex = 0;
|
|
|
5791
|
+ for ($i = 1; $i < count($array); $i++) {
|
|
|
5792
|
+ if ($array[$i] > $maxValue) {
|
|
|
5793
|
+ $maxValue = $array[$i];
|
|
|
5794
|
+ $maxIndex = $i;
|
|
|
5795
|
+ }
|
|
|
5796
|
+ }
|
|
|
5797
|
+
|
|
|
5798
|
+ // 计算剩余值的总和
|
|
|
5799
|
+ $remainingSum = 0;
|
|
|
5800
|
+ for ($i = 0; $i < count($array); $i++) {
|
|
|
5801
|
+ if ($i != $maxIndex) {
|
|
|
5802
|
+ $remainingSum += $array[$i];
|
|
|
5803
|
+ }
|
|
|
5804
|
+ }
|
|
|
5805
|
+
|
|
|
5806
|
+ // 将结果存入数组
|
|
|
5807
|
+ $result['max_value'] = $maxValue;
|
|
|
5808
|
+ $result['max_index'] = $maxIndex;
|
|
|
5809
|
+ $result['remaining_sum'] = $remainingSum;
|
|
|
5810
|
+
|
|
|
5811
|
+ return $result;
|
|
|
5812
|
+ }
|
|
|
5813
|
+
|
|
|
5814
|
+ /**
|
|
|
5815
|
+ * 获取流水信息
|
|
|
5816
|
+ */
|
|
|
5817
|
+ public function getPerformance1_getcon($user_id) {
|
|
|
5818
|
+ // $amount = Db::name("old_user_of_goods")->where("node_id",$user_id)->where("status",1)->sum("money");
|
|
|
5819
|
+
|
|
|
5820
|
+ // $amount = isset($amount) ? round($amount*0.7,2) : 0;
|
|
|
5821
|
+ // return $amount;
|
|
|
5822
|
+
|
|
|
5823
|
+ $money1180Records = Db::name("old_user_of_goods")->where("node_id",$user_id)->where("money",1180)->where("status",1)->select();
|
|
|
5824
|
+
|
|
|
5825
|
+ $money1180Sum = 0;
|
|
|
5826
|
+
|
|
|
5827
|
+ foreach ($money1180Records as $record) {
|
|
|
5828
|
+ $money1180Sum += $record['money'] - 300 - 180;
|
|
|
5829
|
+ }
|
|
|
5830
|
+ // var_dump($money1180Sum);
|
|
|
5831
|
+ $money11800Records = Db::name("old_user_of_goods")->where("node_id",$user_id)->where("money",11800)->where("status",1)->select();
|
|
|
5832
|
+
|
|
|
5833
|
+ //var_dump($person_nums);
|
|
|
5834
|
+ //计算个人的11800单价的业绩 集合
|
|
|
5835
|
+ $money11800Sum = 0;
|
|
|
5836
|
+
|
|
|
5837
|
+ foreach ($money11800Records as $record) {
|
|
|
5838
|
+ $money11800Sum += $record['money'] - 3000 - 1800;
|
|
|
5839
|
+ }
|
|
|
5840
|
+
|
|
|
5841
|
+ $money10620Records = Db::name("old_user_of_goods")->where("node_id",$user_id)->where("money",10620)->where("status",1)->select();
|
|
|
5842
|
+
|
|
|
5843
|
+ //var_dump($person_nums);
|
|
|
5844
|
+ //计算个人的11800单价的业绩 集合
|
|
|
5845
|
+ $money10620Sum = 0;
|
|
|
5846
|
+
|
|
|
5847
|
+ foreach ($money10620Records as $record) {
|
|
|
5848
|
+ $money10620Sum += $record['money'] - 2700 - 1620;
|
|
|
5849
|
+ }
|
|
|
5850
|
+
|
|
|
5851
|
+ // 计算除去特定值后的总和
|
|
|
5852
|
+ $otherMoneyRecords = Db::name("old_user_of_goods")->where("node_id",$user_id)->where('status', 1)->whereNotIn('money', [1180, 11800 ,10620])->select();
|
|
|
5853
|
+ $otherMoneySum = 0;
|
|
|
5854
|
+ foreach ($otherMoneyRecords as $record) {
|
|
|
5855
|
+ $otherMoneySum += $record['money'];
|
|
|
5856
|
+ }
|
|
|
5857
|
+
|
|
|
5858
|
+ // 分别处理特定值的情况并加上其他值的总和
|
|
|
5859
|
+ $user_person_amount = $money1180Sum + $money11800Sum + $money10620Sum + round($otherMoneySum * 0.7,2);
|
|
|
5860
|
+
|
|
|
5861
|
+ return $user_person_amount;
|
|
|
5862
|
+
|
|
|
5863
|
+
|
|
|
5864
|
+ }
|
|
|
5865
|
+
|
|
|
5866
|
+ //1.0用户直属的部门和2.0直属的部门,进行比较,获取大部门和小部门数据
|
|
|
5867
|
+ public function getparents_child_pv11_getcon($user_id, $bigamount, $smallamount) {
|
|
|
5868
|
+
|
|
|
5869
|
+ // 获取直接下级的 UID 列表
|
|
|
5870
|
+ $get_childs = Db::name("user")
|
|
|
5871
|
+ ->where("spread_uid", $user_id)
|
|
|
5872
|
+ ->column("uid");
|
|
|
5873
|
+
|
|
|
5874
|
+ // 初始化变量
|
|
|
5875
|
+ $all_departments = []; // 用于存储所有直属下级的业绩
|
|
|
5876
|
+
|
|
|
5877
|
+ // 遍历每个直属下级
|
|
|
5878
|
+ foreach ($get_childs as $child) {
|
|
|
5879
|
+ // 获取当前下级及其子级
|
|
|
5880
|
+ $child_group = [$child];
|
|
|
5881
|
+ $recursive_children = $this->getRecursiveChildren_getcon($child);
|
|
|
5882
|
+ $child_group = array_merge($child_group, $recursive_children);
|
|
|
5883
|
+
|
|
|
5884
|
+ // 获取当前分组的业绩
|
|
|
5885
|
+ $result = $this->getteampv_getcon($child_group);
|
|
|
5886
|
+
|
|
|
5887
|
+ // 将直属下级的业绩加入数组
|
|
|
5888
|
+ $all_departments[] = $result;
|
|
|
5889
|
+ }
|
|
|
5890
|
+
|
|
|
5891
|
+ // 将传入的 $bigamount 和 $smallamount 加入数组
|
|
|
5892
|
+ $all_departments[] = $bigamount;
|
|
|
5893
|
+ $all_departments[] = $smallamount;
|
|
|
5894
|
+
|
|
|
5895
|
+ // 检查是否所有业绩都是 0
|
|
|
5896
|
+ if (count(array_filter($all_departments, function($value) { return $value != 0; })) == 0) {
|
|
|
5897
|
+ return [0, 0];
|
|
|
5898
|
+ }
|
|
|
5899
|
+
|
|
|
5900
|
+ // 初始化最大部门和小部门
|
|
|
5901
|
+ $max_department = 0;
|
|
|
5902
|
+ $small_department = 0;
|
|
|
5903
|
+
|
|
|
5904
|
+ // 遍历 $all_departments,找出最大值并累加小部门的值
|
|
|
5905
|
+ foreach ($all_departments as $department) {
|
|
|
5906
|
+ if ($department > $max_department) {
|
|
|
5907
|
+ // 如果当前部门的业绩大于最大部门的业绩,更新最大部门
|
|
|
5908
|
+ if ($max_department != 0) {
|
|
|
5909
|
+ $small_department += $max_department; // 将旧的最大值累加到小部门
|
|
|
5910
|
+ }
|
|
|
5911
|
+ $max_department = $department; // 更新最大部门
|
|
|
5912
|
+ } else {
|
|
|
5913
|
+ // 如果当前部门的业绩小于或等于最大部门的业绩,累加到小部门
|
|
|
5914
|
+ $small_department += $department;
|
|
|
5915
|
+ }
|
|
|
5916
|
+ }
|
|
|
5917
|
+
|
|
|
5918
|
+ // 返回结果
|
|
|
5919
|
+ return [
|
|
|
5920
|
+ $max_department, // 大部门业绩
|
|
|
5921
|
+ $small_department // 小部门业绩
|
|
|
5922
|
+ ];
|
|
|
5923
|
+ //拿$bigamount, $smallamount业绩和get_childs产生的result业绩去对比。如果都是0.说明没有大小部门了,直接返回0,0如果只有一个数组有数据,
|
|
|
5924
|
+ // 说明只有大部门,默认返回大部门数据,小部门返回0,如果有多条数组数据是一样的,那么就是选一个,设为大部门。剩下的数据叠加设为小部门
|
|
|
5925
|
+
|
|
|
5926
|
+ }
|
|
|
5927
|
+
|
|
|
5928
|
+ //获取当前uesr_id下面在2.0中是否还有直接下级,并计算她的大部门和小部门
|
|
|
5929
|
+ public function getparents_child_pv_getcon($user_id){
|
|
|
5930
|
+ // 获取直接下级的 UID 列表
|
|
|
5931
|
+ //$user_id = 593;
|
|
|
5932
|
+ // $get_childs = $this->getRecursiveChildren($user_id);
|
|
|
5933
|
+ $get_childs = Db::name("user")
|
|
|
5934
|
+ ->where("spread_uid", $user_id)
|
|
|
5935
|
+ ->column("uid"); // 获取子级的 uid 列表
|
|
|
5936
|
+ //根据获得的直接推荐下级2.0,来获取他们和她伞下的子级PV。对比拿一个最大的值,设为大部门,其余的是小部门
|
|
|
5937
|
+
|
|
|
5938
|
+ //获取直接下级
|
|
|
5939
|
+ $children_group = []; // 用于存储每个直接下级及其子级的分组
|
|
|
5940
|
+
|
|
|
5941
|
+ // 遍历每个直接下级
|
|
|
5942
|
+ foreach ($get_childs as $child) {
|
|
|
5943
|
+ $child_group = [$child]; // 将直接下级加入分组
|
|
|
5944
|
+ $recursive_children = $this->getRecursiveChildren($child); // 获取直接下级的所有子级
|
|
|
5945
|
+ $child_group = array_merge($child_group, $recursive_children); // 将子级加入分组
|
|
|
5946
|
+ $children_group[] = $child_group; // 将分组加入最终结果
|
|
|
5947
|
+ }
|
|
|
5948
|
+
|
|
|
5949
|
+
|
|
|
5950
|
+ $get_teams_comm_datas = [];
|
|
|
5951
|
+ foreach($children_group as $v){
|
|
|
5952
|
+
|
|
|
5953
|
+ $get_teams_comm_datas[] = $this->getteampv($v);//如果有多个父级ID,需要获取他们伞下的子级,所有的业绩进行
|
|
|
5954
|
+ }
|
|
|
5955
|
+
|
|
|
5956
|
+ if(count($get_teams_comm_datas) > 0){
|
|
|
5957
|
+
|
|
|
5958
|
+
|
|
|
5959
|
+ // 找到最大值作为大部门
|
|
|
5960
|
+ $max_value = max($get_teams_comm_datas);
|
|
|
5961
|
+ $total_sum = array_sum($get_teams_comm_datas); // 计算数组的总和
|
|
|
5962
|
+
|
|
|
5963
|
+ // 小部门为总和减去最大值
|
|
|
5964
|
+ $small_department = $total_sum - $max_value;
|
|
|
5965
|
+
|
|
|
5966
|
+ //返回大部门和小部门
|
|
|
5967
|
+ return [
|
|
|
5968
|
+ $max_value,
|
|
|
5969
|
+ $small_department
|
|
|
5970
|
+ ];
|
|
|
5971
|
+
|
|
|
5972
|
+ }else{
|
|
|
5973
|
+ return [
|
|
|
5974
|
+ 0,
|
|
|
5975
|
+ 0
|
|
|
5976
|
+ ];
|
|
|
5977
|
+ }
|
|
|
5978
|
+
|
|
|
5979
|
+ }
|
|
|
5980
|
+
|
|
5324
|
5981
|
|
|
5325
|
5982
|
|
|
5326
|
5983
|
|