From 2c3529c1f7e25b6c4af5f4462e62b32f3ecedacb Mon Sep 17 00:00:00 2001 From: "zangch@mesnac.com" Date: Wed, 13 Aug 2025 17:57:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E5=A2=9E=E5=8A=A0=20AGV=20?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E5=92=8C=E5=87=BA=E5=BA=93=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在入库单和出库单中添加 AGV状态字段 - 增加即入既出的入库类型 - 添加 AGV 任务相关的字段和功能 - 优化出库单查询条件,支持 AGV任务相关查询 --- .../dromara/wms/domain/WmsInstockOrder.java | 13 +++++++++- .../dromara/wms/domain/WmsOutstockDetail.java | 24 +++++++++++++++++-- .../wms/domain/bo/WmsInstockOrderBo.java | 14 +++++++++++ .../wms/domain/bo/WmsOutstockDetailBo.java | 23 ++++++++++++++---- .../wms/domain/vo/WmsInstockOrderVo.java | 9 +++++++ .../wms/domain/vo/WmsOutstockDetailVo.java | 15 ++++++++++++ .../impl/WmsOutstockDetailServiceImpl.java | 20 +++++++++------- 7 files changed, 102 insertions(+), 16 deletions(-) diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockOrder.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockOrder.java index a1e38ca..a684490 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockOrder.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockOrder.java @@ -39,7 +39,7 @@ public class WmsInstockOrder{ private String materialCategoryId; /** - * 工单类型(1采购订单,2生产订单,3手工,4系统生成) + * 工单类型(1采购订单,2生产订单,3手工,4系统生成,5外协入库,6即入既出) */ private String instockType; @@ -74,11 +74,19 @@ public class WmsInstockOrder{ private Long warehouseId; + /** * 入库方式(0PDA入库、1AGV入库、2质检后PDA入库、3质检后AGV入库) */ private String instockMethond; + /** + * AGV状态(0待拾取 /1 运输中 / 2完成) + */ + private String agvStatus; + + + @TableField(fill = FieldFill.INSERT) private String createBy; @@ -101,6 +109,9 @@ public class WmsInstockOrder{ @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; + + + /** * 租户id */ diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java index 12a712b..ee48540 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java @@ -1,11 +1,11 @@ package org.dromara.wms.domain; -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; -import com.ibm.icu.math.BigDecimal; import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import lombok.Data; import java.io.Serial; +import java.math.BigDecimal; import java.util.Date; /** @@ -81,6 +81,26 @@ public class WmsOutstockDetail { private String materialCode; private String materialName; + + + + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + + + @TableField(exist = false) private String materialDesc; diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockOrderBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockOrderBo.java index fed36a8..0f2e4e2 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockOrderBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockOrderBo.java @@ -12,6 +12,7 @@ import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.wms.domain.WmsInstockOrder; import java.util.Date; +import java.util.List; /** * 入库单业务对象 wms_instock_order @@ -94,4 +95,17 @@ public class WmsInstockOrderBo extends BaseEntity { */ private String instockMethond; + + /** + * AGV状态(0待拾取 /1 运输中 / 2完成) + */ + private String agvStatus; + + + /** + * 入库单子表 + */ + private List detailListBo; + + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsOutstockDetailBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsOutstockDetailBo.java index de70d27..ae36dad 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsOutstockDetailBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsOutstockDetailBo.java @@ -1,15 +1,13 @@ package org.dromara.wms.domain.bo; -import com.ibm.icu.math.BigDecimal; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; +import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.wms.domain.WmsOutstockDetail; +import java.math.BigDecimal; + /** * 出库单-物料业务对象 wms_outstock_detail * @@ -61,5 +59,20 @@ public class WmsOutstockDetailBo extends BaseEntity { private String materialName; + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockOrderVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockOrderVo.java index 0060288..39caaa3 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockOrderVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockOrderVo.java @@ -91,11 +91,20 @@ public class WmsInstockOrderVo implements Serializable { */ private String tenantId; + + /** * 入库方式(0PDA入库、1AGV入库、2质检后PDA入库、3质检后AGV入库) */ private String instockMethond; + /** + * AGV状态(0待拾取 /1 运输中 / 2完成) + */ + private String agvStatus; + + + private String warehouseCode;//字段映射 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java index 2732441..7e2f687 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java @@ -94,6 +94,21 @@ public class WmsOutstockDetailVo implements Serializable { private String materialName; private double outSum; + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private java.math.BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + /** * 物料大类 */ diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java index c339b0a..20c0f72 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java @@ -1,20 +1,19 @@ package org.dromara.wms.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import lombok.RequiredArgsConstructor; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.wms.domain.*; +import org.dromara.wms.domain.BaseMaterialCategory; +import org.dromara.wms.domain.BaseMaterialInfo; +import org.dromara.wms.domain.WmsOutstockDetail; import org.dromara.wms.domain.bo.BaseMaterialInfoBo; -import org.dromara.wms.domain.bo.WmsInstockDetailBo; import org.dromara.wms.domain.bo.WmsOutstockDetailBo; import org.dromara.wms.domain.vo.BaseMaterialInfoVo; import org.dromara.wms.domain.vo.WmsOutstockDetailVo; @@ -25,9 +24,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 出库单-物料Service业务层处理 @@ -92,6 +91,11 @@ public class WmsOutstockDetailServiceImpl implements IWmsOutstockDetailService { .select(BaseMaterialCategory::getMaterialCategoryName) .leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsOutstockDetail::getMaterialCategoryId) + //agv出库任务新增 + .eq(StringUtils.isNotBlank(bo.getAgvStatus()), WmsOutstockDetail::getAgvStatus, bo.getAgvStatus()) + .eq(StringUtils.isNotBlank(bo.getIsAgv()), WmsOutstockDetail::getIsAgv, bo.getIsAgv()) + .eq(bo.getCompleteQty() != null, WmsOutstockDetail::getCompleteQty, bo.getCompleteQty()) + //出库单子表原有 .eq(bo.getOutstockDetailId() != null, WmsOutstockDetail::getOutstockDetailId, bo.getOutstockDetailId()) .eq(StringUtils.isNotBlank(bo.getOutstockCode()), WmsOutstockDetail::getOutstockCode, bo.getOutstockCode()) .eq(bo.getOutstockId() != null, WmsOutstockDetail::getOutstockId, bo.getOutstockId())