\App\Http\Controllers\AdminConfigRoleController

角色配置控制器

职责:角色 CRUD、菜单分配、权限分配的 HTTP 入口,校验入参、编排服务、 组装统一响应,业务下沉 ConfigRoleService。用户角色分配已归位 UserConfigController,本控制器不承接。

┌────────────────── 分区导航(按此顺序阅读)──────────────────┐ 分区 1 · 角色 CRUD index / show / store / update / destroy 分区 2 · 菜单分配 syncMenus 分区 3 · 权限分配 syncPermissions └────────────────────────────────────────────────────────────┘

Summary

Methods
Properties
Constants
__construct()
index()
show()
store()
update()
destroy()
syncMenus()
syncPermissions()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
No private methods found
$roleService
N/A

Properties

$roleService

$roleService : \App\Services\Admin\ConfigRoleService

Type

ConfigRoleService

Methods

__construct()

__construct(\App\Services\Admin\ConfigRoleService  $roleService) : mixed

Parameters

\App\Services\Admin\ConfigRoleService $roleService

Returns

mixed —

index()

index(\Illuminate\Http\Request  $request) : \Illuminate\Http\JsonResponse

角色列表

分页查询全部用户角色,search 按名称/编码模糊搜索,status 按状态筛选。

Parameters

\Illuminate\Http\Request $request

Returns

\Illuminate\Http\JsonResponse —

show()

show(\App\Models\SysRole  $role) : \Illuminate\Http\JsonResponse

角色详情

返回角色信息及其关联的菜单和权限列表。

Parameters

\App\Models\SysRole $role

Returns

\Illuminate\Http\JsonResponse —

store()

store(\App\Http\Requests\Admin\ConfigRoleRequest  $request) : \Illuminate\Http\JsonResponse

创建角色

创建角色并按需分配菜单与权限;分配越权时返回 403。

Parameters

\App\Http\Requests\Admin\ConfigRoleRequest $request

Returns

\Illuminate\Http\JsonResponse —

update()

update(\App\Http\Requests\Admin\ConfigRoleRequest  $request, \App\Models\SysRole  $role) : \Illuminate\Http\JsonResponse

更新角色

更新角色档案并覆盖式重分配菜单与权限,参数语义与创建一致; 内置超级管理员角色不可编辑。

Parameters

\App\Http\Requests\Admin\ConfigRoleRequest $request
\App\Models\SysRole $role

Returns

\Illuminate\Http\JsonResponse —

destroy()

destroy(\App\Models\SysRole  $role) : \Illuminate\Http\JsonResponse

删除角色

删除角色及其菜单/权限分配记录;仍有用户直授该角色时拒绝删除。

Parameters

\App\Models\SysRole $role

Returns

\Illuminate\Http\JsonResponse —

syncMenus()

syncMenus(\App\Http\Requests\Admin\ConfigRoleRequest  $request, \App\Models\SysRole  $role) : \Illuminate\Http\JsonResponse

分配菜单(不进 API 文档)

分配本质是更新角色(sys:role:update),与角色更新同属角色配置, 不作为独立接口对外展示,避免误读为未实现的独立功能。

Parameters

\App\Http\Requests\Admin\ConfigRoleRequest $request
\App\Models\SysRole $role

Returns

\Illuminate\Http\JsonResponse —

syncPermissions()

syncPermissions(\App\Http\Requests\Admin\ConfigRoleRequest  $request, \App\Models\SysRole  $role) : \Illuminate\Http\JsonResponse

分配权限(不进 API 文档,理由同 syncMenus)

Parameters

\App\Http\Requests\Admin\ConfigRoleRequest $request
\App\Models\SysRole $role

Returns

\Illuminate\Http\JsonResponse —