社保福利导入

This commit is contained in:
liuliang 2022-07-25 11:13:18 +08:00
parent 341b122fe7
commit e03c24dfbf
1 changed files with 29 additions and 22 deletions

View File

@ -53,6 +53,7 @@ public class SIImportServiceImpl extends Service implements SIImportService {
public XSSFWorkbook exportTemplate(InsuranceArchivesListParam param) {
//工作簿list
List<List<Object>> excelSheetData = new ArrayList<>();
Boolean exportData = param.getExportData();
//工作簿名称
String sheetName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案"); //表头
@ -83,29 +84,35 @@ public class SIImportServiceImpl extends Service implements SIImportService {
// List<Map<String, Object>> datas = buildTableData(insuranceArchivesEmployeePOS);
//表头
excelSheetData.add(Arrays.asList(headers.toArray(new String[0])));
Map<String, Object> dataMap = getSIArchivesService(user).listPage(param);
List<Map<String, Object>> records = (List<Map<String, Object>>)dataMap.get("datas");
List<WeaTableColumn> columns = (List<WeaTableColumn>)dataMap.get("columns");
List<String> rowCloumn = Lists.newArrayList();
List<String> names = columns.stream().map(WeaTableColumn::getText).collect(Collectors.toList());
headers.forEach(header -> {
if (names.contains(header)){
columns.forEach(column -> {
//用来判断columns中是否包含header
if (header.equals(column.getText())){
rowCloumn.add(column.getColumn());
}
/**
* 导出数据
*/
if (exportData != null && exportData){
Map<String, Object> dataMap = getSIArchivesService(user).listPage(param);
List<Map<String, Object>> records = (List<Map<String, Object>>)dataMap.get("datas");
List<WeaTableColumn> columns = (List<WeaTableColumn>)dataMap.get("columns");
List<String> rowCloumn = Lists.newArrayList();
List<String> names = columns.stream().map(WeaTableColumn::getText).collect(Collectors.toList());
headers.forEach(header -> {
if (names.contains(header)){
columns.forEach(column -> {
//用来判断columns中是否包含header
if (header.equals(column.getText())){
rowCloumn.add(column.getColumn());
}
});
}else {
rowCloumn.add(null);
}
});
records.forEach(record -> {
List<Object> row = Lists.newArrayList();
rowCloumn.forEach(column -> row.add(record.get(column)));
excelSheetData.add(row);
});
}
});
}else {
rowCloumn.add(null);
}
});
records.forEach(record -> {
List<Object> row = Lists.newArrayList();
rowCloumn.forEach(column -> row.add(record.get(column)));
excelSheetData.add(row);
});
// 3.表数据
//工作簿数据
return ExcelUtil.genWorkbookV2(excelSheetData, sheetName);