# Ether 系统菜单规划与角色权限

**文档版本**: v3.0  
**更新日期**: 2026-02-27

---

## 1. 菜单结构规划

### 1.1 菜单排序原则

| 排序规则     | 说明                                                          |
| ------------ | ------------------------------------------------------------- |
| 业务流程优先 | 按业务流程顺序排列（项目→合同→设备→巡检→工单→业主→访客→收费） |
| 系统管理次之 | 用户、角色、权限等系统配置                                    |

### 1.2 菜单结构

```
├── 项目管理 (sortOrder: 1)
│   └── 空间管理（含车位、公共设施）
├── 合同管理 (sortOrder: 2)
├── 设备管理 (sortOrder: 3)
├── 巡检管理 (sortOrder: 4)
│   ├── 巡检计划
│   ├── 巡检任务
│   └── 巡检点管理
├── 工单管理 (sortOrder: 5)
│   ├── 工单列表
│   └── 工单统计
├── 业主管理 (sortOrder: 6)
│   ├── 业主列表
│   └── 家庭成员
├── 访客管理 (sortOrder: 7)
│   ├── 访客预约
│   └── 访客记录
├── 收费管理 (sortOrder: 8)
│   ├── 账单管理
│   └── 缴费记录
├── 用户管理 (sortOrder: 10)
├── 角色管理 (sortOrder: 11)
├── 权限管理 (sortOrder: 12)
└── 系统管理 (sortOrder: 13)
```

---

## 2. 角色体系设计

### 2.1 角色总览

| 类型         | 角色编码          | 角色名称   | 数据范围   | 终端类型    | 一线人员 |
| ------------ | ----------------- | ---------- | ---------- | ----------- | -------- |
| **系统级**   |
| 系统管理     | SUPER_ADMIN       | 超级管理员 | ALL        | ALL         | 否       |
| 系统管理     | SYS_ADMIN         | 系统管理员 | ALL        | ADMIN_ONLY  | 否       |
| **项目管理** |
| 项目管理     | PROPERTY_MANAGER  | 物业经理   | PROJECT    | ALL         | 否       |
| 项目管理     | PROJECT_MANAGER   | 项目经理   | PROJECT    | ALL         | 否       |
| **部门主管** |
| 工程管理     | ENGINEERING_LEAD  | 工程主管   | DEPARTMENT | ALL         | 否       |
| 安保管理     | SECURITY_LEAD     | 安保主管   | DEPARTMENT | ALL         | 否       |
| 保洁管理     | CLEANING_LEAD     | 保洁主管   | DEPARTMENT | ALL         | 否       |
| 财务管理     | FINANCE_LEAD      | 财务主管   | DEPARTMENT | ALL         | 否       |
| **一线执行** |
| 工程执行     | MAINTENANCE_STAFF | 维修人员   | SELF       | MOBILE_ONLY | 是       |
| 安保执行     | SECURITY_STAFF    | 安保人员   | SELF       | MOBILE_ONLY | 是       |
| 保洁执行     | CLEANING_STAFF    | 保洁人员   | SELF       | MOBILE_ONLY | 是       |
| **服务支持** |
| 业主服务     | CS_STAFF          | 客服人员   | PROJECT    | ALL         | 否       |
| **外部用户** |
| 业主         | OWNER             | 业主       | SELF       | OWNER_APP   | 否       |

### 2.2 角色职责说明

#### 2.2.1 系统级角色

| 角色           | 职责范围                         | 典型场景                       |
| -------------- | -------------------------------- | ------------------------------ |
| **超级管理员** | 系统最高权限，管理所有项目和用户 | 系统初始化、用户创建、项目创建 |
| **系统管理员** | 系统配置管理，不参与业务操作     | 系统参数配置、日志查看         |

#### 2.2.2 项目管理角色

| 角色         | 职责范围                               | 典型场景                         |
| ------------ | -------------------------------------- | -------------------------------- |
| **物业经理** | 项目经营第一负责人，拥有本项目全部权限 | 项目整体运营、费用审核、合同审批 |
| **项目经理** | 单项目管理，拥有本项目全部业务权限     | 工单管理、人员分配、报表查看     |

