是一套面向制造企业的全栈数字化管理平台,深度集成 ERP(企业资源计划)、MES(制造执行系统)、WMS(仓储管理系统)、QMS(质量管理系统)、APS/MRP(高级排程与物料需求计划) 及 财务管理 六大核心领域。
系统采用前后端分离架构,覆盖从采购、生产、仓储、质检到财务结算的完整业务流程,支持审批流、数据权限、条码管理、定时任务、打印模板等通用能力,并提供跨平台启停脚本与图形化运行管理器。
🛠️ 技术栈
后端 (Backend)
- Node.js 18+ + TypeScript 5.9
- Express 4.x Web 框架
- TypeORM 0.3.x ORM 框架
- MySQL 8.0 关系型数据库
- Redis 7.x 缓存与会话存储
- JWT 身份认证与授权
- Winston 日志系统
- ts-node-dev 开发热重载
前端 (Frontend)
- Angular 17 前端框架
- Nebular UI 组件库 (基于 Ngx-admin 主题)
- RxJS 响应式编程
- ECharts 5.x 数据可视化图表
- bwip-js 条码生成引擎
- Ngx-translate 国际化支持
运维工具 (DevOps)
- .NET 11 WinForms 图形化运行管理器 (WE2RunManager)
- PowerShell / Bash 跨平台启停脚本
- Docker Compose 容器化部署支持
📂 项目结构
WE2/
├── backend/ # Node.js 后端项目
│ ├── src/
│ │ ├── config/ # 配置管理 (数据库/JWT/Redis/AI)
│ │ ├── controllers/ # RESTful API 控制器
│ │ ├── services/ # 业务逻辑层
│ │ ├── entities/ # TypeORM 实体定义
│ │ ├── middlewares/ # 中间件 (认证/日志/异常处理)
│ │ ├── utils/ # 工具函数 (编码生成/条码/加密)
│ │ └── modules/ # 业务模块
│ │ ├── base/ # 基础设置 (部门/岗位/编码规则)
│ │ ├── system/ # 系统管理 (用户/角色/权限/日志)
│ │ ├── erp/ # ERP (采购/销售/库存/成本)
│ │ ├── mes/ # MES (工单/报工/设备/安灯)
│ │ ├── wms/ # WMS (入库/出库/盘点/调拨)
│ │ ├── qms/ # QMS (检验/不合格品/SPC)
│ │ ├── aps/ # APS 高级排程
│ │ ├── mrp/ # MRP 物料需求计划
│ │ └── report/ # 报表中心 (ECharts 集成)
│ ├── .env # 环境变量配置
│ └── package.json
│
├── frontend/ # Angular 前端项目
│ ├── src/
│ │ ├── app/
│ │ │ ├── modules/ # 功能模块 (按业务域划分)
│ │ │ ├── shared/ # 共享组件/指令/管道
│ │ │ ├── core/ # 核心服务 (Auth/Guard/Interceptor)
│ │ │ └── theme/ # Nebular 主题定制
│ │ ├── assets/
│ │ │ ├── i18n/ # 多语言翻译文件 (zh/en)
│ │ │ └── icons/ # 自定义图标
│ │ └── environments/ # 环境配置 (dev/prod)
│ └── package.json
│
├── scripts/ # 运维脚本与管理器
│ ├── WE2RunManager/ # .NET WinForms 图形化管理器
│ ├── start.ps1 # PowerShell 一键启动脚本
│ ├── stop.ps1 # PowerShell 一键停止脚本
│ └── install.sh # Linux/macOS 安装脚本
│
├── database/ # 数据库初始化脚本
│ └── init/
│ ├── 01_create_database.sql
│ └── 02_seed_data.sql
│
├── deploy/ # 部署配置
│ └── windows/ # Windows 部署脚本
│
├── docker-compose.yml # Docker 编排文件
└── README.md # 本文档
🚀 核心功能模块
1. 基础设置 (Base)
- 公司/部门/岗位/员工档案管理
- 产品分类与单位管理
- 自定义字段引擎 (动态扩展实体属性)
- 全局业务编码规则 (自动生成单据号)
2. 系统管理 (System)
- 用户/角色/菜单/权限管理 (RBAC)
- 数据权限控制 (行级/列级)
- 操作日志与敏感操作审计
- 消息通知中心 (站内信/邮件/短信)
- 条码规则管理与打印模板设计
- 定时任务调度 (库存预警/保养提醒)
3. ERP 企业资源计划
- 物料主数据管理
- 供应商/客户档案
- 采购请购 → 采购订单 → 入库单 (联查)
- 销售订单 → 出库单 → 应收账款 (自动生成)
- 成本核算 (加权平均/先进先出)
- 报价询价管理
4. MES 制造执行系统
- 工序管理与工艺路线
- 生产订单分解为工单
- 生产排程 (甘特图可视化)
- 生产领料 (BOM 展开自动生成)
- 生产报工与完工入库
- 设备台账/保养/维修/点检
- 安灯系统 (Andon) 异常呼叫
- ESOP 电子作业指导书
- 数据采集 (数采点位监控)
5. WMS 仓储管理系统
- 仓库/库位管理 (容量可视化)
- 入库管理 (采购/生产/退货)
- 出库管理 (销售/领料/调拨)
- 库存查询 (明细/汇总/预警)
- 库存盘点 (全盘/抽盘/明盘/暗盘)
- 库存调拨与锁定/解锁
- 批次追溯与条码扫描
6. QMS 质量管理系统
- 来料检验 (IQC) / 过程检验 (IPQC) / 成品检验 (OQC)
- 不合格品管理 (NCR) 与处置流程
- SPC 统计过程控制 (控制图/能力分析)
- 质量追溯 (正向/反向)
- 计量器具管理与校准
- 8D 报告/PPAP/FMEA/MSA 质量工具
7. APS/MRP 计划排程
- APS 高级排程 (考虑产能/物料约束)
- MRP 物料需求计划 (净需求计算)
- 建议类型 (生产/采购/委外)
8. 财务管理 (Finance)
- 应付账款 (入库自动生成)
- 应收账款 (出库自动生成)
- 成本中心与利润中心
9. 报表中心 (Reports)
- 数据大屏 (实时业务看板)
- 库存/出入库/采购/销售/生产/质量/财务报表
- ECharts 动态图表集成
10. 通用功能
- Excel/CSV 导入导出
- 审批工作流 (提交/审核/驳回)
- 打印预览与单据打印 (模板引擎)
- 单据联查 (上下游关联跳转)
⚙️ 快速开始
环境要求
- Node.js: 18.x 或更高版本
- MySQL: 8.0 或更高版本
- Redis: 7.x (可选,用于缓存)
- .NET SDK: 11.x (仅用于运行管理器)
- 操作系统: Windows 10/11, Linux, macOS
方式一:使用图形化运行管理器 (推荐)
-
编译管理器
cd scripts\WE2RunManager dotnet build -
运行管理器
.\bin\Debug\net11.0-windows\win-x64\WE2RunManager.exe -
在界面中操作
- 点击"数据库配置"设置 MySQL 连接信息
- 点击"启动全部"一键启动前后端服务
- 查看实时日志与环境检测状态
方式二:使用命令行脚本
Windows (PowerShell)
# 启动服务
.\scripts\start.ps1
# 停止服务
.\scripts\stop.ps1
# 查看状态
.\scripts\status.ps1
Linux/macOS (Bash)
# 启动服务
./scripts/start.sh
# 停止服务
./scripts/stop.sh
方式三:手动启动
1. 后端启动
cd backend
npm install
npm run dev
2. 前端启动
cd frontend
npm install
npm start
3. 数据库初始化
# 创建数据库
mysql -u root -p < database/init/01_create_database.sql
# 导入种子数据
mysql -u root -p erp_system < database/init/02_seed_data.sql
🔑 默认账号
| 角色 | 邮箱 | 密码 |
|---|---|---|
| 超级管理员 | admin@example.com | admin123 |
| 测试账号 | user@example.com | 123456 |
🌐 访问地址
- 前端页面: http://localhost:4200
- 后端 API: http://localhost:3000/api/v1
- Swagger 文档: http://localhost:3000/api/docs
- WebSocket: ws://localhost:3000/ws
📝 开发规范
后端规范
- 使用 TypeScript 严格模式 (
strict: true) - 实体类使用 TypeORM 装饰器,字段名采用蛇形命名 (
snake_case) - API 统一返回格式:
{ code: number, message: string, data: any, timestamp: string } - 使用 JWT 进行身份认证,Token 有效期 7 天
- 错误处理使用全局异常过滤器
- 日志分级记录 (info/warn/error)
前端规范
- 使用 Angular CLI 生成组件/服务/模块
- 遵循 Angular 风格指南 (目录结构/命名约定)
- 使用 Nebular 组件库,主题色可定制
- 路由采用懒加载策略
- 国际化使用
ngx-translate,翻译键层级与代码路径一致 - 列表组件统一使用分页条数选择器 (10/20/50/100)
数据库规范
- 表名采用复数形式,小写加下划线 (如
purchase_orders) - 主键统一使用
id(BIGINT AUTO_INCREMENT) - 时间字段使用
DATETIME类型 - 软删除使用
deleted_at字段 - 枚举值在前端通过翻译映射显示中文
🐳 Docker 部署
# 构建并启动所有服务
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
评论一下?