From 4ac97a2e88ccef8286fdb138895785fb17d0e82a Mon Sep 17 00:00:00 2001 From: wanghao Date: Wed, 3 Sep 2025 17:33:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E8=B4=A8=E6=A3=80?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/WmsPdaApiController.java | 37 ++++++++++++++++--- .../wms/domain/bo/WmsInstockPrintBo.java | 1 + .../wms/domain/vo/WmsInstockPrintVo.java | 3 ++ .../wms/service/IWmsBaseAreaService.java | 9 +++-- .../service/impl/WmsBaseAreaServiceImpl.java | 5 +++ .../service/impl/WmsPdaApiServiceImpl.java | 1 + 6 files changed, 47 insertions(+), 9 deletions(-) diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java index 1ba5311f..56e520e1 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java @@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.web.core.BaseController; import org.dromara.wms.domain.*; +import org.dromara.wms.domain.bo.WmsInstockPrintBo; import org.dromara.wms.domain.bo.WmsReturnOrderBo; import org.dromara.wms.domain.vo.*; import org.dromara.wms.service.*; @@ -22,6 +23,7 @@ public class WmsPdaApiController extends BaseController { private final IWmsPsmStorePlaceService wmsPsmStorePlaceService; private final IWmsBaseLocationService baseLocationService; private final IWmsHppStorePlaceService wmsHppStorePlaceService; + private final IWmsBaseAreaService baseAreaService; /** * 原材料退库-现场扫描 @@ -72,24 +74,49 @@ public class WmsPdaApiController extends BaseController { // 入库查询批次 @PostMapping("/raw/inSelectCode") - public R inSelectCode(String code) { + public R inSelectCode(String code, String type) { WmsInstockPrintVo wmsInstockPrintVo = apiService.inSelectCode(code); if (wmsInstockPrintVo == null) { R.fail(); } - String locationCode = apiService.selectInstoreRecordLocaltionCode(wmsInstockPrintVo.getMaterialId()); + // 推荐库位 + String locationCode = null; + if (type.equals("入库") || type.equals("AGV入库")) { + locationCode = apiService.selectInstoreRecordLocaltionCode(wmsInstockPrintVo.getMaterialId()); + } + wmsInstockPrintVo.setLocationCode(locationCode); return R.ok(wmsInstockPrintVo); } - +private final IWmsInstockPrintService wmsInstockPrintService; @PostMapping("/raw/inSubmit") public R inSubmit(@RequestBody WmsInstockPrintVo vo) { - WmsBaseLocationVo wmsBaseLocationVo = baseLocationService.selectLocationVoByCode(vo.getLocationCode()); + + String locationCode = vo.getLocationCode(); + WmsBaseLocationVo wmsBaseLocationVo = baseLocationService.selectLocationVoByCode(locationCode); if (wmsBaseLocationVo == null) { return R.fail("库位条码扫描错误"); } - vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId()); + + if (vo.getTitle().equals("质检入库")) { + // 待检区库位 + WmsBaseAreaVo wmsBaseArea = baseAreaService.selectEntityByID(wmsBaseLocationVo.getAreaId()); + if (wmsBaseArea == null || !wmsBaseArea.getAreaType().equals("9")) { + return R.fail("待检物料放入待检区域"); + } + WmsInstockPrintBo bo=new WmsInstockPrintBo(); + bo.setInstockPrintId(vo.getInstockPrintId()); + bo.setLocationId(vo.getLocationId()); + wmsInstockPrintService.updateByBo(bo); + }else if (vo.getTitle().equals("入库")){ + vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId()); + } else if (vo.getTitle().equals("AGV入库")){ + vo.setLocationId(wmsBaseLocationVo.getWarehouseId()); + } + + + Boolean result = apiService.inSubmit(vo); return result ? R.ok() : R.fail(); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockPrintBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockPrintBo.java index 0205bcfb..11415caf 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockPrintBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockPrintBo.java @@ -126,5 +126,6 @@ public class WmsInstockPrintBo extends BaseEntity { * 质检要求(0必检,1免检) */ private String inspectionRequest; + private String inspectionType; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockPrintVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockPrintVo.java index c8beed5d..94e0a0de 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockPrintVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockPrintVo.java @@ -158,4 +158,7 @@ public class WmsInstockPrintVo implements Serializable { */ private String inspectionRequest; + // PDA 操作标题 + private String title; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsBaseAreaService.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsBaseAreaService.java index 504c68f9..6a319ea2 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsBaseAreaService.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsBaseAreaService.java @@ -1,10 +1,9 @@ package org.dromara.wms.service; -import org.dromara.wms.domain.WmsBaseArea; -import org.dromara.wms.domain.vo.WmsBaseAreaVo; -import org.dromara.wms.domain.bo.WmsBaseAreaBo; -import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.wms.domain.bo.WmsBaseAreaBo; +import org.dromara.wms.domain.vo.WmsBaseAreaVo; import java.util.Collection; import java.util.List; @@ -66,4 +65,6 @@ public interface IWmsBaseAreaService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + WmsBaseAreaVo selectEntityByID(Long areaId); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseAreaServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseAreaServiceImpl.java index 601290f9..d85d6db2 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseAreaServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsBaseAreaServiceImpl.java @@ -186,4 +186,9 @@ public class WmsBaseAreaServiceImpl implements IWmsBaseAreaService { } return baseMapper.deleteByIds(ids) > 0; } + + @Override + public WmsBaseAreaVo selectEntityByID(Long areaId) { + return baseMapper.selectVoById(areaId); + } } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java index 15d2eadf..9d7ac86b 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java @@ -198,6 +198,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public Boolean inSubmit(WmsInstockPrintVo vo) { + // 插入记录 WmsInstockRecord wmsInstockRecord = new WmsInstockRecord(); BeanUtils.copyProperties(vo, wmsInstockRecord);