首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >易软通开源WMS系统:Vue3+Java高效架构

易软通开源WMS系统:Vue3+Java高效架构

原创
作者头像
用户5212410
发布2025-09-28 09:06:29
发布2025-09-28 09:06:29
1130
举报

1:项目介绍

系统采用RuoYi-Vue-Plus作为后端Java基础框架,已做调整不兼容原框架;前端采用Vue3 + VueX + Vue-Router + Element Plus + Pinia + TypeScript + Axios + Vite为前端框架。

2:项目部署环境

  1. JDK:corretto-17+
  2. Redis 3.0+
  3. Maven 3.0+
  4. MYSQL 8.0+
  5. Nodejs18+

3:开发环境

新版 Visual Studio Code 或者 AI IDE Cursor 与 Trae 安装 .vscode/extensions.json 文件中推荐的插件 node 20.19+ 或 22.12+ npm 10+

4:相关网址

开源WMS演示系统: http://open.wms.kim 前端源码地址:https://gitee.com/yiruantong/open-wms-ui 后端源码地址:https://gitee.com/yiruantong/open-wms 帮助文档地址:https://www.yuque.com/xietianbao/xc91gm

5:系统采用的技术栈

功能

本框架

前端项目

前端在vue-next-admin框架基础上进行二开,采用 Vue3 + TS + ElementPlus+Pinia开发

后端项目结构

采用插件化 + 扩展包形式 结构解耦 易于扩展

后端代码风格

严格遵守Alibaba规范与项目统一配置的代码格式化

Web容器

采用 Undertow 基于 XNIO 的高性能容器

权限认证

采用 Sa-Token、Jwt 静态使用功能齐全 低耦合 高扩展

权限注解

采用 Sa-Token 支持注解 登录校验、角色校验、权限校验、二级认证校验、HttpBasic校验、忽略校验,角色与权限校验支持多种条件 如 AND OR 或 权限 OR 角色 等复杂表达式

三方鉴权

采用 JustAuth 第三方登录组件 支持微信、钉钉等数十种三方认证

关系数据库支持

原生支持 MySQL、Oracle、PostgreSQL、SQLServer 可同时使用异构切换

缓存数据库

支持 Redis 5-7 支持大部分新功能特性 如 分布式限流、分布式队列

Redis客户端

采用 Redisson Redis官方推荐 基于Netty的客户端工具 支持Redis 90%以上的命令 底层优化规避很多不正确的用法 例如: keys被转换为scan 支持单机、哨兵、单主集群、多主集群等模式

缓存注解

采用 Spring-Cache 注解 对其扩展了实现支持了更多功能 例如 过期时间 最大空闲时间 组最大长度等 只需一个注解即可完成数据自动缓存

ORM框架

采用 Mybatis-Plus 基于对象几乎不用写SQL全java操作 功能强大插件众多 例如多租户插件 分页插件 乐观锁插件等等

SQL监控

采用 p6spy 可输出完整SQL与执行时间监控

数据分页

采用 Mybatis-Plus 分页插件 框架对其进行了扩展 对象化分页对象 支持多种方式传参 支持前端多排序 复杂排序

数据权限

采用 Mybatis-Plus 插件 自行分析拼接SQL 无感式过滤 只需为Mapper设置好注解条件 支持多种自定义 不限于部门角色

数据脱敏

采用 注解 + jackson 序列化期间脱敏 支持不同模块不同的脱敏条件 支持多种策略 如身份证、手机号、地址、邮箱、银行卡等 可自行扩展

数据加解密

采用 注解 + mybatis 拦截器 对存取数据期间自动加解密 支持多种策略 如BASE64、AES、RSA、SM2、SM4等

接口传输加密

采用 动态 AES + RSA 加密请求 body 每一次请求秘钥都不同大幅度降低可破解性

数据翻译

采用 注解 + jackson 序列化期间动态修改数据 数据进行翻译 支持多种模式: 映射翻译 直接翻译 其他扩展条件翻译 接口化两步即可完成自定义扩展 内置多种翻译实现

