# 系统权限管理组织视图与人员授权设计

## 背景

系统权限管理当前已经具备组织脑图、人员绑定、系统人员、角色维护等能力，但“人员与角色维护”把账号维护和角色维护放在同一页签内，页面职责混杂。用户要求把系统账号创建与角色授权回收到组织架构里的人员节点上完成，同时在组织脑图旁增加“脑图 / 组织树”两种组织展示方式。

## 目标

- `组织脑图`页签调整为更准确的`组织架构`页签。
- `组织架构`页签内增加视图切换：`脑图模式`与`组织树模式`。
- `人员与角色维护`重命名为`角色维护`，只保留角色新增、编辑、菜单权限配置。
- 系统账号创建与人员角色授权不再通过单独“系统人员”表维护，而是在组织架构中的人员节点上完成。
- 两种组织视图共用同一套组织数据、人员绑定数据、角色数据、系统账号接口。

## 组织架构视图

### 脑图模式

脑图模式沿用现有 `OrgMindMap` 组件。组织节点继续通过右键菜单维护：

- 总公司：重命名、新增分公司节点、添加该节点的主管。
- 分公司：重命名、新增部门节点、添加该节点的主管、删除节点。
- 部门：重命名、新增小组节点、新增人员、添加该节点的主管、删除节点。
- 小组：重命名、新增人员、添加该节点的主管、删除节点。

人员叶子节点右键菜单只保留两项：

- `授权`：打开人员授权抽屉。
- `移除`：从当前组织节点移除该人员，不删除基础资料人员主数据，不删除已有系统账号。

### 组织树模式

组织树模式采用左树右表布局：

- 左侧为组织节点树，显示总公司、分公司、部门、小组，节点支持展开、收起、选中。
- 左侧组织节点同样支持右键菜单，与脑图模式的组织节点菜单一致。
- 右侧显示当前选中组织节点下直接绑定的人员列表。
- 人员列表使用项目全局表格风格和 `PaginationBar` 分页。
- 人员列表行操作提供`授权`、`移除`。
- 右侧提供`新增人员`入口，将基础资料人员绑定到当前组织节点。

## 授权抽屉

人员授权抽屉由脑图人员节点右键`授权`和组织树人员行`授权`共同打开。抽屉展示：

- 人员姓名。
- 电话号码 / 账号。
- 所属组织。
- 当前系统账号状态。
- 角色多选。
- 密码输入框。

保存规则：

- 如果人员没有电话号码，禁止创建系统账号，提示“该人员没有电话号码，不能作为账号”。
- 如果人员已有系统账号，密码不必填；保存时只调用系统账号角色更新接口。
- 如果人员没有系统账号，密码必填且最少 6 位；保存时先创建系统账号，账号为人员电话号码，再绑定所选角色。
- 角色必须至少选择一个。
- 保存成功后刷新组织树、角色、系统人员缓存，使人员节点展示的角色信息同步更新。

## 角色维护页签

`人员与角色维护`改为`角色维护`，移除内层子页签。该页只展示角色表格、角色分页和新增角色按钮。角色抽屉继续负责：

- 角色编码。
- 角色名称。
- 角色范围。
- 状态。
- 备注。
- 菜单权限树。

系统人员列表、重置密码、账号启停不再作为主页面入口。本次只移除独立维护入口；已有后端接口保留，供授权抽屉复用。

## 数据与接口

本次优先复用现有接口，不新增表结构：

- `GET /system-permissions/org-tree` 获取组织节点与人员叶子。
- `POST /system-permissions/org-nodes/{node_id}/employees` 绑定人员。
- `DELETE /system-permissions/org-nodes/{node_id}/employees/{employee_id}` 移除人员。
- `GET /system-permissions/employee-options` 获取基础资料人员。
- `GET /system-permissions/users` 获取系统账号，用于判断人员是否已有账号。
- `POST /system-permissions/users` 创建系统账号。
- `PUT /system-permissions/users/{user_id}/roles` 更新系统账号角色。
- `GET /system-permissions/roles` 获取角色。
- `POST /system-permissions/roles` 创建角色。
- `PUT /system-permissions/roles/{role_id}` 更新角色与菜单权限。

## 测试与验收

- 静态 UI 测试应覆盖：顶层页签重命名、组织视图切换、组织树模式、人员授权入口、角色维护独立化、系统人员独立表移除。
- 前端构建必须通过 `npm run build`。
- 现有后端权限测试必须继续通过，证明复用接口没有被破坏。
- 浏览器检查应覆盖脑图模式右键授权、组织树模式人员行授权、角色维护页签三个主路径。

## 非目标

- 不新增复杂的部门独立维护页面。
- 不删除系统账号后端接口。
- 不改变基础资料人员管理和小程序人员主数据。
- 不做权限登录体系的大改造，本次只调整权限管理页的组织授权交互。

## 自检

- 无占位符。
- 两种组织视图共用同一套接口，没有产生双业务流。
- 账号创建入口已经从独立系统人员表迁移到人员节点授权。
- 角色维护保留原有菜单权限能力。
