From 35f4412614a4801dc26f9284c8c15457e1db2a7f Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期五, 15 三月 2024 14:55:40 +0800
Subject: [PATCH] 优化代码
---
service-report/src/main/java/com/java110/report/smo/impl/QueryPayFeeDetailInnerServiceSMOImpl.java | 890 ++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 614 insertions(+), 276 deletions(-)
diff --git a/service-report/src/main/java/com/java110/report/smo/impl/QueryPayFeeDetailInnerServiceSMOImpl.java b/service-report/src/main/java/com/java110/report/smo/impl/QueryPayFeeDetailInnerServiceSMOImpl.java
index 561a0ca..f4bb3a5 100644
--- a/service-report/src/main/java/com/java110/report/smo/impl/QueryPayFeeDetailInnerServiceSMOImpl.java
+++ b/service-report/src/main/java/com/java110/report/smo/impl/QueryPayFeeDetailInnerServiceSMOImpl.java
@@ -1,22 +1,34 @@
package com.java110.report.smo.impl;
import com.alibaba.fastjson.JSONObject;
-import com.java110.core.smo.IComputeFeeSMO;
+import com.java110.dto.PageDto;
+import com.java110.dto.ReportFeeMonthStatisticsPrepaymentDto.ReportFeeMonthStatisticsPrepaymentDto;
+import com.java110.dto.ReportFeeMonthStatisticsPrepaymentDto.ReportFeeMonthStatisticsPrepaymentTotalDto;
+import com.java110.dto.fee.FeeAccountDetailDto;
import com.java110.dto.fee.FeeConfigDto;
-import com.java110.dto.fee.FeeDetailDto;
import com.java110.dto.fee.FeeDto;
+import com.java110.dto.owner.OwnerCarDto;
import com.java110.dto.owner.OwnerDto;
import com.java110.dto.owner.OwnerRoomRelDto;
import com.java110.dto.repair.RepairDto;
-import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
-import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsTotalDto;
+import com.java110.dto.reportFee.ReportFeeMonthStatisticsDto;
+import com.java110.dto.reportFee.ReportFeeMonthStatisticsTotalDto;
+import com.java110.dto.room.RoomDto;
+import com.java110.intf.community.IParkingSpaceV1InnerServiceSMO;
import com.java110.intf.community.IRepairInnerServiceSMO;
+import com.java110.intf.community.IRoomInnerServiceSMO;
+import com.java110.intf.community.IRoomV1InnerServiceSMO;
+import com.java110.intf.fee.IFeeAccountDetailServiceSMO;
import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
import com.java110.intf.report.IQueryPayFeeDetailInnerServiceSMO;
import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
+import com.java110.intf.report.IReportFeeMonthStatisticsPrepaymentInnerServiceSMO;
+import com.java110.intf.user.IOwnerCarInnerServiceSMO;
import com.java110.intf.user.IOwnerInnerServiceSMO;
import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.ListUtil;
import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
@@ -24,20 +36,23 @@
import org.springframework.web.bind.annotation.RestController;
import java.lang.reflect.Field;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
/**
* 鏌ヨ缂磋垂鏄庣粏
- *
*/
@RestController
-public class QueryPayFeeDetailInnerServiceSMOImpl implements IQueryPayFeeDetailInnerServiceSMO{
+public class QueryPayFeeDetailInnerServiceSMOImpl implements IQueryPayFeeDetailInnerServiceSMO {
private int MAX_ROWS = 500; // 鏈�澶ц鏁�
@Autowired
private IReportFeeMonthStatisticsInnerServiceSMO reportFeeMonthStatisticsInnerServiceSMOImpl;
+
+ @Autowired
+ private IReportFeeMonthStatisticsPrepaymentInnerServiceSMO reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl;
@Autowired
private IRepairInnerServiceSMO repairInnerServiceSMOImpl;
@@ -49,24 +64,219 @@
private IOwnerInnerServiceSMO ownerInnerServiceSMOImpl;
@Autowired
- private IComputeFeeSMO computeFeeSMOImpl;
+ private IFeeAccountDetailServiceSMO feeAccountDetailServiceSMOImpl;
@Autowired
- private IFeeDetailInnerServiceSMO feeDetailInnerServiceSMOImpl;
+ private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
+ @Autowired
+ private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
+
+ @Autowired
+ private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
+
+ /**
+ * 鏌ヨ缂磋垂鏄庣粏
+ *
+ * @param reportFeeMonthStatisticsDto
+ * @return
+ */
@Override
public ResultVo query(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+
JSONObject countInfo = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetailCount(reportFeeMonthStatisticsDto);
-
int count = Integer.parseInt(countInfo.get("count").toString());
-
List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
ReportFeeMonthStatisticsTotalDto reportFeeMonthStatisticsTotalDto = new ReportFeeMonthStatisticsTotalDto();
- List<ReportFeeMonthStatisticsDto> reportList = new ArrayList<>();
+ ResultVo resultVo = null;
+ if (count < 1) {
+ resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos, reportFeeMonthStatisticsTotalDto);
+ return resultVo;
+ }
+
+ //todo 鏌ヨ缂磋垂鏄庣粏
+ reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetail(reportFeeMonthStatisticsDto);
+
+ //todo 搴旀敹閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllReceivableAmount(String.format("%.2f", countInfo.getDouble("totalReceivableAmount")));
+ //todo 瀹炴敹閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllReceivedAmount(String.format("%.2f", countInfo.getDouble("totalReceivedAmount")));
+
+ //todo 鎵撴姌閲戦锛堝ぇ璁★級
+ reportFeeMonthStatisticsTotalDto.setAllPreferentialAmount(String.format("%.2f", countInfo.getDouble("discountAmount")));
+
+ //todo 鍑忓厤閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllDeductionAmount(String.format("%.2f", countInfo.getDouble("deductionAmount")));
+ //todo 婊炵撼閲�(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllLateFee(String.format("%.2f", countInfo.getDouble("lateAmount")));
+
+ //todo 璧犻�佽鍒欓噾棰�(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllGiftAmount(String.format("%.2f", countInfo.getDouble("giftAmount")));
+
+ //todo 璁$畻灏忚
+ computeTotalInfo(reportFeeMonthStatisticsTotalDto, reportFeeMonthStatisticsDtos);
+
+ //todo 璁$畻鎴垮眿闈㈢Н 鍜岃溅浣嶄俊鎭�
+ computeRoomAndParkingSpace(reportFeeMonthStatisticsDtos);
+
+
+ resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos, reportFeeMonthStatisticsTotalDto);
+ return resultVo;
+ }
+
+ private void computeRoomAndParkingSpace(List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos) {
+
+ List<String> payerObjIds = new ArrayList<>();
+
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ payerObjIds.add(reportFeeMonthStatisticsDto.getPayerObjId());
+ }
+
+ if (ListUtil.isNull(payerObjIds)) {
+ return;
+ }
+ RoomDto roomDto = new RoomDto();
+ roomDto.setRoomIds(payerObjIds.toArray(new String[payerObjIds.size()]));
+ roomDto.setCommunityId(reportFeeMonthStatisticsDtos.get(0).getCommunityId());
+ List<RoomDto> roomDtos = roomV1InnerServiceSMOImpl.queryRooms(roomDto);
+
+ if (!ListUtil.isNull(roomDtos)) {
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ for (RoomDto tmpRoomDto : roomDtos) {
+ if (reportFeeMonthStatisticsDto.getPayerObjId().equals(tmpRoomDto.getRoomId())) {
+ reportFeeMonthStatisticsDto.setBuiltUpArea(tmpRoomDto.getBuiltUpArea());
+ }
+ }
+ }
+ }
+
+ computeParkingSpace(reportFeeMonthStatisticsDtos, payerObjIds);
+
+ }
+
+ private void computeParkingSpace(List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos, List<String> payerObjIds) {
+ OwnerCarDto ownerCarDto = new OwnerCarDto();
+ ownerCarDto.setMemberIds(payerObjIds.toArray(new String[payerObjIds.size()]));
+ ownerCarDto.setCommunityId(reportFeeMonthStatisticsDtos.get(0).getCommunityId());
+ List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
+
+ if (ListUtil.isNull(ownerCarDtos)) {
+ return;
+ }
+ freshRoomInfo(ownerCarDtos);
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ for (OwnerCarDto tmpOwnerCarDto : ownerCarDtos) {
+ if (!reportFeeMonthStatisticsDto.getPayerObjId().equals(tmpOwnerCarDto.getMemberId())) {
+ continue;
+ }
+ reportFeeMonthStatisticsDto.setPsName(tmpOwnerCarDto.getAreaNum() + "-" + tmpOwnerCarDto.getNum());
+ reportFeeMonthStatisticsDto.setRoomName(tmpOwnerCarDto.getRoomName());
+ }
+ }
+
+ }
+
+ /**
+ * 鍒峰叆鎴垮眿淇℃伅
+ *
+ * @param ownerCarDtos
+ */
+ private void freshRoomInfo(List<OwnerCarDto> ownerCarDtos) {
+
+ if (ListUtil.isNull(ownerCarDtos) || ownerCarDtos.size() > 30) {
+ return;
+ }
+ for (OwnerCarDto ownerCarDto : ownerCarDtos) {
+ doFreshRoomInfo(ownerCarDto);
+ }
+ }
+
+ /**
+ * 杞︿綅淇℃伅鍒峰叆鎴垮眿淇℃伅
+ *
+ * @param ownerCarDto
+ */
+ private void doFreshRoomInfo(OwnerCarDto ownerCarDto) {
+ OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+ ownerRoomRelDto.setOwnerId(ownerCarDto.getOwnerId());
+ ownerRoomRelDto.setPage(1);
+ ownerRoomRelDto.setRow(3); //鍙睍绀�3涓埧灞嬩互鍐� 涓嶇劧椤甸潰澶贡
+ List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+ if (ListUtil.isNull(ownerRoomRelDtos)) {
+ ownerCarDto.setRoomName("-");
+ return;
+ }
+ List<String> roomIds = new ArrayList<>();
+ for (OwnerRoomRelDto tOwnerRoomRelDto : ownerRoomRelDtos) {
+ roomIds.add(tOwnerRoomRelDto.getRoomId());
+ }
+ RoomDto roomDto = new RoomDto();
+ roomDto.setCommunityId(ownerCarDto.getCommunityId());
+ roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()]));
+ List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+ String roomName = "";
+ for (RoomDto tRoomDto : roomDtos) {
+ roomName += (tRoomDto.getFloorNum() + "-" + tRoomDto.getUnitNum() + "-" + tRoomDto.getRoomNum() + "-" + "/");
+ }
+ roomName = roomName.endsWith("/") ? roomName.substring(0, roomName.length() - 1) : roomName;
+ ownerCarDto.setRoomName(roomName);
+ }
+
+ /**
+ * 璁$畻澶ц灏忚
+ *
+ * @param reportFeeMonthStatisticsTotalDto
+ */
+ private void computeTotalInfo(ReportFeeMonthStatisticsTotalDto reportFeeMonthStatisticsTotalDto,
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos) {
+
+ BigDecimal totalReceivableAmount = new BigDecimal(0.00);
+
+ BigDecimal totalReceivedAmount = new BigDecimal(0.00);
+ BigDecimal totalPreferentialAmount = new BigDecimal(0.00);
+ BigDecimal totalDeductionAmount = new BigDecimal(0.00);
+ BigDecimal totalLateFee = new BigDecimal(0.00);
+ BigDecimal totalGiftAmount = new BigDecimal(0.00);
+
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ totalReceivableAmount = totalReceivableAmount.add(new BigDecimal(reportFeeMonthStatisticsDto.getReceivableAmount()));
+ totalReceivedAmount = totalReceivedAmount.add(new BigDecimal(reportFeeMonthStatisticsDto.getReceivedAmount()));
+ totalPreferentialAmount = totalPreferentialAmount.add(new BigDecimal(reportFeeMonthStatisticsDto.getDiscountAmount()));
+ totalDeductionAmount = totalDeductionAmount.add(new BigDecimal(reportFeeMonthStatisticsDto.getDeductionAmount()));
+ totalLateFee = totalLateFee.add(new BigDecimal(reportFeeMonthStatisticsDto.getLateAmount()));
+ totalGiftAmount = totalGiftAmount.add(new BigDecimal(reportFeeMonthStatisticsDto.getGiftAmount()));
+
+ reportFeeMonthStatisticsDto.setWithholdAmount(reportFeeMonthStatisticsDto.getAcctAmount());
+ reportFeeMonthStatisticsDto.setPreferentialAmount(reportFeeMonthStatisticsDto.getDiscountAmount());
+ reportFeeMonthStatisticsDto.setLateFee(reportFeeMonthStatisticsDto.getLateAmount());
+ }
+
+ //todo 搴旀敹閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount.doubleValue()));
+
+ //todo 瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount.doubleValue()));
+ //todo 浼樻儬閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalPreferentialAmount(String.format("%.2f", totalPreferentialAmount));
+ //todo 鍑忓厤閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalDeductionAmount(String.format("%.2f", totalDeductionAmount));
+ //todo 婊炵撼閲�(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalLateFee(String.format("%.2f", totalLateFee));
+
+ }
+
+
+ @Override
+ public ResultVo queryPrepayment(@RequestBody ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepaymentDto) {
+ JSONObject countInfo = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPayFeeDetailPrepaymentCount(reportFeeMonthStatisticsPrepaymentDto);
+ int count = Integer.parseInt(countInfo.get("count").toString());
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentDtos = null;
+ ReportFeeMonthStatisticsPrepaymentTotalDto reportFeeMonthStatisticsPrepaymentTotalDto = new ReportFeeMonthStatisticsPrepaymentTotalDto();
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportList = new ArrayList<>();
//鏌ヨ璇ュ皬鍖轰笅鐨勮垂鐢ㄩ」鐩�
FeeConfigDto feeConfigDto = new FeeConfigDto();
- feeConfigDto.setCommunityId(reportFeeMonthStatisticsDto.getCommunityId());
- List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+ feeConfigDto.setCommunityId(reportFeeMonthStatisticsPrepaymentDto.getCommunityId());
+ List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryFeeConfigPrepayments(feeConfigDto);
//搴旀敹鎬婚噾棰�(澶ц)
Double allReceivableAmount = 0.0;
//瀹炴敹閲戦(澶ц)
@@ -83,51 +293,54 @@
Double allVacantHousingReduction = 0.0;
//璧犻�侀噾棰�(澶ц)
Double allGiftAmount = 0.0;
- //鍚村鏂� 娉ㄩ噴 鎰熻鍜屼笂闈㈢殑369 鍔熻兘閲嶅
- //int size = 0;
+ //娆犺垂閲戦(澶ц)
+ Double allOweAmount = 0.0;
+ //搴旂即閲戦(澶ц)
+ Double allPayableAmount = 0.0;
if (count > 0) {
//鏌ヨ缂磋垂鏄庣粏
- reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetail(reportFeeMonthStatisticsDto);
- //鍚村鏂� 娉ㄩ噴 鎰熻鍜屼笂闈㈢殑369 鍔熻兘閲嶅
-// if (reportFeeMonthStatisticsDtos != null && reportFeeMonthStatisticsDtos.size() > 0) {
-// //鏌ヨ鎵�鏈夌即璐规槑缁嗚褰�
-// ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto1 = BeanConvertUtil.covertBean(reportFeeMonthStatisticsDto, ReportFeeMonthStatisticsDto.class);
-// reportFeeMonthStatisticsDto1.setPage(PageDto.DEFAULT_PAGE);
-// List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos1 = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetail(reportFeeMonthStatisticsDto1);
-// size = reportFeeMonthStatisticsDtos1.size();
-// }
+ reportFeeMonthStatisticsPrepaymentDtos = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryNewPayFeeDetailPrepayment(reportFeeMonthStatisticsPrepaymentDto);
//鏌ヨ搴旀敹銆佸疄鏀舵�婚噾棰�(澶ц)
- List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryAllPayFeeDetail(reportFeeMonthStatisticsDto);
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentList = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPayFeeDetailPrepayment(reportFeeMonthStatisticsPrepaymentDto);
//鏌ヨ(浼樻儬銆佸噺鍏嶃�佹粸绾抽噾銆佺┖缃埧鎵撴姌銆佺┖缃埧鍑忓厤閲戦绛�)澶ц鎬婚噾棰�
- List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsSum = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetailSum(reportFeeMonthStatisticsDto);
- allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivableAmount());
- allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivedAmount());
- for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsSum) {
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentSum = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPayFeeDetailPrepaymentSum(reportFeeMonthStatisticsPrepaymentDto);
+ allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllReceivableAmount());
+ allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllReceivedAmount());
+ allOweAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllOweAmount());
+ allPayableAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllPayableAmount());
+ for (ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepayment : reportFeeMonthStatisticsPrepaymentSum) {
//杩欓噷鏄煡璇㈠嚭鐨勯噾棰濇�诲拰
- String discountPrice = reportFeeMonthStatistics.getDiscountPrice();
+ String discountPrice = reportFeeMonthStatisticsPrepayment.getDiscountPrice();
+ // discountSmallType 1: 鎵撴姌 2:鍑忓厤 3:婊炵撼閲� 4:绌虹疆鎴挎墦鎶� 5:绌虹疆鎴垮噺鍏� 6:璧犻��
//浼樻儬閲戦(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("1")) {
- allPreferentialAmount = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("1")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allPreferentialAmount = allPreferentialAmount + aDouble;
}
//鍑忓厤閲戦(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("2")) {
- allDeductionAmount = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("2")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allDeductionAmount = allDeductionAmount + aDouble;
}
//婊炵撼閲�(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
- allLateFee = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("3")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allLateFee = allLateFee + aDouble;
}
//绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("4")) {
- allVacantHousingDiscount = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("4")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allVacantHousingDiscount = allVacantHousingDiscount + aDouble;
}
//绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("5")) {
- allVacantHousingReduction = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("5")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allVacantHousingReduction = allVacantHousingReduction + aDouble;
}
//璧犻�侀噾棰�(澶ц)
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("6")) {
- allGiftAmount = Double.valueOf(discountPrice);
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("6")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allGiftAmount = allGiftAmount + aDouble;
}
}
//搴旀敹鎬婚噾棰�(灏忚)
@@ -146,278 +359,403 @@
Double totalGiftAmount = 0.0;
//婊炵撼閲�(灏忚)
Double totalLateFee = 0.0;
- List<String> ownerIds = new ArrayList<>();
- for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
- FeeDetailDto feeDetailDto = new FeeDetailDto();
- feeDetailDto.setDetailId(reportFeeMonthStatistics.getDetailId());
- List<FeeDetailDto> feeDetailDtos = feeDetailInnerServiceSMOImpl.queryFeeDetails(feeDetailDto);
- Assert.listOnlyOne(feeDetailDtos, "鏌ヨ璐圭敤鏄庣粏琛ㄩ敊璇�");
- reportFeeMonthStatistics.setReceivableAmount(feeDetailDtos.get(0).getReceivableAmount());
- reportFeeMonthStatistics.setPayableAmount(feeDetailDtos.get(0).getPayableAmount());
+ //娆犺垂閲戦(灏忚)
+ Double totalOweAmount = 0.0;
+ //搴旂即閲戦(灏忚)
+ Double totalPayableAmount = 0.0;
+ for (ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepayment : reportFeeMonthStatisticsPrepaymentDtos) {
//搴旀敹閲戦
- Double receivableAmount = Double.valueOf(reportFeeMonthStatistics.getReceivableAmount());
+ Double receivableAmount = 0.0;
+ if (!StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getPrepaymentReceivableAmount())) {
+ receivableAmount = Double.valueOf(reportFeeMonthStatisticsPrepayment.getPrepaymentReceivableAmount());
+ }
//瀹炴敹閲戦
- Double receivedAmount = Double.valueOf(reportFeeMonthStatistics.getReceivedAmount());
+ Double receivedAmount = 0.0;
+ if (!StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getPrepaymentReceivedAmount())) {
+ receivedAmount = Double.valueOf(reportFeeMonthStatisticsPrepayment.getPrepaymentReceivedAmount());
+ }
+ //娆犺垂閲戦
+ Double oweAmount = 0.0;
+ if (!StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getOweAmount())) {
+ oweAmount = Double.valueOf(reportFeeMonthStatisticsPrepayment.getOweAmount());
+ }
+ //搴旂即閲戦
+ Double payableAmount = 0.0;
+ if (!StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getPayableAmount())) {
+ payableAmount = Double.valueOf(reportFeeMonthStatisticsPrepayment.getPayableAmount());
+ }
totalReceivableAmount = totalReceivableAmount + receivableAmount;
totalReceivedAmount = totalReceivedAmount + receivedAmount;
-
- if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(reportFeeMonthStatistics.getPayerObjType())) {
- ownerIds.add(reportFeeMonthStatistics.getOwnerId());
- }
-
- // 鏈�澶ц褰曟椂 灏卞幓鍒锋柊
- //濡傛灉鏄溅浣嶅埛鎴垮眿淇℃伅
- if (ownerIds.size() == MAX_ROWS) {
- refreshReportFeeMonthStatistics(ownerIds, reportFeeMonthStatisticsDtos);
- ownerIds = new ArrayList<>();
- }
-
- //浼樻儬閲戦
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("1")) {
- //鑾峰彇浼樻儬閲戦
- Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
- totalPreferentialAmount = totalPreferentialAmount + discountPrice;
+ totalOweAmount = totalOweAmount + oweAmount;
+ totalPayableAmount = totalPayableAmount + payableAmount;
+ ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepaymentDto1 = new ReportFeeMonthStatisticsPrepaymentDto();
+ reportFeeMonthStatisticsPrepaymentDto1.setPrepaymentId(reportFeeMonthStatisticsPrepayment.getPrepaymentId());
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepayments = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPayFeeDetailPrepayment(reportFeeMonthStatisticsPrepaymentDto1);
+ for (ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatistics : reportFeeMonthStatisticsPrepayments) {
//浼樻儬閲戦
- reportFeeMonthStatistics.setPreferentialAmount(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setPreferentialAmount("0");
- }
- //鍑忓厤閲戦
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("2")) {
- //鑾峰彇鍑忓厤閲戦
- Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
- totalDeductionAmount = totalDeductionAmount + discountPrice;
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("1")) {
+ //鑾峰彇浼樻儬閲戦
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalPreferentialAmount = totalPreferentialAmount + discountPrice;
+ //浼樻儬閲戦
+ reportFeeMonthStatisticsPrepayment.setPreferentialAmount(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getPreferentialAmount())) {
+ reportFeeMonthStatisticsPrepayment.setPreferentialAmount("0");
+ }
//鍑忓厤閲戦
- reportFeeMonthStatistics.setDeductionAmount(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setDeductionAmount("0");
- }
- //婊炵撼閲�
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
- //鑾峰彇婊炵撼閲戦噾棰�
- Double discountPrice = (Double.valueOf(reportFeeMonthStatistics.getDiscountPrice()));
- totalLateFee = totalLateFee + discountPrice;
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("2")) {
+ //鑾峰彇鍑忓厤閲戦
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalDeductionAmount = totalDeductionAmount + discountPrice;
+ //鍑忓厤閲戦
+ reportFeeMonthStatisticsPrepayment.setDeductionAmount(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDeductionAmount())) {
+ reportFeeMonthStatisticsPrepayment.setDeductionAmount("0");
+ }
//婊炵撼閲�
- reportFeeMonthStatistics.setLateFee(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setLateFee("0");
- }
- //绌虹疆鎴挎墦鎶�
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("4")) {
- //绌虹疆鎴挎墦鎶橀噾棰�
- Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
- totalVacantHousingDiscount = totalVacantHousingDiscount + discountPrice;
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
+ //鑾峰彇婊炵撼閲戦噾棰�
+ Double discountPrice = (Double.valueOf(reportFeeMonthStatistics.getDiscountPrice()));
+ totalLateFee = totalLateFee + discountPrice;
+ //婊炵撼閲�
+ reportFeeMonthStatisticsPrepayment.setLateFee(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getLateFee())) {
+ reportFeeMonthStatisticsPrepayment.setLateFee("0");
+ }
//绌虹疆鎴挎墦鎶�
- reportFeeMonthStatistics.setVacantHousingDiscount(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setVacantHousingDiscount("0");
- }
- //绌虹疆鎴垮噺鍏�
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("5")) {
- //绌虹疆鎴垮噺鍏嶉噾棰�
- Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
- totalVacantHousingReduction = totalVacantHousingReduction + discountPrice;
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("4")) {
+ //绌虹疆鎴挎墦鎶橀噾棰�
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalVacantHousingDiscount = totalVacantHousingDiscount + discountPrice;
+ //绌虹疆鎴挎墦鎶�
+ reportFeeMonthStatisticsPrepayment.setVacantHousingDiscount(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getVacantHousingDiscount())) {
+ reportFeeMonthStatisticsPrepayment.setVacantHousingDiscount("0");
+ }
//绌虹疆鎴垮噺鍏�
- reportFeeMonthStatistics.setVacantHousingReduction(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setVacantHousingReduction("0");
- }
- //璧犻�侀噾棰�
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("6")) {
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("5")) {
+ //绌虹疆鎴垮噺鍏嶉噾棰�
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalVacantHousingReduction = totalVacantHousingReduction + discountPrice;
+ //绌虹疆鎴垮噺鍏�
+ reportFeeMonthStatisticsPrepayment.setVacantHousingReduction(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getVacantHousingReduction())) {
+ reportFeeMonthStatisticsPrepayment.setVacantHousingReduction("0");
+ }
//璧犻�侀噾棰�
- Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
- totalGiftAmount = totalGiftAmount + discountPrice;
- //璧犻�侀噾棰�
- reportFeeMonthStatistics.setGiftAmount(reportFeeMonthStatistics.getDiscountPrice());
- } else {
- reportFeeMonthStatistics.setGiftAmount("0");
- }
- if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(reportFeeMonthStatistics.getPayerObjType())) {
- reportFeeMonthStatistics.setObjName(reportFeeMonthStatistics.getFloorNum()
- + "鏍�" + reportFeeMonthStatistics.getUnitNum()
- + "鍗曞厓" + reportFeeMonthStatistics.getRoomNum() + "瀹�");
- } else if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(reportFeeMonthStatistics.getPayerObjType())) {
- reportFeeMonthStatistics.setObjName(reportFeeMonthStatistics.getCarNum());
- } else {
- reportFeeMonthStatistics.setObjName(reportFeeMonthStatistics.getContractCode());
-
- }
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getImportFeeName())) {
- reportFeeMonthStatistics.setFeeName(reportFeeMonthStatistics.getImportFeeName());
- }
- //璐圭敤椤圭洰
- reportFeeMonthStatistics.setFeeConfigDtos(feeConfigDtos);
- if (!StringUtil.isEmpty(reportFeeMonthStatistics.getRepairId())) {
- RepairDto repairDto = new RepairDto();
- repairDto.setRepairId(reportFeeMonthStatistics.getRepairId());
- //鏌ヨ鎶ヤ慨鍗�
- List<RepairDto> repairDtos = repairInnerServiceSMOImpl.queryRepairs(repairDto);
- //Assert.listOnlyOne(repairDtos, "鏌ヨ鎶ヤ慨鍗曢敊璇紒");
- if (repairDtos != null && repairDtos.size() == 1) {
- if (!StringUtil.isEmpty(repairDtos.get(0).getRepairObjType()) && repairDtos.get(0).getRepairObjType().equals("004")) {
- OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
- ownerRoomRelDto.setRoomId(repairDtos.get(0).getRepairObjId());
- List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
- if (ownerRoomRelDtos != null && ownerRoomRelDtos.size() == 0) { //鏌ヨ鏉℃暟涓�0鏉�
- OwnerRoomRelDto ownerRoomRel = new OwnerRoomRelDto();
- ownerRoomRel.setRoomId(repairDtos.get(0).getRepairObjId());
- ownerRoomRel.setStatusCd("1"); //鐪嬬湅涓氫富鎴垮眿鍏崇郴鏁版嵁鏄惁鍒犻櫎浜�
- List<OwnerRoomRelDto> ownerRoomRels = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRel);
- Assert.listOnlyOne(ownerRoomRels, "鏌ヨ涓氫富鎴垮眿鍏崇郴琛ㄩ敊璇紒");
- OwnerDto owner = new OwnerDto();
- owner.setOwnerId(ownerRoomRels.get(0).getOwnerId());
- owner.setOwnerTypeCd("1001"); //涓氫富鏈汉
- List<OwnerDto> owners = ownerInnerServiceSMOImpl.queryOwners(owner);
- if (owners != null && owners.size() == 0) { //鏌ュ嚭鏉℃暟涓�0鏉�
- //鍒ゆ柇涓氫富鏄惁鍒犻櫎浜�
- OwnerDto newOwner = new OwnerDto();
- newOwner.setOwnerId(ownerRoomRels.get(0).getOwnerId());
- newOwner.setOwnerTypeCd("1001"); //涓氫富鏈汉
- newOwner.setStatusCd("1");
- List<OwnerDto> newOwners = ownerInnerServiceSMOImpl.queryOwners(newOwner);
- Assert.listOnlyOne(newOwners, "鏌ヨ涓氫富淇℃伅閿欒锛�");
- reportFeeMonthStatistics.setOwnerName(newOwners.get(0).getName());
- } else if (owners != null && owners.size() == 1) { //鏌ュ嚭鏉℃暟涓�1鏉�
- reportFeeMonthStatistics.setOwnerName(owners.get(0).getName());
- } else {
- throw new IllegalArgumentException("鏌ヨ涓氫富淇℃伅閿欒锛�");
- }
- } else if (ownerRoomRelDtos != null && ownerRoomRelDtos.size() == 1) { //鏌ヨ鏉℃暟涓�1鏉�
- OwnerDto ownerDto = new OwnerDto();
- ownerDto.setOwnerId(ownerRoomRelDtos.get(0).getOwnerId());
- ownerDto.setOwnerTypeCd("1001"); //涓氫富鏈汉
- List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
- if (ownerDtos != null && ownerDtos.size() == 0) { //涓氫富鏌ヨ鏉℃暟涓�0鏉�
- //鍒ゆ柇涓氫富鏄惁鍒犻櫎浜�
- OwnerDto newOwner = new OwnerDto();
- newOwner.setOwnerId(ownerRoomRelDtos.get(0).getOwnerId());
- newOwner.setOwnerTypeCd("1001"); //涓氫富鏈汉
- newOwner.setStatusCd("1");
- List<OwnerDto> newOwners = ownerInnerServiceSMOImpl.queryOwners(newOwner);
- Assert.listOnlyOne(newOwners, "鏌ヨ涓氫富淇℃伅閿欒锛�");
- reportFeeMonthStatistics.setOwnerName(newOwners.get(0).getName());
- } else if (ownerDtos != null || ownerDtos.size() == 1) {
- reportFeeMonthStatistics.setOwnerName(ownerDtos.get(0).getName());
- } else {
- throw new IllegalArgumentException("鏌ヨ涓氫富淇℃伅閿欒锛�");
- }
- } else {
- throw new IllegalArgumentException("鏌ヨ涓氫富鎴垮眿鍏崇郴琛ㄩ敊璇紒");
- }
- }
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountPrice()) && !StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType())
+ && reportFeeMonthStatistics.getDiscountSmallType().equals("6")) {
+ //璧犻�侀噾棰�
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalGiftAmount = totalGiftAmount + discountPrice;
+ //璧犻�侀噾棰�
+ reportFeeMonthStatisticsPrepayment.setGiftAmount(reportFeeMonthStatistics.getDiscountPrice());
+ } else if (StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getGiftAmount())) {
+ reportFeeMonthStatisticsPrepayment.setGiftAmount("0");
}
}
- if (!hasInReportListAndMerge(reportList, reportFeeMonthStatistics)) {
- reportList.add(reportFeeMonthStatistics);
- }
+ //璐圭敤椤圭洰
+ reportFeeMonthStatisticsPrepayment.setFeeConfigDtos(feeConfigDtos);
+ reportList.add(reportFeeMonthStatisticsPrepayment);
}
-
- //濡傛灉鏄溅浣嶅埛鎴垮眿淇℃伅
- if (ownerIds.size() > 0) {
- refreshReportFeeMonthStatistics(ownerIds, reportFeeMonthStatisticsDtos);
- }
-
//搴旀敹鎬婚噾棰�(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount));
//瀹炴敹閲戦(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount));
+ //娆犺垂閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalOweAmount(String.format("%.2f", totalOweAmount));
+ //搴旂即閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalPayableAmount(String.format("%.2f", totalPayableAmount));
//浼樻儬閲戦(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalPreferentialAmount(String.format("%.2f", totalPreferentialAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalPreferentialAmount(String.format("%.2f", totalPreferentialAmount));
//鍑忓厤閲戦(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalDeductionAmount(String.format("%.2f", totalDeductionAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalDeductionAmount(String.format("%.2f", totalDeductionAmount));
//婊炵撼閲�(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalLateFee(String.format("%.2f", totalLateFee));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalLateFee(String.format("%.2f", totalLateFee));
//绌虹疆鎴挎墦鎶�(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalVacantHousingDiscount(String.format("%.2f", totalVacantHousingDiscount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalVacantHousingDiscount(String.format("%.2f", totalVacantHousingDiscount));
//绌虹疆鎴垮噺鍏�(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalVacantHousingReduction(String.format("%.2f", totalVacantHousingReduction));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalVacantHousingReduction(String.format("%.2f", totalVacantHousingReduction));
//璧犻�佽鍒欓噾棰�(灏忚)
- reportFeeMonthStatisticsTotalDto.setTotalGiftAmount(String.format("%.2f", totalGiftAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setTotalGiftAmount(String.format("%.2f", totalGiftAmount));
//搴旀敹閲戦(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+ //娆犺垂閲戦(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllOweAmount(String.format("%.2f", allOweAmount));
+ //娆犺垂閲戦(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllPayableAmount(String.format("%.2f", allPayableAmount));
//瀹炴敹閲戦(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
//浼樻儬閲戦(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllPreferentialAmount(String.format("%.2f", allPreferentialAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllPreferentialAmount(String.format("%.2f", allPreferentialAmount));
//鍑忓厤閲戦(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllDeductionAmount(String.format("%.2f", allDeductionAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllDeductionAmount(String.format("%.2f", allDeductionAmount));
//婊炵撼閲�(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllLateFee(String.format("%.2f", allLateFee));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllLateFee(String.format("%.2f", allLateFee));
//绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllVacantHousingDiscount(String.format("%.2f", allVacantHousingDiscount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllVacantHousingDiscount(String.format("%.2f", allVacantHousingDiscount));
//绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllVacantHousingReduction(String.format("%.2f", allVacantHousingReduction));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllVacantHousingReduction(String.format("%.2f", allVacantHousingReduction));
//璧犻�佽鍒欓噾棰�(澶ц)
- reportFeeMonthStatisticsTotalDto.setAllGiftAmount(String.format("%.2f", allGiftAmount));
+ reportFeeMonthStatisticsPrepaymentTotalDto.setAllGiftAmount(String.format("%.2f", allGiftAmount));
} else {
- reportFeeMonthStatisticsDtos = new ArrayList<>();
- reportList.addAll(reportFeeMonthStatisticsDtos);
- reportFeeMonthStatisticsTotalDto = new ReportFeeMonthStatisticsTotalDto();
+ reportFeeMonthStatisticsPrepaymentDtos = new ArrayList<>();
+ reportList.addAll(reportFeeMonthStatisticsPrepaymentDtos);
+ reportFeeMonthStatisticsPrepaymentTotalDto = new ReportFeeMonthStatisticsPrepaymentTotalDto();
}
-
- ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportList, reportFeeMonthStatisticsTotalDto);
-
+// count = reportList.size();
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsPrepaymentDto.getRow()), count, reportList, reportFeeMonthStatisticsPrepaymentTotalDto);
return resultVo;
}
- /**
- * @param ownerIds
- * @param reportFeeMonthStatisticsDtos
- */
- private void refreshReportFeeMonthStatistics(List<String> ownerIds, List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos) {
-
- if (ownerIds == null || ownerIds.size() < 1) {
- return;
- }
-
- OwnerDto ownerDto = new OwnerDto();
- ownerDto.setOwnerIds(ownerIds.toArray(new String[ownerIds.size()]));
- List<OwnerDto> ownerDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRoomAndParkingSpace(ownerDto);
- String objName = "";
- for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
- if (!FeeDto.PAYER_OBJ_TYPE_CAR.equals(reportFeeMonthStatisticsDto.getPayerObjType())) {
- continue;
- }
- for (OwnerDto ownerDto1 : ownerDtos) {
- if (!StringUtil.isEmpty(reportFeeMonthStatisticsDto.getOwnerId()) && !reportFeeMonthStatisticsDto.getOwnerId().equals(ownerDto1.getOwnerId())) {
+ @Override
+ public ResultVo queryReportCollectFees(@RequestBody ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepaymentDto) {
+ ReportFeeMonthStatisticsPrepaymentDto feeMonthStatisticsPrepayment = BeanConvertUtil.covertBean(reportFeeMonthStatisticsPrepaymentDto, ReportFeeMonthStatisticsPrepaymentDto.class);
+ //鏌ヨ棰勪粯鏈熻处鍗曟姤琛ㄧ殑璐圭敤椤筩onfigId
+ List<ReportFeeMonthStatisticsPrepaymentDto> configIds = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPrepaymentConfigs(feeMonthStatisticsPrepayment);
+ int count = configIds.size();
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportList = new ArrayList<>();
+ //鏌ヨ璇ュ皬鍖轰笅鐨勮垂鐢ㄩ」鐩�
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(reportFeeMonthStatisticsPrepaymentDto.getCommunityId());
+ if (count > 0) {
+ for (ReportFeeMonthStatisticsPrepaymentDto feeMonthStatisticsPrepaymentDto : configIds) {
+ reportFeeMonthStatisticsPrepaymentDto.setConfigId(feeMonthStatisticsPrepaymentDto.getConfigId());
+ if (reportFeeMonthStatisticsPrepaymentDto.getPage() == 0) {
+ reportFeeMonthStatisticsPrepaymentDto.setPage(1);
+ }
+ //鏌ヨ缂磋垂鏄庣粏
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentDtos = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPayFeeDetailPrepayment(reportFeeMonthStatisticsPrepaymentDto);
+ if (reportFeeMonthStatisticsPrepaymentDtos == null || reportFeeMonthStatisticsPrepaymentDtos.size() < 1) {
continue;
}
- objName = reportFeeMonthStatisticsDto.getObjName() + "(" + ownerDto1.getFloorNum() + "鏍�" + ownerDto1.getUnitNum() + "鍗曞厓" + ownerDto1.getRoomNum() + "瀹�)";
- reportFeeMonthStatisticsDto.setObjName(objName);
- }
- }
- }
-
-
- private boolean hasInReportListAndMerge(List<ReportFeeMonthStatisticsDto> reportList, ReportFeeMonthStatisticsDto reportFeeMonthStatistics) {
- for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportList) {
- if (reportFeeMonthStatisticsDto.getDetailId().equals(reportFeeMonthStatistics.getDetailId())) {
- combineSydwCore(reportFeeMonthStatistics, reportFeeMonthStatisticsDto);
- return true;
- }
- }
- return false;
- }
-
- //閽堝鎵�鐢ㄥ璞�
- private static ReportFeeMonthStatisticsDto combineSydwCore(ReportFeeMonthStatisticsDto sourceBean, ReportFeeMonthStatisticsDto targetBean) {
- Class sourceBeanClass = sourceBean.getClass();
- Class targetBeanClass = targetBean.getClass();
- Field[] sourceFields = sourceBeanClass.getDeclaredFields();
- Field[] targetFields = sourceBeanClass.getDeclaredFields();
- for (int i = 0; i < sourceFields.length; i++) {
- Field sourceField = sourceFields[i];
- Field targetField = targetFields[i];
- sourceField.setAccessible(true);
- targetField.setAccessible(true);
- try {
- if (!(sourceField.get(sourceBean) == null)) {
- targetField.set(targetBean, sourceField.get(sourceBean));
+ //鏌ヨ搴旀敹銆佸疄鏀舵�婚噾棰�(澶ц)
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentList = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPayFeeDetailPrepayment(reportFeeMonthStatisticsPrepaymentDto);
+ //鏌ヨ(浼樻儬銆佸噺鍏嶃�佹粸绾抽噾銆佺┖缃埧鎵撴姌銆佺┖缃埧鍑忓厤閲戦绛�)澶ц鎬婚噾棰�
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentSum = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryPayFeeDetailPrepaymentSum(reportFeeMonthStatisticsPrepaymentDto);
+ //搴旀敹鎬婚噾棰�(澶ц)
+ Double allReceivableAmount = 0.0;
+ //瀹炴敹閲戦(澶ц)
+ Double allReceivedAmount = 0.0;
+ //浼樻儬閲戦(澶ц)
+ Double allPreferentialAmount = 0.0;
+ //鍑忓厤閲戦(澶ц)
+ Double allDeductionAmount = 0.0;
+ //婊炵撼閲�(澶ц)
+ Double allLateFee = 0.0;
+ //绌虹疆鎴挎墦鎶�(澶ц)
+ Double allVacantHousingDiscount = 0.0;
+ //绌虹疆鎴垮噺鍏�(澶ц)
+ Double allVacantHousingReduction = 0.0;
+ //璧犻�侀噾棰�(澶ц)
+ Double allGiftAmount = 0.0;
+ //娆犺垂閲戦(澶ц)
+ Double allOweAmount = 0.0;
+ //搴旂即閲戦(澶ц)
+ Double allPayableAmount = 0.0;
+ allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllReceivableAmount());
+ allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllReceivedAmount());
+ allOweAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllOweAmount());
+ allPayableAmount = Double.valueOf(reportFeeMonthStatisticsPrepaymentList.get(0).getAllPayableAmount());
+ for (ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepayment : reportFeeMonthStatisticsPrepaymentSum) {
+ //杩欓噷鏄煡璇㈠嚭鐨勯噾棰濇�诲拰
+ String discountPrice = reportFeeMonthStatisticsPrepayment.getDiscountPrice();
+ // discountSmallType 1: 鎵撴姌 2:鍑忓厤 3:婊炵撼閲� 4:绌虹疆鎴挎墦鎶� 5:绌虹疆鎴垮噺鍏� 6:璧犻��
+ //浼樻儬閲戦(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("1")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allPreferentialAmount = allPreferentialAmount + aDouble;
+ }
+ //鍑忓厤閲戦(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("2")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allDeductionAmount = allDeductionAmount + aDouble;
+ }
+ //婊炵撼閲�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("3")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allLateFee = allLateFee + aDouble;
+ }
+ //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("4")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allVacantHousingDiscount = allVacantHousingDiscount + aDouble;
+ }
+ //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("5")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allVacantHousingReduction = allVacantHousingReduction + aDouble;
+ }
+ //璧犻�侀噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(reportFeeMonthStatisticsPrepayment.getDiscountSmallType()) && reportFeeMonthStatisticsPrepayment.getDiscountSmallType().equals("6")) {
+ Double aDouble = Double.valueOf(discountPrice);
+ allGiftAmount = allGiftAmount + aDouble;
+ }
}
- } catch (IllegalArgumentException | IllegalAccessException e) {
- e.printStackTrace();
+ ReportFeeMonthStatisticsPrepaymentDto feeMonthStatistics = new ReportFeeMonthStatisticsPrepaymentDto();
+ //璐圭敤鍚嶇О
+ feeMonthStatistics.setFeeName(reportFeeMonthStatisticsPrepaymentDtos.get(0).getFeeName());
+ feeMonthStatistics.setFeeTypeCd(reportFeeMonthStatisticsPrepaymentDtos.get(0).getFeeTypeCd());
+ feeMonthStatistics.setFeeTypeCdName(reportFeeMonthStatisticsPrepaymentDtos.get(0).getFeeTypeCdName());
+ //搴旀敹閲戦(澶ц)
+ feeMonthStatistics.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+ //娆犺垂閲戦(澶ц)
+ feeMonthStatistics.setAllOweAmount(String.format("%.2f", allOweAmount));
+ //搴旂即閲戦(澶ц)
+ feeMonthStatistics.setAllPayableAmount(String.format("%.2f", allPayableAmount));
+ //瀹炴敹閲戦(澶ц)
+ feeMonthStatistics.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
+ //浼樻儬閲戦(澶ц)
+ feeMonthStatistics.setAllPreferentialAmount(String.format("%.2f", allPreferentialAmount));
+ //鍑忓厤閲戦(澶ц)
+ feeMonthStatistics.setAllDeductionAmount(String.format("%.2f", allDeductionAmount));
+ //婊炵撼閲�(澶ц)
+ feeMonthStatistics.setAllLateFee(String.format("%.2f", allLateFee));
+ //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ feeMonthStatistics.setAllVacantHousingDiscount(String.format("%.2f", allVacantHousingDiscount));
+ //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ feeMonthStatistics.setAllVacantHousingReduction(String.format("%.2f", allVacantHousingReduction));
+ //璧犻�佽鍒欓噾棰�(澶ц)
+ feeMonthStatistics.setAllGiftAmount(String.format("%.2f", allGiftAmount));
+ reportList.add(feeMonthStatistics);
}
+ } else {
+ reportList = new ArrayList<>();
}
- return targetBean;
+ //鑾峰彇鏀惰垂鐘跺喌琛ㄥぇ璁°�佸皬璁�
+ ReportFeeMonthStatisticsPrepaymentTotalDto reportFeeMonthStatisticsPrepaymentTotal = getReportFeeMonthStatisticsPrepaymentTotal(feeMonthStatisticsPrepayment);
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsPrepaymentDto.getRow()), count, reportList, reportFeeMonthStatisticsPrepaymentTotal);
+ return resultVo;
}
+
+ //鑾峰彇鏀惰垂鐘跺喌琛ㄥぇ璁°�佸皬璁�
+ private ReportFeeMonthStatisticsPrepaymentTotalDto getReportFeeMonthStatisticsPrepaymentTotal(ReportFeeMonthStatisticsPrepaymentDto reportFeeMonthStatisticsPrepaymentDto) {
+ ReportFeeMonthStatisticsPrepaymentTotalDto reportFeeMonthStatisticsPrepaymentTotal = new ReportFeeMonthStatisticsPrepaymentTotalDto();
+ //鏌ヨ搴旂即銆佸簲鏀躲�佸疄鏀躲�佹瑺璐归噾棰�(灏忚)
+ if (reportFeeMonthStatisticsPrepaymentDto.getPage() == 0) {
+ reportFeeMonthStatisticsPrepaymentDto.setPage(1);
+ }
+ List<ReportFeeMonthStatisticsPrepaymentDto> feeMonthStatisticsPrepaymentDtos = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPrepaymentConfigs(reportFeeMonthStatisticsPrepaymentDto);
+ if (feeMonthStatisticsPrepaymentDtos != null && feeMonthStatisticsPrepaymentDtos.size() == 1) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalPayableAmount(feeMonthStatisticsPrepaymentDtos.get(0).getAllPayableAmount()); //搴旂即閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalReceivableAmount(feeMonthStatisticsPrepaymentDtos.get(0).getAllReceivableAmount()); //搴旀敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalReceivedAmount(feeMonthStatisticsPrepaymentDtos.get(0).getAllReceivedAmount()); //瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalOweAmount(feeMonthStatisticsPrepaymentDtos.get(0).getAllOweAmount()); //娆犺垂閲戦(灏忚)
+ } else {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalPayableAmount("0.0"); //搴旂即閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalReceivableAmount("0.0"); //搴旀敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalReceivedAmount("0.0"); //瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalOweAmount("0.0"); //娆犺垂閲戦(灏忚)
+ }
+ //鏌ヨ搴旂即銆佸簲鏀躲�佸疄鏀躲�佹瑺璐归噾棰�(澶ц)
+ reportFeeMonthStatisticsPrepaymentDto.setPage(PageDto.DEFAULT_PAGE);
+ List<ReportFeeMonthStatisticsPrepaymentDto> feeMonthStatisticsPrepayments = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPrepaymentConfigs(reportFeeMonthStatisticsPrepaymentDto);
+ if (feeMonthStatisticsPrepayments != null && feeMonthStatisticsPrepayments.size() == 1) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllPayableAmount(feeMonthStatisticsPrepayments.get(0).getAllPayableAmount()); //搴旂即閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllReceivableAmount(feeMonthStatisticsPrepayments.get(0).getAllReceivableAmount()); //搴旀敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllReceivedAmount(feeMonthStatisticsPrepayments.get(0).getAllReceivedAmount()); //瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllOweAmount(feeMonthStatisticsPrepayments.get(0).getAllOweAmount()); //娆犺垂閲戦(灏忚)
+ } else {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllPayableAmount("0.0"); //搴旂即閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllReceivableAmount("0.0"); //搴旀敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllReceivedAmount("0.0"); //瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllOweAmount("0.0"); //娆犺垂閲戦(灏忚)
+ }
+ //鏌ヨ浼樻儬銆佽繚绾﹂噾棰�(灏忚)
+ if (reportFeeMonthStatisticsPrepaymentDto.getPage() == 0) {
+ reportFeeMonthStatisticsPrepaymentDto.setPage(1);
+ }
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepayments = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPrepaymentDiscounts(reportFeeMonthStatisticsPrepaymentDto);
+ if (reportFeeMonthStatisticsPrepayments != null && reportFeeMonthStatisticsPrepayments.size() > 0) {
+ for (ReportFeeMonthStatisticsPrepaymentDto feeMonthStatisticsPrepayment : reportFeeMonthStatisticsPrepayments) {
+ //鑾峰彇鎶樻墸绫诲瀷
+ String discountSmallType = feeMonthStatisticsPrepayment.getDiscountSmallType();
+ //鑾峰彇鎶樻墸閲戦
+ String discountPrice = feeMonthStatisticsPrepayment.getDiscountPrice();
+ // discountSmallType 1: 鎵撴姌 2:鍑忓厤 3:婊炵撼閲� 4:绌虹疆鎴挎墦鎶� 5:绌虹疆鎴垮噺鍏� 6:璧犻��
+ //浼樻儬閲戦(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("1")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalPreferentialAmount(discountPrice); //浼樻儬閲戦(灏忚)
+ }
+ //鍑忓厤閲戦(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("2")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalDeductionAmount(discountPrice); //鍑忓厤閲戦(灏忚)
+ }
+ //婊炵撼閲�(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("3")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalLateFee(discountPrice); //婊炵撼閲�(灏忚)
+ }
+ //绌虹疆鎴挎墦鎶橀噾棰�(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("4")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalVacantHousingDiscount(discountPrice); //绌虹疆鎴挎墦鎶橀噾棰�(灏忚)
+ }
+ //绌虹疆鎴垮噺鍏嶉噾棰�(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("5")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalVacantHousingReduction(discountPrice); //绌虹疆鎴垮噺鍏嶉噾棰�(灏忚)
+ }
+ //璧犻�侀噾棰�(灏忚)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("6")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalGiftAmount(discountPrice); //璧犻�侀噾棰�(灏忚)
+ }
+ }
+ } else {
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalPreferentialAmount("0.0"); //浼樻儬閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalDeductionAmount("0.0"); //鍑忓厤閲戦(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalLateFee("0.0"); //婊炵撼閲�(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalVacantHousingDiscount("0.0"); //绌虹疆鎴挎墦鎶橀噾棰�(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalVacantHousingReduction("0.0"); //绌虹疆鎴垮噺鍏嶉噾棰�(灏忚)
+ reportFeeMonthStatisticsPrepaymentTotal.setTotalGiftAmount("0.0"); //璧犻�侀噾棰�(灏忚)
+ }
+ //鏌ヨ浼樻儬銆佽繚绾﹂噾棰�(澶ц)
+ reportFeeMonthStatisticsPrepaymentDto.setPage(PageDto.DEFAULT_PAGE);
+ List<ReportFeeMonthStatisticsPrepaymentDto> reportFeeMonthStatisticsPrepaymentDtos = reportFeeMonthStatisticsPrepaymentInnerServiceSMOImpl.queryAllPrepaymentDiscounts(reportFeeMonthStatisticsPrepaymentDto);
+ if (reportFeeMonthStatisticsPrepaymentDtos != null && reportFeeMonthStatisticsPrepaymentDtos.size() > 0) {
+ for (ReportFeeMonthStatisticsPrepaymentDto feeMonthStatisticsPrepaymentDto : reportFeeMonthStatisticsPrepaymentDtos) {
+ //鑾峰彇鎶樻墸绫诲瀷
+ String discountSmallType = feeMonthStatisticsPrepaymentDto.getDiscountSmallType();
+ //鑾峰彇鎶樻墸閲戦
+ String discountPrice = feeMonthStatisticsPrepaymentDto.getDiscountPrice();
+ // discountSmallType 1: 鎵撴姌 2:鍑忓厤 3:婊炵撼閲� 4:绌虹疆鎴挎墦鎶� 5:绌虹疆鎴垮噺鍏� 6:璧犻��
+ //浼樻儬閲戦(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("1")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllPreferentialAmount(discountPrice); //浼樻儬閲戦(澶ц)
+ }
+ //鍑忓厤閲戦(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("2")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllDeductionAmount(discountPrice); //鍑忓厤閲戦(澶ц)
+ }
+ //婊炵撼閲�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("3")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllLateFee(discountPrice); //婊炵撼閲�(澶ц)
+ }
+ //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("4")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllVacantHousingDiscount(discountPrice); //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ }
+ //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("5")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllVacantHousingReduction(discountPrice); //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ }
+ //璧犻�侀噾棰�(澶ц)
+ if (!StringUtil.isEmpty(discountPrice) && !StringUtil.isEmpty(discountSmallType) && discountSmallType.equals("6")) {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllGiftAmount(discountPrice); //璧犻�侀噾棰�(澶ц)
+ }
+ }
+ } else {
+ reportFeeMonthStatisticsPrepaymentTotal.setAllPreferentialAmount("0.0"); //浼樻儬閲戦(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllDeductionAmount("0.0"); //鍑忓厤閲戦(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllLateFee("0.0"); //婊炵撼閲�(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllVacantHousingDiscount("0.0"); //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllVacantHousingReduction("0.0"); //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ reportFeeMonthStatisticsPrepaymentTotal.setAllGiftAmount("0.0"); //璧犻�侀噾棰�(澶ц)
+ }
+ return reportFeeMonthStatisticsPrepaymentTotal;
+ }
+
+
}
--
Gitblit v1.8.0