一套面向制造业的智能仓库管理系统,核心是库位精细管控 + 机器人协同搬运,打通从入库到出库的全链路,支持"货到人"和"人到货"两种作业模式。
主要功能
入库:入库预告(ASN)→ 收货 → 质检 → 上架,支持 ERP 同步和手工创建,托盘/货篓差异化处理。
出库:出库订单 → 审核 → 波次 → 拣货 → 出库。支持人工、机器人、混合三种作业模式;多物料同托盘合并搬运、拣完整托送回;按产品编号(productCode)精准分配库存,保证"领某一台设备的料"。
库存:实时库存账(总量/可用/锁定/冻结),多物料托盘明细,库存查询与预警。
仓储模型:仓库 → 货架 → 货位 → 库位四级结构,库位状态机管理(空位/空架/占用/禁用),支持托盘位、货篓位、混合位。
机器人调度:对接 RCS,智能选车(空闲优先 + 载具匹配 + 电量最优),任务自动派发与排队,多段路由回调驱动库位状态,异常处理与软取消。
库内作业:库位间移位、仓库初始化、暂存中转管理。
系统集成
与 ERP(单据同步)、OA 单点登录(SSO 统一登录)、RCS 机器人调度(任务下发+回调)、帆软报表(数据看板)打通,前端 WebSocket 实时推送任务状态。
技术特点
Spring Boot + PostgreSQL + Vue3,多租户、操作日志、状态机驱动、悲观锁+CAS 保证并发一致性,支持不连真实机器人的模拟模式(便于演示测试)。
后端:Spring Boot 3 + MyBatis-Plus + PostgreSQL,JDK 17,基于 yudao(芋道)中台框架二次开发
前端:Vue 3.5 + Element Plus 2.11 + Pinia + Vite 5 + TypeScript
中间件:Redis(缓存/锁)、RabbitMQ(消息)、WebSocket(实时推送)
架构
基于 yudao 多模块架构,启用:system(用户/权限/租户)、infra(基础设施/字典)、bpm(工作流)、wms(仓储,核心自研);其余模块(pay/mall/erp 等)按需注释未启用。前后端分离,REST API(admin-api)通信,带多租户 + 数据权限 + 操作日志。
数据一致性
库存/库位等关键数据采用悲观锁(FOR UPDATE)+ CAS 原子更新,保证高并发下的扣减/释放/状态流转不串号;订单流转用状态机驱动,防止非法状态跳转。
机器人协同
对接 RCS,任务下发 + 回调驱动;多段路由(如 P02/P03 三点两段)用回调序列(start/outbin/leavebin/end)推进库位状态;资源满时任务进 waiting 排队,释放后按优先级 + FIFO 唤醒派发。