Files
AIclinicalresearch/docs/03-业务模块/RVW-稿件审查系统/04-开发计划/RVW V4.0 期刊配置中心MVP开发计划.md
HaHafeng 83e395824b feat(rvw): complete journal config center MVP and tenant login routing
Deliver the RVW V4.0 journal configuration center across backend, frontend, migration, and docs with zh/en editorial baseline support and tenant-level prompt/template overrides. Unify tenant login to /:tenantCode/login and auto-enable RVW module when tenant type is JOURNAL to prevent post-login access gaps.

Made-with: Cursor
2026-03-15 11:51:35 +08:00

11 KiB
Raw Blame History

RVW V4.0 期刊配置中心 MVP 开发计划

文档版本: v1.0
创建日期: 2026-03-15
适用范围: RVW 多租户期刊配置中心ADMIN 运营管理端)
约束前提: 严格遵循 docs/04-开发规范/09-数据库开发规范.md


1. 目标与范围

本计划用于落地 RVW V4.0 的「期刊配置中心」MVP满足以下目标

  1. 在运营管理端新增独立一级模块「期刊配置中心」(类似 IIT 项目管理入口形态)。
  2. 系统默认配置支持区分:
    • 中文-稿约规范性
    • 英文-稿约规范性
    • 方法学、数据验证、临床专业评估(通用默认)
  3. 期刊(如 AAA、BBB可选择
    • 继承系统默认配置
    • 在默认基础上进行覆盖
  4. 期刊基础信息新增字段:期刊语言(中文/英文/其他)。
  5. MVP 阶段功能可精简,但数据库字段一次性补齐(覆盖 P0/P1/P2 + 期刊语言)。

2. 关键输入文档

  1. 需求基线
    docs/03-业务模块/RVW-稿件审查系统/00-系统设计/V3.0/RVW V4.0 期刊租户配置中心开发需求0315.md

  2. 英文稿约默认规则(系统默认 EN 基线)
    docs/03-业务模块/RVW-稿件审查系统/00-系统设计/V3.0/通用英文期刊稿约审查提示词.md

  3. 数据库规范(强制约束)
    docs/04-开发规范/09-数据库开发规范.md

  4. 既有总计划参考
    docs/03-业务模块/RVW-稿件审查系统/04-开发计划/RVW V4.0 期刊SaaS版开发计划.md


3. 架构策略MVP 版)

3.1 配置分层

  • 第 1 层(系统默认层)
    • Editorial: ZH / EN 双基线
    • Methodology / DataForensics / Clinical: 通用基线
  • 第 2 层(期刊继承层)
    • 默认继承系统配置
  • 第 3 层(期刊覆盖层)
    • 租户填入自定义 Prompt/Template 后覆盖系统默认

3.2 运行时合并规则

对任一技能维度,统一采用:

最终配置 = 期刊自定义值 ?? 系统默认值

Editorial 额外规则:

  • editorialExpertPrompt 为空,则按 editorialBaseStandard 路由:
    • zh -> 中文稿约默认 Prompt
    • en -> 英文稿约默认 Prompt
  • 若期刊未显式设置 editorialBaseStandard,按 期刊语言 映射默认值:
    • 中文 -> zh
    • 英文/其他 -> en

4. 数据模型设计(一次性补齐)

4.1 设计原则

  • MVP 功能可分阶段启用,但字段一次性建完,避免重复迁移。
  • 使用 null 表达“继承系统默认”。
  • 严格使用 Prisma migration不允许手工 DDL 改库。

4.2 表结构调整

A. platform_schema.tenants(期刊基础信息)

新增/补齐字段(若已有同义字段,统一命名后保留兼容映射):

  • journal_language (ZH | EN | OTHER) // P0
  • journal_full_name (String) // P0
  • logo_url (String?) // P1
  • brand_color (String?) // P1
  • login_background_url (String?) // P2

B. platform_schema.tenant_rvw_configs(期刊审稿配置)

一次性补齐四维 Prompt + Template

  • editorial_base_standard (zh | en) default en
  • editorial_expert_prompt (Text?)
  • editorial_handlebars_template (Text?)
  • methodology_expert_prompt (Text?)
  • methodology_handlebars_template (Text?)
  • data_forensics_expert_prompt (Text?)
  • data_forensics_handlebars_template (Text?)
  • clinical_expert_prompt (Text?)
  • clinical_handlebars_template (Text?)

