diff --git a/src/com/engine/salary/service/impl/SalaryAcctExcelServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctExcelServiceImpl.java index 486073fbf..3e808cb80 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctExcelServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctExcelServiceImpl.java @@ -44,6 +44,7 @@ import com.engine.salary.util.excel.ExcelSupport; import com.engine.salary.util.excel.ExcelUtilPlus; import com.engine.salary.util.page.Column; import com.engine.salary.util.valid.ValidUtil; +import com.engine.salary.wrapper.SalarySobItemWrapper; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; @@ -102,10 +103,6 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc return (SalaryItemService) ServiceUtil.getService(SalaryItemServiceImpl.class, user); } -// private SalaryFormulaService getSalaryFormulaService(User user) { -// return (SalaryFormulaService) ServiceUtil.getService(SalaryFormulaServiceImpl.class, user); -// } - private SalaryComparisonResultService getSalaryComparisonResultService(User user) { return (SalaryComparisonResultService) ServiceUtil.getService(SalaryComparisonResultServiceImpl.class, user); } @@ -123,12 +120,6 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc return ServiceUtil.getService(SalarySobItemGroupServiceImpl.class, user); } - private SalaryCheckResultService salaryCheckResultService; - - private SalaryCheckResultDetailService salaryCheckResultDetailService; - - private SalarySobCheckRuleService salarySobCheckRuleService; - private SalaryAcctReportService getSalaryAcctReportService(User user) { return ServiceUtil.getService(SalaryAcctReportServiceImpl.class, user); } @@ -145,6 +136,10 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc return ServiceUtil.getService(SalaryAcctResultLogServiceImpl.class, user); } + private SalarySobItemWrapper getSalarySobItemWrapper(User user) { + return ServiceUtil.getService(SalarySobItemWrapper.class, user); + } + @Override public XSSFWorkbook exportSalaryAcctEmployee(SalaryAcctEmployeeQueryParam queryParam) { ValidUtil.doValidator(queryParam); @@ -291,6 +286,10 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc //判断是否按照自定义字段导出表头 List finalWeaTableColumns = new ArrayList<>(); if (queryParam.getSalaryItemIds() != null ) { + //获取人员基本信息字段(汇总) + Collection> empFieldList = getSalarySobItemWrapper(user).empFieldList(); + List empFieldIdList= new ArrayList<>(); + empFieldList.forEach(f -> empFieldIdList.add(f.get("id"))); // 必须选择导出所需的薪资项目 if (CollectionUtils.isEmpty(queryParam.getSalaryItemIds())) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(99019, "参数错误,请选择导入模板所需的薪资项目")); @@ -308,7 +307,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc columnGroupItem.setChildren(childrenColumns); finalWeaTableColumns.add(columnGroupItem); } - } else if (headerRangeList.contains(columnGroupItem.getColumn())) { + } else if (empFieldIdList.contains(tableColumn.getColumn()) || headerRangeList.contains(tableColumn.getColumn())){ finalWeaTableColumns.add(columnGroupItem); } @@ -319,7 +318,8 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc // parseHeader(headerColumnGroup, weaTableColumns); parseHeader(headerColumnGroup, finalWeaTableColumns); // // excel导出的表头 - List headerList = new ArrayList<>(weaTableColumns); +// List headerList = new ArrayList<>(weaTableColumns); + List headerList = new ArrayList<>(finalWeaTableColumns); // 查询薪资核算结果 List> resultMapList = getSalaryAcctResultService(user).listByParam(queryParam);