From 0ca6cfee5251cc029a8f069dbdd6f48717ecbb17 Mon Sep 17 00:00:00 2001 From: 廖井涛 <2265517004@qq.com> Date: 星期五, 21 三月 2025 09:12:53 +0800 Subject: [PATCH] 修改后端金额重置以及订单审核后修改计算方式结算面积变动问题 --- north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 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 99549a2..c47bdda 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 @@ -502,9 +502,21 @@ BigDecimal getPrice= BigDecimal.valueOf(orderDetail.getPrice()); BigDecimal getQuantity= BigDecimal.valueOf(orderDetail.getQuantity()); BigDecimal getComputeGrossArea= BigDecimal.valueOf(orderDetail.getComputeGrossArea()); + BigDecimal getComputeArea= BigDecimal.valueOf(orderDetail.getComputeArea()); + BigDecimal getWidth= BigDecimal.valueOf(orderDetail.getWidth()); + BigDecimal getHeight= BigDecimal.valueOf(orderDetail.getHeight()); if (calculateType == 3) { orderDetail.setGrossAmount(getPrice.multiply(getQuantity).setScale(2, RoundingMode.HALF_UP).doubleValue()); - } else { + }else if (calculateType == 4) { + if(Objects.equals(orderDetail.getArea(), orderDetail.getComputeArea())&&Objects.equals(orderDetail.getGrossArea(), orderDetail.getComputeGrossArea())){ + orderDetail.setGrossAmount(getWidth.multiply(getHeight).multiply(getQuantity).multiply(getPrice). + divide(BigDecimal.valueOf(1000000), 2, RoundingMode.HALF_UP).doubleValue()); + }else{ + orderDetail.setGrossAmount(getPrice.multiply(getComputeGrossArea).setScale(2, RoundingMode.HALF_UP).doubleValue()); + } + }else if (calculateType == 1){ + orderDetail.setGrossAmount(getPrice.multiply(getComputeArea).multiply(getQuantity).setScale(2, RoundingMode.HALF_UP).doubleValue()); + }else{ orderDetail.setGrossAmount(getPrice.multiply(getComputeGrossArea).setScale(2, RoundingMode.HALF_UP).doubleValue()); } return orderDetail; -- Gitblit v1.8.0