From e5b814db3320b3bf58494e93451b2dfe35a8ad76 Mon Sep 17 00:00:00 2001 From: xhxu Date: Sun, 22 Aug 2021 14:54:37 +0800 Subject: [PATCH] rent --- .../impl/WxRentContractServiceImpl.java | 64 +++++++++++++++++-- 1 file changed, 58 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 24446300c..c481b2f4b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -33,7 +33,6 @@ import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormatter; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -2238,6 +2237,8 @@ public class WxRentContractServiceImpl implements WxRentContractService { } } } + result.put("countRatioList",ratioList.size()); + if(EnumRentContractType.RENT_BY_AREA.getCode().equals(type)){ double priceRent = new BigDecimal(wxRentContract.getPrice()) @@ -2269,6 +2270,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { result.put("oneRentalEndDateYear1",beforeOneIncrementStartDate.substring(0,4)); result.put("oneRentalEndDateMonth1",beforeOneIncrementStartDate.substring(5,7)); result.put("oneRentalEndDateDay1",beforeOneIncrementStartDate.substring(8,10)); + String incrementStartDate = ratioList.get(0).get("incrementStartDate"); result.put("oneRentalStartDateYear2",incrementStartDate.substring(0,4)); result.put("oneRentalStartDateMonth2",incrementStartDate.substring(5,7)); @@ -2281,6 +2283,23 @@ public class WxRentContractServiceImpl implements WxRentContractService { result.put("oneRentalPrice2", priceRent2); result.put("oneRentalPriceUpper2", PriceUtil.digitUppercase(priceRent2)); + if(ratioList.size() > 1){ + for (int i = 1;i < ratioList.size();i++){ + int n = i+2; + String incrementStartDaten = ratioList.get(i).get("incrementStartDate"); + result.put("oneRentalStartDateYear"+n,incrementStartDaten.substring(0,4)); + result.put("oneRentalStartDateMonth"+n,incrementStartDaten.substring(5,7)); + result.put("oneRentalStartDateDay"+n,incrementStartDaten.substring(8,10)); + String increasingProportionn = ratioList.get(i).get("increasingProportion"); + result.put("oneRentIncreasing"+n,increasingProportionn); + priceRent2 = new BigDecimal(priceRent2) + .multiply(new BigDecimal(1).add(new BigDecimal(increasingProportionn).divide(new BigDecimal(100)))) + .setScale(2, RoundingMode.HALF_EVEN).doubleValue(); + result.put("oneRentalPrice"+n, priceRent2); + result.put("oneRentalPriceUpper"+n, PriceUtil.digitUppercase(priceRent2)); + } + } + }else{ String rentalEndDate = DateUtils.date2String(wxRentContract.getRentalEndDate(), "yyyy-MM-dd"); result.put("oneRentalStartDateYear1", rentalEndDate.substring(0, 4)); @@ -2306,10 +2325,26 @@ public class WxRentContractServiceImpl implements WxRentContractService { result.put("twoRentalStartDateDay2",incrementStartDate.substring(8,10)); String increasingProportion = ratioList.get(0).get("increasingProportion"); result.put("twoRentIncreasing2",increasingProportion); - Double twoPayRatio2 = new BigDecimal(twoPayRatio1) - .add(new BigDecimal(increasingProportion)) - .setScale(2, RoundingMode.HALF_EVEN).doubleValue(); - result.put("twoPayRatio2",twoPayRatio2); +// Double twoPayRatio2 = new BigDecimal(twoPayRatio1) +// .add(new BigDecimal(increasingProportion)) +// .setScale(2, RoundingMode.HALF_EVEN).doubleValue(); + result.put("twoPayRatio2",twoPayRatio1); + + if(ratioList.size() > 1){ + for (int i = 1;i < ratioList.size();i++){ + int n = i+2; + String incrementStartDaten = ratioList.get(i).get("incrementStartDate"); + result.put("twoRentalStartDateYear"+n,incrementStartDaten.substring(0,4)); + result.put("twoRentalStartDateMonth"+n,incrementStartDaten.substring(5,7)); + result.put("twoRentalStartDateDay"+n,incrementStartDaten.substring(8,10)); + String increasingProportionn = ratioList.get(i).get("increasingProportion"); + result.put("twoRentIncreasing"+n,increasingProportionn); +// Double twoPayRatio2 = new BigDecimal(twoPayRatio1) +// .add(new BigDecimal(increasingProportion)) +// .setScale(2, RoundingMode.HALF_EVEN).doubleValue(); + result.put("twoPayRatio"+n,twoPayRatio1); + } + } }else{ String rentalEndDate = DateUtils.date2String(wxRentContract.getRentalEndDate(), "yyyy-MM-dd"); @@ -2353,7 +2388,24 @@ public class WxRentContractServiceImpl implements WxRentContractService { result.put("threeRentPrice2",progressivePay); String increasingProportion = ratioList.get(0).get("increasingProportion"); result.put("threeRentIncreasing2",increasingProportion); - + if(ratioList.size() > 1){ + for (int i = 1;i < ratioList.size();i++){ + int n = i+2; + String incrementStartDaten = ratioList.get(i).get("incrementStartDate"); + result.put("threeRentalStartDateYear"+n,incrementStartDaten.substring(0,4)); + result.put("threeRentalStartDateMonth"+n,incrementStartDaten.substring(5,7)); + result.put("threeRentalStartDateDay"+n,incrementStartDaten.substring(8,10)); + String progressivePayn = ratioList.get(i).get("progressivePay"); + double threeProgressivePayn = new BigDecimal(progressivePayn) + .multiply(new BigDecimal(wxRentContract.getRentArea())) + .setScale(2, RoundingMode.HALF_EVEN).doubleValue(); + result.put("threeProgressivePay"+n,threeProgressivePayn); + result.put("threeProgressivePayUpper"+n,PriceUtil.digitUppercase(threeProgressivePayn)); + result.put("threeRentPrice"+n,progressivePayn); + String increasingProportionn = ratioList.get(i).get("increasingProportion"); + result.put("threeRentIncreasing"+n,increasingProportionn); + } + } }else{ String rentalEndDate = DateUtils.date2String(wxRentContract.getRentalEndDate(), "yyyy-MM-dd"); result.put("threeRentalStartDateYear1", rentalEndDate.substring(0, 4));