Files
AIclinicalresearch/docs/03-业务模块/RVW-稿件审查系统/01-需求分析/智能期刊审稿系统 MVP 产品需求文档.md
HaHafeng 66255368b7 feat(admin): Add user management and upgrade to module permission system
Features - User Management (Phase 4.1):
- Database: Add user_modules table for fine-grained module permissions
- Database: Add 4 user permissions (view/create/edit/delete) to role_permissions
- Backend: UserService (780 lines) - CRUD with tenant isolation
- Backend: UserController + UserRoutes (648 lines) - 13 API endpoints
- Backend: Batch import users from Excel
- Frontend: UserListPage (412 lines) - list/filter/search/pagination
- Frontend: UserFormPage (341 lines) - create/edit with module config
- Frontend: UserDetailPage (393 lines) - details/tenant/module management
- Frontend: 3 modal components (592 lines) - import/assign/configure
- API: GET/POST/PUT/DELETE /api/admin/users/* endpoints

Architecture Upgrade - Module Permission System:
- Backend: Add getUserModules() method in auth.service
- Backend: Login API returns modules array in user object
- Frontend: AuthContext adds hasModule() method
- Frontend: Navigation filters modules based on user.modules
- Frontend: RouteGuard checks requiredModule instead of requiredVersion
- Frontend: Remove deprecated version-based permission system
- UX: Only show accessible modules in navigation (clean UI)
- UX: Smart redirect after login (avoid 403 for regular users)

Fixes:
- Fix UTF-8 encoding corruption in ~100 docs files
- Fix pageSize type conversion in userService (String to Number)
- Fix authUser undefined error in TopNavigation
- Fix login redirect logic with role-based access check
- Update Git commit guidelines v1.2 with UTF-8 safety rules

Database Changes:
- CREATE TABLE user_modules (user_id, tenant_id, module_code, is_enabled)
- ADD UNIQUE CONSTRAINT (user_id, tenant_id, module_code)
- INSERT 4 permissions + role assignments
- UPDATE PUBLIC tenant with 8 module subscriptions

Technical:
- Backend: 5 new files (~2400 lines)
- Frontend: 10 new files (~2500 lines)
- Docs: 1 development record + 2 status updates + 1 guideline update
- Total: ~4900 lines of code

Status: User management 100% complete, module permission system operational
2026-01-16 13:42:10 +08:00

5.4 KiB
Raw Blame History

智能期刊审稿系统 MVP 产品需求文档

项目属性 内容
项目名称 智能期刊审稿辅助系统 (SmartReview MVP)
文档版本 V1.0 (MVP)
优先级 P0 (核心功能闭环)
目标用户 期刊初审编辑

1. 产品目标 (Product Goal)

打造一个**“开箱即用”**的智能审稿工具。编辑上传稿件,系统自动运行双重检查(规范性+方法学),输出可供参考的审稿报告。
核心指标:上传到出报告 < 2分钟规范性问题检出率 > 80%。

2. 功能范围 (Scope)

MVP 包含 (In Scope)

  1. 账户体系:简单的账号登录,支持期刊 Logo 定制。
  2. 文件处理:批量上传 Word/PDF列表展示状态。
  3. 审查流程:用户手动选择智能体发起审查,后台异步运行。
  4. 规范性审查覆盖字数、摘要结构、参考文献、图片DPI等硬指标。
  5. 方法学审查PICO 提取、研究类型识别、基础统计逻辑校验。
  6. 报告与导出:双视图报告展示,支持 PDF 导出。

MVP 不包含 (Out of Scope)

  1. 在线文档编辑器 (Web Office)。
  2. 复杂的角色权限管理系统。
  3. 邮件自动发送功能。
  4. 高级历史归档与检索系统。
  5. 前端可视化的 Prompt 配置后台。

3. 详细功能需求 (Requirements)

3.1 登录页 (Login)

  • 功能:账号密码验证。
  • UI
    • 左/上侧展示期刊 Logo 与名称(支持配置)。
    • 输入框:账号、密码。
    • 登录按钮:点击校验,失败提示“账号或密码错误”。
  • 逻辑Session 保持 24 小时,避免频繁登录。

3.2 审稿工作台 (Dashboard)

这是系统的主界面,采用**“宽表”**布局。

3.2.1 顶部操作区

  • 品牌区展示“XX杂志社智能审稿系统”。
  • 筛选栏
    • 状态 (全部/待处理/已完成)。
    • 时间 (今天/近7天)。
  • 上传按钮
    • 点击触发文件选择器。
    • 支持多选。
    • 支持扩展名:.docx, .pdf。
    • 限制:单文件 < 50MB。

3.2.2 稿件列表

列表包含以下列:

  • 复选框:用于批量操作。
  • 文件信息:文件名(点击进入详情)、大小、上传时间。
  • 审稿维度:展示 Tags规范性、方法学
  • 状态:
    • 待处理:刚上传,未运行。
    • 运行中:展示动态 Loading 图标。
    • 已完成
      • 若跑了规范性,显示分数(如:绿色 "90分")。
      • 若跑了方法学,显示结论(如:黄色 "存疑")。
  • 操作列:
    • [开始审查]:针对待处理状态。
    • [查看报告]:针对已完成状态。

3.2.3 任务发起弹窗 (The Launcher)

  • 触发:点击列表中的“开始审查”或底部批量操作栏的“运行”。
  • 内容
    • 标题:“发起智能审查”。
    • 复选框组:
      • [x] 稿约规范性智能体 (默认选中)。
      • [ ] 方法学统计智能体。
  • 逻辑:点击确定后,后端创建任务,列表状态变为“运行中”。

3.3 审稿详情页 (Report Detail)

3.3.1 头部信息

  • 展示文件名、作者若能提取、版本标签MVP可暂不显示
  • 按钮:[下载原稿]、[导出报告PDF]。

3.3.2 视图 A稿约规范性报告

  • 总评卡片:展示总分 (0-100) 和 结论 (Pass/Fail)。
  • 检查项列表
    • 文题字数:提取字数,对比标准(如 <20字
    • 摘要结构:正则匹配“目的/方法/结果/结论”关键词。
    • 参考文献:识别引用格式错误。
    • 图片质量:显示低分辨率图片的页码和 DPI 值。
  • 交互:每个报错项下方提供“建议修改意见”,支持点击复制。

3.3.3 视图 B方法学评估报告

  • PICO 卡片:结构化展示提取出的 P/I/C/O 内容。
  • 逻辑推理区
    • 展示模型对“研究类型”的判断(如:回顾性队列研究)。
    • 展示“统计方法”的合理性分析(如:发现多组比较未用 ANOVA
    • 红绿灯
      • 🔴 错误:明确的逻辑硬伤。
      • 🟡 存疑:模型不确定,需人工复核。
      • 🟢 通过:逻辑自洽。

4. 技术与性能要求 (Non-functional)

  1. 响应速度
    • 列表加载 < 1秒。
    • 文件上传速度取决于带宽,需有进度反馈。
  2. 并发处理
    • 支持至少 5 个任务并发运行(不需要排队太久)。
  3. 兼容性
    • 优先支持 Chrome / Edge 浏览器。
  4. 数据安全
    • 稿件文件存储需加密或隔离。
    • 审稿报告仅授权账号可见。

5. 验收标准 (Acceptance Criteria)

  1. 流程通:用户能成功上传 5 个 PDF勾选双模型运行等待 3 分钟内,状态全部变为“已完成”。
  2. 报告准
    • 上传一篇故意删掉“摘要结论”的稿件,规范性智能体必须报错。
    • 上传一篇故意混淆“t检验”和“卡方检验”的稿件方法学智能体必须报“存疑”或“错误”。
  3. 无崩溃:连续上传 20 个文件,系统不卡死,不白屏。