多数据源框架

采用 dynamic-datasource 支持世面大部分数据库 通过yml配置即可动态管理异构不同种类的数据库 也可通过前端页面添加数据源 支持spel表达式从请求头参数等条件切换数据源

多数据源事务

采用 dynamic-datasource 支持多数据源不同种类的数据库事务回滚

数据库连接池

采用 HikariCP Spring官方内置连接池 配置简单 以性能与稳定性闻名天下

数据库主键

采用 雪花ID 基于时间戳的 有序增长 唯一ID 再也不用为分库分表 数据合并主键冲突重复而发愁

WebSocket协议

基于 Spring 封装的 WebSocket 协议 扩展了Token鉴权与分布式会话同步 不再只是基于单机的废物

序列化

采用 Jackson Spring官方内置序列化 靠谱!!!

分布式幂等

参考美团GTIS防重系统简化实现(细节可看文档)

分布式锁

采用 Lock4j 底层基于 Redisson

分布式任务调度

采用 PowerJob 天生支持分布式 统一的管理中心

文件存储

采用 Minio 分布式文件存储 天生支持多机、多硬盘、多分片、多副本存储 支持权限管理 安全可靠 文件可加密存储

云存储

采用 AWS S3 协议客户端 支持 七牛、阿里、腾讯 等一切支持S3协议的厂家

短信

采用 sms4j 短信融合包 支持数十种短信厂家 只需在yml配置好厂家密钥即可使用 可多厂家共用

邮件

采用 mail-api 通用协议支持大部分邮件厂商

接口文档

采用 SpringDoc、javadoc 无注解零入侵基于java注释 只需把注释写好 无需再写一大堆的文档注解了

校验框架

采用 Validation 支持注解与工具类校验 注解支持国际化

Excel框架

采用 Alibaba EasyExcel 基于插件化 框架对其增加了很多功能 例如 自动合并相同内容 自动排列布局 字典翻译等

工具类框架

采用 Hutool、Lombok 上百种工具覆盖90%的使用需求 基于注解自动生成 get set 等简化框架大量代码

监控框架

采用 SpringBoot-Admin 基于SpringBoot官方 actuator 探针机制 实时监控服务状态 框架还为其扩展了在线日志查看监控

链路追踪

采用 Apache SkyWalking 还在为请求不知道去哪了 到哪出了问题而烦恼吗 用了它即可实时查看请求经过的每一处每一个节点

代码生成器

只需设计好表结构 一键生成所有crud代码与页面 降低80%的开发量 把精力都投入到业务设计上 框架为其适配MP、SpringDoc规范化代码 同时支持动态多数据源代码生成

部署方式

支持 Docker 编排 一键搭建所有环境 让开发人员从此不再为搭建环境而烦恼

项目路径修改

提供详细的修改方案文档 并为其做了一些改动 非常简单即可修改成自己想要的

国际化

基于请求头动态返回不同语种的文本内容 开发难度低 有对应的工具类 支持大部分注解内容国际化

代码单例测试

提供单例测试 使用方式编写方法与maven多环境单测插件

Mongoplus

使用MyBatisPlus的方式,优雅的操作MongoDB

6:开源WMS架构说明

6.1:软件架构图

易软通openWMS部署架构图
易软通openWMS部署架构图

6.2:软件功能框架

6.3:软件功能亮点

软件功能框架
软件功能框架

6.4:开源WMS系统功能脑图

开源WMS系统功能脑图 - 入库模块
开源WMS系统功能脑图 - 入库模块
开源WMS系统功能脑图 - 出库模块
开源WMS系统功能脑图 - 出库模块
开源WMS系统功能脑图 - 库存模块
开源WMS系统功能脑图 - 库存模块
开源WMS系统功能脑图 - 系统模块
开源WMS系统功能脑图 - 系统模块

7:易软通openWMS系统功能列表

功能

描述

入库大屏

入库数据图形化显示

收货计划单

向供应商下预订购商品,供应商确认后可转为预到货单。

残品入库单