#### 2.2.3 部门主管角色

| 角色         | 管理模块             | 职责范围           | 典型场景                         |
| ------------ | -------------------- | ------------------ | -------------------------------- |
| **工程主管** | 工单、设备、工程巡检 | 本部门工程事务管理 | 工单分配、设备管理、巡检计划制定 |
| **安保主管** | 安保巡检、访客管理   | 本部门安保事务管理 | 安保巡检计划、访客核验监督       |
| **保洁主管** | 保洁巡检、品质检查   | 本部门保洁事务管理 | 保洁巡检计划、品质检查           |
| **财务主管** | 账单、收费、费用审核 | 本部门财务事务管理 | 账单生成、费用审核、报表导出     |

#### 2.2.4 一线执行角色

| 角色         | 执行范围           | 终端限制 | 典型场景                       |
| ------------ | ------------------ | -------- | ------------------------------ |
| **维修人员** | 工单处理、设备巡检 | 仅移动端 | 接单、维修、填报费用、设备巡检 |
| **安保人员** | 安保巡检、访客核验 | 仅移动端 | 扫码签到、访客核验、异常报送   |
| **保洁人员** | 保洁巡检、品质检查 | 仅移动端 | 扫码签到、品质异常报送         |

#### 2.2.5 服务支持角色

| 角色         | 职责范围                     | 典型场景                         |
| ------------ | ---------------------------- | -------------------------------- |
| **客服人员** | 业主服务接口，不参与工单流程 | 业主咨询、资料维护、访客辅助核验 |

#### 2.2.6 外部用户角色

| 角色     | 权限范围         | 典型场景                       |
| -------- | ---------------- | ------------------------------ |
| **业主** | 本人房产相关数据 | 在线报修、缴费、访客邀请、评价 |

---

## 3. 菜单权限矩阵

### 3.1 菜单可见性矩阵

| 菜单     | 超级管理员 | 物业经理 | 项目经理 | 工程主管 | 安保主管 | 保洁主管 | 财务主管 | 维修人员 | 安保人员 | 保洁人员 | 客服人员 | 业主 |
| -------- | :--------: | :------: | :------: | :------: | :------: | :------: | :------: | :------: | :------: | :------: | :------: | :--: |
| 项目管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |
| 合同管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |
| 设备管理 |     ✅     |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    👁️    |    ❌    |    ❌    |    👁️    |  ❌  |
| 巡检管理 |     ✅     |    ✅    |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |   ✅\*   |   ✅\*   |   ✅\*   |    ❌    |  ❌  |
| 工单管理 |     ✅     |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |   ✅\*   |    ❌    |    ❌    |    ❌    | ✅\* |
| 业主管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ✅    |  ❌  |
| 访客管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ✅    |    ❌    |    ❌    |    ❌    |   ✅\*   |    ❌    |    ✅    | ✅\* |
| 收费管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ✅    |    ❌    |    ❌    |    ❌    |    👁️    | ✅\* |
| 用户管理 |     ✅     |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |
| 角色管理 |     ✅     |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |
| 权限管理 |     ✅     |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |
| 系统管理 |     ✅     |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |  ❌  |

**图例说明**：

- ✅ 完全权限（可查看、可操作）
- 👁️ 只读权限（仅查看）
- ✅\* 受限权限（仅本人相关数据）
- ❌ 无权限（菜单不可见）

### 3.2 菜单权限详细说明

| 菜单         | 维修人员               | 安保人员               | 保洁人员               | 客服人员         | 业主                 |
| ------------ | ---------------------- | ---------------------- | ---------------------- | ---------------- | -------------------- |
| **巡检管理** | 仅查看分配给自己的任务 | 仅查看分配给自己的任务 | 仅查看分配给自己的任务 | 不可见           | 不可见               |
| **工单管理** | 仅查看分配给自己的工单 | 不可见                 | 不可见                 | 不可见           | 仅查看本人提交的工单 |
| **访客管理** | 不可见                 | 仅查看待核验访客       | 不可见                 | 可查看全部访客   | 仅查看本人邀请的访客 |
| **收费管理** | 不可见                 | 不可见                 | 不可见                 | 仅查看，不可操作 | 仅查看本人账单       |

