|
|
@@ -15,6 +15,7 @@ Draft
|
|
|
4. [ ] 类型定义和导出路径正确
|
|
|
5. [ ] 现有测试通过,功能正常
|
|
|
6. [ ] TypeScript 类型检查无错误
|
|
|
+7. [ ] 移除所有租户ID相关代码和配置
|
|
|
|
|
|
## Tasks / Subtasks
|
|
|
- [ ] 任务 1: 复制目录结构 (AC: 1)
|
|
|
@@ -33,7 +34,13 @@ Draft
|
|
|
- [ ] 任务 4: 检查并更新导出文件 (AC: 4)
|
|
|
- [ ] 检查各模块中的 `index.mt.ts` 文件,确保导出路径正确
|
|
|
- [ ] 根据需要重命名文件(如 `index.mt.ts` → `index.ts`)
|
|
|
-- [ ] 任务 5: 验证步骤 (AC: 5, 6)
|
|
|
+- [ ] 任务 5: 移除租户ID相关代码 (AC: 7)
|
|
|
+ - [ ] 移除实体中的 `tenantId` 字段定义
|
|
|
+ - [ ] 移除服务中的 `tenantOptions` 配置
|
|
|
+ - [ ] 移除路由中的 `tenantOptions` 配置
|
|
|
+ - [ ] 移除测试文件中的租户ID相关代码
|
|
|
+ - [ ] 更新数据库表名(移除 `_mt` 后缀)
|
|
|
+- [ ] 任务 6: 验证步骤 (AC: 5, 6)
|
|
|
- [ ] 运行 `pnpm typecheck` 检查类型错误
|
|
|
- [ ] 运行 `pnpm test:unit` 确保单元测试通过
|
|
|
- [ ] 运行 `pnpm test:integration` 确保集成测试通过
|
|
|
@@ -79,6 +86,23 @@ Draft
|
|
|
- 文件重命名:`*.mt.ts` → `*.ts`(如 `index.mt.ts` → `index.ts`)
|
|
|
- 注意:`file-module-mt` 中的文件可能没有 `.mt.ts` 后缀,需要检查
|
|
|
|
|
|
+### 租户ID移除规则
|
|
|
+需要从以下位置移除租户ID相关代码:
|
|
|
+1. **实体文件** (`src/entities/*.ts`):
|
|
|
+ - 移除 `tenantId` 字段定义
|
|
|
+ - 更新表名:`*_mt` → `*`(如 `users_mt` → `users`)
|
|
|
+2. **服务文件** (`src/services/*.ts`):
|
|
|
+ - 移除 `tenantOptions` 配置
|
|
|
+ - 移除 `tenantId` 参数和方法中的租户逻辑
|
|
|
+3. **路由文件** (`src/routes/*.ts`):
|
|
|
+ - 移除 `tenantOptions` 配置
|
|
|
+4. **测试文件** (`tests/**/*.ts`):
|
|
|
+ - 移除测试实体中的 `tenantId` 字段
|
|
|
+ - 移除测试配置中的租户相关设置
|
|
|
+ - 更新测试数据工厂中的租户逻辑
|
|
|
+5. **数据库表名**:
|
|
|
+ - 更新实体装饰器中的表名:`@Entity({ name: '*_mt' })` → `@Entity({ name: '*' })`
|
|
|
+
|
|
|
### 测试
|
|
|
- **测试框架**: Vitest [Source: architecture/testing-strategy.md#单元测试]
|
|
|
- **测试位置**: `tests/` 目录结构(单元测试:`tests/unit/`,集成测试:`tests/integration/`)[Source: architecture/testing-strategy.md#测试金字塔策略]
|
|
|
@@ -90,6 +114,7 @@ Draft
|
|
|
2. **数据库 schema**: 保持不变,不影响现有数据
|
|
|
3. **性能**: 无影响,仅进行文件复制和重命名
|
|
|
4. **依赖关系**: core-module 作为聚合包使用,支持按需导入
|
|
|
+5. **租户ID移除**: 需要移除所有多租户相关代码,转换为单租户版本
|
|
|
|
|
|
## Testing
|
|
|
### 测试标准
|
|
|
@@ -105,10 +130,16 @@ Draft
|
|
|
4. **测试覆盖率**: 运行 `pnpm test:coverage` 检查覆盖率是否达标
|
|
|
5. **导入验证**: 检查 server package 能否正确导入新的 core-module
|
|
|
6. **测试结构验证**: 确保测试文件位于正确的 `tests/` 目录结构中
|
|
|
+7. **租户ID移除验证**: 验证所有租户ID相关代码已正确移除
|
|
|
+ - 检查实体中无 `tenantId` 字段
|
|
|
+ - 检查服务和路由中无 `tenantOptions` 配置
|
|
|
+ - 检查测试文件中无租户相关代码
|
|
|
+ - 验证数据库表名已更新(移除 `_mt` 后缀)
|
|
|
|
|
|
## Change Log
|
|
|
| Date | Version | Description | Author |
|
|
|
|------|---------|-------------|--------|
|
|
|
+| 2025-12-01 | 1.2 | 补充移除租户ID相关代码的任务和要求 | John (Product Manager) |
|
|
|
| 2025-12-01 | 1.1 | 根据架构文档和测试策略文档修正测试相关内容 | John (Product Manager) |
|
|
|
| 2025-12-01 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
|
|
|
|