From 97230052b314c00b52f644da9217124912aa752e Mon Sep 17 00:00:00 2001 From: sy Date: Mon, 9 Jan 2023 17:30:49 +0800 Subject: [PATCH] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F-=E7=A6=8F?= =?UTF-8?q?=E5=88=A9=E6=A1=A3=E6=A1=88=EF=BC=8C=E5=AF=BC=E5=85=A5=E5=92=8C?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E7=9A=84excel=E8=A1=A8=E5=A4=B4=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AF=BC=E5=85=A5=E6=88=96=E5=AF=BC=E5=87=BA=EF=BC=8C?= =?UTF-8?q?=E5=B9=B6=E4=B8=94=E5=90=8E=E7=BC=80=E6=B7=BB=E5=8A=A0tab?= =?UTF-8?q?=E9=A1=B5=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SIImportServiceImpl.java | 20 ++++++++- .../service/impl/SISchemeServiceImpl.java | 20 ++++++++- .../engine/salary/web/SISchemeController.java | 42 +++++++++++++++++-- 3 files changed, 76 insertions(+), 6 deletions(-) diff --git a/src/com/engine/salary/service/impl/SIImportServiceImpl.java b/src/com/engine/salary/service/impl/SIImportServiceImpl.java index 100d79152..8315e6677 100644 --- a/src/com/engine/salary/service/impl/SIImportServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIImportServiceImpl.java @@ -15,6 +15,7 @@ import com.engine.salary.entity.siarchives.po.InsuranceArchivesSocialSchemePO; import com.engine.salary.entity.sicategory.po.ICategoryPO; import com.engine.salary.entity.sischeme.po.InsuranceSchemePO; import com.engine.salary.entity.taxagent.po.TaxAgentPO; +import com.engine.salary.enums.siaccount.EmployeeStatusEnum; import com.engine.salary.enums.sicategory.WelfareTypeEnum; import com.engine.salary.mapper.siarchives.SocialSchemeMapper; import com.engine.salary.mapper.sicategory.ICategoryMapper; @@ -61,7 +62,24 @@ public class SIImportServiceImpl extends Service implements SIImportService { Boolean exportData = param.getExportData(); //工作簿名称 - String sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案"); //表头 + String sheetName; + //表头 + if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "停缴员工"); + } else { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + } + } else { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + } + List headers = buildHeader(); InsuranceArchivesListParam request = InsuranceArchivesListParam.builder().build(); if (param.getHireDate() != null && param.getHireDate().length == 2) { diff --git a/src/com/engine/salary/service/impl/SISchemeServiceImpl.java b/src/com/engine/salary/service/impl/SISchemeServiceImpl.java index a19a164cf..cb32b7bff 100644 --- a/src/com/engine/salary/service/impl/SISchemeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SISchemeServiceImpl.java @@ -356,6 +356,24 @@ public class SISchemeServiceImpl extends Service implements SISchemeService { //工作簿list + String sheetName; + //表头 + if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "停缴员工"); + } else { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); + } + } else { + sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); + } + //工作簿数据 List> rows = new LinkedList<>(); List collect = columns.stream().map(WeaTableColumn::getText).collect(Collectors.toList()); @@ -385,7 +403,7 @@ public class SISchemeServiceImpl extends Service implements SISchemeService { // .dataType(SalaryI18nUtil.getI18nLabel(tenantKey, employeeId, 99915, "档案")) // .function(exportMap.get("function")).build(), sheetList); //获取excel - return ExcelUtil.genWorkbook(rows, "福利档案"); + return ExcelUtil.genWorkbook(rows, sheetName); } diff --git a/src/com/engine/salary/web/SISchemeController.java b/src/com/engine/salary/web/SISchemeController.java index ee007f129..fef4b8661 100644 --- a/src/com/engine/salary/web/SISchemeController.java +++ b/src/com/engine/salary/web/SISchemeController.java @@ -8,12 +8,14 @@ import com.engine.salary.entity.sischeme.dto.InsuranceSchemeListDTO; import com.engine.salary.entity.sischeme.param.InsuranceSchemeParam; import com.engine.salary.entity.sischeme.param.InsuranceSchemeReqParam; import com.engine.salary.entity.sischeme.param.SISchemaImportParam; +import com.engine.salary.enums.siaccount.EmployeeStatusEnum; import com.engine.salary.enums.sicategory.WelfareTypeEnum; import com.engine.salary.service.SIAccountService; import com.engine.salary.service.SISchemeService; import com.engine.salary.service.impl.SIAccountServiceImpl; import com.engine.salary.service.impl.SISchemeServiceImpl; import com.engine.salary.util.ResponseResult; +import com.engine.salary.util.SalaryI18nUtil; import com.engine.salary.util.page.PageInfo; import com.engine.salary.wrapper.SISchemeWrapper; import io.swagger.v3.oas.annotations.parameters.RequestBody; @@ -181,9 +183,25 @@ public class SISchemeController { } User user = HrmUserVarify.getUser(request, response); XSSFWorkbook workbook = getService(user).export(param); - String fileName = null; + String fileName ; + //表头 + if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "停缴员工"); + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); + } + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); + } try { - fileName = URLEncoder.encode("福利档案.xlsx", "UTF-8"); + fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } @@ -230,9 +248,25 @@ public class SISchemeController { param.setEmployeeIds(insuranceAccountInspectPOS.stream().map(InsuranceAccountInspectPO::getEmployeeId).distinct().collect(Collectors.toList())); } XSSFWorkbook workbook = getService(user).exportTemplate(param); - String fileName = null; + String fileName; + //表头 + if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "停缴员工"); + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + } + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + } try { - fileName = URLEncoder.encode("福利档案模板.xlsx", "UTF-8"); + fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); }