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
This commit is contained in:
@@ -1,90 +1,106 @@
|
||||
# **IIT Manager Agent V4 摰峕㟲鈭批<EFBFBD><EFBFBD><EFBFBD>瘙<EFBFBD><EFBFBD>獢?(<28>券<EFBFBD><E588B8><EFBFBD><EFBFBD><EFBFBD>?**
|
||||
# **IIT Manager Agent V4 完整产品需求文档 (全量集成版)**
|
||||
|
||||
## **1\. 引言**
|
||||
|
||||
### **1.1 项目背景**
|
||||
|
||||
<EFBFBD>函<EFBFBD>蝛嗉<EFBFBD><EFBFBD><EFBFBD>韏瑞<EFBFBD>銝游<EFBFBD>霂閖<EFBFBD>嚗㇆IT嚗劐葉嚗峕㺭<EFBFBD>株捶<EFBFBD>讐<EFBFBD><EFBFBD>詨<EFBFBD><EFBFBD>𤤿<EFBFBD><EFBFBD>其<EFBFBD><EFBFBD>𡏭<EFBFBD>蝔见仃<EFBFBD>把<EFBFBD>腈<EFBFBD><EFBFBD><EFBFBD>蝏毺<EFBFBD> EDC 蝟餌<E89D9F>嚗<EFBFBD><E59A97> REDCap嚗㗇糓<E39787>蹱<EFBFBD><E8B9B1><EFBFBD>霈啣<E99C88>撌亙<E6928C><E4BA99><EFBFBD>IT Manager Agent V4 <20>典銁<E585B8>朞<EFBFBD><E69C9E>𡏭䌊<F0A18FAD>娪<EFBFBD>餉<EFBFBD>蝻𡝗<E89DBB> \+ Dify <20>亥<EFBFBD>摨栞<E691A8><E6A09E>賤<EFBFBD>嘅<EFBFBD><E59885><EFBFBD>遣銝<E981A3>銝芸<E98A9D><E88AB8>劐蜓<E58A90>冽<EFBFBD>霂<EFBFBD><E99C82><EFBFBD><EFBFBD><EFBFBD>嗉捶<E59789>扼<EFBFBD><E689BC><EFBFBD>蝡臬<E89DA1><E887AC>𣬚<EFBFBD><F0A3AC9A>啣<EFBFBD>蝘𤑳<E89D98><F0A491B3>a<EFBFBD><EFBD81>?
|
||||
在研究者发起的临床试验(IIT)中,数据质量的核心痛点在于“过程失控”。传统的 EDC 系统(如 REDCap)是静态的记录工具。IIT Manager Agent V4 旨在通过“自研逻辑编排 \+ Dify 知识库赋能”,构建一个具有主动意识、实时质控、多端协同的数字科研团队。
|
||||
|
||||
### **1.2 核心目标**
|
||||
|
||||
* **銝餃𢆡隞餃𦛚<EFBFBD>?*嚗𡁜<E59A97> Protocol嚗<6C>䲮獢<E4B2AE><E78DA2>頧砍<E9A0A7>銝箔蜓<E7AE94>券店<E588B8>函<EFBFBD>隞餃𦛚瘚<F0A69B9A><E7989A><EFBFBD>屸<EFBFBD>鋡怠𢆡<E680A0><F0A286A1>㺭<EFBFBD>桀‵<E6A180>乓<EFBFBD>?
|
||||
* **<EFBFBD>餌<EFBFBD>蝥批<EFBFBD>閫?*嚗𡁻<E59A97>朞<EFBFBD><E69C9E>𨅯蔣摮鞟𠶖<E99E9F><F0A0B696><EFBFBD>脲㦤<E884B2>塚<EFBFBD>蝖桐<E89D96> AI 撱箄悅<E7AE84>刻<EFBFBD><E588BB>亦<EFBFBD><E4BAA6><EFBFBD><EFBFBD>嚗㇌EDCap嚗匧<E59A97>蝏讛<E89D8F>鈭箇掩蝖格<E89D96><E6A0BC>?
|
||||
* **閫<EFBFBD>芋<EFBFBD>硋<EFBFBD><EFBFBD>?*嚗𡁻<E59A97>朞<EFBFBD><E69C9E>靝<EFBFBD>敺桐葉<E6A190>?\+ 撠讐<E692A0>摨讛氜<E8AE9B>售<EFBFBD>肽圾<E882BD>?100+ 憿寧𤌍<E5AFA7>峕𧒄餈鞱<E9A488><E99EB1>嗥<EFBFBD><E597A5><EFBFBD><EFBFBD>敶鍦<E695B6><E98DA6>煺<EFBFBD>閫西噢<E8A5BF><E599A2><EFBFBD><EFBFBD>?
|
||||
## **2\. 鈭批<E988AD><E689B9>颱<EFBFBD><E9A2B1>嗆<EFBFBD>嚗𡁜<E59A97><F0A1819C>毺<EFBFBD><E6AFBA>?\+ 憭㚚<E686AD>霈斤䰻**
|
||||
* **主动任务化**:将 Protocol(方案)转化为主动驱动的任务流,而非被动的数据填报。
|
||||
* **医疗级合规**:通过“影子状态”机制,确保 AI 建议在进入真理源(REDCap)前经过人类确权。
|
||||
* **规模化品牌**:通过“企微中枢 \+ 小程序落地”解决 100+ 项目同时运行时的品牌归属感与触达效率。
|
||||
|
||||
蝟餌<EFBFBD><EFBFBD>曉<EFBFBD>鈭<EFBFBD><EFBFBD><EFBFBD>?Agent 獢<>沲嚗屸<E59A97><E5B1B8>沔*\*<2A>𨅯之<F0A885AF>睲<EFBFBD><E79DB2>曆髡擐<E9ABA1><E69390>𩄼*\*<2A><>氖<EFBFBD><E6B096>沲<EFBFBD><E6B2B2><EFBFBD>
|
||||
## **2\. 产品总体架构:原生编排 \+ 外部认知**
|
||||
|
||||
* **<2A>餉<EFBFBD>憭扯<E686AD> (Node.js \+ pg-boss)**嚗帋<E59A97>鈭𤾸<E988AD>蝡荔<E89DA1>韐蠘提<E8A098>嗆<EFBFBD><E59786>㦤瘚<E3A6A4>蓮<EFBFBD><E893AE>蔣摮鞉㺭<E99E89>桀<EFBFBD><E6A180><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鞉嵗撉<E5B597><E69289>撘<EFBFBD><E69298>蝟餌<E89D9F>靚<EFBFBD>漲<EFBFBD>?
|
||||
* **<2A>亥<EFBFBD><E4BAA5>曆髡擐?(Dify RAG)**嚗朞<E59A97>韐<EFBFBD><E99F90>蝏𤘪<E89D8F><F0A498AA>𡝗<EFBFBD>獢<EFBFBD><E78DA2><EFBFBD>寞<EFBFBD><E5AF9E><EFBFBD><EFBFBD><EFBFBD>𨰜<EFBFBD><F0A8B09C><EFBFBD><EFBFBD>䕘<EFBFBD><E49598><EFBFBD>圾<EFBFBD>𣂷<EFBFBD><F0A382B7>煾<EFBFBD>璉<EFBFBD>蝝g<E89D9D>雿靝蛹 AI <20><>恕<EFBFBD>亙<EFBFBD>撘箝<E69298>?
|
||||
## **3\. 蝏<>垢銝舘<E98A9D><E88898>脩畆<E884A9>?(Endpoint & Role Matrix)**
|
||||
系统放弃了黑盒 Agent 框架,采用\*\*“大脑与图书馆”\*\*分离的架构:
|
||||
|
||||
* **逻辑大脑 (Node.js \+ pg-boss)**:位于后端,负责状态机流转、影子数据处理、权限校验及异构系统调度。
|
||||
* **知识图书馆 (Dify RAG)**:负责非结构化文档(方案、指南、手册)的解析与向量检索,作为 AI 的认知增强。
|
||||
|
||||
## **3\. 终端与角色矩阵 (Endpoint & Role Matrix)**
|
||||
|
||||
系统通过“基础角色 \+ 扩展权限”模式,实现跨终端的紧密协作。
|
||||
|
||||
蝟餌<EFBFBD><EFBFBD>朞<EFBFBD><EFBFBD>𨅯抅蝖<EFBFBD>閫坿𠧧 \+ <20>拙<EFBFBD><E68B99><EFBFBD><EFBFBD><EFBFBD>脲芋撘𧶏<E69298>摰䂿緵頝函<E9A09D>蝡舐<E89DA1>蝝批<E89D9D><E689B9>譍<EFBFBD><E8AD8D>?
|
||||
| 角色 | 核心诉求 | 推荐终端 | 核心交互逻辑 |
|
||||
| :---- | :---- | :---- | :---- |
|
||||
| **憿寧𤌍韐蠘提鈭?(PI)** | 摰讛<EFBFBD>餈𥕦漲<EFBFBD><EFBFBD><EFBFBD>閫<EFBFBD>恣<EFBFBD>嫘<EFBFBD><EFBFBD>郎<EFBFBD>舀𥁒銵?| **隡<><E99AA1>敺桐縑 (<28>𡁶䰻) \+ 敺桐縑撠讐<E692A0>摨?(<28>亦<EFBFBD>)** | <20>交𤣰隡<F0A4A3B0>凝<EFBFBD>𡁶䰻嚗<E4B0BB>銁撠讐<E692A0>摨𤩺䰻<F0A4A9BA>见<EFBFBD><E8A781><EFBFBD><EFBFBD><EFBFBD>亥”撟嗅恣<E59785>?|
|
||||
| **<EFBFBD>讛<EFBFBD><EFBFBD>?(CRC)** | 敶訫<EFBFBD><EFBFBD>唳旿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>詨遣霈柴<EFBFBD><EFBFBD>恣<EFBFBD><EFBFBD><EFBFBD>霈?| **REDCap (敶訫<EFBFBD>) \+ PC Workbench (憭齿瓲)** | 撠𢠃<EFBFBD> REDCap 敶訫<EFBFBD>銋䭾<EFBFBD>嚗<EFBFBD>銁撌乩<EFBFBD>蝡坔<EFBFBD><EFBFBD>?AI 韐函<E99F90> |
|
||||
| **<EFBFBD><EFBFBD><EFBFBD>?(<28>𡑒<EFBFBD><F0A19192>?** | 霈輯<EFBFBD><EFBFBD>鞾<EFBFBD><EFBFBD><EFBFBD><EFBFBD>隞擧<EFBFBD>批<EFBFBD>撖潦<EFBFBD><EFBFBD>龫摮血倮霂?| **銝芯犖敺桐縑 (H5/撠讐<E692A0>摨?** | <EFBFBD>交𤣰<EFBFBD>?Agent 隞?CRC <EFBFBD>滢<EFBFBD><EFBFBD>煾<EFBFBD><EFBFBD><EFBFBD>隡<EFBFBD>凝瘨<EFBFBD><EFBFBD> |
|
||||
| **蝟餌<EFBFBD>蝞∠<EFBFBD><EFBFBD>?* | 憿寧𤌍<E5AFA7>嘥<EFBFBD><E598A5>硔<EFBFBD><E7A194><EFBFBD><EFBFBD>䠷<EFBFBD>蝵柴<E89DB5><E69FB4>AG 蝏湔擪 | **PC 蝡?(Admin Portal)** | <EFBFBD>啣<EFBFBD><EFBFBD>𡝗䲮獢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵桀<EFBFBD>畾菜<EFBFBD>撠<EFBFBD><EFBFBD><EFBFBD>恣<EFBFBD><EFBFBD><EFBFBD>蝘<EFBFBD><EFBFBD> |
|
||||
| **项目负责人 (PI)** | 宏观进度、合规审批、学术报表 | **企业微信 (通知) \+ 微信小程序 (查看)** | 接收企微通知,在小程序查看品牌化报表并审批 |
|
||||
| **协调员 (CRC)** | 录入数据、复核建议、管理随访 | **REDCap (录入) \+ PC Workbench (复核)** | 尊重 REDCap 录入习惯,在工作站处理 AI 质疑 |
|
||||
| **患者 (受试者)** | 访视提醒、依从性引导、医学咨询 | **个人微信 (H5/小程序)** | 接收由 Agent 以 CRC 名义发送的企微消息 |
|
||||
| **系统管理员** | 项目初始化、规则配置、RAG 维护 | **PC 端 (Admin Portal)** | 数字化方案、配置字段映射、管理多租户 |
|
||||
|
||||
## **4\. <EFBFBD>詨<EFBFBD><EFBFBD>蠘<EFBFBD>璅∪<EFBFBD>銝?Agent <EFBFBD>拚猐**
|
||||
## **4\. 核心功能模块与 Agent 矩阵**
|
||||
|
||||
### **4.1 数据质控 Agent (严谨的监察员)**
|
||||
|
||||
* **<EFBFBD>餉<EFBFBD>**嚗𡁻<E59A97>朞<EFBFBD> Webhook <EFBFBD>穃𨯬 REDCap 敶訫<EFBFBD> \-\> 靚<EFBFBD>鍂 Dify 璉<EFBFBD>蝝X䲮獢<EFBFBD><EFBFBD><EFBFBD>?\-\> <20>𤑳緵<F0A491B3>餉<EFBFBD><E9A489>脩<EFBFBD> \-\> <20><><EFBFBD>敶勗<E695B6>韐函<E99F90> (Pending Action)<EFBFBD>?
|
||||
* **<EFBFBD><EFBFBD>㺭**嚗関emperature \= 0嚗諹蕭瘙<EFBFBD><EFBFBD><EFBFBD>渡&摰𡁏<EFBFBD>扼<EFBFBD>?
|
||||
### **4.2 隞餃𦛚撽勗𢆡撘閙<E69298> (<28>啣<EFBFBD><E595A3><EFBFBD>泿摰?**
|
||||
* **逻辑**:通过 Webhook 监听 REDCap 录入 \-\> 调用 Dify 检索方案规则 \-\> 发现逻辑冲突 \-\> 生成影子质疑 (Pending Action)。
|
||||
* **参数**:Temperature \= 0,追求极致确定性。
|
||||
|
||||
* **<2A>餉<EFBFBD>**嚗𡁏覔<F0A1818F>桅★<E6A185>桀<EFBFBD>憪见<E686AA>摰帋<E691B0><E5B88B>?Visit Schedule 霈∠<E99C88>霈輯<E99C88>蝒?\-\> 閫血<E996AB> pg-boss 撱嗆𧒄隞餃𦛚 \-\> <20>芸𢆡<E88AB8>煾<EFBFBD><E785BE>凝靽⊥<E99DBD><E28AA5>鉝<EFBFBD>?
|
||||
### **4.3 <20><><EFBFBD><EFBFBD><EFBFBD>霈?Agent (皜拇<E79A9C><E68B87><EFBFBD><EFBFBD>靚<EFBFBD><E99D9A>)**
|
||||
### **4.2 任务驱动引擎 (数字指挥官)**
|
||||
|
||||
* **<EFBFBD>餉<EFBFBD>**嚗𡁜抅鈭?RAG <20>亥<EFBFBD>摨枏<E691A8>憭齿<E686AD><E9BDBF><EFBFBD>倮霂?\-\> 霂<><E99C82> SAE 憌𡡞埯 \-\> <20>芸𢆡<E88AB8>鞾<EFBFBD> CRC 隞见<E99A9E><E8A781>亦恣<E4BAA6>?
|
||||
* **<2A><>㺭**嚗関emperature \= 0.7嚗䔶<EFBFBD><EFBFBD><EFBFBD>龫摮虫艇靚函<EFBFBD><EFBFBD>峕𧒄<EFBFBD>瑟<EFBFBD>鈭脣<EFBFBD><EFBFBD>䜘<EFBFBD>?
|
||||
### **4.4 瘙<>𥁒 Agent (<28>箄<EFBFBD>瘙<EFBFBD>𥁒<EFBFBD>?**
|
||||
* **逻辑**:根据项目初始化定义的 Visit Schedule 计算访视窗 \-\> 触发 pg-boss 延时任务 \-\> 自动发送微信提醒。
|
||||
|
||||
* **<2A>餉<EFBFBD>**嚗朞䌊<E69C9E>冽<EFBFBD><E586BD>?REDCap 餈𥕦漲<F0A595A6>唳旿 \-\> <20><><EFBFBD><EFBFBD>箄<EFBFBD><E7AE84>亥”<E4BAA5>厩阮 \-\> <20>券<EFBFBD><E588B8>秐 PI 敺桐縑蝖株恕<E6A0AA>?
|
||||
## **5\. <20>滢<EFBFBD>颲寧<E9A2B2>嚗𡁜<E59A97>頧典僎銵<E5838E><E98AB5><EFBFBD>?*
|
||||
### **4.3 患者随访 Agent (温暖的协调员)**
|
||||
|
||||
銝箔<EFBFBD><EFBFBD>滢<EFBFBD><EFBFBD>典嘀<EFBFBD>餃<EFBFBD>嚗𣬚頂蝏<EFBFBD><EFBFBD>蝖桀<EFBFBD><EFBFBD><EFBFBD><EFBFBD> REDCap 銝?Workbench <20><><EFBFBD>雿𡏭器<F0A18FAD>䕘<EFBFBD>
|
||||
* **逻辑**:基于 RAG 知识库回复患者咨询 \-\> 识别 SAE 风险 \-\> 自动提醒 CRC 介入接管。
|
||||
* **参数**:Temperature \= 0.7,保持医学严谨的同时具有亲和力。
|
||||
|
||||
### **4.4 汇报 Agent (智能汇报者)**
|
||||
|
||||
* **逻辑**:自动汇总 REDCap 进度数据 \-\> 生成智能报表草稿 \-\> 推送至 PI 微信确认。
|
||||
|
||||
## **5\. 操作边界:双轨并行原则**
|
||||
|
||||
为了降低推广阻力,系统明确划分了 REDCap 与 Workbench 的操作边界:
|
||||
|
||||
* **REDCap 原生录入**:
|
||||
* **场景**:手动、少量、常规的临床数据录入。
|
||||
* **AI 表现**:后台静默质控,仅通过 EM 插件在页面顶端显示微提醒。
|
||||
* **AI Workbench**:
|
||||
* **场景**:化验单 OCR 批量采集、AI 建议的深度复核(同屏对比证据链)、多中心映射配置。
|
||||
* **AI 表现**:作为主要处理界面,展示推理过程与原文引用。
|
||||
|
||||
* **REDCap <20>毺<EFBFBD>敶訫<E695B6>**嚗?
|
||||
* **<2A>箸艶**嚗𡁏<E59A97><F0A1818F>具<EFBFBD><E585B7><EFBFBD><EFBFBD>譌<EFBFBD><E8AD8C>虜閫<E8999C><E996AB>銝游<E98A9D><E6B8B8>唳旿敶訫<E695B6><E8A8AB>?
|
||||
* **AI 銵函緵**嚗𡁜<E59A97><F0A1819C>圈<EFBFBD>暺䁅捶<E48185>改<EFBFBD>隞<EFBFBD><E99A9E>朞<EFBFBD> EM <20>雴辣<E99BB4>券△<E588B8>a▲蝡舀遬蝷箏凝<E7AE8F>鞾<EFBFBD><E99EBE>?
|
||||
* **AI Workbench**嚗?
|
||||
* **<2A>箸艶**嚗𡁜<E59A97>撉<EFBFBD><E69289> OCR <20>寥<EFBFBD><E5AFA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>I 撱箄悅<E7AE84><E68285>楛摨血<E691A8><E8A180>賂<EFBFBD><E8B382><EFBFBD><EFBFBD>撖寞<E69296>霂<EFBFBD>旿<EFBFBD>橘<EFBFBD><E6A998><EFBFBD><EFBFBD>銝剖<E98A9D><E58996>惩<EFBFBD><E683A9>滨蔭<E6BBA8>?
|
||||
* **AI 銵函緵**嚗帋<E59A97>銝箔蜓閬<E89C93><E996AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD>撅閧內<E996A7>函<EFBFBD>餈<EFBFBD><E9A488>銝𤾸<E98A9D><F0A4BEB8><EFBFBD><EFBFBD><EFBFBD>具<EFBFBD>?
|
||||
## **6\. 核心机制:影子状态机 (Shadow State)**
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD>?AI 撱箄悅敹<E68285>◆蝏讛<E89D8F>隞乩<E99A9E><E4B9A9>笔𦶢<E7AC94>冽<EFBFBD>嚗䔶艇蝳?AI <20>湔𦻖靽格㺿 REDCap <EFBFBD>唳旿嚗?
|
||||
1. **PROPOSED (敶勗<E695B6>撱箄悅)**嚗鋫gent <20>𤑳緵<F0A491B3>桅<EFBFBD>嚗諹扇敶蓥<E695B6> pending\_actions 銵剁<E98AB5><E58981><EFBFBD>鉄撘閧鍂憿萇<E686BF><E89087>𦠜綫<F0A6A09C><E7B6AB><EFBFBD>餉<EFBFBD><E9A489>?
|
||||
2. **APPROVED (鈭箇掩蝖格<EFBFBD>)**嚗鋴RC <20>?Workbench <20>孵稬<E5ADB5>𦦵&霈手<E99C88>脲<EFBFBD> PI <20>典<EFBFBD>蝔见<E89D94><E8A781>孵稬<E5ADB5>𨅯恣<F0A885AF>嫖<EFBFBD>腈<EFBFBD>?
|
||||
3. **EXECUTED (甇<><E79487><EFBFBD>扯<EFBFBD>)**嚗𡁶頂蝏罸<E89D8F>朞<EFBFBD> EDC Adapter 靚<>鍂 API <20>𧼮<EFBFBD><F0A7BCAE>?REDCap嚗<70>僎<EFBFBD><E5838E><EFBFBD>摰∟恣<E2889F>亙<EFBFBD><E4BA99>?
|
||||
所有 AI 建议必须经过以下生命周期,严禁 AI 直接修改 REDCap 数据:
|
||||
|
||||
1. **PROPOSED (影子建议)**:Agent 发现问题,记录于 pending\_actions 表,包含引用页码及推理逻辑。
|
||||
2. **APPROVED (人类确权)**:CRC 在 Workbench 点击“确认”或 PI 在小程序点击“审批”。
|
||||
3. **EXECUTED (正式执行)**:系统通过 EDC Adapter 调用 API 回写至 REDCap,并生成审计日志。
|
||||
|
||||
## **7\. 规模化部署与微信集成方案**
|
||||
|
||||
<EFBFBD><EFBFBD>笆<EFBFBD>?00 銝芷★<E88AB7>柴<EFBFBD>?7 摰嗅龫<E59785>T<EFBFBD>萘<EFBFBD>閫<EFBFBD>芋<EFBFBD>硋㦤<E7A18B>荔<EFBFBD>
|
||||
针对“100 个项目、47 家医院”的规模化场景:
|
||||
|
||||
### **7.1 通知中枢 (企业微信)**
|
||||
|
||||
* 雿輻鍂憯寡<EFBFBD>敺芰<EFBFBD>銝<EFBFBD>霈方<EFBFBD><EFBFBD><EFBFBD><EFBFBD>敺桐蜓雿㮖<EFBFBD>銝算<EFBFBD>𨀣綫<EFBFBD><EFBFBD>恣<EFBFBD>𣏾<EFBFBD>腈<EFBFBD>?
|
||||
* <EFBFBD><EFBFBD>笆瘥譍葵<EFBFBD>𠉛弦憿寧𤌍<EFBFBD>𥕦遣<EFBFBD>𡏭䌊撱箏<EFBFBD><EFBFBD>兩<EFBFBD>嘅<EFBFBD>摨𠉛鍂<EFBFBD>滚虾霈曄蔭銝算<EFBFBD>𤤴X 憿寧𤌍<E5AFA7>𠉛弦蝏<E5BCA6><E89D8F>嘅<EFBFBD><E59885>滢<EFBFBD><E6BBA2><EFBFBD><EFBFBD><EFBFBD>麄<EFBFBD>?
|
||||
### **7.2 <20><><EFBFBD><EFBFBD>賢𧑐 (撠讐<E692A0>摨?**
|
||||
* 使用壹证循统一认证的企微主体作为“推送管道”。
|
||||
* 针对每个研究项目创建“自建应用”,应用名可设置为“XX 项目研究组”,降低商业感。
|
||||
|
||||
### **7.2 品牌落地 (小程序)**
|
||||
|
||||
* PI/CRC 从企微卡片跳转至微信小程序。
|
||||
* **动态渲染**:小程序根据 project\_id 自动加载对应医院的 Logo、主题色和项目名称,给足 PI“学术归属感”。
|
||||
|
||||
* PI/CRC 隞𦒘<E99A9E>敺桀㨃<E6A180><E3A883>歲頧祈秐敺桐縑撠讐<E692A0>摨譌<E691A8>?
|
||||
* **<2A>冽<EFBFBD><E586BD>葡<EFBFBD>?*嚗𡁜<E59A97>蝔见<E89D94><E8A781>寞旿 project\_id <20>芸𢆡<E88AB8>㰘蝸撖孵<E69296><E5ADB5>駁堺<E9A781>?Logo<67><6F>蜓憸䁅𠧧<E48185>屸★<E5B1B8>桀<EFBFBD>蝘堆<E89D98>蝏躰雲 PI<50>𨅯郎<F0A885AF>臬<EFBFBD>撅墧<E69285><E5A2A7>腈<EFBFBD>?
|
||||
## **8\. 技术底座与安全合规**
|
||||
|
||||
### **8.1 基础设施**
|
||||
|
||||
* **<EFBFBD>唳旿摨?*嚗䥪ostgres-Only <EFBFBD>嗆<EFBFBD>嚗<EFBFBD>⏚<EFBFBD>?iit\_schema 摰䂿緵<EFBFBD>拍<EFBFBD><EFBFBD>𠉛氖<EFBFBD>?
|
||||
* **<EFBFBD><EFBFBD><EFBFBD>撅?*嚗鑹EDCap External Module (EM) 靘扳<EFBFBD><EFBFBD>雴辣 \+ Node.js REST API <EFBFBD><EFBFBD><EFBFBD><EFBFBD>具<EFBFBD>?
|
||||
### **8.2 摰匧<E691B0>銝?GxP**
|
||||
* **数据库**:Postgres-Only 架构,利用 iit\_schema 实现物理隔离。
|
||||
* **集成层**:REDCap External Module (EM) 侧挂插件 \+ Node.js REST API 适配器。
|
||||
|
||||
### **8.2 安全与 GxP**
|
||||
|
||||
* **Token 安全**:所有 REDCap API Token 使用 AES-256-GCM 高强度加密存储。
|
||||
* **脱敏引擎**:上下文进入 LLM 前,本地网关执行 PII(个人身份信息)自动脱敏。
|
||||
* **审计链**:记录从 AI 推理原文到人类点击确权的全链路 TraceID。
|
||||
|
||||
* **Token 摰匧<E691B0>**嚗𡁏<E59A97><F0A1818F>?REDCap API Token 雿輻鍂 AES-256-GCM 擃睃撩摨血<E691A8>撖<EFBFBD><E69296><EFBFBD>具<EFBFBD>?
|
||||
* **<2A>望<EFBFBD>撘閙<E69298>**嚗帋<E59A97>銝𧢲<E98A9D>餈𥕦<E9A488> LLM <20>㵪<EFBFBD><E3B5AA>砍𧑐蝵穃<E89DB5><E7A983>扯<EFBFBD> PII嚗<49>葵鈭箄澈隞賭縑<E8B3AD>荔<EFBFBD><E88D94>芸𢆡<E88AB8>望<EFBFBD><E69C9B>?
|
||||
* **摰∟恣<E2889F>?*嚗朞扇敶蓥<E695B6> AI <20>函<EFBFBD><E587BD><EFBFBD><EFBFBD><EFBFBD>唬犖蝐餌<E89D90><E9A48C>餌&<E9A48C><EFBC86><EFBFBD><EFBFBD>券曎頝?TraceID<49>?
|
||||
## **9\. 实施阶段计划**
|
||||
|
||||
* **Phase 1 (餈墧𦻖)**嚗𡁏<E59A97><F0A1818F>?REDCap Webhook 銝?Node.js嚗䔶<EFBFBD>蝥踹凝靽∪𪂹<EFBFBD>亦&霈文<EFBFBD><EFBFBD>賬<EFBFBD>?
|
||||
* **Phase 2 (<EFBFBD>誩<EFBFBD>)**嚗帋<E59A97>蝥?PC Workbench <EFBFBD>詨<EFBFBD>蝏<EFBFBD>辣嚗<EFBFBD><EFBFBD><EFBFBD>啗捶<EFBFBD>批蔣摮𣂼遣霈桃<EFBFBD><EFBFBD>剔㴓<EFBFBD>?
|
||||
* **Phase 3 (憓𧼮撩)**嚗𡁻<E59A97><F0A181BB>?Python 敺格<EFBFBD><EFBFBD>∠<EFBFBD> OCR/DC 璅∪<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>舀惣<EFBFBD>賢<EFBFBD><EFBFBD>唳旿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
* **Phase 4 (<EFBFBD><EFBFBD><EFBFBD>?**嚗𡁜<E59A97><F0A1819C>?100+ 憿寧𤌍閫<F0A48C8D>芋<EFBFBD>㚚<EFBFBD>蝵格䲮獢<E4B2AE><E78DA2>憸<EFBFBD><E686B8> AI <EFBFBD>毺<EFBFBD> SmartEDC<EFBFBD>?
|
||||
**<2A><>﹝<EFBFBD><EFB99D>𧋦**嚗间4.0 Final | **<EFBFBD>湔鰵<EFBFBD>交<EFBFBD>**嚗?025-12-30 | **雿𡏭<E99BBF>?*嚗帋漣<E5B88B><E6BCA3>沲<EFBFBD><E6B2B2>𣪧<EFBFBD>
|
||||
* **Phase 1 (连接)**:打通 REDCap Webhook 与 Node.js,上线微信周报确认功能。
|
||||
* **Phase 2 (协同)**:上线 PC Workbench 核心组件,实现质控影子建议的闭环。
|
||||
* **Phase 3 (增强)**:集成 Python 微服务的 OCR/DC 模块,开启智能化数据采集。
|
||||
* **Phase 4 (生态)**:完成 100+ 项目规模化配置方案,预研 AI 原生 SmartEDC。
|
||||
|
||||
**文档版本**:V4.0 Final | **更新日期**:2025-12-30 | **作者**:产品架构团队
|
||||
Reference in New Issue
Block a user