diff --git a/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java b/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java index 71a376b0..21e3696b 100644 --- a/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java +++ b/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java @@ -51,6 +51,14 @@ public interface DepotItemMapperEx { int findByTypeAndMaterialIdOut( @Param("mId") Long mId); + int findByTypeAndDepotIdAndMaterialIdIn( + @Param("depotId") Long depotId, + @Param("mId") Long mId); + + int findByTypeAndDepotIdAndMaterialIdOut( + @Param("depotId") Long depotId, + @Param("mId") Long mId); + List getDetailList( @Param("headerId") Long headerId); diff --git a/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java b/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java index ac02cb01..62243117 100644 --- a/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java +++ b/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java @@ -308,6 +308,14 @@ public class DepotItemService { return result; } + public int findByTypeAndMaterialIdAndDepotId(String type, Long mId, Long depotId) { + if(type.equals(TYPE)) { + return depotItemMapperEx.findByTypeAndDepotIdAndMaterialIdIn(depotId, mId); + } else { + return depotItemMapperEx.findByTypeAndDepotIdAndMaterialIdOut(depotId, mId); + } + } + public List getDetailList(Long headerId)throws Exception { List list =null; try{ @@ -758,11 +766,11 @@ public class DepotItemService { * 查询商品当前库存数量是否充足, * * */ - public int getCurrentInStock(Long materialId)throws Exception{ + public int getCurrentInStock(Long materialId, Long depotId){ //入库数量 - int inSum = findByTypeAndMaterialId(BusinessConstants.DEPOTHEAD_TYPE_STORAGE, materialId); + int inSum = findByTypeAndMaterialIdAndDepotId(BusinessConstants.DEPOTHEAD_TYPE_STORAGE, materialId, depotId); //出库数量 - int outSum = findByTypeAndMaterialId(BusinessConstants.DEPOTHEAD_TYPE_OUT, materialId); + int outSum = findByTypeAndMaterialIdAndDepotId(BusinessConstants.DEPOTHEAD_TYPE_OUT, materialId ,depotId); return (inSum-outSum); } @Transactional(value = "transactionManager", rollbackFor = Exception.class) diff --git a/src/main/resources/mapper_xml/DepotItemMapperEx.xml b/src/main/resources/mapper_xml/DepotItemMapperEx.xml index 642c9073..b9d2050c 100644 --- a/src/main/resources/mapper_xml/DepotItemMapperEx.xml +++ b/src/main/resources/mapper_xml/DepotItemMapperEx.xml @@ -166,6 +166,23 @@ and ifnull(dh.delete_Flag,'0') !='1' + + + +