---

## 4. 按钮级权限矩阵

### 4.1 工单管理按钮权限

| 操作按钮 | 物业经理 | 项目经理 | 工程主管 | 维修人员 | 业主 |
| -------- | :------: | :------: | :------: | :------: | :--: |
| 新增工单 |    ✅    |    ✅    |    ✅    |   ✅\*   |  ✅  |
| 编辑工单 |    ✅    |    ✅    |    ✅    |    ❌    |  ❌  |
| 删除工单 |    ✅    |    ✅    |    ❌    |    ❌    |  ❌  |
| 分配工单 |    ✅    |    ✅    |    ✅    |    ❌    |  ❌  |
| 接单     |    ❌    |    ❌    |    ❌    |    ✅    |  ❌  |
| 开始处理 |    ❌    |    ❌    |    ❌    |    ✅    |  ❌  |
| 完成工单 |    ✅    |    ✅    |    ✅    |    ✅    |  ❌  |
| 转单     |    ✅    |    ✅    |    ✅    |  ✅\*\*  |  ❌  |
| 关闭工单 |    ✅    |    ✅    |    ❌    |    ❌    |  ❌  |
| 评价工单 |    ❌    |    ❌    |    ❌    |    ❌    |  ✅  |
| 填报费用 |    ✅    |    ✅    |    ✅    |    ✅    |  ❌  |
| 费用审核 |    ✅    |    ✅    |    ❌    |    ❌    |  ❌  |

**说明**：

- ✅\* 维修人员仅能创建"自发现"类型工单
- ✅\*\* 维修人员仅能申请转单，需主管审批

### 4.2 巡检管理按钮权限

| 操作按钮   | 物业经理 | 工程主管 | 安保主管 | 保洁主管 | 维修人员 | 安保人员 | 保洁人员 |
| ---------- | :------: | :------: | :------: | :------: | :------: | :------: | :------: |
| 创建计划   |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |
| 编辑计划   |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |
| 删除计划   |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |    ❌    |    ❌    |
| 分配任务   |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |
| 开始巡检   |    ❌    |    ❌    |    ❌    |    ❌    |    ✅    |    ✅    |    ✅    |
| 完成巡检   |    ❌    |    ❌    |    ❌    |    ❌    |    ✅    |    ✅    |    ✅    |
| 强制闭环   |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |
| 生成二维码 |    ✅    |    ✅    |    ✅    |    ✅    |    ❌    |    ❌    |    ❌    |

### 4.3 设备管理按钮权限

| 操作按钮   | 物业经理 | 工程主管 | 维修人员 | 客服人员 |
| ---------- | :------: | :------: | :------: | :------: |
| 新增设备   |    ✅    |    ✅    |    ❌    |    ❌    |
| 编辑设备   |    ✅    |    ✅    |    ❌    |    ❌    |
| 删除设备   |    ✅    |    ❌    |    ❌    |    ❌    |
| 报告故障   |    ✅    |    ✅    |    ✅    |    ✅    |
| 生成二维码 |    ✅    |    ✅    |    ❌    |    ❌    |
| 扫码查看   |    ✅    |    ✅    |    ✅    |    ❌    |

### 4.4 访客管理按钮权限

| 操作按钮     | 物业经理 | 安保主管 | 安保人员 | 客服人员 | 业主 |
| ------------ | :------: | :------: | :------: | :------: | :--: |
| 创建访客邀请 |    ❌    |    ❌    |    ❌    |    ❌    |  ✅  |
| 访客核验     |    ✅    |    ✅    |    ✅    |    ✅    |  ❌  |
| 取消访客邀请 |    ❌    |    ❌    |    ❌    |    ❌    |  ✅  |
| 查看访客记录 |    ✅    |    ✅    |   ✅\*   |    ✅    | ✅\* |

**说明**：

- ✅\* 安保人员仅查看待核验访客，业主仅查看本人邀请的访客

### 4.5 收费管理按钮权限

