1
0

first commit

This commit is contained in:
2020-08-06 14:58:51 +08:00
commit 17096657dc
780 changed files with 92857 additions and 0 deletions

View File

@@ -0,0 +1,148 @@
<?php
// +------------------------------------------------+
// |http://www.cjango.com |
// +------------------------------------------------+
// | 修复BUG不是一朝一夕的事情等我喝醉了再说吧 |
// +------------------------------------------------+
// | Author: 小陈叔叔 <Jason.Chen> |
// +------------------------------------------------+
namespace app\system\controller;
use app\common\model\Auth as AuthModel;
use app\common\model\Member as MemberModel;
use app\common\service\Auth as AuthService;
use think\Request;
class Auth extends _Init
{
/**
* 授权列表
* @return [type] [description]
*/
public function index()
{
$map['status'] = ['egt', 0];
$this->list = AuthModel::where($map)->paginate();
return $this->fetch();
}
/**
* 添加授权分组
* @param Request $request 要添加的分组数据
*/
public function add(Request $request)
{
if (IS_POST) {
$data = $request->post();
$result = AuthService::add($data);
return $this->back($result);
} else {
return $this->fetch();
}
}
/**
* 编辑授权分组
* @param [type] $id 授权分组id
* @return [type] [description]
*/
public function edit(Request $request, $id)
{
if (IS_POST) {
$data = $request->post();
$result = AuthService::edit($data);
return $this->back($result);
} else {
$this->info = AuthModel::get($id);
return $this->fetch('add');
}
}
/**
* 删除分组
* @param [type] $id 授权分组 id
* @return [type] [description]
*/
public function del($id)
{
$result = AuthService::del($id);
return $this->back($result);
}
/**
* 设置分组状态 正常 和 禁用
* @param [type] $id 授权分组 id
* @param [type] $status 成功 还是 失败 失败返回失败的信息
* @return [type] [description]
*/
public function status($id, $status)
{
$result = AuthService::status($id, $status);
return $this->back($result);
}
/**
* 菜单授权
* @param [type] $id 授权分组id
* @return [type] [description]
*/
public function menu(Request $request, $id)
{
if (IS_POST) {
$rules = $request->post('rules/a');
$result = AuthService::setAuthRuels($id, $rules);
return $this->back($result);
} else {
$this->assign('node_list', AuthService::getAuthRules($id));
return $this->fetch();
}
}
/**
* 用户授权页面
* @param Request $request 提交的信息
* @param [type] $id 分组id
* @return [type] 用户列表
*/
public function user(Request $request, $id)
{
$authed = AuthService::getAuthedUids($id);
if (IS_POST) {
$username = $request->post('username');
$list = MemberModel::field('id,username')->whereOr(function ($query) use ($username) {
$query->whereOr('id', $username)->whereOr('username', 'like', "%{$username}%");
})->where('status', 1)->where('id', 'notin', $authed)->limit(10)->select();
foreach ($list as $key => &$value) {
$value['nickname'] = $value->info->nickname;
}
return $this->success('', '', $list);
} else {
$this->list = MemberModel::where('status', 1)->where('id', 'in', $authed)->paginate();
return $this->fetch();
}
}
/**
* 把用户移除分组
* @param [type] $id 分组id
* @param [type] $uid 用户id
* @return [type] 返回结果
*/
public function remove($id, $uid)
{
$result = AuthService::removeAuthUser($id, $uid);
return $this->back($result);
}
/**
* 设置用户授权
* @param [type] $id 分组id
* @param [type] $uid 用户ids
* @return [type] [description]
*/
public function insert($id, $uid)
{
$result = AuthService::setAuthUser($id, $uid);
return $this->back($result);
}
}