Kaynağa Gözat

📝 docs(shared-crud): 更新数据权限控制实现计划

- 修改任务列表,将"实现权限控制中间件"调整为"更新路由层以支持数据权限控制"
- 更新路由层任务细节:包含配置解构、处理函数更新和权限配置传递
- 添加路由层配置测试任务
- 补充路由层作为系统上下文信息,引用generic-crud.routes.ts源码位置
- 增加路由层配置测试的技术验证点
yourname 1 ay önce
ebeveyn
işleme
8fc229ecd6

+ 7 - 4
docs/stories/006.001.shared-crud-data-permission.story.md

@@ -39,10 +39,10 @@ Draft
   - [x] 在 `delete` 方法中添加权限验证
   - [x] 验证用户是否有权删除目标实体
   - [x] 确保权限验证与现有删除逻辑集成
-- [ ] 实现权限控制中间件 (AC: 6)
-  - [ ] 创建 `dataPermissionMiddleware` 中间件
-  - [ ] 从认证上下文中提取用户ID
-  - [ ] 设置用户ID到请求上下文供服务层使用
+- [ ] 更新路由层以支持数据权限控制 (AC: 6)
+  - [ ] 更新 `createCrudRoutes` 函数参数解构,包含 `dataPermission` 配置
+  - [ ] 更新路由处理函数,将 `dataPermission` 配置传递给 CRUD 服务
+  - [ ] 确保所有 CRUD 操作都正确传递数据权限配置
 - [ ] 实现管理员权限覆盖机制 (AC: 7)
   - [ ] 添加管理员角色检查逻辑
   - [ ] 实现管理员权限覆盖功能
@@ -53,6 +53,7 @@ Draft
   - [ ] 编写创建权限限制的单元测试
   - [ ] 编写更新权限验证的单元测试
   - [ ] 编写删除权限验证的单元测试
+  - [ ] 编写路由层配置测试
   - [ ] 编写管理员权限覆盖的单元测试
   - [ ] 编写集成测试验证完整CRUD操作的权限控制
 
@@ -74,6 +75,7 @@ Draft
 - **认证系统**: 现有认证中间件提供用户上下文 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#Existing System Context]
 - **用户跟踪字段**: 现有 `userTracking` 配置支持创建和更新时自动设置用户ID字段 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#Existing System Context]
 - **业务模块实体**: 包含用户关联字段(userId, createdBy, updatedBy) [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#Existing System Context]
+- **路由层**: 需要更新以支持数据权限配置的传递 [Source: packages/shared-crud/src/routes/generic-crud.routes.ts#L21]
 
 ### 数据模型
 - **用户实体**: 包含 `id`, `username`, `email`, `password`, `roles` 等字段 [Source: architecture/data-model-schema-changes.md#现有数据模型状态]
@@ -118,6 +120,7 @@ Draft
 - **创建权限限制测试**: 验证创建操作的权限限制 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#测试策略]
 - **更新权限验证测试**: 验证更新操作的权限验证 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#测试策略]
 - **删除权限验证测试**: 验证删除操作的权限验证 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#测试策略]
+- **路由层配置测试**: 验证路由层正确传递数据权限配置 [Source: packages/shared-crud/src/routes/generic-crud.routes.ts#L21]
 - **管理员权限覆盖测试**: 验证管理员权限覆盖功能 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#测试策略]
 - **集成测试**: 完整CRUD操作的权限控制测试 [Source: docs/prd/epic-006-shared-crud-data-permission-enhancement.md#测试策略]