feat(health): 添加 erp-health 健康管理模块骨架
新建 erp-health 原生 Rust crate,覆盖设计规格中定义的 5 大业务域: - 16 个 SeaORM Entity(患者/家属/标签/医生/健康档案/体征/化验单/预约/排班/随访/咨询等) - 16 表数据库迁移(含索引、外键、默认值、可回滚) - 40+ API 路由骨架(患者管理/健康数据/预约排班/随访/咨询/医生管理) - 12 个权限声明(health.patient/health-data/appointment/follow-up/consultation/doctor 各 .list/.manage) - DTO / Service / Handler / Event 四层架构,Service 使用 todo!() 占位 - erp-server 集成:模块注册 + AppState FromRef 桥接 + 路由挂载 同步更新 CLAUDE.md 项目进度、wiki 知识库、设计规格文档。
This commit is contained in:
45
CLAUDE.md
45
CLAUDE.md
@@ -1,26 +1,26 @@
|
||||
@wiki/index.md
|
||||
整个项目对话都使用中文进行,包括文档、代码注释、事件名称等。
|
||||
|
||||
# ERP 平台底座 — 协作与实现规则
|
||||
# HMS 健康管理平台 — 协作与实现规则
|
||||
|
||||
> **ERP Platform Base** 是一个模块化的商业 SaaS ERP 底座,目标是提供核心基础设施(身份权限、工作流、消息、配置),使行业业务模块(进销存、生产、财务等)可以快速插接。
|
||||
> **Health Management System (HMS)** — 面向体检中心/医疗机构的综合健康管理平台。从 ERP 底座分叉独立,继承身份权限/工作流/消息/配置等基础能力,`erp-health` 原生模块承载医疗业务。
|
||||
|
||||
> **当前阶段: Phase 1 基础设施搭建。** 从零构建 Rust workspace + Web 前端 + 核心共享层。
|
||||
> **当前阶段: erp-health 模块开发。** 设计规格已确认,开始实施。
|
||||
|
||||
## 1. 项目定位
|
||||
|
||||
### 1.1 这是什么
|
||||
|
||||
一个 **底座 + 行业插件** 架构的商业 SaaS ERP 平台:
|
||||
一个 **健康管理 + ERP 基础设施** 架构的医疗 SaaS 平台:
|
||||
|
||||
- **全功能底座** — 身份权限、工作流引擎、消息中心、系统配置
|
||||
- **渐进式扩展** — 从小微企业起步,逐步支持中大型企业
|
||||
- **医疗核心** — 患者管理、健康数据、预约排班、随访管理、咨询管理(原生 Rust 模块 erp-health)
|
||||
- **基础底座** — 身份权限、工作流引擎、消息中心、系统配置(继承自 ERP)
|
||||
- **多租户 + 私有化** — 默认 SaaS 共享数据库隔离,支持独立 schema 私有部署
|
||||
- **Web 优先** — 浏览器 SPA 是主力,可选 Tauri 桌面端用于特定行业场景
|
||||
- **Web 优先** — 浏览器 SPA 是 PC 管理后台主力,小程序(患者端/医护端)独立开发
|
||||
|
||||
### 1.2 决策原则
|
||||
|
||||
**任何改动都要问:这对 ERP 底座的模块化和可扩展性有帮助吗?**
|
||||
**任何改动都要问:这对健康管理平台的医疗业务和可扩展性有帮助吗?**
|
||||
|
||||
- ✅ 完善模块接口和 trait 定义 → 最高优先
|
||||
- ✅ 确保多租户隔离的正确性 → 最高优先
|
||||
@@ -46,18 +46,18 @@
|
||||
## 2. 项目结构
|
||||
|
||||
```text
|
||||
erp/
|
||||
hms/
|
||||
├── crates/ # Rust Workspace
|
||||
│ ├── erp-core/ # L1: 基础类型、错误、事件、模块 trait
|
||||
│ ├── erp-common/ # L1: 共享工具、宏
|
||||
│ ├── erp-auth/ # L2: 身份与权限模块
|
||||
│ ├── erp-workflow/ # L2: 工作流引擎模块
|
||||
│ ├── erp-message/ # L2: 消息中心模块
|
||||
│ ├── erp-config/ # L2: 系统配置模块
|
||||
│ ├── erp-health/ # L2: 健康管理模块 ★ HMS 核心
|
||||
│ └── erp-server/ # L3: Axum 服务入口,组装所有模块
|
||||
│ └── migration/ # SeaORM 数据库迁移
|
||||
├── apps/
|
||||
│ └── web/ # Vite + React 18 SPA (主力前端)
|
||||
│ └── web/ # Vite + React 19 SPA (主力前端)
|
||||
├── packages/
|
||||
│ └── ui-components/ # React 共享组件库
|
||||
├── desktop/ # (可选) Tauri 桌面端,行业需要时启用
|
||||
@@ -74,18 +74,18 @@ erp/
|
||||
|
||||
```text
|
||||
erp-core (无业务依赖)
|
||||
erp-common (无业务依赖)
|
||||
↑
|
||||
erp-auth (→ core)
|
||||
erp-config (→ core)
|
||||
erp-workflow (→ core)
|
||||
erp-message (→ core)
|
||||
erp-health (→ core) ★ HMS 核心
|
||||
↑
|
||||
erp-server (→ 所有 crate,组装入口)
|
||||
```
|
||||
|
||||
**规则:**
|
||||
- `erp-core` 和 `erp-common` 不依赖任何业务 crate
|
||||
- `erp-core` 不依赖任何业务 crate
|
||||
- 业务 crate 之间**禁止**直接依赖,只通过事件总线和 `erp-core` trait 通信
|
||||
- `erp-server` 是唯一的组装点
|
||||
|
||||
@@ -95,11 +95,11 @@ erp-server (→ 所有 crate,组装入口)
|
||||
|------|------|
|
||||
| 后端框架 | Axum 0.8 + Tokio |
|
||||
| ORM | SeaORM (异步、类型安全) |
|
||||
| 数据库 | PostgreSQL 16+ |
|
||||
| 数据库 | PostgreSQL 18 |
|
||||
| 缓存 | Redis 7+ |
|
||||
| 前端框架 | React 18 + TypeScript (Vite) |
|
||||
| UI 组件库 | Ant Design 5 |
|
||||
| 状态管理 | Zustand |
|
||||
| 前端框架 | React 19 + TypeScript 6 (Vite 8) |
|
||||
| UI 组件库 | Ant Design 6 |
|
||||
| 状态管理 | Zustand 5 |
|
||||
| 路由 | React Router 7 |
|
||||
| 样式 | TailwindCSS + CSS Variables |
|
||||
| API 文档 | utoipa (OpenAPI 3) |
|
||||
@@ -422,7 +422,6 @@ cargo test -p erp-plugin-prototype # 运行插件集成测试
|
||||
| scope | 范围 |
|
||||
|-------|------|
|
||||
| `core` | erp-core |
|
||||
| `common` | erp-common |
|
||||
| `auth` | erp-auth |
|
||||
| `workflow` | erp-workflow |
|
||||
| `message` | erp-message |
|
||||
@@ -452,12 +451,10 @@ chore(docker): 添加 PostgreSQL 健康检查
|
||||
|
||||
| 文档 | 说明 |
|
||||
|------|------|
|
||||
| `docs/superpowers/specs/2026-04-23-health-management-module-design.md` | **HMS 健康模块设计规格** ★ 当前 |
|
||||
| `docs/superpowers/specs/2026-04-10-erp-platform-base-design.md` | 平台底座设计规格 |
|
||||
| `docs/superpowers/plans/2026-04-10-erp-platform-base-plan.md` | 平台底座实施计划 |
|
||||
| `docs/superpowers/specs/2026-04-13-wasm-plugin-system-design.md` | WASM 插件系统设计规格 |
|
||||
| `docs/superpowers/plans/2026-04-13-wasm-plugin-system-plan.md` | WASM 插件原型验证计划 |
|
||||
| `docs/superpowers/specs/2026-04-16-crm-plugin-design.md` | CRM 客户管理插件设计规格 |
|
||||
| `docs/superpowers/plans/2026-04-16-crm-plugin-plan.md` | CRM 插件实施计划 |
|
||||
|
||||
所有设计决策以设计规格文档为准。实施计划按阶段拆分,每阶段开始前细化。
|
||||
|
||||
@@ -490,8 +487,7 @@ chore(docker): 添加 PostgreSQL 健康检查
|
||||
| Crate | 功能 | 状态 |
|
||||
|-------|------|------|
|
||||
| erp-core | 错误类型、共享类型、事件总线、ErpModule trait、审计日志 | ✅ 完成 |
|
||||
| erp-common | 共享工具 | ✅ 完成 |
|
||||
| erp-server | Axum 服务入口、配置、数据库连接、CORS | ✅ 完成 |
|
||||
| erp-server | Axum 服务入口、配置、数据库连接、CORS、模块注册、后台任务 | ✅ 完成 |
|
||||
| erp-auth | 身份与权限 (用户/角色/权限/组织/部门/岗位/行级数据权限) | ✅ 完成 |
|
||||
| erp-workflow | 工作流引擎 (BPMN 解析/Token 驱动/任务分配) | ✅ 完成 |
|
||||
| erp-message | 消息中心 (CRUD/模板/订阅/通知面板) | ✅ 完成 |
|
||||
@@ -501,6 +497,9 @@ chore(docker): 添加 PostgreSQL 健康检查
|
||||
| erp-plugin-test-sample | WASM 测试插件 (Guest trait + Host API 回调) | ✅ 原型验证 |
|
||||
| erp-plugin-crm | CRM 客户管理插件 (5 实体/9 权限/6 页面) | ✅ 完成 |
|
||||
| erp-plugin-inventory | 进销存管理插件 (6 实体/12 权限/6 页面) | ✅ 完成 |
|
||||
| erp-plugin-freelance | 自由职业者管理插件 | ✅ 完成 |
|
||||
| erp-plugin-itops | IT 运维管理插件 | ✅ 完成 |
|
||||
| erp-health | 健康管理原生模块 (16 实体/12 权限/13 页面) | 🔧 开发中 |
|
||||
|
||||
<!-- ARCH-SNAPSHOT-END -->
|
||||
|
||||
|
||||
Reference in New Issue
Block a user