add:新增菜单创建restful快捷方式
This commit is contained in:
parent
504054b68e
commit
ae53d4e404
@ -87,12 +87,18 @@ class Permissions extends CatchModel
|
||||
*/
|
||||
public static function onAfterInsert(Model $model)
|
||||
{
|
||||
$restful = intval($model->getData('restful'));
|
||||
|
||||
$model = self::where('id', $model->id)->find();
|
||||
|
||||
if ($model && $model->parent_id) {
|
||||
$parent = self::where('id', $model->parent_id)->find();
|
||||
|
||||
$level = $parent->level ? $parent->level . '-' . $parent->id : $parent->id;
|
||||
return $model->where('id', $model->id)->update([
|
||||
|
||||
$restful && self::createRestful($model, $level);
|
||||
|
||||
return $model->updateBy('id', [
|
||||
'level' => $level
|
||||
]);
|
||||
}
|
||||
@ -101,6 +107,40 @@ class Permissions extends CatchModel
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 创建 restful 菜单
|
||||
*
|
||||
* @time 2021年04月20日
|
||||
* @param Model $model
|
||||
* @param $level
|
||||
* @return void
|
||||
*/
|
||||
protected static function createRestful(Model $model, $level)
|
||||
{
|
||||
$restful = [
|
||||
'index' => '列表',
|
||||
'save' => '保存',
|
||||
'update' => '更新',
|
||||
'delete' => '删除',
|
||||
];
|
||||
|
||||
foreach ($restful as $k => $r) {
|
||||
self::insert([
|
||||
'parent_id' => $model->id,
|
||||
'permission_name' => $r,
|
||||
'level' => $level . '-' . $model->id,
|
||||
'module' => $model->getData('module'),
|
||||
'creator_id' => $model->getData('creator_id'),
|
||||
'permission_mark' => $model->getData('permission_mark') . '@' . $k,
|
||||
'type' => self::BTN_TYPE,
|
||||
'created_at' => time(),
|
||||
'updated_at' => time(),
|
||||
'sort' => 1,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function show($id)
|
||||
{
|
||||
$permission = $this->findBy($id);
|
||||
|
@ -15,8 +15,8 @@ class Role extends CatchTable
|
||||
// TODO: Implement table() method.
|
||||
return $this->getTable('role')
|
||||
->header([
|
||||
HeaderItem::label('角色名称')->prop('role_name')->width(150),
|
||||
HeaderItem::label('角色标识')->prop('identify')->width(150),
|
||||
HeaderItem::label('角色名称')->prop('role_name')->width(300),
|
||||
HeaderItem::label('角色标识')->prop('identify')->width(300),
|
||||
HeaderItem::label('角色描述')->prop('description'),
|
||||
HeaderItem::label('创建时间')->prop('created_at'),
|
||||
HeaderItem::label('操作')->width(250)->actions([
|
||||
|
@ -66,7 +66,11 @@ class Permission extends Form
|
||||
|
||||
self::radio('hidden', 'Hidden')->value(1)->options(
|
||||
self::options()->add('显示', 1)->add('隐藏', 2)->render()
|
||||
)->col(12)
|
||||
)->col(12),
|
||||
|
||||
self::radio('restful', 'Restful 路由')->value(0)->options(
|
||||
self::options()->add('生成', 1)->add('不生成', 0)->render()
|
||||
)->col(12)
|
||||
]
|
||||
)
|
||||
->appendControl( 2,
|
||||
|
Loading…
x
Reference in New Issue
Block a user