廖井涛
2024-08-23 522ad9d99d4058fb36b28455d6d79774f7d77d7c
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -87,7 +87,7 @@
            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
            //将异常传入数据库
            SysError sysError = new SysError();
            sysError.setError(e.toString());
            sysError.setError(e.toString()+Arrays.toString(e.getStackTrace()));
            sysError.setFunc("saveOrder");
            sysErrorService.insert(sysError);
            saveState = false;
@@ -231,22 +231,22 @@
            }
            Map<String,Object> otherColumns = JSON.parseObject(OrderDetails.get(i).getOtherColumns(), new TypeReference<Map<String, Object>>(){});
            otherColumns.values().removeIf(value -> value == null || value.equals(""));
            OrderDetails.get(i).setOtherColumns(JSON.toJSONString(otherColumns));
            int finalI = i;
            otherColumns.forEach((key, value) ->{
            if(otherColumns!=null){
                otherColumns.forEach((key, value) ->{
                    if(value!=null && key.contains("M")) {
                        orderOtherMoneyList.forEach(orderOtherMoney -> {
                            if (orderOtherMoney.getColumn().equals(key)) {
                                orderOtherMoney.setQuantity(orderOtherMoney.getQuantity()+(Double.parseDouble((String) value)  * OrderDetails.get(finalI).getQuantity()));
                            }
                        });
                    }
                if(value!=null && !value.equals("") && key.contains("M")) {
                    orderOtherMoneyList.forEach(orderOtherMoney -> {
                        if (orderOtherMoney.getColumn().equals(key)) {
                            orderOtherMoney.setQuantity(
                                    orderOtherMoney.getQuantity()+(Double.parseDouble((String) value)  * OrderDetails.get(finalI).getQuantity()));
                        }
                    });
                }
                });
            }else if(OrderDetails.get(i).getOtherColumns()==null){
                OrderDetails.get(i).setOtherColumns("{}");
            }
            });
        }