From ae9d43348433951229f992afa8a24708b54ee00a Mon Sep 17 00:00:00 2001 From: winter Date: Fri, 2 Aug 2024 08:08:42 +0800 Subject: [PATCH] fix --- .../com/iformall/service/helper/WxRentContractHelper.java | 8 ++++++-- .../service/impl/WxPropertyContractServiceImpl.java | 4 ++-- .../iformall/service/impl/WxRentContractServiceImpl.java | 6 +++++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractHelper.java index a199e4caa..effad485c 100644 --- a/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractHelper.java +++ b/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractHelper.java @@ -479,7 +479,7 @@ public class WxRentContractHelper { } //其他标准计费项 - public static List getStandardsBillList(Integer decimalSize,List feesStandarsList,Date billStartDate,Date billEndDate,boolean isFixed) { + public static List getStandardsBillList(Integer decimalSize,List feesStandarsList,Date billStartDate,Date billEndDate,boolean isFixed,String rentArea) { if (null == feesStandarsList || feesStandarsList.size() <= 0 ) { return null; } @@ -493,7 +493,11 @@ public class WxRentContractHelper { if (fees.getFixedPrice().intValue() == EnumYesOrNo.YES.getCode().intValue() && null != billStartDate && null != billEndDate) { vo.setStart(billStartDate); vo.setEnd(billEndDate); - vo.setTotal(fees.calcuteTotalMoney(decimalSize, billStartDate, billEndDate, "1",true,null,null)); + String count = "1"; + if (null != fees.getCalcuteUnit() && fees.getCalcuteUnit().intValue() == EnumFeesStandardsCalcuteUnit.MM.getCode().intValue()) { + count = rentArea; + } + vo.setTotal(fees.calcuteTotalMoney(decimalSize, billStartDate, billEndDate, count,true,null,null)); vo.setReceiveDate(DateUtils.getDaySet(billStartDate,Calendar.DATE,-1)); vo.setFeeStandards(fees); retList.add(vo); 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 1984f014e..01fcd6bd1 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -724,7 +724,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService billEndDate = billTimeVoList.get(billTimeVoList.size()-1).getEndDate(); } //一次性费用的,只有一个账单。 - List fixedList = WxRentContractHelper.getStandardsBillList(wxPropertyContract.getDecimalSize(),wxPropertyContract.getFeesStardarsList(),billStartDate,billEndDate,true); + List fixedList = WxRentContractHelper.getStandardsBillList(wxPropertyContract.getDecimalSize(),wxPropertyContract.getFeesStardarsList(),billStartDate,billEndDate,true,wxPropertyContract.getRentArea()); int index = 0; @@ -735,7 +735,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService String standarsTotal = "0"; //非一次性费用的,跟随物业账单的周期 - List unFixedList = WxRentContractHelper.getStandardsBillList(wxPropertyContract.getDecimalSize(),wxPropertyContract.getFeesStardarsList(),null,null,false); + List unFixedList = WxRentContractHelper.getStandardsBillList(wxPropertyContract.getDecimalSize(),wxPropertyContract.getFeesStardarsList(),null,null,false,null); boolean flag = false; 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 accd9f6cb..c083e2621 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -971,7 +971,11 @@ public class WxRentContractServiceImpl implements WxRentContractService { } wxBillDeposit.setPay("0"); //String needpay = wxRentContract.getDeposit(); - String needpay = depositFee.calcuteTotalMoney(wxRentContract.getDecimalSize(), null, null, "1", true, null, null); + String count = "1"; + if (null != depositFee.getCalcuteUnit() && depositFee.getCalcuteUnit().intValue() == EnumFeesStandardsCalcuteUnit.MM.getCode().intValue()) { + count = wxRentContract.getRentArea(); + } + String needpay = depositFee.calcuteTotalMoney(wxRentContract.getDecimalSize(), null, null, count, true, null, null); wxBillDeposit.setReceivePay(needpay); wxBillDeposit.setNeedPay(needpay); //wxBillDeposit.setOwe(needpay);