廖井涛
2024-08-04 1ae5f2198b70aba54c49f1752e02dfe7b9d5a2e9
north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java
@@ -108,8 +108,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("saveMaterialOutbound");
            sysErrorService.insert(sysError);
            saveState = false;
@@ -120,28 +120,41 @@
    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());
            }
        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);
            }else {
                materialInventoryMapper.insertMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory);
            }
        } 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;
@@ -238,8 +251,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("deleteMaterialOutbound");
            sysErrorService.insert(sysError);
            saveState = false;
@@ -338,8 +351,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 +367,12 @@
        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();
            }
            ReturningWarehouse returningWarehouse = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), ReturningWarehouse.class);
            List<ReturningWarehouseDetail> returningWarehouseDetailList = JSONArray.parseArray(JSONObject.toJSONString(object.get("returningWarehouseDetail")), ReturningWarehouseDetail.class);
            //查询出库单是否存在
@@ -440,7 +454,16 @@
            }
        } 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;
    }
@@ -499,8 +522,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;