From 13704efa12ec7ca2d74db918f029ec2d225efbea Mon Sep 17 00:00:00 2001 From: x_z Date: Wed, 4 Jan 2023 14:53:13 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E5=A4=8D=E6=89=AB=E7=A0=81=E5=8D=95?= =?UTF-8?q?=E6=8D=AE=E6=B7=BB=E5=8A=A0=E6=9D=A1=E7=A0=81=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/inout/WareHouseController.java | 10 +++++++--- .../req/inventory/FilterInvProductDetailRequest.java | 1 + .../service/inventory/InvProductDetailService.java | 4 +--- .../inventory/impl/InvProductDetailServiceImpl.java | 5 ++++- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java index 83edb07..8ae43cc 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java @@ -6,8 +6,6 @@ import cn.hutool.json.JSONUtil; import com.github.pagehelper.PageInfo; import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.constant.ConstantStatus; -import com.glxp.sale.admin.constant.ConstantType; -import com.glxp.sale.admin.constant.TypeConstant; import com.glxp.sale.admin.dao.auth.AuthLicenseDao; import com.glxp.sale.admin.dao.inventory.InvWarehouseDao; import com.glxp.sale.admin.entity.auth.AuthAdmin; @@ -746,9 +744,15 @@ public class WareHouseController { return ResultVOUtils.error(500, "当前库存不足,不允许0库存出库"); } } else { - int count = invProductDetailService.vailStockCount(code); + int count = invProductDetailService.vailStockCount(code, addOrderRequest.getLocStorageCode(), addOrderRequest.getInvWarehouseCode(), null); if (count <= 0) { return ResultVOUtils.error(500, "当前库存不足,不允许0库存出库"); + } else if (StrUtil.isNotBlank(addOrderRequest.getOrderId())){ + //查询此单据已扫描的条码数量 + WarehouseEntity warehouse = codesTempService.findByUnique(addOrderRequest.getOrderId(), addOrderRequest.getCode()); + if (null != warehouse && warehouse.getCount() >= count) { + return ResultVOUtils.error(500, "当前库存不足,不允许0库存出库"); + } } } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvProductDetailRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvProductDetailRequest.java index 95d6c19..b8d80ce 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvProductDetailRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvProductDetailRequest.java @@ -29,6 +29,7 @@ public class FilterInvProductDetailRequest extends ListPageRequest { private String invStorageCode; private String invWarehouseCode; + private String invSpaceCode; private List invCodes; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvProductDetailService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvProductDetailService.java index 2282a01..306b541 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvProductDetailService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvProductDetailService.java @@ -3,8 +3,6 @@ package com.glxp.sale.admin.service.inventory; import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity; import com.glxp.sale.admin.req.inventory.FilterInvProductDetailRequest; import com.glxp.sale.admin.res.inventory.InvProductDetailJoinResponse; -import org.apache.ibatis.annotations.Param; -import org.springframework.stereotype.Service; import java.util.List; @@ -36,5 +34,5 @@ public interface InvProductDetailService { InvProductDetailEntity statInvPreInDetail(String code); - int vailStockCount(String code); + int vailStockCount(String code, String invStorageCode, String invWarehouseCode, String invSpaceCode); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvProductDetailServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvProductDetailServiceImpl.java index 0e0ea6a..863e30e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvProductDetailServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvProductDetailServiceImpl.java @@ -132,12 +132,15 @@ public class InvProductDetailServiceImpl implements InvProductDetailService { } @Override - public int vailStockCount(String code) { + public int vailStockCount(String code, String invStorageCode, String invWarehouseCode, String invSpaceCode) { if (StrUtil.isEmpty(code)) { return 0; } FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); filterInvProductDetailRequest.setOriginCode(code); + filterInvProductDetailRequest.setInvStorageCode(invStorageCode); + filterInvProductDetailRequest.setInvWarehouseCode(invWarehouseCode); + filterInvProductDetailRequest.setInvSpaceCode(invSpaceCode); List datas = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); if (CollUtil.isEmpty(datas)) { filterInvProductDetailRequest.setOriginCode(null);