From 26633e17d9e9a612e4744405d214cf513d13bffd Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期四, 26 九月 2024 13:56:34 +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 | 141 ++++++++++++++++++++++++++++++++---------------
1 files changed, 96 insertions(+), 45 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 d5f1231..3d4c4e8 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
@@ -10,10 +10,12 @@
import com.example.erp.entity.sd.Delivery;
import com.example.erp.entity.sd.DeliveryDetail;
import com.example.erp.entity.sd.OrderDetail;
+import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.mapper.mm.BasicWarehouseTypeMapper;
import com.example.erp.mapper.mm.MaterialInventoryMapper;
import com.example.erp.mapper.mm.MaterialStoreMapper;
+import com.example.erp.service.userInfo.LogService;
import com.example.erp.service.userInfo.SysErrorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -40,9 +42,11 @@
BasicWarehouseTypeMapper basicWarehouseTypeMapper;
@Autowired
SysErrorService sysErrorService;
+ @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 = "";
@@ -50,6 +54,8 @@
if (object.get("materialOutboundId") != null) {
materialOutboundId = object.get("materialOutboundId").toString();
}
+ Log log = new Log();
+ log.setContent(object.toString());
try {
MaterialOutbound materialOutbound = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), MaterialOutbound.class);
List<MaterialOutboundDetail> materialOutboundDetailList = JSONArray.parseArray(JSONObject.toJSONString(object.get("materialOutboundDetail")), MaterialOutboundDetail.class);
@@ -61,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());
@@ -74,24 +80,28 @@
}
//鍒犻櫎鏉愭枡鍑哄簱鏄庣粏鐨勬暟鎹�
materialInventoryMapper.deleteMaterialOutboundDetail(materialOutboundId);
+ materialInventoryMapper.updateMaterialOutbound(materialOutbound, materialOutboundId);
oddNumber = materialOutboundId;
+ log.setFunction("saveMaterialOutbound淇敼:"+oddNumber);
} else {
//鑾峰彇鍗曞彿
oddNumber = orderNumberSetting("鍑哄簱");
//鏂板鏉愭枡鍑哄簱琛ㄦ暟鎹�
materialInventoryMapper.insertMaterialOutbound(materialOutbound, oddNumber);
+ log.setFunction("saveMaterialOutbound鏂板:"+oddNumber);
}
//鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼
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());
@@ -99,11 +109,18 @@
//淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲�
materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity());
}*/
+ }else{
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ return "false1";
+ }
+
+
}
}
+ logService.saveLog(log);
} catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
@@ -112,7 +129,7 @@
sysError.setError(e+Arrays.toString(e.getStackTrace()));
sysError.setFunc("saveMaterialOutbound");
sysErrorService.insert(sysError);
- saveState = false;
+ saveState = "false1";
}
return saveState;
@@ -136,6 +153,8 @@
if (object.get("materialCode") != null) {
materialCode = Long.valueOf(object.get("materialCode").toString());
}
+ Log log = new Log();
+ log.setContent(object.toString());
MaterialInventory materialInventory = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), MaterialInventory.class);
@@ -144,9 +163,12 @@
if(MaterialInventoryCount>0){
materialInventoryMapper.updateMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory);
+ log.setFunction("saveMaterialInventory淇敼");
}else {
materialInventoryMapper.insertMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory);
+ log.setFunction("saveMaterialInventory鏂板");
}
+ logService.saveLog(log);
} catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
@@ -245,7 +267,10 @@
materialInventoryMapper.deleteMaterialOutboundDetail(materialOutboundId);
materialInventoryMapper.deleteMaterialOutbound(materialOutboundId);
}
-
+ Log log = new Log();
+ log.setContent(object.toString());
+ log.setFunction("deleteMaterialOutbound鍒犻櫎:"+materialOutboundId);
+ logService.saveLog(log);
} catch (Exception e) {
@@ -321,6 +346,11 @@
if (object.get("reviewed") != null) {
reviewed = object.get("reviewed").toString();
}
+ Log log = new Log();
+ log.setOperator(reviewed);
+ log.setContent(object.toString());
+ log.setFunction("updateMaterialOutboundToExamine锛�"+type);
+ logService.saveLog(log);
if (type==1){
List<MaterialOutboundDetail> materialOutboundDetailList = materialInventoryMapper.getIsNotMaterialOutboundDetail(materialOutboundId);
@@ -374,6 +404,9 @@
if (object.get("returningId") != null) {
returningId = object.get("returningId").toString();
}
+ Log log = new Log();
+ log.setContent(object.toString());
+
ReturningWarehouse returningWarehouse = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), ReturningWarehouse.class);
List<ReturningWarehouseDetail> returningWarehouseDetailList = JSONArray.parseArray(JSONObject.toJSONString(object.get("returningWarehouseDetail")), ReturningWarehouseDetail.class);
//鏌ヨ鍑哄簱鍗曟槸鍚﹀瓨鍦�
@@ -390,11 +423,13 @@
//鍒犻櫎鏉愭枡鍑哄簱鏄庣粏鐨勬暟鎹�
materialInventoryMapper.deleteReturningWarehouseDetail(returningId);
oddNumber = returningId;
+ log.setFunction("saveReturningWarehouse淇敼锛�"+oddNumber);
} else {
//鑾峰彇鍗曞彿
oddNumber = orderNumberSetting("杩斿簱");
//鏂板鏉愭枡鍑哄簱琛ㄦ暟鎹�
materialInventoryMapper.insertReturningWarehouse(returningWarehouse, oddNumber);
+ log.setFunction("saveReturningWarehouse鏂板锛�"+oddNumber);
}
@@ -454,6 +489,7 @@
}
}
+ logService.saveLog(log);
} catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
@@ -498,6 +534,11 @@
if (object.get("reviewed") != null) {
reviewed = object.get("reviewed").toString();
}
+ Log log = new Log();
+ log.setOperator(reviewed);
+ log.setContent(object.toString());
+ log.setFunction("updateReturningWarehouseToExamine锛�"+type);
+ logService.saveLog(log);
if (type==1){
List<ReturningWarehouseDetail> returningWarehouseDetailList = materialInventoryMapper.getIsNotReturningWarehouseDetail(returningId);
@@ -585,43 +626,46 @@
//璁剧疆鍥炴粴鐐�
Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
- String creator = "";
- if (object.get("creator") != null) {
- creator = object.get("creator").toString();
- }
- String type = "";
- if (object.get("type") != null) {
- type = object.get("type").toString();
- }
- int state = 0;
- if (object.get("state") != null) {
- state = Integer.parseInt(object.get("state").toString());
- }
+ String creator = "";
+ if (object.get("creator") != null) {
+ creator = object.get("creator").toString();
+ }
+ String type = "";
+ if (object.get("type") != null) {
+ type = object.get("type").toString();
+ }
+ int state = 0;
+ if (object.get("state") != null) {
+ state = Integer.parseInt(object.get("state").toString());
+ }
+ Log log = new Log();
+ log.setOperator(creator);
+ log.setContent(object.toString());
+ log.setFunction("addSelectSurplusMaterialsDate锛�"+state);
+ logService.saveLog(log);
-
- if(state==1){
- SurplusMaterials surplusMaterials = JSONObject.parseObject(JSONObject.toJSONString(object.get("surplusMaterials")), SurplusMaterials.class);
- if(surplusMaterials!=null){
- SurplusMaterials surplusMaterials1=materialInventoryMapper.selectSurplusMaterialsCount(surplusMaterials);
- if(surplusMaterials1!=null){
- System.out.println(surplusMaterials1);
- materialInventoryMapper.updateSurplusMaterialsIntQuantity(surplusMaterials1);
- materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials1,creator,type);
- }else{
- materialInventoryMapper.insertSurplusMaterials(surplusMaterials);
- materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials,creator,type);
- }
- }
- } else if (state==2) {
- List<SurplusMaterials> surplusMaterialsList = JSONArray.parseArray(JSONObject.toJSONString(object.get("surplusMaterials")), SurplusMaterials.class);
- if(!surplusMaterialsList.isEmpty()){
- for(SurplusMaterials surplusMaterials:surplusMaterialsList){
- materialInventoryMapper.updateSurplusMaterialsOutQuantity(surplusMaterials);
- materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials,creator,type);
- }
-
+ if(state==1){
+ SurplusMaterials surplusMaterials = JSONObject.parseObject(JSONObject.toJSONString(object.get("surplusMaterials")), SurplusMaterials.class);
+ if(surplusMaterials!=null){
+ SurplusMaterials surplusMaterials1=materialInventoryMapper.selectSurplusMaterialsCount(surplusMaterials);
+ if(surplusMaterials1!=null){
+ materialInventoryMapper.updateSurplusMaterialsIntQuantity(surplusMaterials1);
+ materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials1,creator,type);
+ }else{
+ materialInventoryMapper.insertSurplusMaterials(surplusMaterials);
+ materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials,creator,type);
}
}
+ } else if (state==2) {
+ List<SurplusMaterials> surplusMaterialsList = JSONArray.parseArray(JSONObject.toJSONString(object.get("surplusMaterials")), SurplusMaterials.class);
+ if(!surplusMaterialsList.isEmpty()){
+ for(SurplusMaterials surplusMaterials:surplusMaterialsList){
+ materialInventoryMapper.updateSurplusMaterialsOutQuantity(surplusMaterials);
+ materialInventoryMapper.insertSurplusMaterialsLog(surplusMaterials,creator,type);
+ }
+
+ }
+ }
@@ -631,6 +675,13 @@
}
+ public Map<String, Object> printCreateOutbound(String materialOutboundId) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("createOutbound", materialInventoryMapper.getPrintCreateOutbound(materialOutboundId));
+ map.put("createOutboundDetail", materialInventoryMapper.getPrintCreateOutboundDetail(materialOutboundId));
+ return map;
+ }
+
--
Gitblit v1.8.0