|
|
@@ -49,8 +49,7 @@ class GiftLevel extends BaseModel
|
|
|
if ($spread) return $this->checkLevel($spread['uid'], $pass);
|
|
|
return true;
|
|
|
}
|
|
|
- public function get_group_user($id, $init = true, $members = null){
|
|
|
- @file_put_contents('quanju3.txt',"-测试26\r\n",8);
|
|
|
+ public function get_group_user($id, $init = true, $members = null, $visited = null){
|
|
|
if ($init) {
|
|
|
$us = \app\common\model\user\User::column('spread_uid', 'uid');
|
|
|
$members = [];
|
|
|
@@ -59,18 +58,21 @@ class GiftLevel extends BaseModel
|
|
|
$members[$v][] = $k;
|
|
|
}
|
|
|
$id = [$id];
|
|
|
+ $visited = [];
|
|
|
}
|
|
|
$arr = array();
|
|
|
foreach ($id as $v) {
|
|
|
- @file_put_contents('quanju3.txt',"-测试27\r\n",8);
|
|
|
- $child = $members[$v] ?? [];
|
|
|
- $arr = array_merge($arr, $child);
|
|
|
+ if (!in_array($v, $visited)) {
|
|
|
+ $visited[] = $v;
|
|
|
+ $child = $members[$v] ?? [];
|
|
|
+ $arr = array_merge($arr, $child);
|
|
|
+ }
|
|
|
}
|
|
|
if (count($arr)) {
|
|
|
- @file_put_contents('quanju3.txt',"-测试28\r\n",8);
|
|
|
- return array_merge($arr, $this->get_group_user($arr, false, $members));
|
|
|
+ return array_merge($arr, $this->get_group_user($arr, false, $members, $visited));
|
|
|
} else {
|
|
|
return $arr;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|