From edc227277159601c5cb86829f1c5ce14cf7903a4 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期二, 24 九月 2024 10:12:55 +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 | 210 ++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 177 insertions(+), 33 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 ff634d8..bb9e466 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
@@ -5,14 +5,17 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.example.erp.entity.mm.*;
+import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.pp.OptimizeUse;
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;
@@ -39,6 +42,8 @@
BasicWarehouseTypeMapper basicWarehouseTypeMapper;
@Autowired
SysErrorService sysErrorService;
+ @Autowired
+ LogService logService;
public Boolean saveMaterialOutbound(Map<String,Object> object) {
boolean saveState = true;
@@ -49,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);
@@ -73,12 +80,15 @@
}
//鍒犻櫎鏉愭枡鍑哄簱鏄庣粏鐨勬暟鎹�
materialInventoryMapper.deleteMaterialOutboundDetail(materialOutboundId);
+ materialInventoryMapper.updateMaterialOutbound(materialOutbound, materialOutboundId);
oddNumber = materialOutboundId;
+ log.setFunction("saveMaterialOutbound淇敼:"+oddNumber);
} else {
//鑾峰彇鍗曞彿
oddNumber = orderNumberSetting("鍑哄簱");
//鏂板鏉愭枡鍑哄簱琛ㄦ暟鎹�
materialInventoryMapper.insertMaterialOutbound(materialOutbound, oddNumber);
+ log.setFunction("saveMaterialOutbound鏂板:"+oddNumber);
}
//鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼
@@ -103,13 +113,14 @@
}
}
+ logService.saveLog(log);
} catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
- sysError.setError(e.toString());
- sysError.setFunc("saveOrder");
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("saveMaterialOutbound");
sysErrorService.insert(sysError);
saveState = false;
@@ -120,28 +131,46 @@
public Boolean saveMaterialInventory(Map<String,Object> object) {
boolean saveState = true;
- Double singlePieceArea = 0.0;
- Double totalArea = 0.0;
- Long materialCode = 0L;
- if (object.get("singlePieceArea") != null) {
- singlePieceArea = Double.valueOf(object.get("singlePieceArea").toString());
- }
- if (object.get("totalArea") != null) {
- totalArea = Double.valueOf(object.get("totalArea").toString());
- }
- if (object.get("materialCode") != null) {
- materialCode = Long.valueOf(object.get("materialCode").toString());
- }
+ //璁剧疆鍥炴粴鐐�
+ Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
+ try {
+ Double singlePieceArea = 0.0;
+ Double totalArea = 0.0;
+ Long materialCode = 0L;
+ if (object.get("singlePieceArea") != null) {
+ singlePieceArea = Double.valueOf(object.get("singlePieceArea").toString());
+ }
+ if (object.get("totalArea") != null) {
+ totalArea = Double.valueOf(object.get("totalArea").toString());
+ }
+ 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);
+ MaterialInventory materialInventory = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), MaterialInventory.class);
- //鏌ヨ鐗╂枡鏄惁瀛樺湪
- Integer MaterialInventoryCount = materialInventoryMapper.getMaterialInventoryCount(materialCode,materialInventory.getDateOfManufacture());
+ //鏌ヨ鐗╂枡鏄惁瀛樺湪
+ Integer MaterialInventoryCount = materialInventoryMapper.getMaterialInventoryCount(materialCode,materialInventory.getDateOfManufacture());
- if(MaterialInventoryCount>0){
- materialInventoryMapper.updateMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory);
- }else {
- materialInventoryMapper.insertMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory);
+ 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);
+ //灏嗗紓甯镐紶鍏ユ暟鎹簱
+ SysError sysError = new SysError();
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("saveMaterialInventory");
+ sysErrorService.insert(sysError);
+ saveState = false;
+
}
return saveState;
@@ -231,15 +260,18 @@
materialInventoryMapper.deleteMaterialOutboundDetail(materialOutboundId);
materialInventoryMapper.deleteMaterialOutbound(materialOutboundId);
}
-
+ Log log = new Log();
+ log.setContent(object.toString());
+ log.setFunction("deleteMaterialOutbound鍒犻櫎:"+materialOutboundId);
+ logService.saveLog(log);
} catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
- sysError.setError(e.toString());
- sysError.setFunc("saveOrder");
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("deleteMaterialOutbound");
sysErrorService.insert(sysError);
saveState = false;
@@ -307,6 +339,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);
@@ -338,8 +375,8 @@
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
- sysError.setError(e.toString());
- sysError.setFunc("saveOrder");
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("updateMaterialOutboundToExamine");
sysErrorService.insert(sysError);
saveState = false;
@@ -354,11 +391,15 @@
boolean saveState = true;
//璁剧疆鍥炴粴鐐�
Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
- String returningId = "";
- String oddNumber;
- if (object.get("returningId") != null) {
- returningId = object.get("returningId").toString();
- }
+ try {
+ String returningId = "";
+ String oddNumber;
+ 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);
//鏌ヨ鍑哄簱鍗曟槸鍚﹀瓨鍦�
@@ -375,11 +416,13 @@
//鍒犻櫎鏉愭枡鍑哄簱鏄庣粏鐨勬暟鎹�
materialInventoryMapper.deleteReturningWarehouseDetail(returningId);
oddNumber = returningId;
+ log.setFunction("saveReturningWarehouse淇敼锛�"+oddNumber);
} else {
//鑾峰彇鍗曞彿
oddNumber = orderNumberSetting("杩斿簱");
//鏂板鏉愭枡鍑哄簱琛ㄦ暟鎹�
materialInventoryMapper.insertReturningWarehouse(returningWarehouse, oddNumber);
+ log.setFunction("saveReturningWarehouse鏂板锛�"+oddNumber);
}
@@ -439,8 +482,18 @@
}
}
+ logService.saveLog(log);
+ } catch (Exception e) {
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ //灏嗗紓甯镐紶鍏ユ暟鎹簱
+ SysError sysError = new SysError();
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("saveReturningWarehouse");
+ sysErrorService.insert(sysError);
+ saveState = false;
+ }
return saveState;
}
@@ -474,6 +527,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);
@@ -499,8 +557,8 @@
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
- sysError.setError(e.toString());
- sysError.setFunc("saveOrder");
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("updateReturningWarehouseToExamine");
sysErrorService.insert(sysError);
saveState = false;
@@ -534,6 +592,92 @@
return map;
}
+ public Map<String, Object> getSelectSurplusMaterialsDate(Integer pageNum, Integer pageSize, List<String> selectDate, SurplusMaterials surplusMaterials) {
+ Integer offset = (pageNum - 1) * pageSize;
+ String endDate = LocalDate.now().toString();
+ String startDate = LocalDate.now().minusDays(15).toString();
+ if(selectDate !=null && selectDate.size()==2){
+ if(!selectDate.get(0).isEmpty()){
+ startDate = selectDate.get(0);
+ }
+ if(!selectDate.get(1).isEmpty()){
+ endDate = selectDate.get(1);
+ }
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", materialInventoryMapper.getSelectSurplusMaterialsDate(offset, pageSize,startDate, endDate, surplusMaterials));
+ map.put("total", materialInventoryMapper.getSelectSurplusMaterialsDatePageTotal(offset, pageSize,startDate, endDate, surplusMaterials));
+ List<String> list = new ArrayList<>();
+ list.add(startDate);
+ list.add(endDate);
+ map.put("selectDate",list);
+ return map;
+ }
+
+ public Boolean addSelectSurplusMaterialsDate(Map<String,Object> object) {
+ boolean saveState = true;
+ //璁剧疆鍥炴粴鐐�
+ 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());
+ }
+ 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);
+ }
+
+ }
+ }
+
+
+
+ return saveState;
+
+
+
+ }
+
+ 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;
+ }
+
+
+
public String orderNumberSetting(String type) {
--
Gitblit v1.8.0