Files
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

187 lines
4.4 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.
# 系统总体设计 - 阅读指南
> **文档日期:** 2025-11-06
> **文档目的:** 快速导航,找到您需要的文档
---
## 🎯 如果您想...
### 快速了解今天的成果
👉 **必读:** [00-今日架构设计总结](./00-今日架构设计总结.md)
- 7个核心文档总览
- 关键决策总结
- 下一步建议
---
### 了解整个系统架构
👉 **必读:** [08-架构设计全景图](./08-架构设计全景图.md)
- 一图看懂完整架构
- 四种部署模式
- 代码组织结构
👉 **详细了解:** [01-系统架构分层设计](./01-系统架构分层设计.md)
- 三层架构详细设计
- 8个业务模块
- 5个通用能力
- 依赖关系分析
---
### 做出下一步行动决策
👉 **必读:** [99-下一步行动决策建议](./99-下一步行动决策建议.md)
- 3个方案对比立即开发 vs 先改造 vs 折中)
- 成本收益分析
- 明确的建议和实施计划
---
### 了解数据库架构
👉 **先看:** [03-数据库架构说明](./03-数据库架构说明.md)
- PostgreSQL是Docker部署的
- 您有自己独立的数据库
- 与Dify数据库的关系
👉 **深入了解:** [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md)
- 逻辑隔离 vs 物理隔离
- 改造成本对比现在1周 vs 未来3-5周
- 实施方案
---
### 了解如何模块独立部署
👉 **必读:** [06-模块独立部署与单机版方案](./06-模块独立部署与单机版方案.md)
- 完整打包方案(独立产品)
- 共享服务方案(平台内模块)
- Electron单机版架构
- 代码复用率分析85%+
---
### 了解运营管理端
👉 **必读:** [04-运营管理端架构设计](./04-运营管理端架构设计.md)
- 15个功能模块
- 3阶段实施计划
- 对系统的6大影响
---
### 了解是否需要Monorepo
👉 **必读:** [07-Monorepo架构评估](./07-Monorepo架构评估.md)
- 当前阶段需要吗?
- 成本对比现在2-3天 vs 未来7-11天
- 实施方案
---
### 了解文档体系如何重构
👉 **必读:** [02-文档体系重构方案v2.0](./02-文档体系重构方案.md)
- 新文档结构设计
- 8个模块的标准文档模板
- 迁移计划
---
### 了解所有架构问题的答案
👉 **必读:** [00-核心问题解答](./00-核心问题解答.md)
- 部署模式调整3种不考虑混合部署
- 审稿系统独立性分析
- 数据库架构澄清
---
## 📊 文档阅读顺序建议
### 路径1快速了解20分钟
1. [00-今日架构设计总结](./00-今日架构设计总结.md) - 5分钟
2. [08-架构设计全景图](./08-架构设计全景图.md) - 10分钟
3. [99-下一步行动决策建议](./99-下一步行动决策建议.md) - 5分钟
---
### 路径2全面理解1-2小时
1. [00-今日架构设计总结](./00-今日架构设计总结.md) - 10分钟
2. [01-系统架构分层设计](./01-系统架构分层设计.md) - 30分钟
3. [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md) - 20分钟
4. [07-Monorepo架构评估](./07-Monorepo架构评估.md) - 15分钟
5. [99-下一步行动决策建议](./99-下一步行动决策建议.md) - 10分钟
---
### 路径3深入研究3-4小时
按顺序阅读所有10个文档
---
## 🎯 关键结论速查
### Schema隔离
- **建议:** 现在做 ⭐⭐⭐⭐⭐
- **成本:** 1周 vs 未来3-5周
- **ROI** 300-500%
### Monorepo
- **建议:** 现在转换 ⭐⭐⭐⭐⭐
- **成本:** 2-3天 vs 未来7-11天
- **ROI** 300-400%
- **触发条件:** 近期开发运营管理端,必须转换
### 下一步行动
- **方案A** 立即开发ASL累积技术债
- **方案B** 先改造架构再开发ASL强烈推荐⭐⭐⭐⭐⭐
- **方案C** 只做Monorepo延后Schema隔离
---
## 📝 今日成果
**完成的文档:**
1. ✅ 00-核心问题解答.md
2. ✅ 01-系统架构分层设计.md900+行)
3. ✅ 02-文档体系重构方案v2.0.md790+行)
4. ✅ 03-数据库架构说明.md434+行)
5. ✅ 04-运营管理端架构设计.md859+行)
6. ✅ 05-Schema隔离方案与成本分析.md1042+行)
7. ✅ 06-模块独立部署与单机版方案.md1541+行)
8. ✅ 07-Monorepo架构评估.md555+行)
9. ✅ 08-架构设计全景图.md
10. ✅ 99-下一步行动决策建议.md
**总计:** 6000+行详细设计
---
**最后更新:** 2025-11-06
**维护人:** 技术架构师