refactor: 修改用户菜单权限接口
This commit is contained in:
@@ -43,6 +43,7 @@ class User
|
|||||||
->where('authority.menu_id = menu.id')
|
->where('authority.menu_id = menu.id')
|
||||||
->group('authority.menu_id');
|
->group('authority.menu_id');
|
||||||
})
|
})
|
||||||
|
->order(['menu.sort' => 'asc', 'menu.id' => 'desc'])
|
||||||
->select();
|
->select();
|
||||||
if (!$menus->isEmpty()) {
|
if (!$menus->isEmpty()) {
|
||||||
$authoritys = SysRoleAuthorityModel::field([
|
$authoritys = SysRoleAuthorityModel::field([
|
||||||
@@ -56,24 +57,22 @@ class User
|
|||||||
foreach ($authoritys as $val) {
|
foreach ($authoritys as $val) {
|
||||||
$authoritys_map[$val['menu_id']][] = $val['permission'];
|
$authoritys_map[$val['menu_id']][] = $val['permission'];
|
||||||
}
|
}
|
||||||
if (!empty($authoritys_map)) {
|
$menus->each(function($item) use($authoritys_map) {
|
||||||
$menus->each(function($item) use($authoritys_map) {
|
$meta = [
|
||||||
$meta = [
|
'title' => $item['title'],
|
||||||
'title' => $item['title'],
|
'icon' => $item['icon'],
|
||||||
'icon' => $item['icon'],
|
'isKeepAlive' => !!$item['keep_alive'],
|
||||||
'isKeepAlive' => !!$item['keep_alive'],
|
'actived' => !!$item['actived'],
|
||||||
'actived' => !!$item['actived'],
|
'permissions' => []
|
||||||
'permissions' => []
|
];
|
||||||
];
|
unset($item['title'], $item['icon'], $item['keep_alive'], $item['actived']);
|
||||||
unset($item['title'], $item['icon'], $item['keep_alive'], $item['actived']);
|
if (isset($authoritys_map[$item['id']])) {
|
||||||
if (isset($authoritys_map[$item['id']])) {
|
$meta['permissions'] = $authoritys_map[$item['id']];
|
||||||
$meta['permissions'] = $authoritys_map[$item['id']];
|
}
|
||||||
}
|
$item['hidden'] = !!$item['hidden'];
|
||||||
$item['hidden'] = !!$item['hidden'];
|
$item['meta'] = $meta;
|
||||||
$item['meta'] = $meta;
|
return $item;
|
||||||
return $item;
|
});
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return success('获取成功', array_to_tree($menus->toArray(), 0, 'pid', false));
|
return success('获取成功', array_to_tree($menus->toArray(), 0, 'pid', false));
|
||||||
|
|||||||
Reference in New Issue
Block a user