From 314d886b2c01b93f4dbd6debb7faa3afc57492c0 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Tue, 18 May 2021 15:17:57 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=9D=E5=AD=98=20excel=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=9B=86=E7=9A=84=E5=AD=97=E6=AE=B5=E5=87=BA=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataease/service/dataset/DataSetTableService.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index 4e5016ca94..617707ec2a 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -481,10 +481,8 @@ public class DataSetTableService { DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(dataSetTableRequest.getInfo(), DataTableInfoDTO.class); String path = dataTableInfoDTO.getData(); File file = new File(path); - // save field Map map = parseExcel(path.substring(path.lastIndexOf("/") + 1), new FileInputStream(file), false); fields = (List) map.get("fields"); -// List> data = (List>) map.get("data"); } else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "custom")) { // save field DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(dataSetTableRequest.getInfo(), DataTableInfoDTO.class); @@ -508,7 +506,10 @@ public class DataSetTableService { createDorisView(DorisTableUtils.dorisName(datasetTable.getId()), getCustomSQL(dataTableInfoDTO, dataSetTableUnionService.listByTableId(dataTableInfoDTO.getList().get(0).getTableId()))); return; } - QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType()); + QueryProvider qp = null; + if(!ObjectUtils.isEmpty(ds)) { + qp = ProviderFactory.getQueryProvider(ds.getType()); + } if (CollectionUtils.isNotEmpty(fields)) { for (int i = 0; i < fields.size(); i++) { TableFiled filed = fields.get(i); @@ -670,6 +671,9 @@ public class DataSetTableService { tableFiled.setFieldName(readCell(row.getCell(j))); tableFiled.setRemarks(readCell(row.getCell(j))); tableFiled.setFieldType("TEXT"); + if(StringUtils.isEmpty(tableFiled.getFieldName())){ + continue; + } fields.add(tableFiled); } else { r[j] = readCell(row.getCell(j));