95 lines
2.7 KiB
PHP
Executable File
95 lines
2.7 KiB
PHP
Executable File
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | 宏驰云科技开发团队 版权所有 拥有最终解释权
|
|
// +----------------------------------------------------------------------
|
|
|
|
// | Author: HcyShop-kiki
|
|
// +----------------------------------------------------------------------
|
|
|
|
|
|
namespace app\admin\controller;
|
|
|
|
use app\admin\logic\AdminLogic;
|
|
use app\admin\logic\RoleLogic;
|
|
use think\facade\Hook;
|
|
|
|
class Role extends AdminBase
|
|
{
|
|
public function lists()
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
$this->_success('', RoleLogic::lists());
|
|
}
|
|
return $this->fetch();
|
|
}
|
|
|
|
/**
|
|
* 添加角色
|
|
* @return mixed
|
|
*/
|
|
public function add()
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
$post = $this->request->post();
|
|
$result = $this->validate($post, 'app\admin\validate\Role.add');
|
|
if ($result !== true) {
|
|
$this->_error($result);
|
|
}
|
|
$result = RoleLogic::addRole($post);
|
|
if ($result !== true) {
|
|
$this->_error($result);
|
|
}
|
|
$this->_success('添加成功');
|
|
}
|
|
$auth_tree = RoleLogic::authTree();
|
|
$this->assign('auth_tree', json_encode($auth_tree));
|
|
return $this->fetch();
|
|
}
|
|
|
|
/**
|
|
* 编辑角色
|
|
* @param string $role_id
|
|
* @return mixed
|
|
* @throws \think\Exception
|
|
* @throws \think\exception\PDOException
|
|
*/
|
|
public function edit($role_id = '')
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
$post = $this->request->post();
|
|
$result = $this->validate($post, 'app\admin\validate\Role.edit');
|
|
if ($result !== true) {
|
|
$this->_error($result);
|
|
}
|
|
$result = RoleLogic::editRole($post);
|
|
if ($result !== true) {
|
|
$this->_error($result);
|
|
}
|
|
Hook::listen('menu_auth');
|
|
$this->_success('修改成功');
|
|
}
|
|
$auth_tree = RoleLogic::authTree($role_id);
|
|
$this->assign('info', RoleLogic::roleInfo($role_id));
|
|
$this->assign('auth_tree', json_encode($auth_tree));
|
|
return $this->fetch();
|
|
}
|
|
|
|
/**
|
|
* 删除角色
|
|
* @param $role_id
|
|
* @throws \think\Exception
|
|
* @throws \think\exception\PDOException
|
|
*/
|
|
public function del($role_id)
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
$result = $this->validate(['id' => $role_id], 'app\admin\validate\Role.del');
|
|
if ($result === true) {
|
|
RoleLogic::delRole($role_id);
|
|
Hook::listen('menu_auth');
|
|
$this->_success('删除成功');
|
|
}
|
|
$this->_error($result);
|
|
}
|
|
}
|
|
} |