Files
HaHafeng 2481b786d8 deploy: Complete 0126-27 deployment - database upgrade, services update, code recovery
Major Changes:
- Database: Install pg_bigm/pgvector plugins, create test database
- Python service: v1.0 -> v1.1, add pymupdf4llm/openpyxl/pypandoc
- Node.js backend: v1.3 -> v1.7, fix pino-pretty and ES Module imports
- Frontend: v1.2 -> v1.3, skip TypeScript check for deployment
- Code recovery: Restore empty files from local backup

Technical Fixes:
- Fix pino-pretty error in production (conditional loading)
- Fix ES Module import paths (add .js extensions)
- Fix OSSAdapter TypeScript errors
- Update Prisma Schema (63 models, 16 schemas)
- Update environment variables (DATABASE_URL, EXTRACTION_SERVICE_URL, OSS)
- Remove deprecated variables (REDIS_URL, DIFY_API_URL, DIFY_API_KEY)

Documentation:
- Create 0126 deployment folder with 8 documents
- Update database development standards v2.0
- Update SAE deployment status records

Deployment Status:
- PostgreSQL: ai_clinical_research_test with plugins
- Python: v1.1 @ 172.17.173.84:8000
- Backend: v1.7 @ 172.17.173.89:3001
- Frontend: v1.3 @ 172.17.173.90:80

Tested: All services running successfully on SAE
2026-01-27 08:13:27 +08:00
..

INST - 机构管理端

模块代码: INST
模块名称: 机构管理端Institution Management Portal
优先级: P1重要功能
开发状态: 🔴 未开始
负责人: [待定]


📋 模块概述

机构管理端是为医院客户药企客户提供的自服务管理界面,让机构管理员能够独立管理自己租户内的用户、配额、科室等资源。

核心价值

  1. 自服务管理:减轻运营团队压力,机构自主管理
  2. 配额分配:医院/药企内部按科室或个人分配Token额度
  3. 用户管理:机构内部用户的创建、编辑、停用
  4. 数据隔离:只能看到和管理自己租户的数据

🎯 核心功能模块

1. 医院管理端Hospital Admin

用户管理

  • 添加/编辑/停用医院内部用户
  • 分配用户到科室
  • 设置用户角色(科室管理员/普通用户)

科室管理

  • 创建/编辑/删除科室
  • 支持多级科室结构(心内科 → 一病区)
  • 查看科室成员列表

配额管理

  • 查看医院总配额和使用情况
  • 按科室分配Token额度
  • 按个人分配Token额度
  • 配额使用统计和预警

审计日志

  • 查看医院内部的操作记录
  • 导出审计日志

2. 药企管理端Pharma Admin

用户管理

  • 添加/编辑/停用药企内部用户
  • 分配用户角色(项目负责人/数据分析师/普通用户)

项目管理

  • 查看药企参与的IIT项目列表
  • 查看项目进展和数据统计
  • 项目成员管理

配额管理

  • 查看药企总配额和使用情况
  • 按项目分配Token额度
  • 按用户分配Token额度
  • 配额使用统计和预警

审计日志(合规要求)

  • 查看所有数据修改记录FDA 21 CFR Part 11
  • 查看IIT模块相关操作
  • 导出审计日志(支持签名验证)

🔐 角色与权限设计

医院端角色

角色 角色Code 权限范围 说明
医院管理员 HOSPITAL_ADMIN 租户级管理 管理医院内所有资源
科室管理员 DEPARTMENT_ADMIN 科室级管理 仅管理自己科室
医生/用户 USER 基础功能 使用业务模块

药企端角色

角色 角色Code 权限范围 说明
药企管理员 PHARMA_ADMIN 租户级管理 管理药企内所有资源
项目负责人 PROJECT_MANAGER 项目级管理 管理特定IIT项目
数据分析师 DATA_ANALYST 只读权限 查看项目数据和报告
普通用户 USER 基础功能 使用业务模块

📂 文档结构

INST-机构管理端/
├── README.md                           # 本文件
├── 00-模块当前状态与开发指南.md         # 快速上手指南
│
├── 00-系统设计/                        # 系统架构设计
│
├── 01-需求分析/                        # PRD文档
│
├── 02-技术设计/                        # 技术设计文档
│
├── 03-UI设计/                          # 原型与UI设计
│
├── 04-开发计划/                        # 开发计划与任务分解
│
├── 05-测试文档/                        # 测试用例与测试数据
│
├── 06-开发记录/                        # 每日开发总结
│
└── 07-技术债务/                        # 技术债务清单

