From c39c0b7016aa2cb1628e26be9b9a02407d573e19 Mon Sep 17 00:00:00 2001 From: wanghao Date: Fri, 5 Sep 2025 18:05:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E8=B0=83=E6=8B=A8?= =?UTF-8?q?=E5=87=BA=E5=BA=93=E6=95=B0=E9=87=8F=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/controller/api/WmsPdaApiController.java | 11 ++++++++--- .../java/org/dromara/wms/domain/WmsInventory.java | 8 ++++++++ .../wms/service/impl/WmsPdaApiServiceImpl.java | 5 ++++- 3 files changed, 20 insertions(+), 4 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 39f86ce0..1be9f20a 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 @@ -204,9 +204,7 @@ public class WmsPdaApiController extends BaseController { WmsInventory wmsInventory = null; if (type.equals("5")) { // 验证库存 - wmsInventory = apiService.outSelectInVentoryByBatch(outstockRecord); - } else if (type.equals("7")) { wmsInventory = apiService.outAllocateSelectInVentory(outstockRecord); } @@ -214,10 +212,17 @@ public class WmsPdaApiController extends BaseController { if (wmsInventory == null) { return R.fail("物料扫描错误"); } - if (wmsInventory.getInventoryQty().compareTo(outstockRecord.getOutstockQty()) < 0) { R.fail("当前库位库存为:" + wmsInventory.getInventoryQty()); } + double outSum = wmsInventory.getOutSum();//已经出库数量 + + // BigDecimal allocateOrderQty = wmsInventory.getAllocateOrderQty();//计划数量 + // BigDecimal outstockQty = outstockRecord.getOutstockQty();//出库数量 + // if (allocateOrderQty.compareTo(outstockQty.add(BigDecimal.valueOf(outSum))) <0) { + // return R.fail("出库超量"); + // } + Boolean result = apiService.rawOutSubmit(outstockRecord, wmsInventory); return result ? R.ok() : R.fail(); diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java index 93f071c4..df2780ed 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java @@ -127,8 +127,16 @@ public class WmsInventory { /** * 最大停放时间(wms用天) */ + @TableField(exist = false) private Long maxParkingTime; + @TableField(exist = false) + /** + * 调拨数量 + */ + private BigDecimal allocateOrderQty; + @TableField(exist = false) + private double outSum;//实际出库数量 } 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 cfc2f7f7..4ea9464c 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 @@ -367,8 +367,11 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { public WmsInventory outAllocateSelectInVentory(WmsOutstockRecord outstockRecord) { MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsInventory.class) .selectAll(WmsInventory.class) + .select(BaseMaterialInfo::getMaterialCode,BaseMaterialInfo::getMaterialName,BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec) + .leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId) .rightJoin(WmsAllocateOrderDetail.class, WmsAllocateOrderDetail::getMaterialId, WmsInventory::getMaterialId) - .select(WmsAllocateOrderDetail::getAoDId) + .select(WmsAllocateOrderDetail::getAoDId, + WmsAllocateOrderDetail::getAllocateOrderQty,WmsAllocateOrderDetail::getOutSum) .eq(WmsAllocateOrderDetail::getAllocateCode, outstockRecord.getOutstockCode()) .eq(WmsInventory::getBatchCode, outstockRecord.getBatchCode()).eq(WmsInventory::getLocationCode, outstockRecord.getLocationCode()); return wmsInventoryMapper.selectOne(lqw);