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)
|
public static function onAfterInsert(Model $model)
|
||||||
{
|
{
|
||||||
|
$restful = intval($model->getData('restful'));
|
||||||
|
|
||||||
$model = self::where('id', $model->id)->find();
|
$model = self::where('id', $model->id)->find();
|
||||||
|
|
||||||
if ($model && $model->parent_id) {
|
if ($model && $model->parent_id) {
|
||||||
$parent = self::where('id', $model->parent_id)->find();
|
$parent = self::where('id', $model->parent_id)->find();
|
||||||
|
|
||||||
$level = $parent->level ? $parent->level . '-' . $parent->id : $parent->id;
|
$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
|
'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)
|
public function show($id)
|
||||||
{
|
{
|
||||||
$permission = $this->findBy($id);
|
$permission = $this->findBy($id);
|
||||||
|
@ -15,8 +15,8 @@ class Role extends CatchTable
|
|||||||
// TODO: Implement table() method.
|
// TODO: Implement table() method.
|
||||||
return $this->getTable('role')
|
return $this->getTable('role')
|
||||||
->header([
|
->header([
|
||||||
HeaderItem::label('角色名称')->prop('role_name')->width(150),
|
HeaderItem::label('角色名称')->prop('role_name')->width(300),
|
||||||
HeaderItem::label('角色标识')->prop('identify')->width(150),
|
HeaderItem::label('角色标识')->prop('identify')->width(300),
|
||||||
HeaderItem::label('角色描述')->prop('description'),
|
HeaderItem::label('角色描述')->prop('description'),
|
||||||
HeaderItem::label('创建时间')->prop('created_at'),
|
HeaderItem::label('创建时间')->prop('created_at'),
|
||||||
HeaderItem::label('操作')->width(250)->actions([
|
HeaderItem::label('操作')->width(250)->actions([
|
||||||
|
@ -66,6 +66,10 @@ class Permission extends Form
|
|||||||
|
|
||||||
self::radio('hidden', 'Hidden')->value(1)->options(
|
self::radio('hidden', 'Hidden')->value(1)->options(
|
||||||
self::options()->add('显示', 1)->add('隐藏', 2)->render()
|
self::options()->add('显示', 1)->add('隐藏', 2)->render()
|
||||||
|
)->col(12),
|
||||||
|
|
||||||
|
self::radio('restful', 'Restful 路由')->value(0)->options(
|
||||||
|
self::options()->add('生成', 1)->add('不生成', 0)->render()
|
||||||
)->col(12)
|
)->col(12)
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user