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
220 lines
6.3 KiB
Markdown
220 lines
6.3 KiB
Markdown
# REDCap模块文档导航
|
||
|
||
**最后更新:** 2026-01-02
|
||
**模块类型:** 第三方系统集成与二次开发
|
||
**当前状态:** 本地Docker环境已部署,API Adapter开发中
|
||
|
||
---
|
||
|
||
## 📚 文档体系说明
|
||
|
||
REDCap是一个成熟的第三方EDC(电子数据采集)系统,本模块的工作重点是:
|
||
1. **部署与配置**:在不同环境(开发/生产/医院)部署REDCap
|
||
2. **API对接**:通过REDCap API与IIT Manager Agent集成
|
||
3. **运维管理**:日常维护、备份、升级
|
||
|
||
因此,文档架构与自研模块(ASL、DC)不同,更侧重部署与集成。
|
||
|
||
---
|
||
|
||
## 📖 文档目录
|
||
|
||
### 1️⃣ **系统概览与决策**
|
||
|
||
#### [01-REDCap系统介绍与选型说明.md](./01-REDCap系统介绍与选型说明.md)
|
||
- REDCap是什么?
|
||
- 为什么选择REDCap?
|
||
- REDCap的核心功能
|
||
- REDCap在IIT Manager中的角色
|
||
|
||
#### [02-REDCap对接总体方案.md](./02-REDCap对接总体方案.md) ✅
|
||
- 技术架构设计
|
||
- API对接方案
|
||
- 数据流转方案
|
||
- 安全性设计
|
||
|
||
#### [03-REDCap对接风险评估与技术挑战分析.md](./03-REDCap对接风险评估与技术挑战分析.md) ✅
|
||
- 技术风险评估
|
||
- 实施难度分析
|
||
- 替代方案对比
|
||
- 最终决策建议
|
||
|
||
#### [04-生产环境部署决策报告_ECS_vs_SAE.md](./04-生产环境部署决策报告_ECS_vs_SAE.md) ✅
|
||
- ECS vs SAE深度对比
|
||
- 成本分析
|
||
- 技术可行性
|
||
- 最终选型:ECS
|
||
|
||
---
|
||
|
||
### 2️⃣ **部署与配置**
|
||
|
||
#### [10-本地开发环境部署完全指南.md](./10-本地开发环境部署完全指南.md) ⭐
|
||
- **快速开始**(适合首次部署)
|
||
- Docker环境准备
|
||
- 一键部署脚本使用
|
||
- 初始化配置
|
||
- 验证测试
|
||
- **关键参考文档!**
|
||
|
||
#### [11-生产环境部署完全指南_阿里云ECS.md](./11-生产环境部署完全指南_阿里云ECS.md) ⭐
|
||
- **ECS服务器配置**
|
||
- Docker镜像构建与推送
|
||
- RDS MySQL配置
|
||
- 域名与SSL证书
|
||
- 安全组与防火墙
|
||
- 生产环境检查清单
|
||
- **生产部署必读!**
|
||
|
||
#### [12-医院私有化部署指南.md](./12-医院私有化部署指南.md) 🏥
|
||
- 医院服务器环境要求
|
||
- 内网部署方案
|
||
- 数据安全与合规
|
||
- 技术支持与培训
|
||
|
||
#### [13-部署问题排查手册.md](./13-部署问题排查手册.md) 🔧
|
||
- 常见部署问题
|
||
- 错误日志分析
|
||
- 问题解决记录
|
||
- 预防措施
|
||
|
||
---
|
||
|
||
### 3️⃣ **配置与管理**
|
||
|
||
#### [20-REDCap系统配置手册.md](./20-REDCap系统配置手册.md)
|
||
- 基础配置(Base URL、邮件服务等)
|
||
- 用户与权限管理
|
||
- 项目创建与配置
|
||
- 数据字典设计
|
||
- 表单设计
|
||
|
||
#### [21-REDCap日常运维手册.md](./21-REDCap日常运维手册.md)
|
||
- 日常维护任务
|
||
- 备份与恢复
|
||
- 性能监控
|
||
- 日志管理
|
||
- 故障处理流程
|
||
|
||
#### [22-REDCap升级指南.md](./22-REDCap升级指南.md)
|
||
- 版本升级流程
|
||
- 数据库迁移
|
||
- 兼容性测试
|
||
- 回滚方案
|
||
|
||
---
|
||
|
||
### 4️⃣ **API对接与开发**
|
||
|
||
#### [30-REDCap_API使用指南.md](./30-REDCap_API使用指南.md)
|
||
- REDCap API概述
|
||
- API Token获取
|
||
- 常用API接口
|
||
- 示例代码
|
||
|
||
#### [31-IIT_Manager与REDCap对接设计.md](./31-IIT_Manager与REDCap对接设计.md)
|
||
- 数据流转设计
|
||
- API Adapter架构
|
||
- 接口设计
|
||
- 错误处理
|
||
|
||
#### [32-REDCap_API_Adapter开发指南.md](./32-REDCap_API_Adapter开发指南.md)
|
||
- Adapter架构设计
|
||
- 代码结构
|
||
- 开发规范
|
||
- 测试方案
|
||
|
||
#### [33-REDCap二次开发深度指南.md](./33-REDCap二次开发深度指南.md) ✅
|
||
- External Modules开发
|
||
- Hooks机制
|
||
- 插件开发
|
||
- 最佳实践
|
||
|
||
---
|
||
|
||
### 5️⃣ **参考资料**
|
||
|
||
#### [40-REDCap官方资源索引.md](./40-REDCap官方资源索引.md)
|
||
- 官方文档链接
|
||
- 社区资源
|
||
- 视频教程
|
||
- 常用工具
|
||
|
||
#### [41-Docker配置文件说明.md](./41-Docker配置文件说明.md)
|
||
- Dockerfile详解
|
||
- docker-compose.yml配置
|
||
- 环境变量说明
|
||
- 网络与卷配置
|
||
|
||
---
|
||
|
||
## 🎯 快速入口
|
||
|
||
### 我想部署REDCap
|
||
- **本地开发测试** → [10-本地开发环境部署完全指南.md](./10-本地开发环境部署完全指南.md)
|
||
- **阿里云生产环境** → [11-生产环境部署完全指南_阿里云ECS.md](./11-生产环境部署完全指南_阿里云ECS.md)
|
||
- **医院私有化** → [12-医院私有化部署指南.md](./12-医院私有化部署指南.md)
|
||
|
||
### 我遇到部署问题
|
||
- **问题排查** → [13-部署问题排查手册.md](./13-部署问题排查手册.md)
|
||
- **历史问题记录** → [13-部署问题排查手册.md](./13-部署问题排查手册.md)
|
||
|
||
### 我要进行API开发
|
||
- **了解API** → [30-REDCap_API使用指南.md](./30-REDCap_API使用指南.md)
|
||
- **对接设计** → [31-IIT_Manager与REDCap对接设计.md](./31-IIT_Manager与REDCap对接设计.md)
|
||
- **开发Adapter** → [32-REDCap_API_Adapter开发指南.md](./32-REDCap_API_Adapter开发指南.md)
|
||
|
||
### 我要日常运维
|
||
- **系统配置** → [20-REDCap系统配置手册.md](./20-REDCap系统配置手册.md)
|
||
- **日常维护** → [21-REDCap日常运维手册.md](./21-REDCap日常运维手册.md)
|
||
- **版本升级** → [22-REDCap升级指南.md](./22-REDCap升级指南.md)
|
||
|
||
---
|
||
|
||
## 📊 模块当前状态
|
||
|
||
| 阶段 | 状态 | 完成时间 | 备注 |
|
||
|------|------|----------|------|
|
||
| 技术调研 | ✅ 完成 | 2025-12 | 完成风险评估与方案设计 |
|
||
| 部署方案设计 | ✅ 完成 | 2026-01-01 | 确定Docker+ECS方案 |
|
||
| 本地环境部署 | ✅ 完成 | 2026-01-02 | REDCap 15.8.0运行正常 |
|
||
| API Adapter开发 | ⏳ 进行中 | 预计2026-01-03 | Day 2任务 |
|
||
| 生产环境部署 | 📅 计划中 | 待定 | 等待API Adapter完成 |
|
||
|
||
---
|
||
|
||
## 🔄 文档更新记录
|
||
|
||
| 日期 | 更新内容 | 更新人 |
|
||
|------|----------|--------|
|
||
| 2026-01-02 | 创建文档体系,完成本地部署 | AI Assistant |
|
||
| 2025-12-XX | 完成技术方案与风险评估文档 | AI Assistant |
|
||
|
||
---
|
||
|
||
## 📝 文档编写规范
|
||
|
||
### 图标使用规范
|
||
- ⭐ 核心必读文档
|
||
- ✅ 已完成
|
||
- ⏳ 进行中
|
||
- 📅 计划中
|
||
- 🔧 故障排查
|
||
- 🏥 医院专用
|
||
- 💡 技巧提示
|
||
- ⚠️ 重要警告
|
||
|
||
### 文档命名规范
|
||
- 按数字分类:01-09系统概览,10-19部署,20-29配置,30-39开发,40-49参考
|
||
- 使用下划线分隔多个单词(而非空格)
|
||
- 重要文档加"完全指南"/"手册"/"指南"后缀
|
||
|
||
---
|
||
|
||
## 🆘 获取帮助
|
||
|
||
- **技术问题**:查看 [13-部署问题排查手册.md](./13-部署问题排查手册.md)
|
||
- **REDCap官方**:https://projectredcap.org/
|
||
- **Docker问题**:查看 `redcap-docker-dev/README.md`
|
||
|