把收货时检验出的不合格品入库

预到货单

将要到货入库的订单

缺货订单转预到货

缺货的出库单可转为预到货单进行采购入库。

建议采购转预到货

根据近30天出库量计算建议采购数量

质检管理

对需要质检的入库单据进行质检管理

按单扫描入库

把已到货的商品按预到货单进行收货入库。

装箱扫描入库

把已到货的商品按装箱进行收货入库。

按拍扫描入库

按拍到货的订单可按拍入库(需提前将到货拍号维护到预到货单中)

按单码盘扫描

码盘就是将需要入库的商品,码到托盘或其他专门的收货箱或盘中,然后可按托盘上架。

收货区码盘

将已经收货到收货区的商品,进行码盘操作(绑定托盘号)

LPN号扫描入库

把已到货的商品按LPN号进行收货入库(专门用于收货的收货周转容器)。

无单扫描入库

对没有预到货单的需入库商品,可直接扫描商品入库。

入库记录查询

可查询已收货入库的订单

生成上架单

把收到收货位的商品生成上架单,供手持PDA上架操作。(系统已默认设置为在收货入库时自动生成上架单,所以不用再领生成上架单)

待上架单扫描

将已收货到收货区还未上架的商品,上架单上架到库内常规货位。

按拍扫描上架

将已码盘的商品按拍号进行上架操作。

LPN号扫描上架

按LPN号(收货周转箱)进行上架操作

无单扫描上架

将已收货入库的商品进行不按订单直接扫商品上架。

上架记录查询

可查询已上架操作的订单

到货退货单

对已入库需要进行退货的商品或预到货单进行退货操作。

出库大屏

出库数据图形化显示

出库计划单

出库计划单(审核通过后可转为出库订单)

出库订单

需出库的订单

生成波次

将已分配的订单按订单、收货人、快递公司等不同的方式生成为一个波茨。

波次查询

查询已生成的波次单

出库拣货下架

按波次将需出库商品拣货下架到理货区

灯光效验出库

根据灯光指示精准的出库方式

出库按拍下架

扫描托盘号进行拣货下架

出库下架回拣

将已下架到理货区但不需要出库的商品上架回货位

出库单常规配货

将已拣货下架至理货区的商品按订单进行分拣配货。

出库单批量配货

将已拣货下架至理货区的商品按订单进行快速批量配货,配货成功后直接消减库存出库完成。

出库灯光配货

根据灯光指示配货

出库单打包校验

将已配货完成的订单按订单进行打包。

波次打包校验

按波次进行打包

无单打包校验

无需出库单直接扫描商品进行打包出库

打包校验查询

可查询已打包的商品或订单

单据补打

单据丢失补打功能

包材使用统计

使用统计功能

发货校验

将已打包出库的订单发货交接时的校验

闪电发货校验

不需拣货、配货、打包等环节,用波次号发货的简易出库流程

发货历史记录

已发货的出库订单,送货单、交货清单、商品明细单

已发货运单号导入

将已发货的快递单号批量导入

发货重量导入

发货时称重的记录

发货信息导入

查询发货时信息的记录

出库退货单

对已销售出库需退货的商品或订单进行退货操作

库存大屏

库存数据图形化显示

库存明细查询

商品入库、上架、货位转移等操作生成的库存明细数据

库存SN查询

按SN号查询库

商品库存查询

商品库存信息查询

库存监测记录

库存入库、出库、转移货位等所有库存变化轨迹的记录

库存占位查询

出库订单已分配但还没拣货下架的商品为占位商品,已占位的商品其它单据不能使用

库存可视化查询

可分别平面化、直观的查询各库区货位的库存

库存实时使用查询

查询库存实时使用情况

货位转移扫描

同一仓库的库存商品的货位转移操作

货位转移查询

查询货位转移记录

生成盘点单

选择需盘点的商品,按相应的盘点类型生成盘点单。

库存盘点查询

查询已生成的盘点单,可打印或导出盘点单进行盘点操作,盘点完成后与账面库存有差异的需生成盘点盈亏单。

