From e1c8bed1b24df8a6c80ffa582bb966acacc8a5d7 Mon Sep 17 00:00:00 2001
From: mrzcc <121184950@qq.com>
Date: 星期四, 06 二月 2020 11:59:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Api/src/main/java/com/java110/api/listener/fee/PayFeePreTempCarInoutListener.java |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/Api/src/main/java/com/java110/api/listener/fee/PayFeePreTempCarInoutListener.java b/Api/src/main/java/com/java110/api/listener/fee/PayFeePreTempCarInoutListener.java
index 4e35956..df3aef2 100644
--- a/Api/src/main/java/com/java110/api/listener/fee/PayFeePreTempCarInoutListener.java
+++ b/Api/src/main/java/com/java110/api/listener/fee/PayFeePreTempCarInoutListener.java
@@ -31,6 +31,7 @@
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -178,6 +179,7 @@
         paramInJson.put("feeInfo", feeDto);
         FeeConfigDto feeConfigDto = new FeeConfigDto();
         feeConfigDto.setFeeTypeCd(feeDto.getFeeTypeCd());
+        feeConfigDto.setConfigId(feeDto.getConfigId());
         feeConfigDto.setCommunityId(feeDto.getCommunityId());
         List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
         if (feeConfigDtos == null || feeConfigDtos.size() != 1) {
@@ -204,8 +206,10 @@
         if (newHour <= 2) {
             money = Double.parseDouble(feeConfigDto.getAdditionalAmount());
         } else {
-            double lastHour = newHour - 2;
-            money = lastHour * Double.parseDouble(feeConfigDto.getSquarePrice()) + Double.parseDouble(feeConfigDto.getAdditionalAmount());
+            BigDecimal lastHour = new BigDecimal(newHour - 2);
+            BigDecimal squarePrice = new BigDecimal(Double.parseDouble(feeDto.getSquarePrice()));
+            BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(feeDto.getAdditionalAmount()));
+            money = squarePrice.multiply(lastHour).add(additionalAmount).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
         }
 
         double receivableAmount = money;

--
Gitblit v1.8.0