# kasa-wms
**Repository Path**: gzhou/kasa-wms
## Basic Information
- **Project Name**: kasa-wms
- **Description**: 仓储物流WMS管理系统,商用多年,服务的货主客户有:金六福酒业、格力空调、红牛饮品、小肥羊、肯德基、麦当劳、必胜客等等,系统运行稳定,性能也因经过多次的版本迭代得到优化,C/S + B/S 双架构混合运行,具备代码生成器,使用方便,极大简化普通的crud操作,能快速提高开发效率。
所有程序已全部打包在kasa_runtime目录,欢迎大家使用!
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 27
- **Forks**: 25
- **Created**: 2023-03-20
- **Last Updated**: 2025-09-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 介绍
## [演示地址:https://gzhou.site:2223](https://gzhou.site:2223)
- 用户名/密码: admin / 123
- 可随意操作,每隔一定时间重置数据
- 服务器配置比较弱,有可能部分功能使用时会比较慢
## [生产部署文档](https://gzhou.site)
## [演示视频](https://gzhou.site/video/)
## 下载地址
- 地址一、[kasa-wms](https://gzhou.site/downloads/kasa-wms.zip)
- 地址二、[kasa-wms(gitee)](https://gitee.com/gzhou/kasa-wms)
- 地址三、[kasa-wms(百度网盘 提取码: 6666)](https://pan.baidu.com/s/1Iz0_VNwFE3uUAgY7BSbdlg?pwd=6666)
## 前言
* 本系统本着大家学习的目的,开源了一年左右的时间
* 但发现有些软件公司没有遵循开源规则,套取资料,私自牟利,作者疲于应付
* 一般来说,物流公司不具备开发能力,开不开源对他们无意义
* 因此决定本系统不再开源,但对物流公司开放使用授权,免费给物流公司使用
## 版权
* 本系统所有打包部署的程序放在kasa_runtime目录里,已涵盖全部功能, 且能正常执行, 供有需要的朋友学习及使用.
* 本系统虽然已开放使用,但版权仍属于本公司,依法独立享有该软件的所有权利,未经公司授权,不得将之用于商业盈利的任何用途.
* 物流公司可免费使用本系统, 但在使用前, 请认真评估系统的业务流程是否适合自己!
## 作业流程图
## 功能列表
本系统支持大多数自有仓库的仓储管理,通过系统打印入库、出库的单据,仓库工作人员通过客户端(Swing/浏览器/PDA)的操作,进行仓库作业,极大提高现场的作业效率,同时支持低温环境下冻品作业,已在零下18度的仓库环境下进行过实操验证(武汉山绿冷链物流有限公司)
```tex
┏━EDI(电子数据接口):可通过电子文档导入订单、基础数据、库存初始化等,也可作为线上数据对接的入口
┣━AMS(权限管理系统):通用权限管理+业务权限管理
┣━OMS(订单管理系统):入库/出库单管理,提供审核功能,审核通过的订单才能进入WMS系统
┃ ┣━入库订单
┃ ┗━出库订单
┣━WMS(仓储管理系统)
┃ ┣━收货
┃ ┃ ┣━收货单管理
┃ ┃ ┣━生成统一收货单
┃ ┃ ┗━打印收货库存码
┃ ┃ ┗━上架
┃ ┣━发货
┃ ┃ ┣━发货单管理
┃ ┃ ┣━拣货计算
┃ ┃ ┣━列印拣货单(选)
┃ ┃ ┣━生成拣货任务
┃ ┃ ┣━任务调度
┃ ┃ ┣━任务调整
┃ ┃ ┣━发货确立
┃ ┃ ┣━出货集货储位(选)
┃ ┃ ┣━出货集货栈板(选)
┃ ┃ ┣━拣货还原
┃ ┃ ┗━拣货波次
┃ ┣━库内管理
┃ ┃ ┣━栈板调整
┃ ┃ ┣━储位调整
┃ ┃ ┣━商品状态调整
┃ ┃ ┣━报废
┃ ┃ ┣━库存调整
┃ ┃ ┣━特殊调整
┃ ┃ ┗━商品控制
┃ ┣━库内查询/统计
┃ ┃ ┣━储位库存查询
┃ ┃ ┣━商品库存查询
┃ ┃ ┣━储位库存状态
┃ ┃ ┣━储位库存分组统计
┃ ┃ ┣━商品库存状态统计
┃ ┃ ┣━商品进出库统计
┃ ┃ ┣━货物进出查询
┃ ┃ ┣━储位进出查询
┃ ┃ ┣━查询当日异动
┃ ┃ ┣━入库单明细查询
┃ ┃ ┣━统一收货单明细查询
┃ ┃ ┣━出库单明细查询
┃ ┃ ┣━处理中拣货单明细查询
┃ ┃ ┣━已出货拣货单明细查询
┃ ┃ ┣━储位调整明细查询
┃ ┃ ┣━库存调整明细查询
┃ ┃ ┣━特殊调整明细查询
┃ ┃ ┣━强制进货验收查询
┃ ┃ ┣━商品进货最新制造日期
┃ ┃ ┣━商品出货最新制造日期
┃ ┃ ┣━拣货位剩余库存盘点表
┃ ┃ ┣━订单->任务明细
┃ ┃ ┗━拣货任务->出货单->任务明细
┃ ┣━日结作业
┃ ┃ ┣━库存日结
┃ ┃ ┣━列印日结报表
┃ ┃ ┣━取消日结
┃ ┃ ┣━查询日结异动
┃ ┃ ┣━日结储位库存
┃ ┃ ┣━日结商品库存
┃ ┃ ┗━库存日结明细
┣━TMS(运输管理系统):客户用的不多,后期就没怎么维护了,功能列表已注释
┣━FMS(财务管理系统):客户用的不多,后期就没怎么维护了,功能列表已注释
┗━基础数据(太多,不一一列举,见系统)
```
## 软件历史
本套系统从2006年孕育,到2007年有客户上线正式运营,到目前已有17个年头。
#### `本系统服务的物流公司有:`
1. 武汉宝沃勤物流有限公司(最初客户,现改为卓尔宝沃勤武汉物流有限公司)
2. 湖南九裕物流有限公司-金六福酒业集团下属的物流企业:长沙仓(家电配送)、南昌仓(红牛集团饮品配送,有线上数据对接,通过红牛sop系统推送订单数据,仓库处理完后,返结果给红牛sop系统)
3. 天津华康物流有限公司,主营生鲜食材,订单数据来源于EDI导入
4. 武汉山绿冷链物流有限公司-武汉市供销社直属企业:仓库是冻仓, 零下18度, 使用PDA作业, 主配送百胜餐饮的华中地区,有线上数据对接,通过百胜系统推送订单数据,仓库处理完后,返结果给百胜系统,另还管理其它货主的物品。
5. 北京展新物流有限公司
6. 广东光大集团旗下友门鹿科技有限公司
7. 天津华信众展物流服务有限公司
8. 上海勤润物流有限公司
9. 上海鲜迪物流有限公司
10. 湖南宁乡格力区域销售中心库
#### `本系统服务的货主客户有:`
1. 华润万家
2. 沃尔玛
3. 家乐福
4. 海尔家电
5. 九阳电器
6. 格力家电
7. 金六福酒业
8. 红牛饮品
9. 肯德基冻品
10. 麦当劳冻品
11. 小肥羊冻品
12. 双汇集团
13. 其它小客户就不一一说明了
#### `迭代说明`
* 由于系统陆陆续续开发了很多年,经历过多次版本迭代升级,可以说是一个大杂烩,融合了很多技术及框架,因此避免不了架构上有一定的混乱及代码风格差异大,但系统在运营的所用客户中,稳定性和效率性还是没问题的。
* 本系统最初是C/S架构的,通讯使用的数据包协议是公司自研开发的(好处是大大减少传输层的数据量,提高通讯性能,这在当年机器性能和网络带宽低下的情况下还是非常有用的),然后改成现在的C/S+B/S混合运行(原通讯协议还是保留,同时增加转换协议,将原数据转换成json数据),原因是随着物流公司的业务变化,需要与货主公司进行线上数据对接,因此采用springboot框架,这样就导致原主要的仓储业务逻辑使用hibernate持久层(代码在server_storage项目文件夹里),线上数据对接部分使用mybatis作为持久层(代码在kasa_webserver_springboot项目文件夹里)
* 原通讯使用的数据包协议封装在zto.jar包中,源代码没开放,因为当前硬件设备和网络环境比起当初开发系统时,有了质的飞跃,导致目前软件公司几乎不用了,所以开源无意义,如果现在还有感兴趣的朋友,可找我索取。
* 前端最初只有java swing版本,2022年前开发的功能,主要用swing来实现,之后开发的功能,就仅在web上实现。
* 随着web的流行,先加了react版本的客户端,前后端分离,后来改成vue2版本,进而改成目前的vue3版本,ui框架使用element-plus,web版使用方便,但是性能比swing版本低,尤其在一个界面查几千上万条数据时,web版是做不到的(除非定制表格为滑动窗口模式),但swing版本很轻松,两者如何选择,按你们现场作业要求来使用,也可两个客户端互补使用。
* 2021年,因百胜集团货主的规范化要求,现场必须采用pda扫码作业,所以采用uniapp技术,新开发了手持终端的客户端,安装包见 kasa_runtime/kasa-pda/PDA_v***.apk
#### `系统虽然老旧,但也不断尝试使用新技术,相信也有一定值得学习的地方,比如:`
1. 权限管理,大多通用的权限管理只能做到对角色分配功能权限,然后把用户添加到这个角色中,而本系统不仅支持这种赋权模式外,还允许给用户单独赋予某个功能的权限
2. 普通crud操作,支持使用工具生成代码和配置文件,而且对常用功能做了深度封装的组件,大大提高普通数据的开发效率
3. 业务流程是10几年来的经验累积,同时对现场的作业尽量做到精简和优化,使作业效率更高,以后有时间会抽出专题进行讲解
4. 有些业务逻辑的复杂度很高,比如拣货计算,经过多次版本迭代,代码运行效率也做到尽可能的优化,当然还有再优化的可能行,有兴趣的朋友可以提出来,一起探讨!
## 软件架构
### B/S + C/S 混合架构,也可单独C/S简单部署
* 后端采用java swing+mina+springboot+hibernate+mybatis-plus+......
* 前端采用java swing+iReport+vue3(Element plus)+uniapp+......
## 演示图
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |