Files
AIclinicalresearch/docs/03-业务模块/IIT Manager Agent/00-系统设计/IIT Manager Agent 项目实施战略与 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

72 lines
3.6 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.
# **IIT Manager Agent 项目实施战略与 MVP 路线图**
## **1\. 核心战略:以“感知”驱动“信任”**
在 Phase 1我们不急于实现“全自动数据搬运”因为“写”的合规风险和技术门槛最高。我们应优先实现\*\*“智能感知与主动预警”\*\*。
**MVP 的定义:**
能够实时监听 REDCap 录入,利用 Dify RAG 发现逻辑偏差,并推送到 PI 的微信端进行预警。
## **2\. 三大里程碑 (Milestones)**
### **里程碑 1通路搭建“路要通”**
* **目标**:建立 REDCap \-\> Node.js \-\> 微信的闭环。
* **关键任务**
* **环境初始化**SAE 部署后端RDS 初始化 iit\_schema。
* **EDC 适配器**:完成 REDCap External Module (EM) 基础开发,实现保存记录时的 Webhook 触发。
* **微信联通**:完成企业微信应用创建与消息推送接口对接。
### **里程碑 2智能注入“脑要灵”**
* **目标**:实现 AI 对临床方案的深度理解。
* **关键任务**
* **Dify 知识库**:上传 1-2 份标准临床协议,调试 RAG 检索参数。
* **Prompt 调优**:编写并测试“数据质控 Agent”提示词确保其输出符合我们的 JSON 协议。
* **影子生成**:实现后端自动生成 PendingAction 记录。
### **里程碑 3闭环协同“活要细”**
* **目标**:上线 PC Workbench 和 PI 小程序,实现人机确认。
* **关键任务**
* **Workbench 骨架**:基于 Ant Design X 实现任务列表与证据对比区。
* **PI 小程序**:实现品牌化报表展示与移动端一键审批。
* **回写闭环**:实现 APPROVED 状态后的 REDCap API 自动回写。
## **3\. 当前最重要的技术攻坚点 (Technical Hard Rocks)**
### **3.1 REDCap EM 的非侵入式“侧挂” (P0)**
* **挑战**:如何在不破坏医院既有 REDCap 环境的前提下,稳定地把数据“钩”出来。
* **对策**:利用 REDCap 官方的 External Module 框架,只做数据转发,不做业务处理。
### **3.2 证据链的“精准定位” (P0)**
* **挑战**Dify 返回的文字片段如何转化成前端 PDF 预览的高亮坐标。
* **对策**:在 Dify 侧配置支持返回 metadata含页码前端实现一个轻量级的 PDF.js 高亮层。
### **3.3 任务引擎的“长周期调度” (P1)**
* **挑战**:临床研究持续数月甚至数年,如何保证任务不丢失、不重复。
* **对策**:利用 pg-boss 的持久化队列,结合 Postgres 事务保证状态一致性。
## **4\. MVP 版本功能清单 (Scope for MVP)**
为了让用户快速见到东西MVP 建议仅包含以下功能:
1. **项目初始化**:手动输入 5 个关键变量映射(暂不做全量自动映射)。
2. **实时质控预警**:针对“年龄、性别、核心入排标准”进行 AI 检查。
3. **微信消息推送**当录入违背方案时PI 收到企微卡片。
4. **PC 简易工作站**:查看违背详情和 AI 给出的证据片段。
## **5\. 建议的行动顺序 (Next Steps)**
1. **立刻执行 (Day 1-3)**
* 注册并认证企业微信开发者主体。
* 在阿里云 SAE 搭建第一个 Node.js Hello World并调通企业微信推送 API。
2. **同步推进 (Day 1-7)**
* 由一位前端工程师基于我们的 HTML 原生开始搭建 React 版本的 Workbench 骨架。
* 由一位后端工程师开始编写 REDCap EM 插件的 PHP 代码。
**当前阶段**Ready to Code | **目标日期**2 周内完成 MVP 演示闭环