From 8b7ea207f4ee4e7ef6e0d518c06f4a4581850675 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 03 五月 2021 19:54:28 +0800
Subject: [PATCH] 暂存代码
---
service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java | 496 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 490 insertions(+), 6 deletions(-)
diff --git a/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java b/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
old mode 100644
new mode 100755
index 3ef801b..e4866c6
--- a/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
+++ b/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
@@ -1,10 +1,16 @@
package com.java110.report.bmo.reportFeeMonthStatistics.impl;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.dto.RoomDto;
+import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.fee.FeeDto;
+import com.java110.dto.repair.RepairUserDto;
import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
-import com.java110.intf.IReportFeeMonthStatisticsInnerServiceSMO;
+import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsTotalDto;
+import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
import com.java110.report.bmo.reportFeeMonthStatistics.IGetReportFeeMonthStatisticsBMO;
import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -96,7 +102,18 @@
reportFeeMonthStatisticsDtos = new ArrayList<>();
}
- ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos);
+ //鏌ヨ璇ュ皬鍖轰笅鐨勮垂鐢ㄩ」鐩�
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(reportFeeMonthStatisticsDto.getCommunityId());
+ List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+
+ List<ReportFeeMonthStatisticsDto> reportList = new ArrayList<>();
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+ reportFeeMonthStatistics.setFeeConfigDtos(feeConfigDtos);
+ reportList.add(reportFeeMonthStatistics);
+ }
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportList);
ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
@@ -108,13 +125,48 @@
int count = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeDetailCount(reportFeeMonthStatisticsDto);
List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
+ //搴旀敹鎬婚噾棰�(澶ц)
+ Double allReceivableAmount = 0.0;
+ //瀹炴敹閲戦(澶ц)
+ Double allReceivedAmount = 0.0;
if (count > 0) {
reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeDetail(reportFeeMonthStatisticsDto);
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryAllFeeDetail(reportFeeMonthStatisticsDto);
+ allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivableAmount());
+ allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivedAmount());
} else {
reportFeeMonthStatisticsDtos = new ArrayList<>();
}
- ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos);
+ //搴旀敹鎬婚噾棰�(灏忚)
+ Double totalReceivableAmount = 0.0;
+ //瀹炴敹鎬婚噾棰�(灏忚)
+ Double totalReceivedAmount = 0.0;
+ List<ReportFeeMonthStatisticsDto> reportList = new ArrayList<>();
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+ //搴旀敹閲戦
+ Double receivableAmount = Double.valueOf(reportFeeMonthStatistics.getReceivableAmount());
+ //瀹炴敹閲戦
+ Double receivedAmount = Double.valueOf(reportFeeMonthStatistics.getReceivedAmount());
+ totalReceivableAmount = totalReceivableAmount + receivableAmount;
+ totalReceivedAmount = totalReceivedAmount + receivedAmount;
+ }
+
+ //鏌ヨ璇ュ皬鍖轰笅鐨勮垂鐢ㄩ」鐩�
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(reportFeeMonthStatisticsDto.getCommunityId());
+ List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+ reportFeeMonthStatistics.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount));
+ reportFeeMonthStatistics.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount));
+ reportFeeMonthStatistics.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+ reportFeeMonthStatistics.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
+ reportFeeMonthStatistics.setFeeConfigDtos(feeConfigDtos);
+ reportList.add(reportFeeMonthStatistics);
+ }
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportList);
ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
@@ -142,6 +194,219 @@
}
@Override
+ public ResponseEntity<String> queryPayFeeDetail(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<>();
+ //鏌ヨ璇ュ皬鍖轰笅鐨勮垂鐢ㄩ」鐩�
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(reportFeeMonthStatisticsDto.getCommunityId());
+ List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+ //搴旀敹鎬婚噾棰�(澶ц)
+ 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;
+ if (count > 0) {
+ //鏌ヨ缂磋垂鏄庣粏
+ reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetail(reportFeeMonthStatisticsDto);
+ //鏌ヨ搴旀敹銆佸疄鏀舵�婚噾棰�(澶ц)
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryAllPayFeeDetail(reportFeeMonthStatisticsDto);
+ //鏌ヨ(浼樻儬銆佸噺鍏嶃�佹粸绾抽噾銆佺┖缃埧鎵撴姌銆佺┖缃埧鍑忓厤閲戦绛�)澶ц鎬婚噾棰�
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsSum = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDetailSum(reportFeeMonthStatisticsDto);
+ allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivableAmount());
+ allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivedAmount());
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsSum) {
+ //杩欓噷鏄煡璇㈠嚭鐨勯噾棰濇�诲拰
+ String discountPrice = reportFeeMonthStatistics.getDiscountPrice();
+ //浼樻儬閲戦(澶ц)
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("1")) {
+ allPreferentialAmount = Double.valueOf(discountPrice);
+ }
+ //鍑忓厤閲戦(澶ц)
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("2")) {
+ allDeductionAmount = Double.valueOf(discountPrice);
+ }
+ //婊炵撼閲�(澶ц)
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
+ allLateFee = Double.valueOf(discountPrice);
+ }
+ //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("4")) {
+ allVacantHousingDiscount = Double.valueOf(discountPrice);
+ }
+ //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("5")) {
+ allVacantHousingReduction = Double.valueOf(discountPrice);
+ }
+ }
+ //搴旀敹鎬婚噾棰�(灏忚)
+ Double totalReceivableAmount = 0.0;
+ //瀹炴敹鎬婚噾棰�(灏忚)
+ Double totalReceivedAmount = 0.0;
+ //浼樻儬閲戦(灏忚)
+ Double totalPreferentialAmount = 0.0;
+ //鍑忓厤閲戦(灏忚)
+ Double totalDeductionAmount = 0.0;
+ //绌虹疆鎴挎墦鎶橀噾棰�(灏忚)
+ Double totalVacantHousingDiscount = 0.0;
+ //绌虹疆鎴垮噺鍏嶉噾棰�(灏忚)
+ Double totalVacantHousingReduction = 0.0;
+ //婊炵撼閲�(灏忚)
+ Double totalLateFee = 0.0;
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+ //搴旀敹閲戦
+ Double receivableAmount = Double.valueOf(reportFeeMonthStatistics.getReceivableAmount());
+ //瀹炴敹閲戦
+ Double receivedAmount = Double.valueOf(reportFeeMonthStatistics.getReceivedAmount());
+ totalReceivableAmount = totalReceivableAmount + receivableAmount;
+ totalReceivedAmount = totalReceivedAmount + receivedAmount;
+ //浼樻儬閲戦
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("1")) {
+ //鑾峰彇浼樻儬閲戦
+ Double discountPrice = Double.valueOf(reportFeeMonthStatistics.getDiscountPrice());
+ totalPreferentialAmount = totalPreferentialAmount + discountPrice;
+ //浼樻儬閲戦
+ 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;
+ //鍑忓厤閲戦
+ reportFeeMonthStatistics.setDeductionAmount(reportFeeMonthStatistics.getDiscountPrice());
+ } else {
+ reportFeeMonthStatistics.setDeductionAmount("0");
+ }
+ //婊炵撼閲�
+ if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
+ //鑾峰彇婊炵撼閲戦噾棰�
+ Double discountPrice = (Double.valueOf(reportFeeMonthStatistics.getDiscountPrice())) * (-1);
+ totalLateFee = totalLateFee + discountPrice;
+ //婊炵撼閲�
+ 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;
+ //绌虹疆鎴挎墦鎶�
+ 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;
+ //绌虹疆鎴垮噺鍏�
+ reportFeeMonthStatistics.setVacantHousingReduction(reportFeeMonthStatistics.getDiscountPrice());
+ } else {
+ reportFeeMonthStatistics.setVacantHousingReduction("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);
+ reportList.add(reportFeeMonthStatistics);
+ }
+ //搴旀敹鎬婚噾棰�(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount));
+ //瀹炴敹閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount));
+ //浼樻儬閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalPreferentialAmount(String.valueOf(totalPreferentialAmount));
+ //鍑忓厤閲戦(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalDeductionAmount(String.valueOf(totalDeductionAmount));
+ //婊炵撼閲�(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalLateFee(String.valueOf(totalLateFee));
+ //绌虹疆鎴挎墦鎶�(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalVacantHousingDiscount(String.valueOf(totalVacantHousingDiscount));
+ //绌虹疆鎴垮噺鍏�(灏忚)
+ reportFeeMonthStatisticsTotalDto.setTotalVacantHousingReduction(String.valueOf(totalVacantHousingReduction));
+ //搴旀敹閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+ //瀹炴敹閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
+ //浼樻儬閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllPreferentialAmount(String.valueOf(allPreferentialAmount));
+ //鍑忓厤閲戦(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllDeductionAmount(String.valueOf(allDeductionAmount));
+ //婊炵撼閲�(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllLateFee(String.valueOf(allLateFee));
+ //绌虹疆鎴挎墦鎶橀噾棰�(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllVacantHousingDiscount(String.valueOf(allVacantHousingDiscount));
+ //绌虹疆鎴垮噺鍏嶉噾棰�(澶ц)
+ reportFeeMonthStatisticsTotalDto.setAllVacantHousingReduction(String.valueOf(allVacantHousingReduction));
+ } else {
+ reportFeeMonthStatisticsDtos = new ArrayList<>();
+ reportList.addAll(reportFeeMonthStatisticsDtos);
+ reportFeeMonthStatisticsTotalDto = new ReportFeeMonthStatisticsTotalDto();
+ }
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportList, reportFeeMonthStatisticsTotalDto);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ @Override
+ public ResponseEntity<String> queryDeadlineFee(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+ int count = reportFeeMonthStatisticsInnerServiceSMOImpl.queryDeadlineFeeCount(reportFeeMonthStatisticsDto);
+
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
+ if (count > 0) {
+ reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryDeadlineFee(reportFeeMonthStatisticsDto);
+
+ freshReportDeadlineDay(reportFeeMonthStatisticsDtos);
+ } else {
+ reportFeeMonthStatisticsDtos = new ArrayList<>();
+ }
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ @Override
public ResponseEntity<String> queryPrePaymentCount(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
@@ -149,6 +414,209 @@
reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPrePaymentCount(reportFeeMonthStatisticsDto);
ResultVo resultVo = new ResultVo(reportFeeMonthStatisticsDtos);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ @Override
+ public ResponseEntity<String> queryDeadlinePaymentCount(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
+
+ reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryDeadlinePaymentCount(reportFeeMonthStatisticsDto);
+
+ ResultVo resultVo = new ResultVo(reportFeeMonthStatisticsDtos);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ @Override
+ public ResponseEntity<String> queryOwePaymentCount(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+
+ List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
+ List<ReportFeeMonthStatisticsDto> reportAllFeeMonthStatisticsDtos = null;
+
+ reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryOwePaymentCount(reportFeeMonthStatisticsDto);
+
+ reportAllFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryAllPaymentCount(reportFeeMonthStatisticsDto);
+ int normalFee = 0;
+ for (ReportFeeMonthStatisticsDto aReportFeeMonthStatisticsDto : reportAllFeeMonthStatisticsDtos) {
+ for (ReportFeeMonthStatisticsDto oweReportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ String objCount = aReportFeeMonthStatisticsDto.getObjCount();
+ if (aReportFeeMonthStatisticsDto.getFeeName().equals(oweReportFeeMonthStatisticsDto.getFeeName())) {
+ aReportFeeMonthStatisticsDto.setObjCount(oweReportFeeMonthStatisticsDto.getObjCount());
+ normalFee = Integer.parseInt(objCount) - Integer.parseInt(oweReportFeeMonthStatisticsDto.getObjCount());
+ aReportFeeMonthStatisticsDto.setNormalCount(normalFee + "");
+ }
+ }
+ }
+
+
+ ResultVo resultVo = new ResultVo(reportAllFeeMonthStatisticsDtos);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ /**
+ * 鏌ヨ鎶ヨ〃涓撳 缁熻淇℃伅
+ * @param reportFeeMonthStatisticsDto
+ * @return
+ */
+ @Override
+ public ResponseEntity<String> queryReportProficientCount(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+ JSONObject result = reportFeeMonthStatisticsInnerServiceSMOImpl.queryReportProficientCount(reportFeeMonthStatisticsDto);
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(result.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ /**
+ * 鏌ヨ鎶ヤ慨淇℃伅
+ *
+ * @param repairUserDto
+ * @return
+ */
+ @Override
+ public ResponseEntity<String> queryRepair(RepairUserDto repairUserDto) {
+ //鏌ヨ鍛樺伐鎶ヤ慨琛ㄥ憳宸ヤ俊鎭�
+ List<RepairUserDto> repairUsers = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+ int count = repairUsers.size();
+ //鑾峰彇鍛樺伐id鍜屽鍚嶉泦鍚�
+ List<RepairUserDto> staffs;
+ if (StringUtil.isEmpty(repairUserDto.getStaffId())) {
+ repairUserDto.setPage(-1);
+ staffs = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+ } else {
+ repairUserDto.setPage(-1);
+ repairUserDto.setStaffId(null);
+ staffs = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+ }
+ List<RepairUserDto> repairUserList = new ArrayList<>();
+ //澶勭悊涓�绘暟閲�
+ int dealNumber = 0;
+ //缁撳崟鎬绘暟閲�
+ int statementNumber = 0;
+ //閫�鍗曟�绘暟閲�
+ int chargebackNumber = 0;
+ //杞崟鎬绘暟閲�
+ int transferOrderNumber = 0;
+ //娲惧崟鎬绘暟閲�
+ int dispatchNumber = 0;
+ if (count > 0) {
+ for (RepairUserDto repairUser : repairUsers) {
+ RepairUserDto repairUserInfo = new RepairUserDto();
+ //鍛樺伐id
+ repairUserDto.setStaffId(repairUser.getStaffId());
+ List<RepairUserDto> repairUserDtoList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairWithOutPage(repairUserDto);
+ if (repairUserDtoList != null && repairUserDtoList.size() > 0) {
+ //澶勭悊涓暟閲�
+ int dealAmount = 0;
+ //缁撳崟鏁伴噺
+ int statementAmount = 0;
+ //閫�鍗曟暟閲�
+ int chargebackAmount = 0;
+ //杞崟鏁伴噺
+ int transferOrderAmount = 0;
+ //娲惧崟鏁伴噺
+ int dispatchAmount = 0;
+ for (RepairUserDto repair : repairUserDtoList) {
+ //澶勭悊涓姸鎬�
+ if (repair.getState().equals("10001")) {
+ //鑾峰彇鏁伴噺
+ int amount = Integer.parseInt(repair.getAmount());
+ dealAmount = dealAmount + amount;
+ } else if (repair.getState().equals("10002")) { //缁撳崟鐘舵��
+ //鑾峰彇鏁伴噺
+ int amount = Integer.parseInt(repair.getAmount());
+ statementAmount = statementAmount + amount;
+ } else if (repair.getState().equals("10003")) { //閫�鍗曠姸鎬�
+ //鑾峰彇鏁伴噺
+ int amount = Integer.parseInt(repair.getAmount());
+ chargebackAmount = chargebackAmount + amount;
+ } else if (repair.getState().equals("10004")) { //杞崟鐘舵��
+ //鑾峰彇鏁伴噺
+ int amount = Integer.parseInt(repair.getAmount());
+ transferOrderAmount = transferOrderAmount + amount;
+ } else if (repair.getState().equals("10006")) { //娲惧崟鐘舵��
+ int amount = Integer.parseInt(repair.getAmount());
+ dispatchAmount = dispatchAmount + amount;
+ }
+ }
+ //鍛樺伐id
+ repairUserInfo.setStaffId(repairUser.getStaffId());
+ //鍛樺伐濮撳悕
+ repairUserInfo.setStaffName(repairUser.getStaffName());
+ //澶勭悊涓姤淇暟閲�
+ repairUserInfo.setDealAmount(Integer.toString(dealAmount));
+ //澶勭悊涓姤淇�绘暟閲�
+ repairUserInfo.setDealNumber(Integer.toString(dealNumber));
+ //缁撳崟鎶ヤ慨鏁伴噺
+ repairUserInfo.setStatementAmount(Integer.toString(statementAmount));
+ //缁撳崟鎶ヤ慨鎬绘暟閲�
+ repairUserInfo.setStatementNumber(Integer.toString(statementNumber));
+ //閫�鍗曟姤淇暟閲�
+ repairUserInfo.setChargebackAmount(Integer.toString(chargebackAmount));
+ //閫�鍗曟姤淇�绘暟閲�
+ repairUserInfo.setChargebackNumber(Integer.toString(chargebackNumber));
+ //杞崟鎶ヤ慨鏁伴噺
+ repairUserInfo.setTransferOrderAmount(Integer.toString(transferOrderAmount));
+ //杞崟鎶ヤ慨鎬绘暟閲�
+ repairUserInfo.setTransferOrderNumber(Integer.toString(transferOrderNumber));
+ //娲惧崟鎶ヤ慨鏁伴噺
+ repairUserInfo.setDispatchAmount(Integer.toString(dispatchAmount));
+ //娲惧崟鎶ヤ慨鎬绘暟閲�
+ repairUserInfo.setDispatchNumber(Integer.toString(dispatchNumber));
+ //鍛樺伐id鍜屽鍚嶄俊鎭泦鍚�
+ repairUserInfo.setRepairList(staffs);
+ repairUserList.add(repairUserInfo);
+ } else {
+ continue;
+ }
+ dealNumber = Integer.parseInt(repairUserInfo.getDealAmount()) + dealNumber;
+ statementNumber = Integer.parseInt(repairUserInfo.getStatementAmount()) + statementNumber;
+ chargebackNumber = Integer.parseInt(repairUserInfo.getChargebackAmount()) + chargebackNumber;
+ transferOrderNumber = Integer.parseInt(repairUserInfo.getTransferOrderAmount()) + transferOrderNumber;
+ dispatchNumber = Integer.parseInt(repairUserInfo.getDispatchAmount()) + dispatchNumber;
+ }
+ } else {
+ repairUserList = new ArrayList<>();
+ }
+
+ RepairUserDto repairUser = new RepairUserDto();
+ repairUser.setDealNumber(Integer.toString(dealNumber));
+ repairUser.setStatementNumber(Integer.toString(statementNumber));
+ repairUser.setChargebackNumber(Integer.toString(chargebackNumber));
+ repairUser.setTransferOrderNumber(Integer.toString(transferOrderNumber));
+ repairUser.setDispatchNumber(Integer.toString(dispatchNumber));
+
+ //鑾峰彇鎬绘潯鏁�
+ int size = staffs.size();
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) size / (double) repairUserDto.getRow()), repairUserList.size(), repairUserList, staffs, repairUser);
+
+ ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+ return responseEntity;
+ }
+
+ @Override
+ public ResponseEntity<String> queryNoFeeRooms(RoomDto roomDto) {
+ int count = reportFeeMonthStatisticsInnerServiceSMOImpl.queryNoFeeRoomsCount(roomDto);
+
+ List<RoomDto> roomDtos = null;
+ if (count > 0) {
+ roomDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryNoFeeRooms(roomDto);
+ } else {
+ roomDtos = new ArrayList<>();
+ }
+
+ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) roomDto.getRow()), count, roomDtos);
ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
@@ -173,7 +641,7 @@
}
try {
- tmpReportFeeMonthStatisticsDto.setOweDay(DateUtil.daysBetween(DateUtil.getCurrentDate(), DateUtil.getDateFromString(tmpReportFeeMonthStatisticsDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A)));
+ tmpReportFeeMonthStatisticsDto.setOweDay(DateUtil.daysBetween(DateUtil.getDateFromString(tmpReportFeeMonthStatisticsDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A), DateUtil.getCurrentDate()));
} catch (ParseException e) {
logger.error("璐圭敤缁撴潫鏃堕棿閿欒" + tmpReportFeeMonthStatisticsDto.getEndTime(), e);
}
@@ -191,11 +659,11 @@
private void freshReportOweDay(List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos) {
- Date monthFirstDate = DateUtil.getNextMonthFirstDate();
+ Date nowDate = DateUtil.getCurrentDate();
for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
try {
- int day = DateUtil.daysBetween(monthFirstDate, DateUtil.getDateFromString(reportFeeMonthStatisticsDto.getFeeCreateTime(),
+ int day = DateUtil.daysBetween(nowDate, DateUtil.getDateFromString(reportFeeMonthStatisticsDto.getFeeCreateTime(),
DateUtil.DATE_FORMATE_STRING_A));
reportFeeMonthStatisticsDto.setOweDay(day);
} catch (Exception e) {
@@ -205,5 +673,21 @@
}
}
+ private void freshReportDeadlineDay(List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos) {
+
+ Date nowDate = DateUtil.getCurrentDate();
+
+ for (ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto : reportFeeMonthStatisticsDtos) {
+ try {
+ int day = DateUtil.daysBetween(DateUtil.getDateFromString(reportFeeMonthStatisticsDto.getDeadlineTime(),
+ DateUtil.DATE_FORMATE_STRING_A), nowDate);
+ reportFeeMonthStatisticsDto.setOweDay(day);
+ } catch (Exception e) {
+ logger.error("璁$畻娆犺垂澶╂暟澶辫触", e);
+ }
+
+ }
+ }
+
}
--
Gitblit v1.8.0