iven 14f431efff feat: systematic functional audit — fix 18 issues across Phase A/B
Phase A (P1 production blockers):
- A1: Apply IP rate limiting to public routes (login/refresh)
- A2: Publish domain events for workflow instance state transitions
  (completed/suspended/resumed/terminated) via outbox pattern
- A3: Replace hardcoded nil UUID default tenant with dynamic DB lookup
- A4: Add GET /api/v1/audit-logs query endpoint with pagination
- A5: Enhance CORS wildcard warning for production environments

Phase B (P2 functional gaps):
- B1: Remove dead erp-common crate (zero references in codebase)
- B2: Refactor 5 settings pages to use typed API modules instead of
  direct client calls; create api/themes.ts; delete dead errors.ts
- B3: Add resume/suspend buttons to InstanceMonitor page
- B4: Remove unused EventHandler trait from erp-core
- B5: Handle task.completed events in message module (send notifications)
- B6: Wire TimeoutChecker as 60s background task
- B7: Auto-skip ServiceTask nodes instead of crashing the process
- B8: Remove empty register_routes() from ErpModule trait and modules
2026-04-12 15:22:28 +08:00

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. 访问

开发命令

cargo check                        # 编译检查
cargo test --workspace             # 运行测试
cargo run -p erp-server            # 启动后端
cd apps/web && pnpm dev            # 启动前端
Description
No description provided
Readme 703 KiB
Languages
Rust 74.2%
TypeScript 22.5%
CSS 2.5%
PowerShell 0.7%