申报表导出完善

This commit is contained in:
18895359881@163.com 2022-04-20 16:02:52 +08:00
parent bfdb9a33d5
commit ad3af977ab
1 changed files with 49 additions and 15 deletions

View File

@ -56,28 +56,62 @@ public class TaxDeclarationExcelServiceImpl extends Service implements TaxDeclar
//表头字段
String[] headers = TaxDeclarationDetailListColumn.listHeader();
// 解析表头
List<WeaTableColumn> weaTableColumns = TaxDeclarationDetailListColumn.listTableColumn();
//List<WeaTableColumn> weaTableColumns = TaxDeclarationDetailListColumn.listTableColumn();
List<Object> headerList = new ArrayList<>(Arrays.asList(headers));
// 查询当前个税申报表一共有多少人员
int count = getTaxDeclarationDetailMapper(user).countEmployeeId(taxDeclarationId);
// 以1000个人员一页一共有多少页
int totalPages = (count % 1000 == 0) ? (count / 1000) : (count / 1000 + 1); //总页数
// int totalPages = (count % 1000 == 0) ? (count / 1000) : (count / 1000 + 1); //总页数
// excel导出的数据
List<List<Object>> rows = Lists.newArrayListWithExpectedSize(count);
rows.add(headerList);
for (int i = 0; i < totalPages; i++) {
TaxDeclarationDetailListQueryParam queryParam = new TaxDeclarationDetailListQueryParam().setTaxDeclarationId(taxDeclarationId);
queryParam.setCurrent(i);
queryParam.setPageSize(1000);
PageInfo<TaxDeclarationDetailListDTO> dtoPage = getTaxDeclarationDetailService(user).listDtoPageByParam(queryParam);
for (Object taxDeclarationDetailListDTO : dtoPage.getList()) {
List<Object> row = Lists.newArrayListWithExpectedSize(headerList.size());
Map<String, Object> map = JsonUtil.parseMap(taxDeclarationDetailListDTO, Object.class);
for (Object weaTableColumn : headerList) {
row.add(map.get(weaTableColumn));
}
rows.add(row);
}
//查询数据
TaxDeclarationDetailListQueryParam queryParam = new TaxDeclarationDetailListQueryParam().setTaxDeclarationId(taxDeclarationId);
PageInfo<TaxDeclarationDetailListDTO> dtoPage = getTaxDeclarationDetailService(user).listDtoPageByParam(queryParam);
List<TaxDeclarationDetailListDTO> list = dtoPage.getList();
for (TaxDeclarationDetailListDTO dto : list) {
List<Object> row = new ArrayList<>();
row.add(dto.getSeq());
row.add(dto.getEmployeeName());
row.add(dto.getIdCardNo());
row.add(dto.getTaxpayerIdNo());
row.add(dto.getResidentType());
row.add(dto.getIncomeType());
row.add(dto.getIncome());
row.add(dto.getFee());
row.add(dto.getTaxFreeIncome());
row.add(dto.getSubtraction());
row.add(dto.getEndowmentInsurance());
row.add(dto.getMedicalInsurance());
row.add(dto.getUnemploymentInsurance());
row.add(dto.getHousingProvidentFund());
row.add(dto.getAnnuity());
row.add(dto.getCommercialHealthInsurance());
row.add(dto.getTaxDeferredEndowmentInsurance());
row.add(dto.getOriginalValueOfProperty());
row.add(dto.getDeductedTax());
row.add(dto.getOther());
row.add(dto.getAddUpIncome());
row.add(dto.getAddUpSubtraction());
row.add(dto.getAddUpSpecialDeduction());
row.add(dto.getAddUpChildEducation());
row.add(dto.getAddUpContinuingEducation());
row.add(dto.getAddUpHousingLoanInterest());
row.add(dto.getAddUpHousingRent());
row.add(dto.getAddUpSupportElderly());
row.add(dto.getAddUpOther());
row.add(dto.getLessTaxProportion());
row.add(dto.getAllowedDonation());
row.add(dto.getTaxableIncome());
row.add(dto.getTaxRate());
row.add(dto.getQuickDeductionFactor());
row.add(dto.getTaxPayable());
row.add(dto.getTaxSavings());
row.add(dto.getTaxWithheld());
row.add(dto.getRefundedOrSupplementedTax());
row.add(dto.getDescription());
rows.add(row);
}
return ExcelUtil.genWorkbookV2(rows, sheetName);
}