| 操作按钮 | 物业经理 | 财务主管 | 客服人员 | 业主 |
| -------- | :------: | :------: | :------: | :--: |
| 新增账单 |    ✅    |    ✅    |    ❌    |  ❌  |
| 编辑账单 |    ✅    |    ✅    |    ❌    |  ❌  |
| 删除账单 |    ❌    |    ❌    |    ❌    |  ❌  |
| 费用减免 |    ✅    |    ✅    |    ❌    |  ❌  |
| 导出账单 |    ✅    |    ✅    |    ❌    |  ❌  |
| 缴费     |    ❌    |    ❌    |    ❌    |  ✅  |

---

## 5. 数据权限设计

### 5.1 数据范围级别

| 数据范围 | 编码       | 说明         | SQL预设                                                           |
| -------- | ---------- | ------------ | ----------------------------------------------------------------- |
| 全部     | ALL        | 所有项目数据 | `WHERE 1=1`                                                       |
| 项目     | PROJECT    | 本项目数据   | `WHERE project_id = $current_project`                             |
| 部门     | DEPARTMENT | 本部门数据   | `WHERE project_id = $current_project AND dept_id = $current_dept` |
| 本人     | SELF       | 仅本人数据   | `WHERE assigned_to = $current_user`                               |

### 5.2 角色数据范围映射

| 角色       | 数据范围   | 可见数据                   |
| ---------- | ---------- | -------------------------- |
| 超级管理员 | ALL        | 所有项目的全部数据         |
| 系统管理员 | ALL        | 系统配置数据               |
| 物业经理   | PROJECT    | 本项目全部数据             |
| 项目经理   | PROJECT    | 本项目全部数据             |
| 工程主管   | DEPARTMENT | 本部门工单、设备、巡检数据 |
| 安保主管   | DEPARTMENT | 本部门安保巡检、访客数据   |
| 保洁主管   | DEPARTMENT | 本部门保洁巡检数据         |
| 财务主管   | DEPARTMENT | 本部门账单、收费数据       |
| 维修人员   | SELF       | 分配给自己的工单和巡检任务 |
| 安保人员   | SELF       | 分配给自己的巡检任务       |
| 保洁人员   | SELF       | 分配给自己的巡检任务       |
| 客服人员   | PROJECT    | 本项目业主、访客数据       |
| 业主       | SELF       | 本人房产相关数据           |

---

## 6. 菜单详细配置

| 菜单名称 | 路由路径            | 图标               | 排序 | 权限代码               |
| -------- | ------------------- | ------------------ | ---- | ---------------------- |
| 项目管理 | /mdm/projects       | HomeOutlined       | 1    | system:project:menu    |
| 合同管理 | /mdm/contract       | FileTextOutlined   | 2    | mdm:contract:menu      |
| 设备管理 | /mdm/equipments     | ToolOutlined       | 3    | mdm:equipment:menu     |
| 巡检管理 | /mdm/inspections    | FileSearchOutlined | 4    | mdm:inspection:menu    |
| 工单管理 | /ops/work-order     | FileTextOutlined   | 5    | ops:work-order:menu    |
| 业主管理 | /mdm/owners         | TeamOutlined       | 6    | mdm:owner:menu         |
| 访客管理 | /mdm/visitors       | UserAddOutlined    | 7    | mdm:visitor:menu       |
| 收费管理 | /mdm/fee            | DollarOutlined     | 8    | mdm:fee:menu           |
| 用户管理 | /system/users       | UserOutlined       | 10   | system:user:menu       |
| 角色管理 | /system/roles       | TeamOutlined       | 11   | system:role:menu       |
| 权限管理 | /system/permissions | SafetyOutlined     | 12   | system:permission:menu |
| 系统管理 | /system/settings    | SettingOutlined    | 13   | system:settings:menu   |

---

## 7. 特殊说明

### 7.1 超级管理员

- 超级管理员是系统级角色（project_id = NULL）
- 可以看到所有项目的数据
- 不显示项目选择器
- 只显示系统管理相关菜单

### 7.2 项目管理角色（物业经理/项目经理）

