3.2 KiB
3.2 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
项目概述
这是一个基于Spring Boot + Vue.js开发的智能化仓库管理系统(WMS),专门为宝应梦阳公司设计。包含两个版本:
- 202504-Wms-MengYang-box: 箱式仓库版本
- 202504-Wms-MengYang-tp: 托盘式仓库版本
开发命令
后端开发 (Spring Boot)
# 进入后端目录
cd 202504-Wms-MengYang-tp/wms_serve_mengyang
# 或 cd 202504-Wms-MengYang-box/wms_serve_mengyang
# Maven构建
mvn clean install
# 运行后端服务 (端口12315)
mvn spring-boot:run
# 编译打包
mvn package
前端开发 (Vue.js)
# 进入前端目录
cd 202504-Wms-MengYang-tp/wms_web_mengyang
# 或 cd 202504-Wms-MengYang-box/wms_web_mengyang
# 安装依赖
npm install
# 开发服务器
npm run serve
# 生产构建
npm run build
数据库设置
-- 导入数据库脚本
-- TP版本: 202504-Wms-MengYang-tp/db/wms_mengyang_tp.sql
-- Box版本: 202504-Wms-MengYang-box/db/wms_mengyang_box.sql
架构设计
后端分层架构
- controller: REST API控制层,分为标准WMS控制器和自定义MyWMS控制器
- service: 业务服务层,包含api、business、controller、quartz_job四个子模块
- dao/mapper: 数据访问层,使用MyBatis Plus
- model: 数据模型层,包含po/dto/vo/bo四种对象类型
- repository: 仓储模式实现,支持HTTP和TCP通信
- config: 配置层,包含MybatisPlus、资源配置等
核心业务模块
- 库存管理: TAppStock(库存表)、TAppLocation(库位表)
- 订单管理: TAppOrderIn(入库)、TAppOrderOut(出库)、TAppTask(任务)
- 货物管理: TAppGoods(货物)、TAppProduct(产品)、TAppVehicle(载具)
- 设备集成: WCS接口、AGV锁定、堆垛机任务控制
前端架构
- 基于Vue 3 + Element Plus的SPA应用
- 使用Vuex进行状态管理,Vue Router处理路由
- 支持Excel导入导出、二维码扫描、打印功能
技术栈
后端
- Spring Boot 3.3.5 + Java 21
- MyBatis Plus 3.5.7 + MySQL 8.0
- Quartz调度 + Fastjson + Hutool工具库
前端
- Vue 3.2.13 + Element Plus 2.4.0
- Axios HTTP客户端 + QRCode二维码支持
- EasyExcel处理Excel文件
关键配置
应用配置
- 后端服务端口:12315
- 数据库连接:application.yml中配置
- 前端代理配置:vue.config.js中的devServer设置
重要枚举
- AppConfigKeyEnums: 系统配置项枚举
- TaskTypeEnums: 任务类型枚举
- StockStatusEnums: 库存状态枚举
开发注意事项
代码结构约定
- Controller层只处理HTTP请求响应,业务逻辑放在Service层
- 使用DTO在Controller层传输数据,内部业务使用BO对象
- 数据库操作统一通过MyBatis Plus的BaseMapper进行
WCS集成规范
- WCS API调用通过IWcsApiService接口统一管理
- AGV设备操作需要使用锁定机制防止冲突
- 任务下发前要检查设备状态和库位可用性
数据处理规范
- Excel导入导出使用EasyExcel库,统一在excel包下处理
- 图片文件存储路径通过配置管理,支持本地和云存储
- 二维码生成和识别功能封装在utils工具类中