🗄️ 数据库Schema

核心表platform_schema

  • tenants - 租户表(机构基本信息)
  • tenant_members - 租户成员关系
  • tenant_quotas - 租户配额
  • tenant_quota_allocations - 配额分配(科室/个人/项目)
  • departments - 科室表(医院专用)
  • tenant_operation_logs - 租户级操作日志

关联表

  • users - 用户表
  • iit_projects - IIT项目表药企端
  • admin_operation_logs - 审计日志可按module过滤

🚀 技术栈

后端

  • 框架: Fastify + Prisma
  • 数据库: PostgreSQL 14+
  • 认证: JWT继承运营管理端
  • 权限: RBAC继承运营管理端

前端

  • 框架: React 19 + TypeScript
  • UI库 Ant Design 6.0
  • 状态管理: React Context + Hooks
  • 路由: React Router v6

🎨 URL策略

租户专属登录

# 医院端登录
https://platform.example.com/t/hospital-301/login

# 药企端登录
https://platform.example.com/t/pharma-abc/login

品牌定制

  • Logo租户自定义
  • 背景图(租户自定义)
  • 主题色(租户自定义)
  • 系统名称(租户自定义)

数据来源: tenants.config (JSONB字段)


📅 开发路线图(待定)

Phase 1: 医院管理端MVPWeek 5-6

  • 用户管理界面
  • 科室管理界面
  • 配额分配界面
  • 租户专属登录页

Phase 2: 药企管理端MVPWeek 7-8

  • 用户管理界面
  • 项目管理界面
  • 配额分配界面
  • 审计日志查询(合规)

Phase 3: 功能完善Week 9+

  • 统计报表
  • 配额预警
  • 批量操作
  • 数据导出

🔗 与运营管理端的关系

┌────────────────────────────────────────┐
│      ADMIN - 运营管理端(内部)          │
│                                        │
│  - 创建/管理所有租户                    │
│  - 分配总配额                          │
│  - 全局用户管理                        │
│  - Prompt管理                         │
└────────────────────────────────────────┘
              │
              │ 创建租户 & 分配配额
              ↓
┌────────────────────────────────────────┐
│      INST - 机构管理端(客户自服务)      │
│                                        │
│  🏥 医院端                             │
│  - 管理医院内部用户                     │
│  - 按科室/个人分配配额                  │
│  - 查看医院内审计日志                   │
│                                        │
│  💊 药企端                             │
│  - 管理药企内部用户                     │
│  - 按项目/个人分配配额                  │
│  - 查看IIT模块审计日志合规           │
└────────────────────────────────────────┘
              │
              │ 使用业务模块
              ↓
┌────────────────────────────────────────┐
│      业务模块ASL/DC/IIT等           │
└────────────────────────────────────────┘

📚 核心文档导航

当前阶段

由于机构管理端尚未开始开发,建议先阅读运营管理端的相关文档:

  1. 架构基础
    ../ADMIN-运营管理端/00-系统设计/00-权限与角色体系梳理报告_v1.0.md

  2. 需求文档
    ../ADMIN-运营管理端/01-需求分析/02-通用能力层_07-运营与机构管理端PRD_v2.1.md
    (该文档同时包含运营端和机构端需求)

待创建文档

  • 00-系统设计/01-机构管理端架构设计.md
  • 01-需求分析/01-医院管理端PRD.md
  • 01-需求分析/02-药企管理端PRD.md
  • 02-技术设计/01-API设计文档.md
  • 02-技术设计/02-数据库设计文档.md
  • 03-UI设计/01-医院端原型设计.html
  • 03-UI设计/02-药企端原型设计.html

⚠️ 注意事项

安全性

  1. 多租户隔离

    • 所有查询必须带tenantId过滤
    • 防止跨租户数据访问
  2. 权限控制

    • 科室管理员只能管理自己科室
    • 项目负责人只能管理自己的项目
  3. 审计日志

    • 所有操作必须记录
    • 药企端需要满足FDA合规要求

性能优化

  1. 配额计算

    • 使用数据库聚合查询
    • 增加缓存层app_cache
  2. 科室树查询

    • 使用递归CTE查询
    • 前端缓存科室结构

📞 联系方式

  • 技术负责人: [待定]
  • 产品负责人: [待定]

🔄 开发依赖

前置条件(必须先完成):

  • 运营管理端基础架构(认证、权限、租户管理)
  • 租户专属登录页
  • 品牌定制配置

可并行开发:

  • 医院端UI设计
  • 药企端UI设计

最后更新2026-01-11