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 9cca1e03..43118004 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 @@ -3537,9 +3537,23 @@ public class BeanTransitionUtils { ddmxxxBO.setDJ(detail.getZZDJ()); } ddmxxxBO.setSL(new BigDecimal(detail.getZTAX()).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP).toString()); - ddmxxxBO.setJE(detail.getZHSJE()); - ddmxxxBO.setHSBZ(ConfigureConstant.STRING_1); - ddmxxxBO.setSE(detail.getZZSE()); + + if(StringUtils.isNotBlank(detail.getZZSE()) && StringUtils.isNotBlank(detail.getZBHSJE())){ + String zje = DecimalCalculateUtil.bigDecimalAdd(detail.getZZSE(), detail.getZBHSJE()); + if(DecimalCalculateUtil.stringCompare(zje,detail.getZHSJE()) != 0){ + log.info("SAP推送的不含税金额+税额不相等,传入的总金额:{},计算后的XMJE:{}",detail.getZHSJE(),zje); + ddmxxxBO.setJE(detail.getZHSJE()); + ddmxxxBO.setHSBZ(ConfigureConstant.STRING_1); + }else { + ddmxxxBO.setJE(detail.getZBHSJE()); + ddmxxxBO.setHSBZ(ConfigureConstant.STRING_0); + ddmxxxBO.setSE(detail.getZZSE()); + } + } else { + ddmxxxBO.setJE(detail.getZHSJE()); + ddmxxxBO.setHSBZ(ConfigureConstant.STRING_1); +// ddmxxxBO.setSE(detail.getZZSE()); + } ddmxxxBO.setPH(detail.getCHARG()); ddmxxxBO.setKB(ObjectUtil.isNull(detail.getKTYPE())?"":detail.getKTYPE()+(ObjectUtil.isNull(detail.getKNAME())?"":detail.getKNAME())); //判断单价*数量与金额的差额大于0.01,大于的话则反算