From a3114f135e101bde7ee9c3cae5eec57d68fc1e67 Mon Sep 17 00:00:00 2001 From: yinq Date: Fri, 15 Aug 2025 13:49:04 +0800 Subject: [PATCH] =?UTF-8?q?update=20wms=E6=89=8B=E5=8A=A8=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E5=87=BA=E5=BA=93=E5=8D=95=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/wms/domain/WmsBaseLocation.java | 5 +++ .../dromara/wms/domain/WmsReturnOrder.java | 10 +++++ .../wms/domain/bo/WmsBaseLocationBo.java | 9 +++++ .../wms/domain/bo/WmsReturnOrderBo.java | 10 +++++ .../wms/domain/vo/WmsBaseLocationVo.java | 6 +++ .../wms/domain/vo/WmsReturnOrderVo.java | 11 ++++++ .../impl/WmsBaseLocationServiceImpl.java | 37 ++++++++++--------- .../impl/WmsReturnOrderServiceImpl.java | 18 ++++----- 8 files changed, 79 insertions(+), 27 deletions(-) diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseLocation.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseLocation.java index d834d01..dadb819 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseLocation.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseLocation.java @@ -76,5 +76,10 @@ public class WmsBaseLocation extends TenantEntity { @TableField(exist = false) private String areaName;//JOIN + /** + * 仓库名称 + */ + @TableField(exist = false) + private String warehouseName; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsReturnOrder.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsReturnOrder.java index b0f2e82..af95a55 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsReturnOrder.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsReturnOrder.java @@ -133,6 +133,11 @@ public class WmsReturnOrder { @TableField(exist = false) private String materialCode; + /** + * 物料名称 + */ + @TableField(exist = false) + private String materialName; /** * 物料大类 @@ -140,4 +145,9 @@ public class WmsReturnOrder { @TableField(exist = false) private String materialCategoryName;//字段映射 + /** + * 退库原因 + */ + private String returnReason; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsBaseLocationBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsBaseLocationBo.java index a46c25b..f39bc34 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsBaseLocationBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsBaseLocationBo.java @@ -1,5 +1,6 @@ package org.dromara.wms.domain.bo; +import com.baomidou.mybatisplus.annotation.TableField; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; @@ -48,5 +49,13 @@ public class WmsBaseLocationBo extends BaseEntity { */ private Long locationNum; + /** + * 仓库ID + */ + private Long warehouseId; + /** + * 仓库名称 + */ + private String warehouseName; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsReturnOrderBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsReturnOrderBo.java index 5ecf36e..bb65561 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsReturnOrderBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsReturnOrderBo.java @@ -102,4 +102,14 @@ public class WmsReturnOrderBo extends BaseEntity { private Long outstockRecordId; + /** + * 退库原因 + */ + private String returnReason; + + /** + * 物料名称 + */ + private String materialName; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsBaseLocationVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsBaseLocationVo.java index cc13abf..0674462 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsBaseLocationVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsBaseLocationVo.java @@ -96,4 +96,10 @@ public class WmsBaseLocationVo implements Serializable { private boolean state=false; + + /** + * 仓库名称 + */ + private String warehouseName; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsReturnOrderVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsReturnOrderVo.java index b5ba89e..84ef0d5 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsReturnOrderVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsReturnOrderVo.java @@ -163,4 +163,15 @@ public class WmsReturnOrderVo implements Serializable { */ private String materialCategoryName;//字段映射 + /** + * 退库原因 + */ + @ExcelProperty(value = "退库原因") + private String returnReason; + + /** + * 物料名称 + */ + private String materialName; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseLocationServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseLocationServiceImpl.java index 83cf309..7cd8dcb 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseLocationServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseLocationServiceImpl.java @@ -11,6 +11,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.wms.domain.WmsBaseArea; import org.dromara.wms.domain.WmsBaseLocation; +import org.dromara.wms.domain.WmsBaseWarehouse; import org.dromara.wms.domain.bo.WmsBaseLocationBo; import org.dromara.wms.domain.vo.WmsBaseLocationVo; import org.dromara.wms.mapper.WmsBaseLocationMapper; @@ -40,7 +41,7 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { * @return 库位基础信息 */ @Override - public WmsBaseLocationVo queryById(Long locationId){ + public WmsBaseLocationVo queryById(Long locationId) { return baseMapper.selectVoById(locationId); } @@ -69,11 +70,12 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { MPJLambdaWrapper lqw = buildQueryWrapper(bo); return baseMapper.selectVoList(lqw); } + @Override public List queryVoList(WmsBaseLocationBo bo) { LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); - if (bo.getAreaId()!=null){ - lqw.eq(WmsBaseLocation::getAreaId,bo.getAreaId()); + if (bo.getAreaId() != null) { + lqw.eq(WmsBaseLocation::getAreaId, bo.getAreaId()); } return baseMapper.selectVoList(lqw); } @@ -81,18 +83,17 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { private MPJLambdaWrapper buildQueryWrapper(WmsBaseLocationBo bo) { Map params = bo.getParams(); MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsBaseLocation.class) - .selectAll(WmsBaseLocation.class) -// .select(WmsBaseWarehouse::getWarehouseName,WmsBaseWarehouse::getWarehouseCode) -// .leftJoin(WmsBaseWarehouse.class,WmsBaseWarehouse::getWarehouseId,WmsBaseLocation::getWarehouseId) - //关联仓库改为关联区域 + .selectAll(WmsBaseLocation.class) .select(WmsBaseArea::getAreaName, WmsBaseArea::getAreaCode) - .leftJoin(WmsBaseArea.class,WmsBaseArea::getAreaId,WmsBaseLocation::getAreaId) - - .eq(bo.getAreaId() != null, WmsBaseLocation::getAreaId, bo.getAreaId()) - .like(StringUtils.isNotBlank(bo.getLocationCode()), WmsBaseLocation::getLocationCode, bo.getLocationCode()) - .eq(bo.getLineNum() != null, WmsBaseLocation::getLineNum, bo.getLineNum()) - .eq(bo.getLayerNum() != null, WmsBaseLocation::getLayerNum, bo.getLayerNum()) - .orderByDesc(WmsBaseLocation::getCreateTime); + .select(WmsBaseWarehouse::getWarehouseName, WmsBaseWarehouse::getWarehouseName) + .leftJoin(WmsBaseArea.class, WmsBaseArea::getAreaId, WmsBaseLocation::getAreaId) + .leftJoin(WmsBaseWarehouse.class, WmsBaseWarehouse::getWarehouseId, WmsBaseArea::getWarehouseId) + .eq(bo.getAreaId() != null, WmsBaseLocation::getAreaId, bo.getAreaId()) + .like(StringUtils.isNotBlank(bo.getLocationCode()), WmsBaseLocation::getLocationCode, bo.getLocationCode()) + .eq(bo.getLineNum() != null, WmsBaseLocation::getLineNum, bo.getLineNum()) + .eq(bo.getLayerNum() != null, WmsBaseLocation::getLayerNum, bo.getLayerNum()) + .eq(bo.getWarehouseId() != null, WmsBaseWarehouse::getWarehouseId, bo.getWarehouseId()) + .orderByDesc(WmsBaseLocation::getCreateTime); return lqw; } @@ -129,7 +130,7 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { /** * 保存前的数据校验 */ - private void validEntityBeforeSave(WmsBaseLocation entity){ + private void validEntityBeforeSave(WmsBaseLocation entity) { //TODO 做一些数据校验,如唯一约束 } @@ -142,7 +143,7 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ + if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } return baseMapper.deleteByIds(ids) > 0; @@ -157,9 +158,9 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService { // .leftJoin(WmsBaseWarehouse.class,WmsBaseWarehouse::getWarehouseId,WmsBaseLocation::getWarehouseId) //关联仓库改为关联区域,通过区域查仓库 .select(WmsBaseArea::getAreaName, WmsBaseArea::getAreaCode, WmsBaseArea::getWarehouseId) - .leftJoin(WmsBaseArea.class,WmsBaseArea::getAreaId,WmsBaseLocation::getAreaId) + .leftJoin(WmsBaseArea.class, WmsBaseArea::getAreaId, WmsBaseLocation::getAreaId) - .eq( WmsBaseLocation::getLocationCode, code); + .eq(WmsBaseLocation::getLocationCode, code); return baseMapper.selectVoOne(lqw); } } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsReturnOrderServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsReturnOrderServiceImpl.java index 54f2146..b9d1e26 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsReturnOrderServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsReturnOrderServiceImpl.java @@ -42,7 +42,7 @@ public class WmsReturnOrderServiceImpl implements IWmsReturnOrderService { * @return 退库工单 */ @Override - public WmsReturnOrderVo queryById(Long roId){ + public WmsReturnOrderVo queryById(Long roId) { return baseMapper.selectVoById(roId); } @@ -73,19 +73,17 @@ public class WmsReturnOrderServiceImpl implements IWmsReturnOrderService { LambdaQueryWrapper lqw = buildQueryWrapper(bo); return baseMapper.selectVoList(lqw); } + private MPJLambdaWrapper buildJoinQueryWrapper(WmsReturnOrderBo bo) { Map params = bo.getParams(); MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsReturnOrder.class) .selectAll(WmsReturnOrder.class) - - // 关联表查询物料大类名称 .select(BaseMaterialCategory::getMaterialCategoryName) - .leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsReturnOrder::getMaterialCategoryId) - - .select(BaseMaterialInfo::getMaterialCode) + .select(BaseMaterialInfo::getMaterialName) .select(WmsBaseWarehouse::getWarehouseCode) - .leftJoin(BaseMaterialInfo.class,BaseMaterialInfo::getMaterialId,WmsReturnOrder::getMaterialId) - .leftJoin(WmsBaseWarehouse.class,WmsBaseWarehouse::getWarehouseId,WmsReturnOrder::getWarehouseId); + .leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsReturnOrder::getMaterialCategoryId) + .leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsReturnOrder::getMaterialId) + .leftJoin(WmsBaseWarehouse.class, WmsBaseWarehouse::getWarehouseId, WmsReturnOrder::getWarehouseId); lqw.eq(bo.getRoId() != null, WmsReturnOrder::getRoId, bo.getRoId()); lqw.eq(bo.getMaterialId() != null, WmsReturnOrder::getMaterialId, bo.getMaterialId()); lqw.eq(StringUtils.isNotBlank(bo.getMaterialCategoryId()), WmsReturnOrder::getMaterialCategoryId, bo.getMaterialCategoryId()); @@ -105,6 +103,7 @@ public class WmsReturnOrderServiceImpl implements IWmsReturnOrderService { lqw.orderByDesc(WmsReturnOrder::getCreateTime); return lqw; } + private LambdaQueryWrapper buildQueryWrapper(WmsReturnOrderBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -136,6 +135,8 @@ public class WmsReturnOrderServiceImpl implements IWmsReturnOrderService { @Override public Boolean insertByBo(WmsReturnOrderBo bo) { WmsReturnOrder add = MapstructUtils.convert(bo, WmsReturnOrder.class); + //批次码校验 - 生产条码是否存在 + boolean flag = baseMapper.insert(add) > 0; if (flag) { bo.setRoId(add.getRoId()); @@ -157,7 +158,6 @@ public class WmsReturnOrderServiceImpl implements IWmsReturnOrderService { } - /** * 校验并批量删除退库工单信息 *