From cc827cceac6c289efd164b4ff9254a20402d66b2 Mon Sep 17 00:00:00 2001 From: "zhenghaiyang@ele-cloud.com" Date: Tue, 9 May 2023 17:08:35 +0800 Subject: [PATCH] =?UTF-8?q?feature=201.=E4=BF=AE=E6=94=B9sap=E4=BC=A0?= =?UTF-8?q?=E5=85=A5=E7=9A=84=E5=8D=95=E4=BB=B7=E7=B2=BE=E5=BA=A6=E4=B8=8D?= =?UTF-8?q?=E5=A4=9F=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../consumer/utils/BeanTransitionUtils.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java index e013488c..76383b39 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/utils/BeanTransitionUtils.java @@ -3542,6 +3542,24 @@ public class BeanTransitionUtils { ddmxxxBO.setSE(detail.getZZSE()); ddmxxxBO.setPH(detail.getCHARG()); ddmxxxBO.setKB(ObjectUtil.isNull(detail.getKTYPE())?"":detail.getKTYPE()+(ObjectUtil.isNull(detail.getKNAME())?"":detail.getKNAME())); + //判断单价*数量与金额的差额大于0.01,大于的话则反算 + //判断小数点后位数,默认为8位,如果为全电,为15位 + if(!ConfigureConstant.STRING_1.equals(ddmxxxBO.getFPHXZ())){ + if(StringUtils.isNotBlank(ddmxxxBO.getJE()) && StringUtils.isNotBlank(ddmxxxBO.getSPSL())){ + int afterPointLength = ConfigureConstant.INT_8; + if(CommonUtils.judgeIsQdfp("",ddpcxxBO.getFPLXDM())){ + afterPointLength = ConfigureConstant.INT_15; + } + String jsXmdj = DecimalCalculateUtil.divNew(ddmxxxBO.getJE(), ddmxxxBO.getSPSL(), afterPointLength); + if (DecimalCalculateUtil.stringCompare(jsXmdj, ddmxxxBO.getDJ()) != 0) { + log.info("项目金额有误,误差不能大于1分钱,开始进行单价反算,JE:{},SPSL:{}",ddmxxxBO.getJE(), ddmxxxBO.getSPSL()); + //判断小数点后位数,默认为8位,如果为全电,为15位 + String xmdj = DecimalCalculateUtil.divNew(ddmxxxBO.getJE(), ddmxxxBO.getSPSL(), afterPointLength); + log.info("项目金额有误,误差不能大于1分钱,计算后的XMDJ:{}",xmdj); + ddmxxxBO.setDJ(xmdj); + } + } + } ddmxList.add(ddmxxxBO); } }