feat(admin): Complete Phase 3.5.1-3.5.4 Prompt Management System (83%)

Summary:
- Implement Prompt management infrastructure and core services
- Build admin portal frontend with light theme
- Integrate CodeMirror 6 editor for non-technical users

Phase 3.5.1: Infrastructure Setup
- Create capability_schema for Prompt storage
- Add prompt_templates and prompt_versions tables
- Add prompt:view/edit/debug/publish permissions
- Migrate RVW prompts to database (RVW_EDITORIAL, RVW_METHODOLOGY)

Phase 3.5.2: PromptService Core
- Implement gray preview logic (DRAFT for debuggers, ACTIVE for users)
- Module-level debug control (setDebugMode)
- Handlebars template rendering
- Variable extraction and validation (extractVariables, validateVariables)
- Three-level disaster recovery (database -> cache -> hardcoded fallback)

Phase 3.5.3: Management API
- 8 RESTful endpoints (/api/admin/prompts/*)
- Permission control (PROMPT_ENGINEER can edit, SUPER_ADMIN can publish)

Phase 3.5.4: Frontend Management UI
- Build admin portal architecture (AdminLayout, OrgLayout)
- Add route system (/admin/*, /org/*)
- Implement PromptListPage (filter, search, debug switch)
- Implement PromptEditor (CodeMirror 6 simplified for clinical users)
- Implement PromptEditorPage (edit, save, publish, test, version history)

Technical Details:
- Backend: 6 files, ~2044 lines (prompt.service.ts 596 lines)
- Frontend: 9 files, ~1735 lines (PromptEditorPage.tsx 399 lines)
- CodeMirror 6: Line numbers, auto-wrap, variable highlight, search, undo/redo
- Chinese-friendly: 15px font, 1.8 line-height, system fonts

Next Step: Phase 3.5.5 - Integrate RVW module with PromptService

Tested: Backend API tests passed (8/8), Frontend pending user testing
Status: Ready for Phase 3.5.5 RVW integration
This commit is contained in:
2026-01-11 21:25:16 +08:00
parent cdfbc9927a
commit 5523ef36ea
297 changed files with 15914 additions and 1266 deletions

View File

@@ -1,43 +1,49 @@
# ADMIN - 运营管理端
> **模块代** ADMIN (Administration)
> **开发状态:** ⏳ 规划中
> **商业价值:** ⭐⭐⭐⭐⭐ SaaS运营基础
> **独立性:** ⭐⭐⭐⭐⭐
> **优先级** P1
> **模块代** ADMIN
> **模块名称:** 运营管理端Operations Management Portal
> **优先级:** P0核心基础设施
> **开发状态:** 🟡 架构设计中
> **负责人** [待定]
---
## 📋 模块概述
运营管理端横跨所有层次是SaaS商业模式的技术基础
运营管理端是AI临床研究平台的**核心管理后台**,为公司内部运营人员提供全方位的系统管理和运维能力
**核心价值:** 实现多版本管理、成本控制、功能开关
### 核心价值
1. **SaaS多租户管理**:统一管理所有医院/药企客户
2. **AI成本控制**精细化配额管理控制Token消耗
3. **Prompt工程化**生产环境灰度预览专业人员调试AI效果
4. **系统运维**:用户管理、权限配置、审计日志
---
## 🎯 核心功能15个模块
## 🎯 核心功能模块
### P0必须阶段一
1. **用户管理** - 用户列表、详情、激活/禁
2. **Feature Flag管理** ⭐ - 版本功能控制(专业版/高级版/旗舰版
3. **LLM模型管理** ⭐ - 模型配置、成本配置、版本绑定
4. **系统配置管理** - 全局配置、动态配置
### 1. 租户管理
- 租户创建/编辑/停
- 品牌定制Logo、背景图、主题色
- 模块订阅管理ASL/DC/IIT等
- 配额分配与监控
### P1重要阶段二
5. **智能体提示词管理** - Prompt模板管理
6. **监控与日志** - 操作日志、错误监控
7. **数据统计与报表** - 用户统计、使用统计
8. **成本分析与计费** - LLM成本统计、计费管理
### 2. Prompt管理系统 ⭐
- **生产环境灰度预览**
- 调试者角色PROMPT_ENGINEER
- DRAFT/ACTIVE版本隔离
- 多业务模块Prompt配置ASL/DC/IIT/PKB/AIA/RVW
### P2有用阶段三
9. **租户管理** - 私有化部署的租户管理
10. **公告与通知管理**
11. **帮助文档管理**
12. **反馈与工单管理**
13. **系统健康检查**
14. **数据库备份与恢复**
15. **运营数据分析**
### 3. 用户与权限管理
- 用户CRUD
- 角色分配SUPER_ADMIN/PROMPT_ENGINEER/等)
- 权限配置
### 4. 系统监控与审计
- 操作日志审计
- Token消耗统计
- 系统健康监控
---
@@ -45,69 +51,164 @@
```
ADMIN-运营管理端/
├── [AI对接] ADMIN快速上下文.md # ⏳ 待创建
├── 00-项目概述/
│ ├── 01-产品需求文档(PRD).md # ⏳ 待创建
├── 02-功能清单15个模块.md # ⏳ 待创建
── 03-权限体系设计.md # ⏳ 待创建
── 01-设计文档/
│ ├── 01-技术架构设计.md # ⏳ 待创建
│ ├── 02-数据库设计.md # ⏳ 待创建
│ └── 05-权限体系实现.md # ⏳ 待创建
└── README.md # ✅ 当前文档
├── README.md # 本文件
├── 00-模块当前状态与开发指南.md # 快速上手指南
├── 00-系统设计/ # 系统架构设计
── 00-权限与角色体系梳理报告_v1.0.md
── 02-通用能力层_10-权限体系梳理反馈与修正建议.md
├── 01-需求分析/ # PRD文档
│ └── 02-通用能力层_07-运营与机构管理端PRD_v2.1.md
├── 02-技术设计/ # 技术设计文档
│ ├── 02-通用能力层_03-Prompt管理系统与灰度预览设计方案.md
│ ├── 03-Prompt管理系统快速参考.md
│ └── Prompt管理后台设计.md
├── 03-UI设计/ # 原型与UI设计
├── 04-开发计划/ # 开发计划与任务分解
├── 05-测试文档/ # 测试用例与测试数据
├── 06-开发记录/ # 每日开发总结
└── 07-技术债务/ # 技术债务清单
```
---
## 🏗️ 技术选型
## 🔐 角色与权限设计
- **前端:** React + Ant Design Pro
- **后端:** Node.js + Fastify
- **数据库:** PostgreSQL (admin_schema)
### 核心角色
| 角色 | 角色Code | 权限范围 | 说明 |
|------|---------|---------|------|
| **超级管理员** | SUPER_ADMIN | 所有权限 | 公司内部运营人员 |
| **Prompt工程师** | PROMPT_ENGINEER | prompt:* | 调试AI Prompt的专业人员 |
| 医院管理员 | HOSPITAL_ADMIN | 租户级管理 | 仅管理自己的医院租户 |
| 药企管理员 | PHARMA_ADMIN | 租户级管理 | 仅管理自己的药企租户 |
| 普通用户 | USER | 基础功能 | 业务模块使用者 |
### Prompt管理专属权限
| 权限 | 说明 |
|------|------|
| `prompt:view` | 查看Prompt列表和历史版本 |
| `prompt:edit` | 创建/修改DRAFT版本 |
| `prompt:debug` | ⭐ 开启调试模式(生产环境灰度预览) |
| `prompt:publish` | 发布DRAFT→ACTIVE |
---
## 🚀 实施阶段
## 🗄️ 数据库Schema
- **阶段一1-2个月** P0功能
- **阶段二1-2个月** P1功能
- **阶段三1-2个月** P2功能
### 核心表platform_schema
- `tenants` - 租户表
- `tenant_members` - 租户成员关系
- `tenant_modules` - 租户订阅的模块
- `tenant_quotas` - 租户配额
- `tenant_quota_allocations` - 配额分配(科室/个人)
- `departments` - 科室表
- `permissions` - 权限表
- `role_permissions` - 角色权限关联
### Prompt管理表capability_schema
- `prompt_templates` - Prompt模板
- `prompt_versions` - Prompt版本DRAFT/ACTIVE/ARCHIVED
### 审计日志表admin_schema
- `admin_operation_logs` - 运营操作日志
---
## 🌐 部署方式
## 🚀 技术栈
- **独立域名:** `https://admin.yizhengxun.com`
- **独立前端应用**
- **独立后端API**
### 后端
- **框架:** Fastify + Prisma
- **数据库:** PostgreSQL 14+支持LISTEN/NOTIFY
- **认证:** JWT (jsonwebtoken)
- **密码:** bcryptjs
### 前端
- **框架:** React 19 + TypeScript
- **UI库** Ant Design 6.0
- **状态管理:** React Context + Hooks
- **路由:** React Router v6
---
**最后更新:** 2025-11-06
**维护人:** 技术架构师
## 📅 开发路线图
### Phase 0: 数据迁移 + 基础设施3天
- [ ] 统一User表public.users → platform_schema.users
- [ ] 创建所有新表
- [ ] 超级管理员种子数据
- [ ] Prompt表和权限配置
### Phase 1-2: 认证系统2天
- [ ] JWT认证
- [ ] 登录/登出API
- [ ] 认证中间件
### Phase 3-4: 运营管理端MVP5天
- [ ] 租户管理CRUD + 品牌配置)
- [ ] **Prompt管理系统**
- [ ] 列表/编辑器/版本历史
- [ ] 全局调试开关
- [ ] 草稿保存/发布
### Phase 5-6: 完善功能3天
- [ ] 用户管理
- [ ] 权限配置
- [ ] 审计日志查询
- [ ] 配额管理
---
## 🔗 相关模块
- **机构管理端INST**:医院端/药企端自服务管理界面
- **平台基础层Platform**:认证、权限、存储等基础服务
- **通用能力层Capability**Prompt管理、LLM Gateway等
---
## 📚 快速开始
1. **阅读架构设计**
`00-系统设计/00-权限与角色体系梳理报告_v1.0.md`
2. **了解需求**
`01-需求分析/02-通用能力层_07-运营与机构管理端PRD_v2.1.md`
3. **Prompt管理核心功能**
`02-技术设计/03-Prompt管理系统快速参考.md`
4. **查看开发状态**
`00-模块当前状态与开发指南.md`
---
## ⚠️ 注意事项
1. **安全第一**:运营管理端拥有最高权限,必须严格控制访问
2. **审计日志**:所有操作必须记录,支持追溯
3. **多租户隔离**:确保租户数据完全隔离
4. **Prompt管理**:生产环境调试模式必须有权限控制
---
## 📞 联系方式
- **技术负责人:** [待定]
- **产品负责人:** [待定]
---
*最后更新2026-01-11*