盘点盈亏单

可查询已生成的盘点盈亏单,对已经复盘完成的盈亏单可调整库存。

其它入库单

可对一些特殊情况直接入库

其它出库单

可对一些特殊情况直接出库

库存成本调价单

对库存的商品进行成本价调整

商品拆装单

将库存商品组成套装或将套装拆分

库存调整

对商品库存进行快速、简易的调整

货主过户

货主过户信息

效期信息调整

效期信息调整管理

调拨申请单

跨库调拨,可新建/编辑调拨申请单

调拨出库单

调拨申请单下发出库后生成调拨出库单

在途入库单

调入仓库入库后,系统自动根据调拨申请单中的在途仓库,生成调拨在途库存;

在途出库单

(此处似乎缺少对应内容,您可以补充完整的信息)

调拨入库单

调出仓库出库后,根据调拨申请单生成调拨入库单据

借出单

借出商品单据

借出归还单

借出商品归还单据

借入单

借入商品单据

借入归还单

借入商品归还单据

商品容器管理

商品关联容器设置

客户容器管理

按客户统计当前借出的容器数量

容器流水记录

容器借出归还流水

容器借出

容器借出单据

容器归还

容器归还单据

仓库容器查询

客户借出已归还入库的空容器库存查询

容器返厂单

空容器返还给厂家的单据

仓库信息

新建/编辑仓库

库区管理

编辑查看库区信息

货位管理

新建虚拟货位及编辑货位

货位定义

批量定义常规货位

商品入库上架策略

可设置系统上架规则,并可设置优先使用某规则

容器管理

周转箱、托盘等容器的基础信息

保质期预警

保质期数据预警设置

库龄预警

库存时间预警

货位最低库存预警

货位最低库存警告

入库计划明细查询

入库计划明细查询管理

残品入库明细查询

残品入库单明细

预到货明细查询

预到货明细查询信息管理

入库明细查询

入库信息明细管理

上架明细查询

上架明细查询管理

供应商进货统计

供应商进货管理

商品进货统计

商品信息进货统计

收货退货查询

收货退货查询管理

出库单计划明细查询

出库单计划明细查询管理

出库订单明细查询

出库订单明细查询管理

拣货下架明细查询

拣货下架明细统计

出库记录明细查询

出库打包明细查询管理

客户销售查询

客户销售查询管理

出库单退货查询

出库单退货查询管理

每日库存快照

每天0点保存当天的库存数据

库存统计

库存统计

拣货人员工作量统计

拣货人员工作量统计信息

拣货人员拣货明细

拣货人员拣货信息明细

UI设计

UI设计功能

客户信息

出库订单发货客户信息管理

商品信息

新建/编辑商品信息

套装组合设置

商品组合套装

品牌管理

商品品牌

供货商信息

商品供应商信息

商品类别

新建/编辑商品分类

用户管理

用户信息管理

部门管理

部门信息管理

角色管理

角色信息管理

角色权限设置

角色权限设置

用户日志

用户日志管理

VueUI设计器

VueUI设计器功能

VueUI打印设计器

VueUI打印设计器

首页布局设计器

首页布局设计器

流程设计器

总体流程设计器

Mvc开发中心

Mvc开发中心功能

默认单据编码

默认单据编码

Vue菜单设置

Vue菜单设置

导入设置

导入设置

导出设置

导出设置

系统设置

系统设置

下拉框设置

下拉框设置

下拉框值设置

下拉框值设置

8:系统切图

8.1 演示功能

8.2:系统工具

##:8.3:PDA App端

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1:项目介绍
  • 2:项目部署环境
  • 3:开发环境
  • 4:相关网址
    • 5:系统采用的技术栈
    • 6:开源WMS架构说明
      • 6.1:软件架构图
      • 6.2:软件功能框架
      • 6.3:软件功能亮点
      • 6.4:开源WMS系统功能脑图
    • 7:易软通openWMS系统功能列表
  • 8:系统切图
    • 8.1 演示功能
    • 8.2:系统工具
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档