0
0

更新代码

This commit is contained in:
2020-08-04 10:09:42 +08:00
parent 6118b5b63b
commit c2ac5d964e
478 changed files with 34410 additions and 0 deletions

View File

@@ -0,0 +1,110 @@
<?php
namespace App\Http\Controllers;
use App\User;
use Auth;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\View;
use RuLong\UserRelation\Models\UserRelation;
class TeamController extends Controller
{
public function __construct(Request $request)
{
parent::__construct($request);
$this->middleware('auth');
view()->share('nav', 2);
}
/**
* 成为会员的6层用户,这个写的比较清晰
* @Author:<Leady>
* @Date:2019-01-07T10:12:29+0800
* @param Request $request [description]
* @param integer $node [description]
* @return [type] [description]
*/
public function index(Request $request, $node = 0)
{
$user = Auth::user();
$page = $request->page ?? 1; //获取当前页码
$lists = UserRelation::where('bloodline', 'like', "%," . $user->id . ",%") //血缘有关
->where('layer', '<=', $user->relation->layer + 6) //向下6层
// ->whereHas('identity', function ($query) use ($user) {
// //存在大于会员身份
// $query->where('identity_id', '>', 0);
// })
// ->orderBy('layer', 'asc')->orderBy('user_id', 'asc')->paginate(50); //层正序分页50。
->orderBy('layer', 'asc')->orderBy('user_id', 'asc')->get(); //层正序分页50。
if ($page > 1) {
//页码大于1AJAX调用分页
if ($lists->count() > 0) {
//内容大于0返回渲染的页面HTML内容
$html = response(view('team.item', compact('lists')))->getContent();
return $this->success($html);
} else {
//无内容提示到最后一页
return $this->error('已经到最后一页');
}
} else {
//正常渲染访问页面
$listsCount = UserRelation::where('bloodline', 'like', "%," . $user->id . ",%")
->where('layer', '<=', $user->relation->layer + 6)
// ->whereHas('identity', function ($query) use ($user) {
// $query->where('identity_id', '>', 0);
// })
->orderBy('layer', 'asc')->count();
return view('team.index', compact('user', 'lists', 'listsCount'));
}
}
/**
* 未成为会员的6层用户,这个写的比较乱
* @Author:<Leady>
* @Date:2019-01-07T10:12:01+0800
* @param Request $request [description]
* @param integer $node [description]
* @return [type] [description]
*/
public function novip(Request $request, $node = 0)
{
$user = Auth::user();
if (Auth::id() == 3 || Auth::id() == 1757 || Auth::id() == 12 || Auth::id() == 824) {
//测试人员查看指定人员关系
$user = User::find(62);
}
$page = $request->page ?? 1; //获取当前页码
//列举下6层所有会员
$ids = UserRelation::where('bloodline', 'like', "%," . $user->id . ",%")
->where('layer', '<=', $user->relation->layer + 6)
->whereHas('identity', function ($query) use ($user) {
$query->where('identity_id', '>', 0);
})
->pluck('user_id') ?: [0];
//排除会员查询6层血缘关系
$lists = UserRelation::where('bloodline', 'like', "%," . $user->id . ",%")
->where('layer', '<=', $user->relation->layer + 6)
->whereNotIn('user_id', $ids)
->orderBy('layer', 'asc')->orderBy('layer', 'asc')->orderBy('user_id', 'asc')->paginate(50);
//以下步骤同INDEX事件
if ($page > 1) {
if ($lists->count() > 0) {
$html = response(view('team.item', compact('lists')))->getContent();
return $this->success($html);
} else {
return $this->error('已经到最后一页');
}
} else {
$children_count = UserRelation::where('bloodline', 'like', "%," . $user->id . ",%")
->where('layer', '<=', $user->relation->layer + 6)
->whereNotIn('user_id', $ids)
->orderBy('layer', 'asc')->count();
return view('team.novip', compact('user', 'lists', 'children_count'));
}
}
}