forked from github/dataease
fix: 精简模式下抽取 excel(.xls) 数据集
This commit is contained in:
parent
40a0e196e4
commit
94b31d6c25
@ -344,7 +344,9 @@ public class ExcelXlsReader implements HSSFListener {
|
||||
if(obtainedNum != null && totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().size() < obtainedNum){
|
||||
totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().add(tmp);
|
||||
}
|
||||
|
||||
if(obtainedNum == null){
|
||||
totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().add(tmp);
|
||||
}
|
||||
totalRows++;
|
||||
}
|
||||
}
|
||||
|
@ -704,10 +704,21 @@ public class ExtractDataService {
|
||||
List<String[]> data = new ArrayList<>();
|
||||
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
List<ExcelSheetData> excelSheetDataList = dataTableInfoDTO.getExcelSheetDataList();
|
||||
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
|
||||
for (ExcelSheetData excelSheetData : excelSheetDataList) {
|
||||
excelXlsxReader.process(new FileInputStream(excelSheetData.getPath()));
|
||||
for (ExcelSheetData sheet : excelXlsxReader.totalSheets) {
|
||||
String suffix = excelSheetData.getPath().substring(excelSheetData.getPath().lastIndexOf(".") + 1);
|
||||
List<ExcelSheetData> totalSheets = new ArrayList<>();
|
||||
if (StringUtils.equalsIgnoreCase(suffix, "xls")) {
|
||||
ExcelXlsReader excelXlsReader = new ExcelXlsReader();
|
||||
excelXlsReader.process(new FileInputStream(excelSheetData.getPath()));
|
||||
totalSheets = excelXlsReader.totalSheets;
|
||||
}
|
||||
if (StringUtils.equalsIgnoreCase(suffix, "xlsx")) {
|
||||
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
|
||||
excelXlsxReader.process(new FileInputStream(excelSheetData.getPath()));
|
||||
totalSheets = excelXlsxReader.totalSheets;
|
||||
}
|
||||
|
||||
for (ExcelSheetData sheet : totalSheets) {
|
||||
if (sheet.getExcelLable().equalsIgnoreCase(excelSheetData.getExcelLable())) {
|
||||
for (List<String> dataItem : sheet.getData()) {
|
||||
if (dataItem.size() > 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user