From ad3af977ab39df13632910eb6d62e2bd1fcf31ae Mon Sep 17 00:00:00 2001 From: "18895359881@163.com" <521027xyz> Date: Wed, 20 Apr 2022 16:02:52 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B3=E6=8A=A5=E8=A1=A8=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/TaxDeclarationExcelServiceImpl.java | 64 ++++++++++++++----- 1 file changed, 49 insertions(+), 15 deletions(-) diff --git a/src/com/engine/salary/service/impl/TaxDeclarationExcelServiceImpl.java b/src/com/engine/salary/service/impl/TaxDeclarationExcelServiceImpl.java index 431d1b391..b20090178 100644 --- a/src/com/engine/salary/service/impl/TaxDeclarationExcelServiceImpl.java +++ b/src/com/engine/salary/service/impl/TaxDeclarationExcelServiceImpl.java @@ -56,28 +56,62 @@ public class TaxDeclarationExcelServiceImpl extends Service implements TaxDeclar //表头字段 String[] headers = TaxDeclarationDetailListColumn.listHeader(); // 解析表头 - List weaTableColumns = TaxDeclarationDetailListColumn.listTableColumn(); + //List weaTableColumns = TaxDeclarationDetailListColumn.listTableColumn(); List 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> 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 dtoPage = getTaxDeclarationDetailService(user).listDtoPageByParam(queryParam); - for (Object taxDeclarationDetailListDTO : dtoPage.getList()) { - List row = Lists.newArrayListWithExpectedSize(headerList.size()); - Map 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 dtoPage = getTaxDeclarationDetailService(user).listDtoPageByParam(queryParam); + List list = dtoPage.getList(); + for (TaxDeclarationDetailListDTO dto : list) { + List 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); }