🔥🔥🔥S-PMS (Smart Production Management System) 智能生产管理系统 ,是一个集成化、智能化的企业级应用软件,它集成了多个核心的生产管理模块,包括 制造执行系统 (MES)、仓库管理系统 (WMS)、企业资源计划系统 (ERP)、质量管理系统 (QMS) 以及 物联网管理系统 (IoTS) 等。QQ群:773726377
🔥🔥🔥S-PMS (Smart Production Management System) 智能生产管理系统 ,是一个集成化、智能化的企业级应用软件,它集成了多个核心的生产管理模块,包括 制造执行系统 (MES)、仓库管理系统 (WMS)、企业资源计划系统 (ERP)、质量管理系统 (QMS) 以及 物联网管理系统 (IoTS) 等。QQ群:773726377
🔥🔥🔥S-PMS (Smart Production Management System) 智能生产管理系统 ,是一个集成化、智能化的企业级应用软件,它集成了多个核心的生产管理模块,包括 制造执行系统 (MES)、仓库管理系统 (WMS)、企业资源计划系统 (ERP)、质量管理系统 (QMS) 以及 物联网管理系统 (IoTS) 等。QQ群:773726377
AB-PLC CIP(EtherNet/IP) protocol
Melsec PLC MC-Binary protocol
Siemens PLC S7 Protocol
智能生产管理系统 · 后端服务(Smart Production Management System)
一个集成 MES / WMS / ERP / QMS / IoT 一体的企业级智能生产管理平台后端。
Important
🔥 请仔细阅读本文档了解项目后再进行下一步
🔥 作者是为爱发电,没有过多精力进行无偿问题解答和技术支持
📖 使用 AI 辅助开发前,请让 AI 先阅读 AGENTS.md,保证代码风格一致
🌟 觉得项目不错?点击右上角 Star 支持一下!
S-PMS(Smart Production Management System) 是一个面向中小型制造企业的智能生产管理系统后端,基于 AirPower4J 框架构建,将多个核心生产管理模块一体化整合在同一个应用中:
| 模块 | 全称 | 核心职责 |
|---|---|---|
| MES | 制造执行系统 | 车间生产活动优化管理,实时监控订单到成品的全流程 |
| WMS | 仓库管理系统 | 入库 / 出库 / 移库 / 库存的全流程管控 |
| ERP | 企业资源计划系统 | 整合财务、采购、销售、生产、库存等环节信息 |
| QMS | 质量管理系统 | 质量策划 / 控制 / 保证 / 改进的全周期管理 |
| IoT | 物联网管理系统 | 设备数据采集、远程监控、预防性维护 |
通过将这些系统一体化整合,帮助企业实现 采购 → 生产 → 仓储 → 销售 全流程的信息化、精细化、智能化管理。
[yyyy] [yy] [mm] [dd] [hh] 模板及日/月/年三种流水号重置策略id=1L)自动放行@McpMethod 注解方法,注册为 AI 可调用的工具AbstractOauthCallback 适配器)sys/msg/v1 主题,自动解析设备上报Status / Alarm / PartCnt 三个开箱即用的设备参数POST /device/getDeviceConfig 返回设备所需的参数列表与采集频率isPublished 字段,已发布数据自动禁止修改和删除@Desensitize 注解支持中文姓名、身份证号等自动脱敏IDictionary,前端可反查标签@AutoGenerateCode 自动填充| 类别 | 技术 / 版本 |
|---|---|
| 语言 / 运行时 | Java 17 |
| Web 框架 |
Spring Boot 3(由 cn.hamm:airpower:8.0.0 父 POM 锁定) |
| ORM | Spring Data JPA + Hibernate(MySQL8Dialect) |
| 数据库 | MySQL 8 |
| 缓存 |
Redis(Spring Data Redis,统一前缀 spms:) |
| 时序数据库 | InfluxDB 6.5.0(设备数据上报) |
| 物联网 | Eclipse Paho MQTT |
| 实时通信 |
WebSocket(基于 airpower-websocket,Redis 集群广播) |
| 邮件 | Spring Mail + 阿里云企业邮箱 |
| AI 工具 |
MCP(Model Context Protocol,airpower-ai) |
| 构建 | Maven、Spring Boot Maven Plugin |
| 容器 |
Docker(amazoncorretto:17-alpine) |
每个业务模块都以
cn.hamm.spms.module.<module>为根包,对应一个XxxServices服务定位类。
| 模块 | 包路径 | 主要业务 |
|---|---|---|
system |
module.system |
菜单 / 权限 / 编码规则 / 系统配置 / 单位 / 文件 / 索引 / 企业微信回调 |
personnel |
module.personnel |
用户(登录、验证码、个人令牌)/ 角色 / 部门 |
asset |
module.asset |
物料 / 设备 / 合同(含合同参与方、附件) |
channel |
module.channel |
客户 / 供应商 / 采购 / 销售 / 采购单价 / 销售单价 |
factory |
module.factory |
仓库(Storage)/ 生产单元(Structure,树形结构) |
mes |
module.mes |
生产计划 / 生产订单 / 领料单 / BOM / 工序 / 工艺路线 |
wms |
module.wms |
入库单 / 出库单 / 移库单 / 库存(均为单据模型) |
iot |
module.iot |
参数管理 + 设备数据上报(MQTT + Redis + InfluxDB) |
chat |
module.chat |
房间(广场/官方房)+ 成员 + WebSocket 实时聊天事件 |
open |
module.open |
OAuth2 / 第三方登录 / 通知钩子 / 开放应用管理 |
mcp |
module.mcp |
AI 工具(MCP)注册中心 |
wechat |
module.wechat |
微信相关(占位/扩展) |
┌──────────────────────────────────────────────────────────────┐
│ 客户端 / 第三方应用 │
│ Web SPA · Mobile App · 设备 MQTT 客户端 · OAuth2 回调 │
└──────────────────┬───────────────────────────────┬───────────┘
│ HTTP/JSON │ MQTT
│ WebSocket │
┌──────────────────▼───────────────────────────────▼───────────┐
│ SPMS Server(本项目) │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Controller 层(@Permission RBAC + Extends 过滤) │ │
│ ├──────────────────────────────────────────────────────┤ │
│ │ Service 层(BaseService 钩子 + 单据状态机) │ │
│ ├──────────────────────────────────────────────────────┤ │
│ │ Repository 层(JPA + Hibernate · MySQL8Dialect) │ │
│ └──────────────────────────────────────────────────────┘ │
│ ┌──────────┬──────────┬──────────┬──────────┬────────────┐ │
│ │ 系统模块 │ 人员模块 │ 资产模块 │ 渠道模块 │ MES/WMS/...│ │
│ └──────────┴──────────┴──────────┴──────────┴────────────┘ │
└────┬────────────┬────────────┬─────────────┬────────────────┘
│ │ │ │
┌────▼────┐ ┌────▼────┐ ┌────▼────┐ ┌───▼─────┐
│ MySQL │ │ Redis │ │InfluxDB │ │ MQTT │
│ 主库 │ │ 缓存集群 │ │ 时序数据 │ │ Broker │
└─────────┘ └─────────┘ └─────────┘ └─────────┘
查看我们的 Docker 一键部署仓库:SPMS-Docker,最快速体验完整服务。
需要熟悉以下技术: Java 17 · Spring Boot 3 · Maven · IDEA · MySQL · Redis
CREATE DATABASE spms DEFAULT CHARSET utf8mb4;
# Github
git clone https://github.com/s-pms/SPMS-Server.git
# 或 Gitee(国内推荐)
git clone https://gitee.com/s-pms/SPMS-Server.git
cp src/main/resources/application-template.yml src/main/resources/application-local.yml
编辑 application-local.yml,至少填入:
spring:
datasource:
url: "jdbc:mysql://localhost:3306/spms?allowPublicKeyRetrieval=true&serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false"
username: "root"
password: "<你的密码>"
app:
is-dev-mode: true # 启用开发者模式,首次启动自动初始化
pom.xml,等待 Maven 依赖同步cn.hamm.spms.SpmsApplication,Profile 选择 local
Hi Guy, SPMS is running at [8080] ! 即启动成功ddl-auto: create-drop),初始化完成后生成 init.lock
用户名:admin@hamm.cn
密 码:Aa123456
系统内置超级管理员(
id = 1),拥有所有权限。
使用 JPA 自动管理,无需手动建表。ddl-auto: create-drop 自动建表。 生产部署前:导出数据库结构 → 修改
ddl-auto: validate → 重新导入。
| 文档 | 适合谁 | 内容 |
|---|---|---|
| README.md | GitHub 访客 | 项目概览、快速体验 |
| AGENTS.md | AI Agent(Copilot/Cursor/Claude/Qwen Code 等) | 开发规范、目录结构、编码风格约定 |
| docs/DEV.md | 人类开发者 | 完整开发指南、单据开发、IoT 接入、调试排错 |
| SPMS-Docs | 前端开发者 | 配套前端开发指南 |
| SPMS-Docker | 运维 / 部署者 | Docker 一键部署方案 |
欢迎各种形式的贡献:
feat: 新增 xxx 功能
fix: 修复 xxx 问题
refactor: 重构 xxx 模块
docs: 更新文档
chore: 杂项修改(构建/工具/配置)
⚠️ 示例项目可能不是最新代码,建议自行部署后体验。
如果本项目对你有帮助,欢迎给 AirPower4J 也点一个 ⭐️,基础框架的迭代速度决定了这个项目的上限。
本项目基于 MIT License 开源,你可以放心使用于商业项目。
如果觉得项目对你有帮助,请点一个 ⭐️ Star 支持我们!
Made with ❤️ by Hamm