From 76752f1743b6eb21a8633edfd458c91a890db6b6 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 06 二月 2020 13:34:06 +0800
Subject: [PATCH] 优化费用显示

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

diff --git a/Api/src/main/java/com/java110/api/listener/carInout/ListCarInoutsListener.java b/Api/src/main/java/com/java110/api/listener/carInout/ListCarInoutsListener.java
index e3ba8cc..3bf0cba 100644
--- a/Api/src/main/java/com/java110/api/listener/carInout/ListCarInoutsListener.java
+++ b/Api/src/main/java/com/java110/api/listener/carInout/ListCarInoutsListener.java
@@ -25,6 +25,7 @@
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
+import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -147,6 +148,7 @@
 
         FeeConfigDto feeConfigDto = new FeeConfigDto();
         feeConfigDto.setCommunityId(communityId);
+        feeConfigDto.setIsDefault("T");
         feeConfigDto.setFeeTypeCd(FeeTypeConstant.FEE_TYPE_TEMP_DOWN_PARKING_SPACE);
         List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
         FeeConfigDto tmpFeeConfigDto = feeConfigDtos.get(0);
@@ -178,8 +180,10 @@
             if (newHour <= 2) {
                 money = Double.parseDouble(tmpFeeConfigDto.getAdditionalAmount());
             } else {
-                double lastHour = newHour - 2;
-                money = lastHour * Double.parseDouble(tmpFeeConfigDto.getSquarePrice()) + Double.parseDouble(tmpFeeConfigDto.getAdditionalAmount());
+                BigDecimal lastHour = new BigDecimal(newHour - 2);
+                BigDecimal squarePrice = new BigDecimal(Double.parseDouble(tmpFeeConfigDto.getSquarePrice()));
+                BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(tmpFeeConfigDto.getAdditionalAmount()));
+                money = squarePrice.multiply(lastHour).add(additionalAmount).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
             }
             apiCarInoutDataVo.setMoney(money);
             apiCarInoutDataVo.setInHours(new Double(hour).intValue());

--
Gitblit v1.8.0