- 需要先选择项目才能访问业务功能
- 可以管理本项目内的所有用户和业务数据
- 不能创建/删除项目，不能管理系统角色和权限

### 7.3 部门主管角色

- 只能看到本部门的数据
- 可以分配工单给本部门员工
- 可以查看本部门的统计数据
- 各主管仅管理自己负责的业务模块

### 7.4 一线执行角色

- 只能处理分配给自己的工单和任务
- 使用移动端APP进行操作
- 可以创建巡检记录和工单反馈
- 不能查看统计数据

### 7.5 客服人员

- 不参与工单流程
- 主要职责是业主服务
- 查看业主信息时敏感字段脱敏
- 可协助访客核验

### 7.6 业主用户

- 只能查看自己的缴费信息
- 可以提交工单
- 可以邀请访客
- 可以评价工单

---

## 8. 业务流程角色模拟

### 8.1 业主报修工单流程

| 步骤 | 操作             | 角色              | 权限编码                  |
| ---- | ---------------- | ----------------- | ------------------------- |
| 1    | 业主提交报修     | 业主              | 无（自有房产）            |
| 2    | 工单分配         | 项目经理/工程主管 | ops:work_order:assign     |
| 3    | 维修工接单       | 维修人员          | ops:work_order:accept     |
| 4    | 开始处理         | 维修人员          | ops:work_order:start      |
| 5    | 完成工单         | 维修人员          | ops:work_order:complete   |
| 6    | 填报费用（如有） | 维修人员          | ops:work_order:report_fee |
| 7    | 费用审核（如有） | 项目经理/财务主管 | ops:work_order:audit_fee  |
| 8    | 业主评价         | 业主              | 无（仅报修人）            |
| 9    | 关闭工单         | 项目经理          | ops:work_order:close      |

### 8.2 巡检任务流程

| 步骤 | 操作             | 角色                       | 权限编码                        |
| ---- | ---------------- | -------------------------- | ------------------------------- |
| 1    | 制定巡检计划     | 工程主管/安保主管/保洁主管 | ops:inspection_plan:create      |
| 2    | 任务分配         | 主管                       | ops:inspection_task:assign      |
| 3    | 扫码开始巡检     | 维修/安保/保洁人员         | ops:inspection_task:start       |
| 4    | 提交巡检结果     | 执行人员                   | ops:inspection_task:complete    |
| 5    | 强制闭环（逾期） | 主管                       | ops:inspection_task:force_close |

### 8.3 访客来访流程

| 步骤 | 操作         | 角色              | 权限编码           |
| ---- | ------------ | ----------------- | ------------------ |
| 1    | 业主邀请访客 | 业主              | 无（自有房产）     |
| 2    | 门岗核验     | 安保人员          | mdm:visitor:verify |
| 3    | 异常处理     | 客服人员/安保人员 | mdm:visitor:verify |

### 8.4 费用收缴流程

| 步骤 | 操作     | 角色              | 权限编码            |
| ---- | -------- | ----------------- | ------------------- |
| 1    | 生成账单 | 财务主管          | finance:bill:create |
| 2    | 业主缴费 | 业主              | 无（自有房产）      |
| 3    | 费用减免 | 物业经理/财务主管 | finance:bill:reduce |
| 4    | 账单导出 | 财务主管          | finance:bill:export |

---

## 9. 变更记录

| 日期       | 变更内容                           | 变更人       |
| ---------- | ---------------------------------- | ------------ |
| 2026-02-18 | 更新菜单排序为业务流程顺序         | AI Assistant |
| 2026-02-18 | 添加主数据模块说明                 | AI Assistant |
| 2026-02-18 | 移除独立的空间节点管理菜单         | AI Assistant |
| 2026-02-27 | 重构角色体系，新增13个角色         | AI Assistant |
| 2026-02-27 | 新增按钮级权限矩阵                 | AI Assistant |
| 2026-02-27 | 新增数据权限设计                   | AI Assistant |
| 2026-02-27 | 新增业务流程角色模拟               | AI Assistant |
| 2026-02-27 | 调整客服人员职责，不再参与工单流程 | AI Assistant |

---
