15b5781dbbb9b65c7fc3adb1e5ef338b1ef980e0
1. CRITICAL: 修复 SubscriptionHandle 提前 drop 导致所有事件消费者失效 - register_handlers_with_state 中所有 handle 在函数返回时被 drop - cancel channel 关闭导致 subscribe_filtered 的过滤任务退出 - 方案: 收集所有 handle 并 std::mem::forget,生命周期与进程一致 2. HIGH: 修复 critical_alert 消费者 payload 字段映射不匹配 - 消费者读取 alert_type/metric_name 等顶层字段,但实际在 alert 嵌套对象中 - 更新消费者从 alert 对象提取 indicator/value/threshold/level - handle_critical_alert_event 增加 severity 参数 3. MEDIUM: 修复 check_indicator 优先匹配最高严重级别 - 原实现返回第一个匹配的阈值(可能匹配 warning 而非 critical) - 改为遍历所有匹配阈值,选择 severity 最高的(critical > warning) 4. MEDIUM: 修复危急值阈值页面不自动加载数据 - CriticalValueThresholdList 添加 useEffect 初始化加载
ERP Platform Base
模块化商业 SaaS ERP 平台底座。
技术栈
| 层级 | 技术 |
|---|---|
| 后端 | Rust (Axum 0.8 + SeaORM + Tokio) |
| 数据库 | PostgreSQL 16+ |
| 缓存 | Redis 7+ |
| 前端 | Vite + React 18 + TypeScript + Ant Design 5 |
项目结构
erp/
├── crates/
│ ├── erp-core/ # 基础类型、错误、事件总线、模块 trait
│ ├── erp-common/ # 共享工具
│ ├── erp-auth/ # 身份与权限 (Phase 2)
│ ├── erp-workflow/ # 工作流引擎 (Phase 4)
│ ├── erp-message/ # 消息中心 (Phase 5)
│ ├── erp-config/ # 系统配置 (Phase 3)
│ └── erp-server/ # Axum 服务入口
│ └── migration/ # SeaORM 数据库迁移
├── apps/web/ # React SPA 前端
├── docker/ # Docker 开发环境
└── docs/ # 文档
快速开始
1. 启动基础设施
cd docker && docker compose up -d
2. 启动后端
cargo run -p erp-server
3. 启动前端
cd apps/web && pnpm install && pnpm dev
4. 访问
- 前端: http://localhost:5173
- 后端 API: http://localhost:3000
开发命令
cargo check # 编译检查
cargo test --workspace # 运行测试
cargo run -p erp-server # 启动后端
cd apps/web && pnpm dev # 启动前端
Description
Languages
Rust
59.2%
TypeScript
32.2%
JavaScript
2.8%
SCSS
2.7%
Python
2.1%
Other
1%