ether-docs/02-DESIGN/domains/permission-upgrade-v3/checklist.md

231 lines
5.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 权限体系升级验收检查清单
**文档版本**: v1.0
**创建日期**: 2026-02-27
---
## 一、后端开发检查清单
### 1.1 数据范围枚举扩展
- [ ] Role.java 中 DataScope 枚举包含 PROJECT
- [ ] DataScopeHelper.java 中 canAccess 方法支持 PROJECT
- [ ] DataScopeContext.java 中 DataScopeInfo 包含 projectId 字段
- [ ] 编译通过无错误
### 1.2 角色模板扩展
- [ ] RoleTemplate.java 包含13个角色定义
- [ ] 新增角色SYS_ADMIN, ENGINEERING_LEAD, SECURITY_LEAD, CLEANING_LEAD, FINANCE_LEAD, CLEANING_STAFF
- [ ] 角色数据范围正确设置
- [ ] 编译通过无错误
### 1.3 按钮级权限编码
- [ ] PermissionTemplate.java 包含40+按钮权限
- [ ] 工单权限12个
- [ ] 巡检权限8个
- [ ] 设备权限6个
- [ ] 访客权限5个
- [ ] 财务权限8个
- [ ] 编译通过无错误
### 1.4 状态驱动权限
- [ ] WorkOrderAction 枚举已创建
- [ ] WorkOrderStatus.getAllowedActions() 方法已实现
- [ ] WorkOrderStatus.isActionAllowed() 方法已实现
- [ ] 编译通过无错误
### 1.5 权限服务增强
- [ ] hasActionPermission 方法已添加
- [ ] getAllowedActions 方法已添加
- [ ] 编译通过无错误
### 1.6 API接口扩展
- [ ] /check-action 接口已添加
- [ ] /allowed-actions 接口已添加
- [ ] Swagger文档已更新
- [ ] 编译通过无错误
---
## 二、前端开发检查清单
### 2.1 管理后台权限Store增强
- [ ] checkActionPermission 方法已添加
- [ ] getAllowedActions 方法已添加
- [ ] TypeScript 类型检查通过
- [ ] 编译通过无错误
### 2.2 管理后台权限指令增强
- [ ] v-permission 指令支持状态检查配置
- [ ] PermissionConfig 类型已定义
- [ ] TypeScript 类型检查通过
- [ ] 编译通过无错误
### 2.3 员工端权限Store新增
- [ ] permission.ts Store已创建
- [ ] hasPermissionCode 方法已实现
- [ ] checkActionPermission 方法已实现
- [ ] TypeScript 类型检查通过
- [ ] 编译通过无错误
### 2.4 员工端权限指令新增
- [ ] v-permission 指令已实现
- [ ] v-disable-permission 指令已实现
- [ ] main.ts 中已注册指令
- [ ] TypeScript 类型检查通过
- [ ] 编译通过无错误
---
## 三、数据库迁移检查清单
### 3.1 升级脚本
- [ ] permission-upgrade-v3.sql 已创建
- [ ] 新增角色SQL正确
- [ ] 新增权限SQL正确
- [ ] 角色权限关联SQL正确
- [ ] 脚本可重复执行
### 3.2 回滚脚本
- [ ] permission-upgrade-v3-rollback.sql 已创建
- [ ] 可完全回滚升级变更
- [ ] 脚本可重复执行
### 3.3 数据备份
- [ ] 升级前数据已备份
- [ ] 备份文件可恢复
---
## 四、测试检查清单
### 4.1 后端单元测试
- [ ] PermissionServiceV3Test 已创建
- [ ] 数据范围枚举测试通过
- [ ] 新角色模板测试通过
- [ ] 按钮级权限测试通过
- [ ] 状态驱动权限测试通过
- [ ] 测试覆盖率 > 80%
### 4.2 前端单元测试
- [ ] permissionStore.test.ts 已创建
- [ ] hasPermissionCode 测试通过
- [ ] hasAnyPermission 测试通过
- [ ] checkActionPermission 测试通过
### 4.3 集成测试
- [ ] 用户登录获取权限测试通过
- [ ] 角色权限分配测试通过
- [ ] 数据权限过滤测试通过
- [ ] 状态驱动权限测试通过
### 4.4 E2E测试
- [ ] 管理后台E2E测试通过
- [ ] 员工端E2E测试通过
- [ ] 业主端E2E测试通过
---
## 五、功能验收检查清单
### 5.1 角色体系验收
- [ ] SUPER_ADMIN 可正常使用
- [ ] SYS_ADMIN 可正常使用
- [ ] PROPERTY_MANAGER 可正常使用
- [ ] PROJECT_MANAGER 可正常使用
- [ ] ENGINEERING_LEAD 可正常使用
- [ ] SECURITY_LEAD 可正常使用
- [ ] CLEANING_LEAD 可正常使用
- [ ] FINANCE_LEAD 可正常使用
- [ ] MAINTENANCE_STAFF 可正常使用
- [ ] SECURITY_STAFF 可正常使用
- [ ] CLEANING_STAFF 可正常使用
- [ ] CS_STAFF 可正常使用
- [ ] OWNER 可正常使用
### 5.2 按钮权限验收
- [ ] 工单按钮权限正确
- [ ] 巡检按钮权限正确
- [ ] 设备按钮权限正确
- [ ] 访客按钮权限正确
- [ ] 财务按钮权限正确
### 5.3 状态驱动权限验收
- [ ] CREATED 状态操作正确
- [ ] ASSIGNED 状态操作正确
- [ ] ACCEPTED 状态操作正确
- [ ] IN_PROGRESS 状态操作正确
- [ ] PENDING 状态操作正确
- [ ] COMPLETED 状态操作正确
- [ ] CLOSED 状态操作正确
- [ ] SUSPENDED 状态操作正确
- [ ] RETURNED 状态操作正确
### 5.4 数据权限验收
- [ ] ALL 数据范围正确
- [ ] PROJECT 数据范围正确
- [ ] DEPARTMENT 数据范围正确
- [ ] SELF 数据范围正确
### 5.5 三端权限验收
- [ ] 管理后台权限检查正常
- [ ] 员工端权限检查正常
- [ ] 业主端权限检查正常
---
## 六、兼容性验收检查清单
### 6.1 现有功能兼容
- [ ] 现有用户可正常登录
- [ ] 现有菜单可正常访问
- [ ] 现有按钮可正常使用
- [ ] 现有API可正常调用
### 6.2 数据兼容
- [ ] 现有角色数据完整
- [ ] 现有权限数据完整
- [ ] 现有用户角色关联完整
---
## 七、性能验收检查清单
### 7.1 响应时间
- [ ] 权限检查响应时间 < 100ms
- [ ] 页面加载时间无明显增加
- [ ] API响应时间正常
### 7.2 数据库性能
- [ ] 权限查询SQL执行计划正常
- [ ] 索引使用正确
- [ ] 无慢查询
---
## 八、文档更新检查清单
### 8.1 技术文档
- [ ] PRODUCT_REQUIREMENTS.md 已更新
- [ ] 05-AUTH.md 已更新
- [ ] API文档已更新
### 8.2 测试文档
- [ ] 测试计划已更新
- [ ] 测试报告已生成
---
## 九、发布检查清单
### 9.1 发布前检查
- [ ] 所有测试通过
- [ ] 无P0/P1级别缺陷
- [ ] 文档已更新
- [ ] 回滚方案已准备
### 9.2 发布后检查
- [ ] 服务启动正常
- [ ] 功能验证通过
- [ ] 监控告警正常