增加基础

This commit is contained in:
wuyanwen
2019-12-12 18:52:11 +08:00
parent ca4272d7a6
commit 5f6a7cf24e
16 changed files with 102 additions and 32 deletions

View File

@@ -4,13 +4,14 @@ namespace catchAdmin\permissions\controller;
use app\Request;
use catcher\base\CatchController;
use catcher\CatchAdmin;
use catcher\CatchForm;
use catcher\CatchResponse;
use catcher\exceptions\FailedException;
use catcher\Tree;
use catchAdmin\permissions\model\Permissions as Permission;
class Permissions extends CatchController
class Permission extends CatchController
{
protected $permissions;
@@ -50,10 +51,10 @@ class Permissions extends CatchController
public function create()
{
$form = new CatchForm();
$form->formId('permission');
$form->text('permission_name', '菜单名称', true)->verify('required')->placeholder('请输入菜单名称');
$form->hidden('parent_id')->default(\request()->param('id') ?? 0);
$form->select('module', '模块', true)->verify('required')->options(CatchAdmin::getModulesInfo());
$form->text('route', '路由')->placeholder('请输入路由');
$form->radio('method', '请求方法', true)->default(Permission::GET)->options([
['value' => Permission::GET, 'title' => 'get'],
@@ -104,8 +105,9 @@ class Permissions extends CatchController
->verify('required')
->placeholder('请输入菜单名称');
$form->hidden('parent_id')->default($permission->parent_id);
$form->select('module', '模块', true)->default($permission->module)->options(CatchAdmin::getModulesInfo());
$form->text('route', '路由')->default($permission->route)->placeholder('请输入路由');
$form->radio('method', '请求方法', true)->default($permission->method)->options([
$form->radio('method', '请求方法', true)->verify('required')->default($permission->method)->options([
['value' => Permission::GET, 'title' => 'get'],
['value' => Permission::POST, 'title' => 'post'],
['value' => Permission::PUT, 'title' => 'put'],

View File

@@ -46,7 +46,8 @@ class Roles extends CatchController
$form->formBtn('submitRole');
return $this->fetch([
'form' => $form->render()
'form' => $form->render(),
'parent_id' => \request()->param('id') ?? 0,
]);
}
@@ -95,6 +96,7 @@ class Roles extends CatchController
return $this->fetch([
'form' => $form->render(),
'role_id' => $role->id,
'parent_id' => $role->parent_id
]);
}
@@ -167,7 +169,17 @@ class Roles extends CatchController
*/
public function getPermissions(Request $request, \catchAdmin\permissions\model\Permissions $permission): Json
{
$permissions = Tree::done($permission->getList());
$parentRoleHasPermissionIds = null;
if ($request->param('parent_id')) {
$permissions = $this->role->findBy($request->param('parent_id'))->getPermissions();
foreach ($permissions as $_permission) {
$parentRoleHasPermissionIds[] = $_permission->pivot->permission_id;
}
}
$permissions = Tree::done($permission->getList([
'permission_ids' => $parentRoleHasPermissionIds
]));
$permissionIds = [];
if ($request->param('role_id')) {