# 会议核销SaaS 未开发项迭代清单(2026-03 最新) ## 一、现状结论 - 已完成:项目/会议/审核/财务主链路、审核流配置化、用户角色增强、数据权限、模板管理(上传/发布/停用/回滚/下载留痕/类型配置)、会议资料六大模块(`BASIC_INFO`、`WRITE_OFF_DOCS`、`ONSITE_PHOTO`、`LABOR_PROTOCOL`、`INVOICE_DETAIL`、`EXPERT_PROFILE`)、通知策略中心、可观测性告警中心(含抑制与恢复)。 - 主要缺口:通知外部通道真实SDK接入(厂商鉴权/模板审核/限流策略)与经营分析报表(多维钻取)。 - 本清单同步维护“状态看板 + 迭代任务”,用于区分已完成、进行中与未开始项。 ### 1.1 状态看板(2026-03-10) | 模块/任务 | 当前状态 | 说明 | |---|---|---| | T1 租户管理(C1) | 已完成(待QA执行) | 后端接口、前端页面、启停与权限控制已接通;仍需按测试单执行并回填结果。 | | T2 企业管理(C2) | 已完成(待QA执行) | 企业主数据与项目引用联动已落地;仍需回填回归结果。 | | T3 菜单管理(C3) | 已完成(待QA执行) | 菜单维护、角色绑定、排序与动态加载已落地;仍需补最终回归记录。 | | T4 代理授权(C4) | 已完成(待手工QA执行) | 生命周期、鉴权继承、自动化单测与回归模板已完成;手工用例执行结果待回填。 | | T5 账号有效期(C5) | 功能已完成(QA未闭环) | 字段迁移、登录/会话拦截、前端展示已实现;缺少任务卡级进展与QA执行记录。 | | P2-5 通知真实SDK接入 | 未开始 | 真实供应商鉴权、模板审核、失败原因标准化仍为主要缺口。 | | 经营分析报表(多维钻取) | 未开始 | 当前仅有运营看板汇总,未形成报表钻取能力。 | ## 二、P0(必须补齐) ### P0-1 多租户真实化改造(替换硬编码 tenant_id=1) - 范围 - 租户上下文从登录态注入,业务查询/写入全部走动态 `tenant_id`。 - 新增租户管理(平台管理员):创建、启停、查询。 - 后端 API - `GET /api/tenants` - `POST /api/tenants` - `POST /api/tenants/{id}/enable` - `POST /api/tenants/{id}/disable` - DDL - `tenant`(若未创建) - 业务高频表补充复合索引(`tenant_id + 业务键`) - 验收 - 同一账号跨租户不可见数据。 - 导出/下载/搜索均走租户隔离。 - 人天 - 后端 8d + 前端 2d + 测试 3d = **13d** ### P0-2 审计日志中心(关键动作可检索/导出) - 范围 - 登录、权限变更、审核动作、支付确认、导出下载等关键操作留痕。 - 支持条件检索与导出。 - 后端 API - `GET /api/audit-logs` - `GET /api/audit-logs/export` - 前端 - 新增“审计日志”页面(筛选、列表、导出)。 - DDL - `operation_audit_log`(落表 + 索引优化) - 验收 - 高风险动作 100% 可追溯到人/时间/对象。 - 人天 - 后端 4d + 前端 2d + 测试 2d = **8d** ## 三、P1(高优先级业务补齐) ### P1-1 会议资料四大模块补齐 - 范围 - 新增模块:`ONSITE_PHOTO`、`LABOR_PROTOCOL`、`INVOICE_DETAIL`、`EXPERT_PROFILE`。 - 当前进度:四个新增模块已全部完成(`ONSITE_PHOTO`、`LABOR_PROTOCOL`、`INVOICE_DETAIL`、`EXPERT_PROFILE`)。 - 模块级保存/提交/历史/审核查看对齐现有两模块能力。 - 后端 API - 复用现有 `/materials/{moduleCode}/save|submit|history|current` - 扩展模块校验规则与字段结构 - 前端 - 会议资料页补齐四个模块录入与历史对比 - 审核端“查看资料”补齐结构化展示 - DDL - 复用 `meeting_material` / `meeting_material_history` - 验收 - 六大资料模块都支持提交前必填校验与历史可追溯。 - 人天 - 后端 5d + 前端 6d + 测试 3d = **14d** ### P1-2 审核管理增强(转审 + SLA + 批量) - 范围 - 转审、批量催办、SLA 超时升级。 - 当前进度:已完成后端 API、DDL 与前端审核页能力(转审弹窗、批量催办、SLA 统计与超时标识)。 - 后端 API - `POST /api/audits/tasks/{id}/transfer` - `POST /api/audits/tasks/batch-remind` - `GET /api/audits/tasks/sla-stat` - 前端 - 审核页增加转审弹窗、批量催办、SLA 标识 - DDL - `audit_task` 补 `sla_deadline_at`、`timeout_level` - `audit_transfer_log` - 验收 - 超时 4h/12h/24h 升级可见,转审链路有日志。 - 人天 - 后端 4d + 前端 3d + 测试 2d = **9d** ### P1-3 财务对账与锁账 - 范围 - 对账工单、锁账/解锁、差异追踪。 - 当前进度:已完成后端 API、DDL、支付确认拦截(锁账)与前端财务页对账/锁账记录展示。 - 后端 API - `POST /api/finance/reconciliation` - `POST /api/finance/lock` - `POST /api/finance/unlock` - `GET /api/finance/reconciliation/list` - 前端 - 财务页补“对账结果”“锁账状态”“解锁记录” - DDL - `finance_reconciliation` - `finance_lock_log` - 验收 - 锁账期间禁止关键财务字段写入。 - 人天 - 后端 5d + 前端 3d + 测试 2d = **10d** ### P1-4 模板管理剩余闭环 - 范围 - 归档状态、版本差异追踪、水印下载、流程模板联动(通知模板/结算模板)。 - 当前进度:已完成归档、版本差异追踪、水印下载、流程模板联动(会议推荐/审核通知/结算模板绑定)。 - 后端 API - `POST /api/templates/{id}/archive` - `GET /api/templates/{id}/versions/diff` - `GET /api/templates/{id}/download-watermark` - 前端 - 模板页补“归档”“版本差异查看” - 验收 - 已归档模板不可再发布,差异可视化可用。 - 人天 - 后端 3d + 前端 2d + 测试 1d = **6d** ## 四、P2(治理与效率) ### P2-1 专家(参会人)管理全量能力 - 范围 - 主档案、多卡、去重合并、导入导出、会议快照。 - 当前进度:已完成主档案、多卡、去重合并、导入导出与专家管理页面;会议提交已接入专家快照写入链路。 - 后端 API - `GET/POST /api/experts` - `POST /api/experts/{id}/merge` - `POST /api/experts/import` - `GET /api/experts/export` - 前端 - 专家管理页面 + 合并记录 + 银行卡管理 - DDL - `expert`、`expert_bank_card`、`expert_merge_log`、`meeting_expert_snapshot` - 验收 - 身份证唯一校验,历史会议读快照。 - 人天 - 后端 8d + 前端 6d + 测试 4d = **18d** ### P2-2 通知策略中心 - 范围 - 事件->渠道->对象可配置,模板变量统一管理。 - 当前进度:已完成策略中心 DDL、后端 `GET/POST/PUT /api/notification-policies` 与前端通知策略页面。 - 后端 API - `GET/POST/PUT /api/notification-policies` - 前端 - 通知策略页面 - DDL - `notification_policy`、`notification_policy_event` - 验收 - 策略即时生效,可追溯变更。 - 人天 - 后端 4d + 前端 2d + 测试 2d = **8d** ### P2-3 可观测性与告警 - 范围 - 指标、日志、告警阈值、任务失败告警闭环。 - 当前进度:已完成指标埋点(API、异步任务、导出)与告警规则中心(规则配置、手动评估、事件查询、抑制窗口、自动恢复)。 - 交付 - 指标埋点(API、异步任务、导出) - 告警规则(5xx、任务积压、超时率) - 验收 - 告警可触发、可恢复、可追踪。 - 人天 - 后端 3d + 运维 2d + 测试 1d = **6d** ### P2-4 补缺闭环(文档对照新增) - 范围 - 已完成:会议撤回提交(状态机与审计联动) - 已完成:会议字段管理(字典配置) - 已完成:发票管理(抬头主数据) - 已完成:通知执行引擎(任务化发送、重试、回执) - 已完成:导出任务中心(任务状态、下载安全) - 已完成:可观测性自动评估与连续恢复判定 - 后端 API(建议) - `POST /api/meetings/{id}/withdraw` - `GET/POST/PUT /api/meeting-fields` - `GET/POST/PUT /api/invoice-profiles` - `POST /api/notifications/dispatch` - `POST /api/notifications/receipts` - `GET /api/notifications/tasks` - `GET/POST /api/export-tasks` - `POST /api/export-tasks/{id}/refresh-token` - `GET /api/export-tasks/{id}/download` - `POST /api/observability/alert-rules/evaluate/auto` - `GET /api/operations/dashboard` - 验收 - 文档与实现接口 1:1 对齐,新增模块可独立上线并通过回归。 - 人天 - 后端 8d + 前端 6d + 测试 4d = **18d** ### P2-5 深化治理(进行中) - 范围 - 已完成:通知回执标准化(消息ID、回执码、回执日志) - 已完成:导出下载鉴权与过期策略(令牌刷新、过期控制、下载计数) - 已完成:运营看板趋势与TOP(通知/导出/告警) - 待完成:真实供应商SDK接入与失败原因规范化字典 - 后端 API(新增) - `POST /api/notifications/receipts` - `POST /api/notifications/receipts/webhook` - `POST /api/export-tasks/{id}/refresh-token` - `GET /api/export-tasks/{id}/download` - `GET /api/operations/dashboard` ## 五、建议迭代顺序(接下来 4 个 Sprint) - Sprint E(2周):P0-1 多租户真实化 + P0-2 审计日志中心 - Sprint F(2周):P1-1 资料四模块补齐 + P1-2 审核增强 - Sprint G(2周):P1-3 财务对账锁账 + P1-4 模板闭环 - Sprint H(2-3周):P2-1 专家管理 + P2-2 通知策略 + P2-3 可观测性 ## 六、DoD(本清单统一完成标准) - 接口文档:请求/响应/错误码补齐。 - 数据迁移:Flyway 脚本可重复执行,预发验证通过。 - 权限校验:菜单权限 + 动作权限 + 数据权限全链路生效。 - 测试:单测 + 关键集成测试 + 最少 1 条回归脚本。 - 留痕:关键动作有审计日志(操作者、对象、前后值、时间)。 ## 七、“有概念、无模块化定义”缺口补全(本轮新增) ### C1 租户管理模块化补全(平台级) - 缺口来源 - 业务文档已有“平台超级管理员可创建/启停单位主体”概念,但缺页面与流程化定义。 - 技术文档“接口实施状态”提到已实现租户能力,但接口清单未显式列出租户分组。 - 页面定义(前端) - 新增“租户管理”菜单与页面:列表、创建、启用、停用。 - 字段:`tenantCode`、`tenantName`、`status`、`createdAt`。 - 后端 API - `GET /api/tenants` - `POST /api/tenants` - `POST /api/tenants/{id}/enable` - `POST /api/tenants/{id}/disable` - 数据与约束 - `tenant_code` 唯一,状态仅允许 `ENABLED/DISABLED`。 - 启停租户需写入审计日志(动作码建议:`tenant.manage`)。 - 验收 - 平台管理员可在页面完成全流程;无 `tenant.manage` 权限用户不可操作。 - 两份主文档均包含模块、接口、权限点与页面入口说明。 - 人天 - 后端 1d + 前端 1d + 测试 1d = **3d** ### C2 企业管理模块化补全(系统设置) - 缺口来源 - 业务文档有“企业管理”字段要求,但技术文档无对应模块定义/接口清单。 - 页面定义(前端) - 列表、详情、创建、编辑、启停(如业务确认需要)。 - 字段:企业名称、网址、Logo、状态、更新时间。 - 后端 API(建议) - `GET /api/enterprises` - `POST /api/enterprises` - `PUT /api/enterprises/{id}` - `POST /api/enterprises/{id}/enable` - `POST /api/enterprises/{id}/disable` - 数据与约束 - 新增 `enterprise` 主表;名称唯一,Logo 必填校验。 - 项目模块“合作企业”字段改为引用企业主数据。 - 验收 - 项目创建/编辑可引用企业主数据,禁止手填脏数据。 - 企业启停后在项目选择器实时生效。 - 人天 - 后端 3d + 前端 2d + 测试 2d = **7d** ### C3 菜单管理模块化补全(权限可见性) - 缺口来源 - 业务文档有“菜单管理”概念,技术文档未定义菜单数据模型和权限映射策略。 - 页面定义(前端) - 菜单列表(树形)、角色菜单绑定、菜单启停与排序。 - 后端 API(建议) - `GET /api/menus` - `POST /api/menus` - `PUT /api/menus/{id}` - `POST /api/roles/{id}/menus` - `GET /api/roles/{id}/menus` - 数据与约束 - `menu`、`role_menu` 表;菜单与 `permissionCode` 建立映射。 - 前端“可见性”与后端“动作权限”双校验,禁止只做前端隐藏。 - 验收 - 不同角色登录看到不同菜单树,且后端越权访问仍被拦截。 - 人天 - 后端 4d + 前端 3d + 测试 2d = **9d** ### C4 代理授权模块化补全(用户生命周期) - 缺口来源 - 业务文档明确要求代理授权生效/失效与留痕,技术文档仅概念提及。 - 页面定义(前端) - 用户详情新增“代理授权”配置:代理人、生效时间、失效时间、原因。 - 代理记录列表:状态(待生效/生效中/已失效)。 - 后端 API(建议) - `POST /api/users/{id}/delegations` - `GET /api/users/{id}/delegations` - `POST /api/delegations/{id}/disable` - 数据与约束 - 新增 `user_delegation` 表,记录授权窗口、状态、创建人与失效原因。 - 审计记录动作码建议:`user.delegation.manage`。 - 验收 - 到达失效时间自动失效;代理操作可完整追溯授权链。 - 人天 - 后端 3d + 前端 2d + 测试 2d = **7d** ### C5 账号有效期模块化补全(鉴权拦截) - 缺口来源 - 业务文档要求账号有效期必填,技术文档缺字段规范与认证拦截定义。 - 页面定义(前端) - 用户新增/编辑增加“有效期开始/结束”。 - 到期账号列表筛选与状态提示。 - 后端 API(建议) - 复用 `POST/PUT /api/users` 增加 `validFrom`、`validTo` 字段。 - 登录接口增加有效期校验失败错误码返回(建议 `11004`)。 - 数据与约束 - `sys_user` 增加 `valid_from`、`valid_to`。 - 登录、刷新令牌、关键写操作统一做有效期检查。 - 验收 - 过期账号无法登录且返回统一错误码;在有效期内恢复正常。 - 人天 - 后端 2d + 前端 1d + 测试 1d = **4d** ## 八、缺口补全里程碑(建议) | 里程碑 | Sprint | 交付模块 | 目标结果 | |---|---|---|---| | M1 | Sprint I(1周) | C1 租户管理、C5 账号有效期 | 平台可创建/启停租户;账号到期拦截口径统一 | | M2 | Sprint J(2周) | C2 企业管理、C4 代理授权 | 企业主数据可维护并被项目引用;代理授权可配置并自动失效 | | M3 | Sprint K(2周) | C3 菜单管理 | 角色菜单树可配置;菜单可见性与动作权限一体化生效 | | M4 | Sprint L(1周) | 文档与验收收口 | 两份主文档与实现清单 1:1 对齐,补齐回归与审计验证 | ### 里程碑验收门槛(统一) - 接口与页面:每个模块至少 1 条端到端回归脚本通过。 - 权限链路:登录鉴权、动作权限、数据权限、有效期校验全部生效。 - 数据治理:Flyway 脚本可重复执行,升级/回滚路径可验证。 - 审计追溯:创建、启停、授权、失效、权限变更全量留痕可检索。 ## 九、开发任务卡(可直接排期) ### 9.0 任务状态总览(2026-03-10) | 任务 | 状态 | 备注 | |---|---|---| | T1 | 已完成(待QA执行) | 功能已落地,测试结果待回填。 | | T2 | 已完成(待QA执行) | 功能已落地,测试结果待回填。 | | T3 | 已完成(待QA执行) | 功能已落地,测试结果待回填。 | | T4 | 已完成(待手工QA执行) | 自动化基线已补,手工回归待执行。 | | T5 | 功能已完成(QA未闭环) | 缺任务卡进展说明与回归结果。 | ### T1 租户管理(平台级) - 目标 - 提供租户列表、创建、启用、停用能力,并纳入统一权限与审计链路。 - 后端任务 - 完成 `TenantController/TenantService` 接口稳定化与参数校验。 - 增加错误码映射:重复租户编码、状态非法、无权限。 - 审计日志接入:`tenant.manage`(创建/启停分动作码)。 - 前端任务 - 新增 `TenantPage`(列表、创建弹窗、启停按钮)。 - 在菜单中增加平台入口(仅具备权限用户可见)。 - 按钮权限:`tenant.manage`。 - SQL/Flyway - 确认 `tenant` 表字段完整:`tenant_code` 唯一、`status`、审计字段。 - 历史数据修复脚本:空 `tenant_code` 回填与唯一约束检查。 - 测试用例 - 正常创建租户、重复编码拦截、启停状态切换、无权限拦截。 - 停用租户下账号登录失败验证。 - DoD - 页面可操作、接口稳定、日志可检索、回归通过。 - 当前实现进展(2026-03-10) - 已完成:租户列表/创建/启停接口与前端页面,菜单入口与 `tenant.manage` 按钮权限控制。 - 已完成:Flyway 兼容修复与 `tenant_code` 约束补齐。 - 待完成:按 `TASK-T1-QA-01` 执行手工回归并回填结果。 ### T2 企业管理(系统设置) - 目标 - 企业主数据独立维护,并可在项目模块引用,杜绝手填脏数据。 - 后端任务 - 新增企业 CRUD 与启停接口。 - 项目创建/编辑改为企业 ID 引用校验。 - 约束:企业停用后不可被新增项目引用。 - 前端任务 - 新增企业管理页(列表、详情、创建、编辑、启停)。 - 项目页面“合作企业”改为下拉选择企业主数据。 - SQL/Flyway - 新增 `enterprise` 表及唯一索引(企业名称/编码按最终口径确定)。 - 项目表增加 `enterprise_id`(若当前为名称存储需迁移脚本)。 - 测试用例 - 企业启停与项目引用联动、重复名称校验、历史项目兼容查询。 - DoD - 企业数据可维护,项目联动稳定,历史数据可回溯。 - 当前实现进展(2026-03-10) - 已完成:企业表迁移、企业 CRUD/启停接口、项目绑定企业引用校验。 - 已完成:企业管理页与项目“合作企业”下拉联动。 - 待完成:按 `TASK-T2-QA-01` 执行联调回归并回填结果。 ### T3 菜单管理(角色菜单树) - 目标 - 菜单可见性可配置,且与动作权限统一治理。 - 后端任务 - 提供菜单树查询、菜单维护、角色菜单绑定接口。 - 校验角色绑定数据合法性(菜单存在、状态可用、层级正确)。 - 前端任务 - 新增菜单管理页(树形、排序、启停、角色绑定)。 - 登录后按角色加载菜单树,未授权菜单不展示。 - SQL/Flyway - 新增 `menu`、`role_menu` 表,建立索引(`role_id`、`menu_id`)。 - 菜单与 `permission_code` 字段对齐。 - 测试用例 - 角色切换后菜单变化、越权接口后端拦截、菜单停用即时生效。 - DoD - 菜单可配置、权限一致、越权不可达。 - 当前实现进展(2026-03-10) - 已完成:菜单管理接口、角色菜单绑定、`permission_code` 对齐与批量排序保存。 - 已完成:前端菜单管理页、角色绑菜单、登录后按权限动态加载菜单。 - 待完成:按 `TASK-T3-QA-01` 执行越权与可见性回归并回填结果。 ### T4 代理授权(用户生命周期) - 目标 - 支持代理授权时间窗配置、自动失效、全链路审计。 - 后端任务 - 提供授权创建/查询/停用接口。 - 增加定时任务:过期授权自动置为失效。 - 鉴权侧接入代理上下文判定(仅在有效窗口内生效)。 - 前端任务 - 用户详情新增代理授权配置与记录列表。 - 显示授权状态(待生效/生效中/已失效/手动停用)。 - SQL/Flyway - 新增 `user_delegation` 表及状态索引(`status`,`effective_to`)。 - 测试用例 - 授权生效、过期自动失效、手动停用、审计记录完整。 - DoD - 授权链路可追溯、时间窗行为正确、异常场景可控。 - 当前实现进展(2026-03-10) - 已完成:`V37__user_delegation.sql`(表结构+索引+权限种子)、授权创建/查询/停用接口、过期自动失效定时任务、用户页代理授权弹窗(新增/列表/停用)。 - 已完成:鉴权链路代理上下文生效(代理人可在有效窗口内继承被代理人权限),并补充了后端自动化测试覆盖关键路径。 - 已完成:`TASK-T4-QA-01` 回归用例模板与自动化单测基线(代理权限继承、时间窗参数校验)。 - T4-QA 回归执行清单(可直接拷贝到测试单) | 用例ID | 场景 | 前置条件 | 操作步骤 | 预期结果 | 执行结果 | |---|---|---|---|---|---| | T4-QA-001 | 授权立即生效 | 用户A、用户B均启用;A具有业务权限;B不具备该权限 | 在用户页为A配置代理人B,生效时间=当前前,失效时间=未来 | 授权记录状态为`ENABLED`;B可访问A对应权限接口 | 待执行 | | T4-QA-002 | 授权待生效 | 用户A、用户B均启用 | 配置生效时间=未来,失效时间=更未来 | 记录状态为`PENDING`;B暂不可继承A权限 | 待执行 | | T4-QA-003 | 授权自动过期 | 已存在`ENABLED`授权记录,失效时间即将到达 | 等待定时任务窗口(或手工触发任务) | 状态自动切为`EXPIRED`;B失去继承权限 | 待执行 | | T4-QA-004 | 手动停用授权 | 已存在`ENABLED`或`PENDING`授权记录 | 在代理授权列表点击“停用”并填写原因 | 状态切为`DISABLED`;停用原因可查询 | 待执行 | | T4-QA-005 | 禁止自代理 | 用户A存在 | 为A创建代理,代理人也选择A | 创建失败,返回业务错误“代理人不能与被代理人相同” | 待执行 | | T4-QA-006 | 非法时间窗拦截 | 用户A、用户B存在 | 创建授权:`effectiveTo <= effectiveFrom` | 创建失败,返回业务错误“失效时间必须晚于生效时间” | 待执行 | | T4-QA-007 | 权限闭环审计 | 已开启操作审计 | 完成一次“创建授权->停用授权”链路 | 审计日志存在对应 API 调用记录与状态变更痕迹 | 待执行 | - T4-QA 自动化测试映射(当前已落地) - `PermissionServiceDelegationTest`:覆盖代理权限继承与权限集合去重。 - `UserDelegationServiceValidationTest`:覆盖自代理拦截、时间窗非法拦截。 ### T5 账号有效期(统一鉴权拦截) - 目标 - 在登录、令牌刷新、关键写操作统一校验账号有效期。 - 后端任务 - `sys_user` 引入 `valid_from/valid_to` 并在认证链路校验。 - 新增错误码(建议 `11004`)与统一错误文案。 - 前端任务 - 用户创建/编辑增加有效期字段及校验。 - 到期状态在用户列表显式标记。 - SQL/Flyway - `sys_user` 加字段与默认值迁移;历史账号回填策略。 - 测试用例 - 有效期前不可登录、有效期内可登录、过期后自动拦截。 - 关键写接口(非登录)也进行有效期拒绝校验。 - DoD - 各链路校验一致,错误码统一,回归通过。 - 当前实现进展(2026-03-10) - 已完成:`V33__user_account_validity.sql` 字段迁移与历史回填(`valid_from/valid_to`)。 - 已完成:登录与鉴权拦截统一有效期校验,错误码 `11004` 接入前端自动登出处理。 - 已完成:用户页面有效期录入与“已过期”状态展示。 - 待完成:补齐 `TASK-T5-QA-01` 回归执行清单与结果回填。 ## 十、Jira/禅道建单模板(可导入) ### 10.1 使用说明 - 建议先创建 5 个 Epic:`EPIC-T1`~`EPIC-T5`(对应 T1~T5)。 - 下面“任务导入表”可直接复制为 CSV(逗号分隔)导入。 - `依赖` 列用于排期时设置“前置任务”,避免并行冲突。 ### 10.2 Epic 列表 | Epic ID | Epic 名称 | 目标 | |---|---|---| | EPIC-T1 | 租户管理平台化 | 完成租户创建/启停/审计全链路 | | EPIC-T2 | 企业管理主数据化 | 企业主数据维护并联动项目引用 | | EPIC-T3 | 菜单权限一体化 | 菜单树与动作权限统一治理 | | EPIC-T4 | 代理授权生命周期 | 授权配置、自动失效、可审计 | | EPIC-T5 | 账号有效期统一校验 | 登录与关键写操作统一拦截 | ### 10.3 任务导入表(CSV列头) `IssueKey,Summary,IssueType,EpicLink,OwnerRole,EstimateDays,Priority,DependsOn,AcceptanceCriteria` `TASK-T1-BE-01,租户管理后端接口与校验,Task,EPIC-T1,后端,1,P0,,实现GET/POST tenants与启停接口并通过单测` `TASK-T1-FE-01,租户管理前端页面与菜单入口,Task,EPIC-T1,前端,1,P0,TASK-T1-BE-01,完成列表创建启停页面并接通权限控制` `TASK-T1-QA-01,租户管理联调与回归,Task,EPIC-T1,测试,1,P0,TASK-T1-BE-01;TASK-T1-FE-01,覆盖创建重复编码启停无权限用例` `TASK-T2-DB-01,企业主数据表设计与迁移脚本,Task,EPIC-T2,后端,1,P1,,新增enterprise表并完成迁移验证` `TASK-T2-BE-01,企业管理接口与项目引用校验,Task,EPIC-T2,后端,2,P1,TASK-T2-DB-01,实现企业CRUD启停并联动项目引用约束` `TASK-T2-FE-01,企业管理页面与项目企业下拉,Task,EPIC-T2,前端,2,P1,TASK-T2-BE-01,企业页可维护且项目页改为企业下拉` `TASK-T2-QA-01,企业管理联调回归,Task,EPIC-T2,测试,2,P1,TASK-T2-BE-01;TASK-T2-FE-01,覆盖启停联动重复名称历史数据兼容` `TASK-T3-DB-01,菜单与角色菜单关系表迁移,Task,EPIC-T3,后端,1,P1,,新增menu与role_menu并建索引` `TASK-T3-BE-01,菜单树与角色绑定后端接口,Task,EPIC-T3,后端,2,P1,TASK-T3-DB-01,实现菜单树查询维护与角色绑定接口` `TASK-T3-FE-01,菜单管理页面与动态菜单加载,Task,EPIC-T3,前端,3,P1,TASK-T3-BE-01,角色切换后菜单可见性正确生效` `TASK-T3-QA-01,菜单权限回归与越权验证,Task,EPIC-T3,测试,2,P1,TASK-T3-BE-01;TASK-T3-FE-01,覆盖前端可见性与后端越权拦截` `TASK-T4-DB-01,代理授权表与状态索引迁移,Task,EPIC-T4,后端,1,P1,,新增user_delegation表并通过迁移验证` `TASK-T4-BE-01,代理授权接口与自动失效任务,Task,EPIC-T4,后端,2,P1,TASK-T4-DB-01,实现授权创建查询停用与过期自动失效` `TASK-T4-FE-01,用户详情代理授权UI,Task,EPIC-T4,前端,2,P1,TASK-T4-BE-01,支持授权配置与状态展示` `TASK-T4-QA-01,代理授权链路回归,Task,EPIC-T4,测试,2,P1,TASK-T4-BE-01;TASK-T4-FE-01,覆盖生效过期停用与审计追溯` `TASK-T5-DB-01,用户有效期字段迁移,Task,EPIC-T5,后端,1,P0,,sys_user新增valid_from与valid_to并回填策略` `TASK-T5-BE-01,认证链路有效期统一校验,Task,EPIC-T5,后端,1,P0,TASK-T5-DB-01,登录刷新关键写操作统一拦截并返回11004` `TASK-T5-FE-01,用户有效期表单与状态展示,Task,EPIC-T5,前端,1,P0,TASK-T5-BE-01,新增有效期字段与到期标识展示` `TASK-T5-QA-01,有效期全链路回归,Task,EPIC-T5,测试,1,P0,TASK-T5-BE-01;TASK-T5-FE-01,覆盖生效前有效期内过期后三段场景` ### 10.4 建议前置依赖图 - `T1` 与 `T5` 可并行,建议优先完成(P0)。 - `T2` 依赖企业表迁移后再做项目联动。 - `T3` 建议在 `T1/T5` 稳定后推进,避免权限链路改动冲突。 - `T4` 可与 `T2/T3` 并行,但需与鉴权改造保持分支隔离。