兼容说明:历史结构化字段(如 editorialRules/dataForensicsLevel/finerWeights如需保留先保留读兼容MVP 写入统一走 Prompt/Template 字段。


5. 数据库实施规范(必须执行)

严格按 09-数据库开发规范.md 三条铁律执行:

  1. 所有变更通过 npx prisma migrate dev --name xxx 生成迁移。
  2. 禁止 prisma db push(含任何变体)。
  3. 每次迁移后,立即更新 docs/05-部署文档/03-待部署变更清单.md

推荐本次迁移命名:

  • 20260315_add_journal_fields_to_tenants
  • 20260315_expand_tenant_rvw_configs_for_all_prompt_templates

Shadow DB 失败时,按规范第 10 章降级流程处理并 migrate resolve --applied 标记。


6. 可执行任务清单

6.1 后端任务

BE-1 Schema 与迁移

  • 修改 backend/prisma/schema.prisma
  • 生成并审查迁移 SQL
  • 更新 Prisma Client

交付物:

  • backend/prisma/migrations/*/migration.sql
  • backend/prisma/schema.prisma

BE-2 系统默认配置路由

  • 在 Prompt 默认库中明确:
    • SYSTEM_DEFAULT_EDITORIAL_EN 使用英文默认规则(来源于指定文档)
    • SYSTEM_DEFAULT_EDITORIAL_ZH 使用中文默认规则
    • 其余 3 个技能保留通用默认

BE-3 管理端 API期刊配置中心

  • 新增/扩展 API
    • GET /api/admin/journal-configs
    • GET /api/admin/journal-configs/:tenantId
    • PUT /api/admin/journal-configs/:tenantId/basic-info
    • PUT /api/admin/journal-configs/:tenantId/rvw-config
  • 权限:authenticate + requirePermission('ops:user-ops')

BE-4 RVW 执行链路接线

  • 在 Worker/Skill 装配处接入期刊配置
  • ?? 规则完成 4 维配置合并
  • Editorial 增加 zh/en 基线路由

BE-5 安全校验

  • slug 正则校验(小写字母/数字/连字符)
  • journalLanguageeditorialBaseStandard 枚举校验
  • 日志记录配置来源system/custom

6.2 前端任务

FE-1 新增左侧一级模块

  • ADMIN 左侧导航新增 期刊配置中心
  • 路由挂载与权限控制

FE-2 列表页

  • 期刊列表名称、slug、语言、状态、更新时间、操作
  • 支持搜索/筛选/分页

FE-3 详情配置页

  • 基础信息区:
    • 期刊全称
    • 访问路径 slug
    • 期刊语言(中文/英文/其他)
    • Logo/主色/背景图字段先存储MVP 可不渲染)
  • 审稿配置区4 Skills
    • 继承/自定义切换
    • Editorial 继承态支持 zh/en 基线选择
    • 每个维度 Prompt + Handlebars Template 文本框

FE-4 API 类型对齐

  • 更新 TypeScript DTO 与后端一致
  • null 语义统一为“继承默认”

6.3 联调任务

INT-1 中英文默认稿约验证

  • JTIM 配置为 en 继承,触发英文稿约规则
  • CMJ 配置为 zh 继承,触发中文稿约规则

INT-2 继承与覆盖验证

  • AAA 继承默认
  • BBB 在临床维度自定义 Prompt
  • 对比两者结果差异应符合预期

INT-3 兼容性验证

  • 历史任务查询不受影响
  • 现有租户登录/访问链路不回归

7. 验收标准DoD

  1. ADMIN 出现独立一级菜单「期刊配置中心」。
  2. 可在期刊维度配置并保存 期刊语言
  3. 系统可明确区分中英文稿约默认规则。
  4. 期刊支持“继承默认 + 局部覆盖”两种模式。
  5. 数据库字段一次性补齐P0/P1/P2 + 期刊语言)。
  6. 所有迁移已入库并追加到待部署变更清单。

8. 排期建议MVP

  • Day 1: BE-1 + BE-2Schema/迁移/默认配置)
  • Day 2: BE-3 + FE-1/FE-2管理端骨架
  • Day 3: FE-3 + FE-4配置页面联通
  • Day 4: BE-4 + 联调INT-1/2/3
  • Day 5: 验收、文档补充、部署清单复核

9. 风险与规避

  1. 风险:数据库 drift
    规避:禁止 db push迁移前后执行 status 与 SQL 审查。

  2. 风险:字段多但 UI 尚未全部启用
    规避:字段先入库,前端按阶段开放;未启用字段保持可空。

  3. 风险:中英文规则路由错误
    规避加运行时日志language/baseStandard/promptSource与双租户回归用例。


10. 审查报告对齐结论(含 TenantType 现状)

针对以下两份审查报告:

  • docs/03-业务模块/RVW-稿件审查系统/08-技术架构建议/期刊配置中心MVP计划审查报告.md
  • docs/03-业务模块/RVW-稿件审查系统/08-技术架构建议/ADMIN多业态租户架构演进评估 (1).md

本计划采用如下对齐结论:

10.1 认可并吸收的观点

  1. 前端独立模块方向正确:在 ADMIN 左侧建立独立一级菜单“期刊配置中心”是正确演进方向。
  2. 后端数据层保持统一:继续复用 platform_schema.tenants,不拆分新的“期刊主租户表”。
  3. 配置中心必须可运营Handlebars 模板能力应保留,避免后续“千刊千面”报告格式无法落地。
  4. 跨表一致性要求:涉及 tenants 与 tenant_rvw_configs 同步修改的场景,应使用事务保证原子性。

10.2 需要修正的审查结论(以代码现状为准)

两份报告中“系统当前没有 TenantType”的表述不准确。当前系统已存在 TenantType

  • 后端 backend/prisma/schema.prisma 中已有 enum TenantTypetenants.type
  • 当前枚举值:HOSPITAL / PHARMA / INTERNAL / PUBLIC

因此,本项目不需要“从 0 引入 TenantType 机制”,而是需要在现有机制上评估扩展:

  • 方案 A推荐新增 JOURNAL 枚举值,用于期刊配置中心过滤与治理
  • 方案 B兼容暂不新增枚举短期用 INTERNAL 或约定标签过渡(不推荐长期使用)

本计划采用:方案 A新增 JOURNAL


11. 最低成本实施策略(先跑通,不做大重构)

11.1 决策原则

针对“当前 Prompt 是否硬编码、是否立刻大重构”的问题,本计划明确:

  1. 不做大重构(避免阻塞交付)
  2. 必须做最小配置适配(保证配置中心不是“假配置”)
  3. Handlebars 保留并最小启用(保留未来扩展能力,当前成本可控)

11.2 最小配置适配(必须)

在现有 RVW 链路上增加一层“薄适配”即可,不推翻当前实现:

  • 统一规则:finalPrompt = tenantCustomPrompt ?? systemDefaultPrompt
  • Editorial 特殊规则:
    • 租户未自定义时,按 editorialBaseStandard 选择 zh/en 默认 Prompt
    • 若未显式设置 editorialBaseStandard,则按 journalLanguage 映射(ZH -> zh,其他 -> en
  • 目标:让“期刊配置中心”的保存结果立即影响审稿行为

11.3 Handlebars 最小启用策略

当前阶段不做复杂重构,但必须保留模板层:

  1. 字段保留:四维模板字段全部入库(已在第 4 章定义)
  2. 运行时策略:模板为空时走系统默认模板
  3. 失败兜底:模板渲染失败时降级返回原始报告内容,防止线上中断
  4. MVP 可选项:测试渲染可先后置到 P1但预留接口与校验能力

11.4 为什么不建议“完全按写死先跑”

若只做 UI 不接运行时,配置中心会变成“可编辑但不生效”,风险更高:

  • 运营以为已生效,实际审稿仍走旧规则
  • 期刊 AAA/BBB 差异化配置无法验证
  • 后续回补执行链路时会引入二次返工和信任成本

因此本计划采用“小步接线,先真生效”策略,而非“先写死跑通”。


12. 本计划执行前检查清单

  • 已确认英文默认稿约规则文本(指定文档)
  • 已确认中文默认稿约规则文本(对应文档)
  • 已同步研发团队数据库铁律09 规范)
  • 已确认 TenantType 扩展策略(新增 JOURNAL
  • 已确认“先最小适配,不做大重构”的实施口径
  • 已创建本次迁移命名并分配负责人
  • 已约定联调样例租户(至少 JTIM + CMJ