Files
AIclinicalresearch/docs/08-项目管理/V2.2版本变化说明.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

322 lines
7.6 KiB
Markdown
Raw Permalink 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.
# V2.2版本变化说明
> **版本:** V2.2(前端架构优先版)
> **发布日期:** 2025-11-09
> **核心变化:** 前端统一架构提前到Week 2 ⭐⭐⭐
---
## 📊 V2.2 vs V2.1 核心差异
| 维度 | V2.1版 | V2.2版 ⭐ | 为什么调整? |
|------|-------|---------|------------|
| **Week 2核心任务** | 后端分层 + LLM网关 | **前端统一架构 + 后端分层** | 架构先行避免ASL开发后返工 ⭐⭐⭐ |
| **前端架构时机** | 未明确 | **Week 2上半周完成** | ASL在统一框架下开发 |
| **LLM网关开发** | Week 2完成 | **推迟到Week 5** | 现有调用已work避免过度设计 |
| **ASL开发环境** | 独立开发 | **统一架构下开发** | 不需要后期重构 |
| **CloseAI配置** | 未提及 | **已完成** | 4个LLM可用含GPT-5、Claude-4.5|
---
## 🎯 V2.2版核心理念
### 1. 架构先行 ⭐⭐⭐
**问题:** V2.1版中,前端架构时机不明确
- Week 3开发ASL时前端还是散乱的
- 开发完后再重构 → 大量返工
**解决:** V2.2版将前端架构提前到Week 2
- ✅ Week 2先建立统一布局和导航
- ✅ 所有模块AIA、PKB、审稿插件化接入
- ✅ Week 3开发ASL时直接在统一框架下
- ✅ 不需要后期重构
### 2. Just-in-time开发 ⭐⭐
**问题:** V2.1版Week 2就要开发LLM网关
- 还没有实际使用场景
- 容易过度设计
**解决:** V2.2版推迟到Week 5
- ✅ Week 3-4 ASL开发时有了实际使用场景
- ✅ Week 5抽取LLM网关更合理
- ✅ 现有CloseAI配置已够用
### 3. 聚焦核心价值 ⭐⭐
**原则:**
- Week 1: 数据架构基础 ✅
- Week 2: **前端+后端架构统一**
- Week 3-4: ASL核心功能 ⭐
- Week 5+: 优化和扩展
---
## 📋 Week 2详细对比
### V2.1版Week 2
```
Day 6-7: 后端代码分层
Day 8-9: LLM网关开发
Day 10: 验收
问题:前端架构未涉及
```
### V2.2版Week 2 ⭐
```
Day 6-7上半周: 前端统一架构 ⭐⭐⭐
- Day 6上午: 前端架构设计(技术栈、模块化、导航)
- Day 6下午-7: 实施Layout、模块注册、整合现有模块
Day 8-9下半周: 后端代码分层
- 三层目录结构
- 保留简单LLM调用够用
Day 10: 验收 + Week 3准备
优势:前端架构一次到位
```
---
## 🎨 前端架构设计要点
### Week 2 Day 6上午的核心任务
**需要决策的问题:**
1. **技术栈确认**
- UI组件库Ant Design? Material-UI?
- 路由方案React Router配置
- 状态管理Redux? Zustand? 不用?
- 当前Vite构建工具是否需要调整
2. **统一布局设计**
- 顶部导航栏Logo、模块切换、用户信息
- 侧边菜单(收缩/展开、多级菜单)
- 主内容区
- 面包屑导航
3. **模块插件化机制**
- 模块如何注册?
- 路由如何动态加载?
- 权限如何控制?
- 样式如何隔离?
4. **导航结构**
- 一级导航模块级AIA、PKB、ASL等
- 二级导航:功能级(项目、对话、筛选等)
- 响应式适配
**设计原则:**
- 简单易维护(单人开发)
- 模块化清晰(支持独立开发)
- 扩展性好(新模块快速接入)
- 用户体验佳(统一交互风格)
**说明:** 这些问题在Week 2 Day 6上午集中讨论决策不在计划中详细展开。
---
## 🚀 4个LLM配置新增
### V2.1版只提到DeepSeek和Qwen
### V2.2版4个LLM完整配置 ⭐
**已完成配置CloseAI**
1. **DeepSeek-V3** (直连)
- 用途:快速初筛,成本低
- 价格¥0.001/1K tokens
2. **GPT-5-Pro** (CloseAI代理) ⭐ 新增
- 用途:精准筛选,质量高
- 价格¥0.10/1K tokens
- Model ID: `gpt-5-pro`
3. **Claude-4.5-Sonnet** (CloseAI代理) ⭐ 新增
- 用途:冲突仲裁,结构化输出
- 价格¥0.021/1K tokens
- Model ID: `claude-sonnet-4-5-20250929`
4. **Qwen-Max** (备选)
- 用途:长文本处理,性价比高
- 价格¥0.004/1K tokens
**筛选策略:**
- **双模型对比**DeepSeek + GPT-5- 推荐 ⭐
- **三模型仲裁**+Claude- 冲突时启用
- **成本优化**80% DeepSeek20% GPT-5
**配置文档:**
- `02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md`
- `07-运维文档/01-环境配置指南.md`
- `backend/CLOSEAI-CONFIG.md`
---
## ✅ V2.2版优势总结
### 核心优势 ⭐⭐⭐
**1. 避免返工(最大价值)**
```
V2.1版流程:
Week 2: 后端分层
Week 3-4: ASL开发前端散乱
Week 5: 发现需要重构前端 → 返工 ❌
V2.2版流程:
Week 2: 前端架构先完成
Week 3-4: ASL直接在统一框架下开发
Week 5: 继续扩展,不需要重构 ✅
```
**2. 开发效率提升**
- Week 3开发ASL时前端框架已就绪
- 只需关注业务逻辑,不用考虑架构
- 模块插件化,代码结构清晰
**3. 质量保证**
- 4个LLM已配置好含GPT-5和Claude-4.5
- 统一的用户体验
- 便于测试和维护
**4. 灵活扩展**
- 新模块直接插入统一框架
- 不影响现有模块
- 前端架构稳定
---
## 📝 关键决策记录
### 决策1前端架构提前到Week 2
**背景:**
- 用户反馈:前端各模块独立散乱,需要统一
- ASL是重点模块不应该在散乱架构下开发
**决策:**
- Week 2上半周优先完成前端统一架构
- 建立模块插件化机制
- ASL在统一框架下开发
**收益:**
- 避免ASL开发后重构
- 提升开发效率
- 保证用户体验一致性
---
### 决策2LLM网关推迟到Week 5
**背景:**
- 现有DeepSeek和Qwen调用已work
- CloseAI配置已完成GPT-5、Claude-4.5可用)
- Week 2时间有限需要聚焦前端架构
**决策:**
- Week 2只保留简单LLM调用
- Week 3-4 ASL开发时使用现有调用
- Week 5有了实践经验再统一抽取LLM网关
**收益:**
- 避免过度设计
- 聚焦核心价值
- Just-in-time开发
---
### 决策3集成CloseAIGPT-5和Claude-4.5
**背景:**
- AI智能文献需要高质量的LLM
- DeepSeek虽快但准确率85%
- GPT-5和Claude-4.5准确率95%+
**决策:**
- 配置CloseAI代理已完成
- 4个LLM组合使用
- 双模型对比 + 三模型仲裁
**收益:**
- 文献筛选质量大幅提升
- 成本可控(灵活策略)
- 国内稳定访问
---
## 🎯 执行建议
### 如果还没开始Week 1
1. 按V2.2版执行
2. Week 1重点Schema隔离3详细+7空
3. Week 2重点**前端架构优先** ⭐⭐⭐
### 如果Week 1已完成
1. **立即启动Week 2前端架构设计**
2. Day 6上午前端架构设计会议 ⭐
3. Day 6下午-7实施前端统一架构
4. Day 8-9后端代码分层
### 如果已经在开发ASL
1. **暂停ASL开发**
2. **补做前端统一架构**
3. 将ASL重构到统一框架下
4. 虽然会有一点返工,但长远更好
---
## 📚 相关文档
**V2.2版完整计划:**
- [下一阶段行动计划-V2.2-前端架构优先版.md](./下一阶段行动计划-V2.2-前端架构优先版.md) ⭐⭐⭐
**前端架构参考:**
- [前端总体架构设计](../01-平台基础层/06-前端架构/01-前端总体架构设计.md)
- [导航结构设计](../01-平台基础层/06-前端架构/02-导航结构设计.md)
**LLM配置参考**
- [CloseAI集成指南](../02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md) ⭐
- [环境配置指南](../07-运维文档/01-环境配置指南.md)
**V2.1版对比:**
- [下一阶段行动计划-V2.1-务实版.md](./下一阶段行动计划-V2.1-务实版.md)
---
**更新日期:** 2025-11-09
**制定人:** AI助手
**核心理念:** 架构先行 + Just-in-time + 聚焦核心 = 高效务实! ⭐⭐⭐