From 8c29a327707574f1e04cd25218e05ba9b4c8e4a8 Mon Sep 17 00:00:00 2001 From: guoyuji <guoyujie@ng.com> Date: 星期四, 26 九月 2024 09:59:20 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java | 27 +++++++++++++++++---------- 1 files changed, 17 insertions(+), 10 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java index bb9e466..8b06901 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java @@ -45,8 +45,8 @@ @Autowired LogService logService; - public Boolean saveMaterialOutbound(Map<String,Object> object) { - boolean saveState = true; + public String saveMaterialOutbound(Map<String,Object> object) { + String saveState = "true"; //璁剧疆鍥炴粴鐐� Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); String materialOutboundId = ""; @@ -67,7 +67,7 @@ if (!materialOutboundDetailLists.isEmpty()) { for (MaterialOutboundDetail materialOutboundDetail : materialOutboundDetailLists) { //杩樺師鐗╂枡搴撳瓨鏁� - materialInventoryMapper.updateMaterialInventoryAvailableInt(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity()); + materialInventoryMapper.updateMaterialInventoryAvailableInt(materialOutboundDetail.getInventoryId(), materialOutboundDetail.getOutboundQuantity()); /*if(materialOutboundDetail.getUseId()!=null){ //杩樺師浼樺寲宸ョ▼搴撳瓨鏁� materialInventoryMapper.updateMaterialInventoryAvailableOptInt(materialOutboundDetail.getUseId(), materialOutboundDetail.getOutboundQuantity()); @@ -95,12 +95,13 @@ if (!materialOutboundDetailList.isEmpty()) { for (MaterialOutboundDetail materialOutboundDetail : materialOutboundDetailList) { - - Integer materialOutboundDetailMaximum = materialInventoryMapper.getMaterialOutboundDetailMaximum(oddNumber); - //鏂板鏉愭枡鍑哄簱鏄庣粏鏁版嵁 - materialInventoryMapper.insertMaterialOutboundDetail(materialOutboundDetail, oddNumber, materialOutboundDetailMaximum + 1); - //淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲� - materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity()); + MaterialInventory materialInventory = materialInventoryMapper.getMaterialInventoryById(materialOutboundDetail.getId()); + if(materialInventory.getAvailableQuantity()>=materialOutboundDetail.getOutboundQuantity()){ + Integer materialOutboundDetailMaximum = materialInventoryMapper.getMaterialOutboundDetailMaximum(oddNumber); + //鏂板鏉愭枡鍑哄簱鏄庣粏鏁版嵁 + materialInventoryMapper.insertMaterialOutboundDetail(materialOutboundDetail, oddNumber, materialOutboundDetailMaximum + 1); + //淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲� + materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity()); /*if(materialOutboundDetail.getUseId()!=null){ //淇敼浼樺寲宸ョ▼琛ㄥ嚭搴撴暟閲� materialInventoryMapper.updateMaterialInventoryAvailableOptOut(materialOutboundDetail.getUseId(), materialOutboundDetail.getOutboundQuantity()); @@ -108,6 +109,12 @@ //淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲� materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity()); }*/ + }else{ + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + return "false1"; + } + + } @@ -122,7 +129,7 @@ sysError.setError(e+Arrays.toString(e.getStackTrace())); sysError.setFunc("saveMaterialOutbound"); sysErrorService.insert(sysError); - saveState = false; + saveState = "false1"; } return saveState; -- Gitblit v1.8.0