Skip to content

Commit f81ebc5

Browse files
928255095gitee-org
authored andcommitted
优化押金导出异常
Signed-off-by: java110 <928255095@qq.com>
1 parent c2d4a45 commit f81ebc5

1 file changed

Lines changed: 114 additions & 0 deletions

File tree

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
package com.java110.job.export.adapt;
2+
3+
import com.alibaba.fastjson.JSONObject;
4+
import com.java110.dto.data.ExportDataDto;
5+
import com.java110.dto.fee.FeeConfigDto;
6+
import com.java110.dto.fee.FeeDto;
7+
import com.java110.dto.report.ReportDeposit;
8+
import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
9+
import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
10+
import com.java110.job.export.IExportDataAdapt;
11+
import com.java110.utils.util.BeanConvertUtil;
12+
import com.java110.utils.util.ListUtil;
13+
import com.java110.utils.util.StringUtil;
14+
import org.apache.poi.ss.usermodel.Row;
15+
import org.apache.poi.ss.usermodel.Sheet;
16+
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
17+
import org.springframework.beans.factory.annotation.Autowired;
18+
import org.springframework.stereotype.Service;
19+
20+
import java.text.ParseException;
21+
import java.util.List;
22+
23+
@Service("reportPayFeeDeposit")
24+
public class ReportPayFeeDepositAdapt implements IExportDataAdapt {
25+
26+
@Autowired
27+
private IReportFeeMonthStatisticsInnerServiceSMO reportFeeMonthStatisticsInnerServiceSMOImpl;
28+
29+
@Autowired
30+
private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
31+
@Override
32+
public SXSSFWorkbook exportData(ExportDataDto exportDataDto) throws ParseException {
33+
34+
JSONObject reqJson = exportDataDto.getReqJson();
35+
SXSSFWorkbook workbook = null; //工作簿
36+
//工作表
37+
workbook = new SXSSFWorkbook();
38+
workbook.setCompressTempFiles(false);
39+
Sheet sheet = workbook.createSheet("押金报表");
40+
Row row = sheet.createRow(0);
41+
row.createCell(0).setCellValue("费用ID");
42+
row.createCell(1).setCellValue("房号");
43+
row.createCell(2).setCellValue("业主");
44+
row.createCell(3).setCellValue("费用类型");
45+
row.createCell(4).setCellValue("费用项");
46+
row.createCell(5).setCellValue("费用开始时间");
47+
row.createCell(6).setCellValue("费用结束时间");
48+
row.createCell(7).setCellValue("创建时间");
49+
row.createCell(8).setCellValue("付费对象类型");
50+
row.createCell(9).setCellValue("付款方ID");
51+
row.createCell(10).setCellValue("应收金额");
52+
row.createCell(11).setCellValue("状态");
53+
row.createCell(12).setCellValue("退费状态");
54+
55+
List<ReportDeposit> reportPayFeeDeposits = this.getReportPayFeeDeposit(reqJson);
56+
if (ListUtil.isNull(reportPayFeeDeposits)) {
57+
return workbook;
58+
}
59+
ReportDeposit dataObj = null;
60+
for (int roomIndex = 0; roomIndex < reportPayFeeDeposits.size(); roomIndex++) {
61+
row = sheet.createRow(roomIndex + 1);
62+
dataObj = reportPayFeeDeposits.get(roomIndex);
63+
row.createCell(0).setCellValue(dataObj.getFeeId());
64+
if (!StringUtil.isEmpty(dataObj.getPayerObjType()) && dataObj.getPayerObjType().equals("3333")) { //房屋
65+
row.createCell(1).setCellValue(dataObj.getFloorNum() + "-" + dataObj.getUnitNum() + "-" + dataObj.getRoomNum());
66+
} else {
67+
row.createCell(1).setCellValue(dataObj.getObjName());
68+
}
69+
row.createCell(2).setCellValue(dataObj.getOwnerName());
70+
row.createCell(3).setCellValue(dataObj.getFeeTypeCdName());
71+
row.createCell(4).setCellValue(dataObj.getFeeName());
72+
row.createCell(5).setCellValue(dataObj.getStartTime());
73+
row.createCell(6).setCellValue(dataObj.getDeadlineTime());
74+
row.createCell(7).setCellValue(dataObj.getCreateTime());
75+
row.createCell(8).setCellValue(dataObj.getPayerObjTypeName());
76+
row.createCell(9).setCellValue(dataObj.getPayerObjId());
77+
row.createCell(10).setCellValue(dataObj.getAdditionalAmount());
78+
row.createCell(11).setCellValue(dataObj.getStateName());
79+
if (dataObj.getState().equals("2009001")) {
80+
row.createCell(12).setCellValue(dataObj.getDetailStateName());
81+
} else {
82+
row.createCell(12).setCellValue("未缴费");
83+
}
84+
}
85+
return workbook;
86+
}
87+
88+
private List<ReportDeposit> getReportPayFeeDeposit(JSONObject reqJson) {
89+
90+
ReportDeposit reportDeposit = BeanConvertUtil.covertBean(reqJson,ReportDeposit.class);
91+
reportDeposit.setPage(1);
92+
reportDeposit.setRow(10000);
93+
List<ReportDeposit> reportDeposits = reportFeeMonthStatisticsInnerServiceSMOImpl.queryPayFeeDeposit(reportDeposit);
94+
//查询押金费用项
95+
FeeConfigDto feeConfigDto = new FeeConfigDto();
96+
feeConfigDto.setCommunityId(reportDeposit.getCommunityId());
97+
feeConfigDto.setFeeTypeCd("888800010006");
98+
List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
99+
100+
101+
for (ReportDeposit deposit : reportDeposits) {
102+
deposit.setFeeConfigDtos(feeConfigDtos);
103+
if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(deposit.getPayerObjType())) {
104+
deposit.setObjName(deposit.getFloorNum()
105+
+ "栋" + deposit.getUnitNum()
106+
+ "单元" + deposit.getRoomNum() + "室");
107+
} else if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(deposit.getPayerObjType())) {
108+
deposit.setObjName(deposit.getCarNum());
109+
}
110+
}
111+
112+
return reportDeposits;
113+
}
114+
}

0 commit comments

Comments
 (0)