From 6a7400d2116def445e67bad2eadeb05049965396 Mon Sep 17 00:00:00 2001 From: luozukai Date: Wed, 22 May 2019 17:22:16 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=90=88=E5=90=8C=E4=BC=98=E5=8C=96][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9][=E6=99=9A=E4=B8=8A=E5=90=88=E5=90=8C?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=9C=80=E6=B1=82]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/WxPropertyContractServiceImpl.java | 16 +++++++++++----- .../service/impl/WxRentContractServiceImpl.java | 16 +++++++++++----- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java index 6a3d9227e..93c52febe 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -718,14 +718,20 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService //最后一期截止到结束日期 if(i == paycount - 1){ wxBillProperty.setEndtime(wxPropertyContract.getRentalEndDate()); - //当天也算,加1天 Date newEndDate = DateUtils.getDaySet(wxBillProperty.getEndtime(),Calendar.DATE,1); - int[] diff = DateUtils.getDiff(wxBillProperty.getStarttime(),newEndDate); - needpay = diff[0]*price; + //按日 + if(wxPropertyContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){ + int dayCount = DateUtils.daysBetween(wxBillProperty.getStarttime(),newEndDate); + needpay = dayCount*price; + }else{ + //按月 + int[] diff = DateUtils.getDiff(wxBillProperty.getStarttime(),newEndDate); + needpay = diff[0]*price; - double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxPropertyContract.getRentalEndDate()); - needpay += diff[1] * oneDayProce; + double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxPropertyContract.getRentalEndDate()); + needpay += diff[1] * oneDayProce; + } } wxBillProperty.setNeedPay(needpay); 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 8be2162bd..1ec66979d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1058,14 +1058,20 @@ public class WxRentContractServiceImpl implements WxRentContractService { //最后一期截止到结束日期 if(i == paycount - 1){ wxBillRent.setEndtime(wxRentContract.getRentalEndDate()); - //当天也算,加1天 Date newEndDate = DateUtils.getDaySet(wxBillRent.getEndtime(),Calendar.DATE,1); - int[] diff = DateUtils.getDiff(wxBillRent.getStarttime(),newEndDate); - needpay = diff[0]*price; + //按日 + if(wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode())){ + int dayCount = DateUtils.daysBetween(wxBillRent.getStarttime(),newEndDate); + needpay = dayCount*price; + }else{ + //按月 + int[] diff = DateUtils.getDiff(wxBillRent.getStarttime(),newEndDate); + needpay = diff[0]*price; - double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxRentContract.getRentalEndDate()); - needpay += diff[1] * oneDayProce; + double oneDayProce = (double) price/DateUtils.getMonthDayCount(wxRentContract.getRentalEndDate()); + needpay += diff[1] * oneDayProce; + } } wxBillRent.setNeedPay(needpay);