Files
AIclinicalresearch/docs/03-业务模块/RVW-稿件审查系统/00-系统设计/V3.0/AI智能审稿系统(期刊SaaS版)产品需求文档0314.md
HaHafeng 16179e16ca feat(rvw): deliver tenant portal v4 flow and config foundation
Implement RVW V4.0 tenant-aware backend/frontend flow with tenant routing, config APIs, and full portal UX updates. Sync system/RVW/deployment docs to capture verified upload-review-report workflow and next-step admin configuration work.

Made-with: Cursor
2026-03-14 22:29:40 +08:00

141 lines
13 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.
# **智能审稿系统 (期刊SaaS版) V4.0 产品需求文档 (PRD)**
**文档版本:** V1.6 (新增统一通行证 SSO 与动态租户登录架构)
**制定日期:** 2026-03-14
**产品名称:** RVW 智能审稿系统 (Journal AI Review SaaS)
**目标用户:** 医学期刊编辑部(主编/责编)、期刊外审专家、投稿作者
**核心定位:** 为医学期刊量身定制的、支持高度个性化配置的独立 AI 预审稿 SaaS 平台。
**💡 MVP 阶段战略提示:** 为降低初期开发成本并把控质量,系统初期采用 **Managed SaaS代运营/配置)模式**。复杂的底层规则配置由内部运营/实施团队通过现有的 ADMIN 管理端完成。外部期刊客户只需“开箱即用”业务端。
## **1\. 产品背景与目标**
### **1.1 演进背景**
当前 RVW 模块V3.0.1)具备了强大的 4 维审查能力。但与临床科研人员共用平台存在品牌混杂、审查标准缺乏弹性、管理权限缺失等痛点。不同期刊(如英文 SCI 期刊 JTIM vs 中文核心期刊)的稿约规范、重点审查维度截然不同,系统亟需多租户的个性化配置能力。
### **1.2 产品目标**
1. **SaaS 化业务端升级**引入“租户Tenant”隔离每个期刊作为一个独立租户拥有独立的子域名、独立登录页、独立品牌标识的业务端工作台。
2. **建立完整的期刊工作流**:涵盖“作者投递预审 \-\> 责编复核 \-\> 勾选重组 \-\> 导出内部报告/发送作者退修信”。
3. **架构收敛的内部配置中枢 (核心)****不另起炉灶开发独立配置中心**,而是深度扩展现有的 ADMIN 运营管理端。利用现有的租户管理体系Tenant实现跨期刊的审稿流水线无缝配置。
4. **统一通行证 (SSO)**:期刊用户与现有临床研究平台用户底层互通,实现跨域无缝漫游,沉淀统一的医生/专家账号体系。
## **2\. 角色与权限体系**
| 角色类型 | 典型用户 | 核心权限清单 |
| :---- | :---- | :---- |
| **内部实施/超管** | 壹证循运营团队 | **MVP 阶段的核心主导者**。拥有 ops:user-ops 及 SUPER\_ADMIN 权限。在现有的 ADMIN 端 TenantDetailPage 中,为不同期刊租户编排 Skills 规则、配置动态 Prompt 及 Handlebars 模板。 |
| **期刊主编/管理员** | 期刊编辑部主任 | 纯业务视角。查看本刊数据仪表盘、管理责编账号、查阅本刊所有稿件审查进度。**MVP 阶段无需登录底层 ADMIN 端**。 |
| **期刊责编** | 期刊审稿编辑 | 登录期刊专属 URL接收稿件、触发 AI 审查、人工复核确认缺陷项、导出内部报告与给作者的退修信。 |
## **3\. 核心功能需求 (Functional Requirements)**
### **3.1 期刊专属门户与统一通行证 (Business Portal & SSO)**
交付给外部期刊责编的核心业务模块。该模块在底层与临床研究主站共用同一套用户体系platform\_schema.users实现“统一通行证”体验在表层依靠以下机制实现业务硬隔离
* **子域名路由区分 (Domain Routing)**:支持按拼音或缩写生成独立 URLjtim.xunzhengyixue.com。前端应用初始化时通过解析 window.location.hostname 自动切入“期刊工作台模式”。
* **动态定制化登录页 (Dynamic Login UI)**:用户访问子域名时,前端在未登录态下请求该租户的公开配置(公开接口)。据此渲染完全定制化的期刊专属登录页(独立的期刊 Logo、专属品牌色、独立背景图在视觉上打造完全独立的系统心智。
* **沉浸式 4-Tab 审稿详情页**:优先渲染大模型生成的 expert\_report\_markdown (由内部团队在配置中心编写的 Handlebars 模板渲染而成)。
* **退修信自动生成与双轨导出**:基于责编在 AI 找出的“缺陷列表”中的勾选确认项,一键生成语气委婉专业、条理清晰的 Letter to Authors。
### **3.2 租户审查配置扩展 (ADMIN 模块深度集成) ——**
![][image1]**定位说明**直接在现有的运营管理端ADMIN的**租户详情页 (TenantDetailPage)** 中进行能力扩展,实现“千刊千面”。
#### **3.2.1 UI 集成方案:新增“智能审稿配置” Tab**
在现有的 TenantDetailPage目前包含“基础信息”、“模块配置”、“配额管理”等新增一个名为 **【智能审稿配置 (RVW Skills)】** 的 Tab。内部人员在此进行以下 4 大 Skills 的个性化编排:
1. **稿约规范评估 (Editorial Skill) 配置**
* **提取规则维护**列表化维护该期刊的特有规则AI署名检测、摘要字数限制
* **一票否决 (Fatal) 设定**:勾选致命错误项,触发时直接高亮拦截。
2. **方法学评估 (Methodology Skill) 动静分离配置**
* **评判标准配置 (Business Criteria Prompt)**:自然语言文本框,交代该期刊的特殊审查要求(如:“必须提供 P 值的精确值”)。
* **报告展示模板 (Handlebars Template)**:利用 ADMIN 现有的模板渲染引擎,配置该期刊最终审查报告的排版样式(如 1、2、3 点列表,或特定专家语气)。
3. **数据验证 (Data Forensics Skill) 配置**
* 验证深度下拉选项L1 算术验证 / L2 统计学验证 / L3 双通道核查)。
4. **临床专业评估 (Clinical Skill) 配置**
* FINER 权重配置5 个输入框控制总和为 100% 的打分权重)。
* 专科特色补充文本。
## **4\. 技术架构影响与底层升级指南**
此次升级完美契合平台现有的 Postgres-Only 架构与 ADMIN 模块基建。
### **4.1 数据模型扩展 (Database Schema)**
在 platform\_schema 中保持现有的 tenants 表作为核心,新增 1 对 1 扩展表:
* **新增表 tenant\_rvw\_configs**
* tenant\_id (外键,关联 tenants.id)
* editorial\_rules (JSONB: 存储稿约规则数组及 fatal 标记)
* methodology\_expert\_prompt (Text: 专家的业务评判标准)
* methodology\_handlebars\_template (Text: 报告渲染模板)
* data\_forensics\_level (Enum: L1/L2/L3)
* finer\_weights (JSONB: 临床评估的五维权重)
### **4.2 Prompt “动静分离” 与双轨输出落地**
针对 PromptService 进行架构升级,彻底解决 JSON 崩溃问题:
* **静态协议层 (系统级,不可更改)**
* 在 capability\_schema.prompt\_templates 表中,固化一条名为 RVW\_METHODOLOGY\_SYSTEM\_BASE 的记录。
* 内容写死:强制开启 Structured Output (或 JSON Schema),必须返回 system\_metrics (含 20 项检查点状态) 和 expert\_report\_markdown 两个节点。
* **动态业务层 (租户级,内部运营可调)**
* 内容来源于新增的 tenant\_rvw\_configs 表的 methodology\_expert\_prompt 字段。
* **运行时拼装 (Runtime Concat)**
* SkillExecutor 执行时,先通过 promptService.get('RVW\_METHODOLOGY\_SYSTEM\_BASE') 获取底层系统约束。
* 再拉取当前 tenantId 的动态业务评判标准。
* **内存拼接后发送给 LLM**。大模型会根据专家的排版要求,将纯净的格式化文本填充至 expert\_report\_markdown 字段中。
* **展示层渲染 (Handlebars)**
* 结合现有的 Handlebars 渲染器与租户存储的 methodology\_handlebars\_template在前端/导出时直接渲染,实现“专家零感知 JSON”。
### **4.3 接口权限中间件复用**
* **内部配置权限**:复用现有的 ops:user-ops 与 requireModule 中间件,控制内部人员进入 TenantDetailPage 修改审稿配置。
* **外部业务权限**:所有 RVW 业务 API (/api/v2/rvw/\*) 复用租户边界校验,确保稿件数据硬隔离。
### **4.4 统一账号与鉴权体系 (SSO)**
为了实现医生专家在“临床科研平台”与“各期刊 SaaS 门户”之间的无缝漫游,架构需遵守以下设计:
* **绝对底层复用**:禁止为期刊 SaaS 业务新建独立的用户库,全面复用现有的 platform\_schema.users。同一个账号密码既可登录主站做数据清洗DC也可登录 jtim. 子域名进行审稿。
* **JWT 会话隔离 (Session Isolation)**:身份认证层 auth.service.ts 需升级。在签发 JWT 时后端必须根据登录请求携带的租户上下文tenantId将其压入 Payload。系统的 auth.middleware.ts 提取该 tenantId 实现全局请求的行级数据隔离。
* **模块动态过滤 (Module Filtering)**:依托平台现有的 user\_modules 体系,当识别到用户登录在某期刊租户(如 JTIM由于该租户仅订阅了 RVW 模块,系统会自动隐藏左侧/顶部的 AIA、DC、PKB 等所有无关入口,为编辑提供纯粹的沉浸式工作台。
## **5\. 迭代演进路线图 (Roadmap)**
通过复用现有的 ADMIN 模块Phase 2 的前端开发工作量将缩减 50% 以上。
### **Phase 1: 统一账号隔离与扩展表 (预计 1 周)**
* 创建 Prisma 模型 tenant\_rvw\_configs 并执行迁移。
* 开发基于域名的动态路由拦截器,实现子域名加载特定的登录 UI。
* 升级 JWT 签发逻辑,确保 Token Payload 中正确注入租户上下文。
### **Phase 2: ADMIN 运营端深度集成 (预计 1.5 周)**
* **UI 扩展**:在 frontend-v2 的 TenantDetailPage.tsx 中新增 【智能审稿配置】Tab 页及对应的表单组件。
* **后端 API**:新增 /api/admin/tenants/:id/rvw-config 的 CRUD 接口。
* **引擎改造**:重构 SkillExecutor读取扩展表配置并落实 Prompt 的“静态系统层 \+ 动态租户层”拼装逻辑Hybrid Schema
### **Phase 3: 面向外部的业务端重构及双轨导出 (预计 2 周)**
* 沉淀通用英文审稿规范(如 ICJME/COPE 标准)至底层预制规则库。
* 上线 **作者退修信 (Author Reply Letter)** 一键生成功能。
* 全面跑通独立工作台上的全流程,交付给首批期刊客户(如 JTIM, CMJ进行 Beta 测试。
## **6\. 验收标准**
1. **统一账号漫游**:用户在主站注册账号后,无需重新注册即可用相同账密登录专属的期刊入口(如 JTIM子域名
2. **架构收敛**:没有开发新的独立配置后台,所有配置均在现有的 ADMIN \-\> TenantDetailPage 中顺滑完成权限体系ops:user-ops复用良好。
3. **极速生效与不冲突**:内部实施人员在 TenantDetailPage 修改某期刊的 Handlebars 模板文本。点击保存后,即刻影响客户新上传稿件的最终报告显示排版,且底层的 JSON 解析 100% 成功,系统零崩溃。
4. **双轨导出功能**:外部责编能够在查阅完全部 AI 评估后,在弹出的窗口中勾选 3 个致命错误,点击“生成退修信”,系统随即利用专属信函模板生成一封精准的专业邮件/Word。
[image1]: <data:image/png;base64,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>