From 37931d04e87cbae60cf833890c2c8432b389fa1a Mon Sep 17 00:00:00 2001 From: chenlu <1320612696@qq.com> Date: 星期五, 01 三月 2024 08:56:51 +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/sd/OrderService.java | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java index 3d98cbb..6037cbc 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java @@ -217,4 +217,30 @@ map.put("orderGlassDetails",orderGlassDetails); return map; } + + public boolean updateOrderMoney(Map<String, Object> map) { + JSONObject jsonObject = new JSONObject(map); + Order order = JSONObject.parseObject(JSONObject.toJSONString(jsonObject.get("order")), Order.class); + List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(jsonObject.get("detail")), OrderDetail.class); + double money = 0; + for (OrderDetail orderDetail : OrderDetails) { + orderDetail = updateOrderMoneyComputed(orderDetail,order.getCalculateType()); + money+= orderDetail.getGrossAmount(); + } + order.setMoney(money); + orderMapper.updateMoney(order); + orderDetailMapper.updateOrderMoney(OrderDetails); + return false; + } + + private OrderDetail updateOrderMoneyComputed(OrderDetail orderDetail, Integer calculateType) { + if (calculateType == 3) { + orderDetail.setGrossAmount(orderDetail.getPrice() * orderDetail.getQuantity()); + } else { + orderDetail.setGrossAmount(orderDetail.getComputeGrossArea() * orderDetail.getPrice()); + } + return orderDetail; + } + + } -- Gitblit v1.8.0