forked from github/dataease
feat: 增加数据导出管理功能
This commit is contained in:
parent
075c007602
commit
2138b42909
@ -27,13 +27,13 @@ import io.dataease.plugins.common.dto.dataset.SqlVariableDetails;
|
||||
import io.dataease.plugins.common.dto.datasource.TableField;
|
||||
import io.dataease.service.authModel.VAuthModelService;
|
||||
import io.dataease.service.dataset.DataSetTableService;
|
||||
import io.dataease.service.exportCenter.ExportCenterService;
|
||||
import io.swagger.annotations.*;
|
||||
import org.apache.shiro.authz.annotation.Logical;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -53,6 +53,8 @@ public class DataSetTableController {
|
||||
|
||||
@Resource
|
||||
private VAuthModelService vAuthModelService;
|
||||
@Resource
|
||||
private ExportCenterService exportCenterService;
|
||||
|
||||
@DePermissions(value = {
|
||||
@DePermission(type = DePermissionType.DATASET, value = "id"),
|
||||
@ -269,7 +271,7 @@ public class DataSetTableController {
|
||||
@ApiOperation("数据集导出")
|
||||
@PostMapping("/exportDataset")
|
||||
@I18n
|
||||
public void exportDataset(@RequestBody DataSetExportRequest request, HttpServletResponse response) throws Exception {
|
||||
dataSetTableService.exportDataset(request, response);
|
||||
public void exportDataset(@RequestBody DataSetExportRequest request) {
|
||||
exportCenterService.addTask(request.getId(), "dataset", request);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,38 @@
|
||||
package io.dataease.controller.exportCenter;
|
||||
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
||||
|
||||
import io.dataease.controller.request.dataset.DataSetExportRequest;
|
||||
|
||||
import io.dataease.plugins.common.base.domain.ExportTask;
|
||||
|
||||
import io.dataease.service.exportCenter.ExportCenterService;
|
||||
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ApiSupport(order = 31)
|
||||
@RequestMapping("exportCenter")
|
||||
@RestController
|
||||
public class ExportCenterController {
|
||||
|
||||
@Resource
|
||||
private ExportCenterService exportCenterService;
|
||||
|
||||
|
||||
|
||||
@PostMapping("/exportTasks/{status}")
|
||||
public List<ExportTask> exportTasks(@PathVariable String status) {
|
||||
return exportCenterService.exportTasks(status);
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/exportTasks/{status}")
|
||||
public void addTask(String exportFrom, String exportFromType, DataSetExportRequest request){
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,884 @@
|
||||
package io.dataease.service.exportCenter;
|
||||
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import io.dataease.commons.constants.JobStatus;
|
||||
import io.dataease.commons.utils.AuthUtils;
|
||||
import io.dataease.commons.utils.CommonBeanFactory;
|
||||
import io.dataease.commons.utils.LogUtil;
|
||||
import io.dataease.commons.utils.TableUtils;
|
||||
import io.dataease.controller.dataset.request.DataSetTaskInstanceGridRequest;
|
||||
import io.dataease.controller.request.dataset.DataSetExportRequest;
|
||||
import io.dataease.controller.request.dataset.DataSetTableRequest;
|
||||
import io.dataease.dto.dataset.DataSetPreviewPage;
|
||||
import io.dataease.dto.dataset.DataSetTableUnionDTO;
|
||||
import io.dataease.dto.dataset.DataSetTaskLogDTO;
|
||||
import io.dataease.i18n.Translator;
|
||||
import io.dataease.plugins.common.base.domain.*;
|
||||
import io.dataease.plugins.common.base.mapper.DatasetTableMapper;
|
||||
import io.dataease.plugins.common.base.mapper.DatasourceMapper;
|
||||
import io.dataease.plugins.common.base.mapper.ExportTaskMapper;
|
||||
import io.dataease.plugins.common.constants.DatasetType;
|
||||
import io.dataease.plugins.common.constants.DeTypeConstants;
|
||||
import io.dataease.plugins.common.dto.dataset.DataTableInfoDTO;
|
||||
import io.dataease.plugins.common.exception.DataEaseException;
|
||||
import io.dataease.plugins.common.request.datasource.DatasourceRequest;
|
||||
import io.dataease.plugins.common.request.permission.DataSetRowPermissionsTreeDTO;
|
||||
import io.dataease.plugins.common.request.permission.DatasetRowPermissionsTreeObj;
|
||||
import io.dataease.plugins.datasource.provider.Provider;
|
||||
import io.dataease.plugins.datasource.provider.ProviderFactory;
|
||||
import io.dataease.plugins.datasource.query.QueryProvider;
|
||||
import io.dataease.plugins.xpack.auth.dto.request.ColumnPermissionItem;
|
||||
import io.dataease.provider.datasource.JdbcProvider;
|
||||
import io.dataease.service.chart.util.ChartDataBuild;
|
||||
import io.dataease.service.dataset.*;
|
||||
import io.dataease.service.datasource.DatasourceService;
|
||||
import io.dataease.service.engine.EngineService;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ScheduledThreadPoolExecutor;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
@Service
|
||||
public class ExportCenterService {
|
||||
|
||||
@Resource
|
||||
private ExportTaskMapper exportTaskMapper;
|
||||
@Value("${export.dataset.limit:100000}")
|
||||
private int limit;
|
||||
|
||||
private static final String exportData_path = "/opt/dataease/data/exportData/";
|
||||
|
||||
@Value("${extract.page.size:50000}")
|
||||
private Integer extractPageSize;
|
||||
static private List<String> STATUS = Arrays.asList("SUCCESS", "FAILED", "PENDING", "IN_PROGRESS", "ALL");
|
||||
|
||||
private ScheduledThreadPoolExecutor scheduledThreadPoolExecutor;
|
||||
@Resource
|
||||
private DataSetTableService dataSetTableService;
|
||||
@Resource
|
||||
private DataSetTableUnionService dataSetTableUnionService;
|
||||
@Resource
|
||||
private EngineService engineService;
|
||||
@Resource
|
||||
private DatasetTableMapper datasetTableMapper;
|
||||
@Resource
|
||||
private DatasourceMapper datasourceMapper;
|
||||
@Resource
|
||||
private DataSetTableFieldsService dataSetTableFieldsService;
|
||||
@Resource
|
||||
private PermissionsTreeService permissionsTreeService;
|
||||
@Resource
|
||||
private DatasourceService datasourceService;
|
||||
@Resource
|
||||
private PermissionService permissionService;
|
||||
|
||||
private int corePoolSize = 10;
|
||||
private int keepAliveSeconds = 600;
|
||||
|
||||
@PostConstruct
|
||||
public void init() {
|
||||
scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(corePoolSize);
|
||||
scheduledThreadPoolExecutor.setKeepAliveTime(keepAliveSeconds, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
public List<ExportTask> exportTasks(String status) {
|
||||
if (!STATUS.contains(status)) {
|
||||
DataEaseException.throwException("Invalid status: " + status);
|
||||
}
|
||||
ExportTaskExample exportTaskExample = new ExportTaskExample();
|
||||
ExportTaskExample.Criteria criteria = exportTaskExample.createCriteria();
|
||||
if (!status.equalsIgnoreCase("ALL")) {
|
||||
criteria.andExportStatusEqualTo(status);
|
||||
}
|
||||
criteria.andUserIdEqualTo(AuthUtils.getUser().getUserId());
|
||||
return exportTaskMapper.selectByExample(exportTaskExample);
|
||||
}
|
||||
|
||||
public void addTask(String exportFrom, String exportFromType, DataSetExportRequest request) {
|
||||
ExportTask exportTask = new ExportTask();
|
||||
exportTask.setId(UUID.randomUUID().toString());
|
||||
exportTask.setUserId(AuthUtils.getUser().getUserId());
|
||||
exportTask.setExportFrom(exportFrom);
|
||||
exportTask.setExportFromType(exportFromType);
|
||||
exportTask.setExportStatus("PENDING");
|
||||
exportTask.setFileName(request.getFilename() + ".xlsx");
|
||||
exportTask.setExportPogress("0");
|
||||
exportTask.setExportTime(System.currentTimeMillis());
|
||||
exportTaskMapper.insert(exportTask);
|
||||
|
||||
String dataPath = exportData_path + exportTask.getId();
|
||||
File directory = new File(dataPath);
|
||||
boolean isCreated = directory.mkdir();
|
||||
|
||||
|
||||
scheduledThreadPoolExecutor.execute(() -> {
|
||||
try {
|
||||
exportTask.setExportStatus("IN_PROGRESS");
|
||||
exportTaskMapper.updateByPrimaryKey(exportTask);
|
||||
DatasetRowPermissionsTreeObj tree = null;
|
||||
if (StringUtils.isNotEmpty(request.getExpressionTree())) {
|
||||
Gson gson = new Gson();
|
||||
tree = gson.fromJson(request.getExpressionTree(), DatasetRowPermissionsTreeObj.class);
|
||||
permissionsTreeService.getField(tree);
|
||||
}
|
||||
Datasource datasource = datasourceService.get(request.getDataSourceId());
|
||||
|
||||
Integer totalCount = getTotal(request, limit, tree);
|
||||
|
||||
if (totalCount == null) {
|
||||
|
||||
Workbook wb = new SXSSFWorkbook();
|
||||
// Sheet
|
||||
Sheet detailsSheet = wb.createSheet("数据");
|
||||
//给单元格设置样式
|
||||
CellStyle cellStyle = wb.createCellStyle();
|
||||
Font font = wb.createFont();
|
||||
//设置字体大小
|
||||
font.setFontHeightInPoints((short) 12);
|
||||
//设置字体加粗
|
||||
font.setBold(true);
|
||||
//给字体设置样式
|
||||
cellStyle.setFont(font);
|
||||
//设置单元格背景颜色
|
||||
cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
|
||||
//设置单元格填充样式(使用纯色背景颜色填充)
|
||||
cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
|
||||
|
||||
int pageSize = (datasource != null && StringUtils.equalsIgnoreCase(datasource.getType(), "es")) ? 10000 : limit;
|
||||
request.setRow(String.valueOf(pageSize));
|
||||
Map<String, Object> previewData = dataSetTableService.getPreviewData(request, 1, pageSize, null, tree);
|
||||
List<DatasetTableField> fields = (List<DatasetTableField>) previewData.get("fields");
|
||||
List<Map<String, Object>> data = (List<Map<String, Object>>) previewData.get("data");
|
||||
List<String> header = new ArrayList<>();
|
||||
for (DatasetTableField field : fields) {
|
||||
header.add(field.getName());
|
||||
}
|
||||
|
||||
List<List<String>> details = new ArrayList<>();
|
||||
details.add(header);
|
||||
|
||||
for (Map<String, Object> obj : data) {
|
||||
List<String> row = new ArrayList<>();
|
||||
for (DatasetTableField field : fields) {
|
||||
String string = (String) obj.get(field.getDataeaseName());
|
||||
row.add(string);
|
||||
}
|
||||
details.add(row);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(details)) {
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
Row row = detailsSheet.createRow(i);
|
||||
List<String> rowData = details.get(i);
|
||||
if (rowData != null) {
|
||||
for (int j = 0; j < rowData.size(); j++) {
|
||||
Cell cell = row.createCell(j);
|
||||
if (i == 0) {// 头部
|
||||
cell.setCellValue(rowData.get(j));
|
||||
cell.setCellStyle(cellStyle);
|
||||
//设置列的宽度
|
||||
detailsSheet.setColumnWidth(j, 255 * 20);
|
||||
} else {
|
||||
if ((fields.get(j).getDeType().equals(DeTypeConstants.DE_INT) || fields.get(j).getDeType() == DeTypeConstants.DE_FLOAT) && StringUtils.isNotEmpty(rowData.get(j))) {
|
||||
try {
|
||||
cell.setCellValue(Double.valueOf(rowData.get(j)));
|
||||
} catch (Exception e) {
|
||||
LogUtil.warn("export excel data transform error");
|
||||
}
|
||||
} else {
|
||||
cell.setCellValue(rowData.get(j));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try (FileOutputStream outputStream = new FileOutputStream(dataPath + "/" + request.getFilename() + ".xlsx")) {
|
||||
wb.write(outputStream);
|
||||
}
|
||||
wb.close();
|
||||
} else {
|
||||
Integer totalPage = (totalCount / extractPageSize) + (totalCount % extractPageSize > 0 ? 1 : 0);
|
||||
List<List<String>> details = new ArrayList<>();
|
||||
List<DatasetTableField> fields = new ArrayList<>();
|
||||
for (Integer p = 1; p < totalPage + 1; p++) {
|
||||
Integer offset = p * extractPageSize;
|
||||
Integer all = offset + extractPageSize;
|
||||
|
||||
Map<String, Object> previewData = getPreviewData(request, p, extractPageSize, all, null, tree);
|
||||
|
||||
Workbook wb = null;
|
||||
Sheet detailsSheet = null;
|
||||
CellStyle cellStyle = null;
|
||||
FileInputStream fis = null;
|
||||
if (p == 0L) {
|
||||
wb = new SXSSFWorkbook();
|
||||
// Sheet
|
||||
detailsSheet = wb.createSheet("数据");
|
||||
//给单元格设置样式
|
||||
cellStyle = wb.createCellStyle();
|
||||
Font font = wb.createFont();
|
||||
//设置字体大小
|
||||
font.setFontHeightInPoints((short) 12);
|
||||
//设置字体加粗
|
||||
font.setBold(true);
|
||||
//给字体设置样式
|
||||
cellStyle.setFont(font);
|
||||
//设置单元格背景颜色
|
||||
cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
|
||||
//设置单元格填充样式(使用纯色背景颜色填充)
|
||||
cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
|
||||
fields = (List<DatasetTableField>) previewData.get("fields");
|
||||
List<String> header = new ArrayList<>();
|
||||
for (DatasetTableField field : fields) {
|
||||
header.add(field.getName());
|
||||
}
|
||||
details.add(header);
|
||||
} else {
|
||||
fis = new FileInputStream("existing_file.xlsx");
|
||||
wb = new XSSFWorkbook(fis); // 假设这是个.xlsx格式的文件
|
||||
detailsSheet = wb.getSheetAt(0);
|
||||
}
|
||||
|
||||
List<Map<String, Object>> data = (List<Map<String, Object>>) previewData.get("data");
|
||||
for (Map<String, Object> obj : data) {
|
||||
List<String> row = new ArrayList<>();
|
||||
for (DatasetTableField field : fields) {
|
||||
String string = (String) obj.get(field.getDataeaseName());
|
||||
row.add(string);
|
||||
}
|
||||
details.add(row);
|
||||
}
|
||||
|
||||
|
||||
if (CollectionUtils.isNotEmpty(details)) {
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
Row row = detailsSheet.createRow(i);
|
||||
List<String> rowData = details.get(i);
|
||||
if (rowData != null) {
|
||||
for (int j = 0; j < rowData.size(); j++) {
|
||||
Cell cell = row.createCell(j);
|
||||
if (i == 0) {// 头部
|
||||
cell.setCellValue(rowData.get(j));
|
||||
cell.setCellStyle(cellStyle);
|
||||
//设置列的宽度
|
||||
detailsSheet.setColumnWidth(j, 255 * 20);
|
||||
} else {
|
||||
if ((fields.get(j).getDeType().equals(DeTypeConstants.DE_INT) || fields.get(j).getDeType() == DeTypeConstants.DE_FLOAT) && StringUtils.isNotEmpty(rowData.get(j))) {
|
||||
try {
|
||||
cell.setCellValue(Double.valueOf(rowData.get(j)));
|
||||
} catch (Exception e) {
|
||||
LogUtil.warn("export excel data transform error");
|
||||
}
|
||||
} else {
|
||||
cell.setCellValue(rowData.get(j));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (p == 1) {
|
||||
try (FileOutputStream outputStream = new FileOutputStream(dataPath + "/" + request.getFilename() + ".xlsx")) {
|
||||
wb.write(outputStream);
|
||||
}
|
||||
wb.close();
|
||||
} else {
|
||||
fis.close();
|
||||
wb.close();
|
||||
}
|
||||
|
||||
|
||||
exportTask.setExportStatus("IN_PROGRESS");
|
||||
double exportRogress = (double) (p / totalCount);
|
||||
DecimalFormat df = new DecimalFormat("#.##");
|
||||
String formattedResult = df.format(exportRogress * 100);
|
||||
exportTask.setExportPogress(formattedResult);
|
||||
exportTaskMapper.updateByPrimaryKey(exportTask);
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
exportTask.setExportStatus("SUCCESS");
|
||||
} catch (Exception e) {
|
||||
exportTask.setExportStatus("FAILED");
|
||||
} finally {
|
||||
exportTaskMapper.updateByPrimaryKey(exportTask);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
public Boolean checkEngineTableIsExists(String id) throws Exception {
|
||||
Datasource engine = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(engine);
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(engine.getType());
|
||||
datasourceRequest.setQuery(qp.searchTable(TableUtils.tableName(id)));
|
||||
List<String[]> data = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isNotEmpty(data);
|
||||
}
|
||||
|
||||
private Integer getTotal(DataSetTableRequest dataSetTableRequest, Integer limit, DatasetRowPermissionsTreeObj extTree) throws Exception {
|
||||
DatasetTableField datasetTableField = DatasetTableField.builder().tableId(dataSetTableRequest.getId()).checked(Boolean.TRUE).build();
|
||||
List<DatasetTableField> fields = dataSetTableFieldsService.list(datasetTableField);
|
||||
if (CollectionUtils.isEmpty(fields)) {
|
||||
return null;
|
||||
}
|
||||
DatasetTable datasetTable = datasetTableMapper.selectByPrimaryKey(dataSetTableRequest.getId());
|
||||
// 行权限
|
||||
List<DataSetRowPermissionsTreeDTO> rowPermissionsTree = permissionsTreeService.getRowPermissionsTree(fields, datasetTable, null);
|
||||
// ext filter
|
||||
if (extTree != null) {
|
||||
DataSetRowPermissionsTreeDTO dto = new DataSetRowPermissionsTreeDTO();
|
||||
dto.setTree(extTree);
|
||||
rowPermissionsTree.add(dto);
|
||||
}
|
||||
// 列权限
|
||||
Map<String, ColumnPermissionItem> desensitizationList = new HashMap<>();
|
||||
fields = permissionService.filterColumnPermissions(fields, desensitizationList, datasetTable.getId(), null);
|
||||
if (CollectionUtils.isEmpty(fields)) {
|
||||
return null;
|
||||
}
|
||||
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(dataSetTableRequest.getInfo(), DataTableInfoDTO.class);
|
||||
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.DB.name()) || StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.API.name())) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(ds.getStatus()) && ds.getStatus().equalsIgnoreCase("Error")) {
|
||||
throw new Exception(Translator.get("i18n_invalid_ds"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = dataTableInfoDTO.getTable();
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(false, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = datasourceProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
} else {
|
||||
// check doris table
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
if (dataSetTableRequest.isPreviewForTask()) {
|
||||
return null;
|
||||
} else {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
}
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(false, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.SQL.name())) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(ds.getStatus()) && ds.getStatus().equalsIgnoreCase("Error")) {
|
||||
throw new Exception(Translator.get("i18n_invalid_ds"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
DataTableInfoDTO dataTableInfo = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
String sql = dataTableInfo.isBase64Encryption() ? new String(java.util.Base64.getDecoder().decode(dataTableInfo.getSql())) : dataTableInfo.getSql();
|
||||
sql = dataSetTableService.handleVariableDefaultValue(sql, datasetTable.getSqlVariableDetails(), ds.getType(), false);
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(false, qp.createQuerySQLAsTmp(sql, fields, false, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = datasourceProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
} else {
|
||||
// check doris table
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
|
||||
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(true, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(true, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "custom")) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
|
||||
DataTableInfoDTO dt = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
List<DataSetTableUnionDTO> list = dataSetTableUnionService.listByTableId(dt.getList().get(0).getTableId());
|
||||
|
||||
String sql = "";
|
||||
try {
|
||||
sql = dataSetTableService.getCustomSQLDatasource(dt, list, ds);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(false, qp.createQuerySQLAsTmp(sql, fields, false, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = datasourceProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else {
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(true, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "union")) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
DataEaseException.throwException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
|
||||
DataTableInfoDTO dt = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
|
||||
String sql = "";
|
||||
try {
|
||||
sql = (String) dataSetTableService.getUnionSQLDatasource(dt, ds).get("sql");
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(true, qp.createQuerySQLAsTmp(sql, fields, false, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = datasourceProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
} else {
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
try {
|
||||
String totalSql = qp.getTotalCount(true, qp.createQuerySQL(table, fields, false, ds, null, rowPermissionsTree), ds);
|
||||
if (totalSql == null) {
|
||||
return null;
|
||||
}
|
||||
datasourceRequest.setQuery(totalSql);
|
||||
List<String[]> tmpData = jdbcProvider.getData(datasourceRequest);
|
||||
return CollectionUtils.isEmpty(tmpData) ? 0 : Integer.valueOf(tmpData.get(0)[0]);
|
||||
} catch (Exception e) {
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public Map<String, Object> getPreviewData(DataSetTableRequest dataSetTableRequest, Integer page, Integer pageSize, Integer realSize, List<DatasetTableField> extFields, DatasetRowPermissionsTreeObj extTree) throws Exception {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
String syncStatus = "";
|
||||
DatasetTableField datasetTableField = DatasetTableField.builder().tableId(dataSetTableRequest.getId()).checked(Boolean.TRUE).build();
|
||||
List<DatasetTableField> fields = dataSetTableFieldsService.list(datasetTableField);
|
||||
if (CollectionUtils.isNotEmpty(extFields)) {
|
||||
fields = extFields;
|
||||
}
|
||||
if (CollectionUtils.isEmpty(fields)) {
|
||||
map.put("fields", fields);
|
||||
map.put("data", new ArrayList<>());
|
||||
return map;
|
||||
}
|
||||
DatasetTable datasetTable = datasetTableMapper.selectByPrimaryKey(dataSetTableRequest.getId());
|
||||
// 行权限
|
||||
List<DataSetRowPermissionsTreeDTO> rowPermissionsTree = permissionsTreeService.getRowPermissionsTree(fields, datasetTable, null);
|
||||
// ext filter
|
||||
if (extTree != null) {
|
||||
DataSetRowPermissionsTreeDTO dto = new DataSetRowPermissionsTreeDTO();
|
||||
dto.setTree(extTree);
|
||||
rowPermissionsTree.add(dto);
|
||||
}
|
||||
// 列权限
|
||||
Map<String, ColumnPermissionItem> desensitizationList = new HashMap<>();
|
||||
fields = permissionService.filterColumnPermissions(fields, desensitizationList, datasetTable.getId(), null);
|
||||
if (CollectionUtils.isEmpty(fields)) {
|
||||
map.put("fields", fields);
|
||||
map.put("data", new ArrayList<>());
|
||||
return map;
|
||||
}
|
||||
|
||||
String[] fieldArray = fields.stream().map(DatasetTableField::getDataeaseName).toArray(String[]::new);
|
||||
|
||||
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(dataSetTableRequest.getInfo(), DataTableInfoDTO.class);
|
||||
|
||||
List<String[]> data = new ArrayList<>();
|
||||
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.DB.name()) || StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.API.name())) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(ds.getStatus()) && ds.getStatus().equalsIgnoreCase("Error")) {
|
||||
throw new Exception(Translator.get("i18n_invalid_ds"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = dataTableInfoDTO.getTable();
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
|
||||
try {
|
||||
|
||||
data.addAll(datasourceProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else {
|
||||
// check doris table
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
if (dataSetTableRequest.isPreviewForTask()) {
|
||||
map.put("fields", fields);
|
||||
map.put("data", new ArrayList<>());
|
||||
map.put("page", new DataSetPreviewPage());
|
||||
return map;
|
||||
} else {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
}
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), DatasetType.SQL.name())) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(ds.getStatus()) && ds.getStatus().equalsIgnoreCase("Error")) {
|
||||
throw new Exception(Translator.get("i18n_invalid_ds"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
DataTableInfoDTO dataTableInfo = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
String sql = dataTableInfo.isBase64Encryption() ? new String(java.util.Base64.getDecoder().decode(dataTableInfo.getSql())) : dataTableInfo.getSql();
|
||||
sql = dataSetTableService.handleVariableDefaultValue(sql, datasetTable.getSqlVariableDetails(), ds.getType(), false);
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQuerySQLWithPage(sql, fields, page, pageSize, realSize, false, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
datasourceRequest.setPage(page);
|
||||
datasourceRequest.setFetchSize(Integer.parseInt(dataSetTableRequest.getRow()));
|
||||
datasourceRequest.setPageSize(pageSize);
|
||||
datasourceRequest.setRealSize(realSize);
|
||||
datasourceRequest.setPreviewData(true);
|
||||
try {
|
||||
datasourceRequest.setPageable(true);
|
||||
datasourceRequest.setPermissionFields(fields);
|
||||
data.addAll(datasourceProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else {
|
||||
// check doris table
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "custom")) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
|
||||
DataTableInfoDTO dt = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
List<DataSetTableUnionDTO> list = dataSetTableUnionService.listByTableId(dt.getList().get(0).getTableId());
|
||||
|
||||
String sql = "";
|
||||
try {
|
||||
sql = dataSetTableService.getCustomSQLDatasource(dt, list, ds);
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQuerySQLWithPage(sql, fields, page, pageSize, realSize, false, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
|
||||
try {
|
||||
|
||||
data.addAll(datasourceProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else {
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
} else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "union")) {
|
||||
if (datasetTable.getMode() == 0) {
|
||||
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
|
||||
if (ObjectUtils.isEmpty(ds)) {
|
||||
DataEaseException.throwException(Translator.get("i18n_datasource_delete"));
|
||||
}
|
||||
Provider datasourceProvider = ProviderFactory.getProvider(ds.getType());
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
|
||||
DataTableInfoDTO dt = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
|
||||
|
||||
String sql = "";
|
||||
try {
|
||||
sql = (String) dataSetTableService.getUnionSQLDatasource(dt, ds).get("sql");
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQuerySQLWithPage(sql, fields, page, pageSize, realSize, false, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
|
||||
try {
|
||||
|
||||
data.addAll(datasourceProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
} else {
|
||||
Datasource ds = engineService.getDeEngine();
|
||||
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
|
||||
DatasourceRequest datasourceRequest = new DatasourceRequest();
|
||||
datasourceRequest.setDatasource(ds);
|
||||
String table = TableUtils.tableName(dataSetTableRequest.getId());
|
||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||
datasourceRequest.setQuery(qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, null, rowPermissionsTree));
|
||||
map.put("sql", java.util.Base64.getEncoder().encodeToString(datasourceRequest.getQuery().getBytes()));
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
|
||||
DataEaseException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
List<Map<String, Object>> jsonArray = new ArrayList<>();
|
||||
if (CollectionUtils.isNotEmpty(data)) {
|
||||
jsonArray = data.stream().map(ele -> {
|
||||
Map<String, Object> tmpMap = new HashMap<>();
|
||||
for (int i = 0; i < ele.length; i++) {
|
||||
if (desensitizationList.keySet().contains(fieldArray[i])) {
|
||||
tmpMap.put(fieldArray[i], ChartDataBuild.desensitizationValue(desensitizationList.get(fieldArray[i]), String.valueOf(ele[i])));
|
||||
} else {
|
||||
tmpMap.put(fieldArray[i], ele[i]);
|
||||
}
|
||||
}
|
||||
return tmpMap;
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
map.put("fields", fields);
|
||||
map.put("data", jsonArray);
|
||||
return map;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -17,4 +17,20 @@ CREATE TABLE `panel_link_ticket`
|
||||
ALTER TABLE `panel_link_mapping`
|
||||
ADD COLUMN `require_ticket` tinyint(1) NOT NULL DEFAULT 0 AFTER `uuid`;
|
||||
|
||||
INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALUES ('ai.baseUrl', 'https://maxkb.fit2cloud.com/ui/chat/5baa787163381fa2', 'text', 100);
|
||||
INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALUES ('ai.baseUrl', 'https://maxkb.fit2cloud.com/ui/chat/5baa787163381fa2', 'text', 100);
|
||||
|
||||
|
||||
DROP TABLE IF EXISTS `export_task`;
|
||||
CREATE TABLE `export_task` (
|
||||
`id` varchar(255) NOT NULL,
|
||||
`user_id` bigint(20) NOT NULL ,
|
||||
`file_name` varchar(2048) DEFAULT NULL,
|
||||
`file_size` DOUBLE DEFAULT NULL,
|
||||
`export_from` varchar(255) DEFAULT NULL,
|
||||
`export_status` varchar(255) DEFAULT NULL,
|
||||
`export_from_type` varchar(255) DEFAULT NULL,
|
||||
`export_time` bigint(20) DEFAULT NULL,
|
||||
`export_pogress` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
|
||||
|
@ -0,0 +1,27 @@
|
||||
package io.dataease.plugins.common.base.domain;
|
||||
|
||||
import java.io.Serializable;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ExportTask implements Serializable {
|
||||
private String id;
|
||||
|
||||
private Long userId;
|
||||
|
||||
private String fileName;
|
||||
|
||||
private Double fileSize;
|
||||
|
||||
private String exportFrom;
|
||||
|
||||
private String exportStatus;
|
||||
|
||||
private String exportFromType;
|
||||
|
||||
private Long exportTime;
|
||||
|
||||
private String exportPogress;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
@ -0,0 +1,800 @@
|
||||
package io.dataease.plugins.common.base.domain;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ExportTaskExample {
|
||||
protected String orderByClause;
|
||||
|
||||
protected boolean distinct;
|
||||
|
||||
protected List<Criteria> oredCriteria;
|
||||
|
||||
public ExportTaskExample() {
|
||||
oredCriteria = new ArrayList<Criteria>();
|
||||
}
|
||||
|
||||
public void setOrderByClause(String orderByClause) {
|
||||
this.orderByClause = orderByClause;
|
||||
}
|
||||
|
||||
public String getOrderByClause() {
|
||||
return orderByClause;
|
||||
}
|
||||
|
||||
public void setDistinct(boolean distinct) {
|
||||
this.distinct = distinct;
|
||||
}
|
||||
|
||||
public boolean isDistinct() {
|
||||
return distinct;
|
||||
}
|
||||
|
||||
public List<Criteria> getOredCriteria() {
|
||||
return oredCriteria;
|
||||
}
|
||||
|
||||
public void or(Criteria criteria) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
|
||||
public Criteria or() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
oredCriteria.add(criteria);
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public Criteria createCriteria() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
if (oredCriteria.size() == 0) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected Criteria createCriteriaInternal() {
|
||||
Criteria criteria = new Criteria();
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public void clear() {
|
||||
oredCriteria.clear();
|
||||
orderByClause = null;
|
||||
distinct = false;
|
||||
}
|
||||
|
||||
protected abstract static class GeneratedCriteria {
|
||||
protected List<Criterion> criteria;
|
||||
|
||||
protected GeneratedCriteria() {
|
||||
super();
|
||||
criteria = new ArrayList<Criterion>();
|
||||
}
|
||||
|
||||
public boolean isValid() {
|
||||
return criteria.size() > 0;
|
||||
}
|
||||
|
||||
public List<Criterion> getAllCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public List<Criterion> getCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition) {
|
||||
if (condition == null) {
|
||||
throw new RuntimeException("Value for condition cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value, String property) {
|
||||
if (value == null) {
|
||||
throw new RuntimeException("Value for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value1, Object value2, String property) {
|
||||
if (value1 == null || value2 == null) {
|
||||
throw new RuntimeException("Between values for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value1, value2));
|
||||
}
|
||||
|
||||
public Criteria andIdIsNull() {
|
||||
addCriterion("id is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIsNotNull() {
|
||||
addCriterion("id is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdEqualTo(String value) {
|
||||
addCriterion("id =", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotEqualTo(String value) {
|
||||
addCriterion("id <>", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThan(String value) {
|
||||
addCriterion("id >", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("id >=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThan(String value) {
|
||||
addCriterion("id <", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThanOrEqualTo(String value) {
|
||||
addCriterion("id <=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLike(String value) {
|
||||
addCriterion("id like", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotLike(String value) {
|
||||
addCriterion("id not like", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIn(List<String> values) {
|
||||
addCriterion("id in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotIn(List<String> values) {
|
||||
addCriterion("id not in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdBetween(String value1, String value2) {
|
||||
addCriterion("id between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotBetween(String value1, String value2) {
|
||||
addCriterion("id not between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdIsNull() {
|
||||
addCriterion("user_id is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdIsNotNull() {
|
||||
addCriterion("user_id is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdEqualTo(Long value) {
|
||||
addCriterion("user_id =", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdNotEqualTo(Long value) {
|
||||
addCriterion("user_id <>", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdGreaterThan(Long value) {
|
||||
addCriterion("user_id >", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdGreaterThanOrEqualTo(Long value) {
|
||||
addCriterion("user_id >=", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdLessThan(Long value) {
|
||||
addCriterion("user_id <", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdLessThanOrEqualTo(Long value) {
|
||||
addCriterion("user_id <=", value, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdIn(List<Long> values) {
|
||||
addCriterion("user_id in", values, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdNotIn(List<Long> values) {
|
||||
addCriterion("user_id not in", values, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdBetween(Long value1, Long value2) {
|
||||
addCriterion("user_id between", value1, value2, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUserIdNotBetween(Long value1, Long value2) {
|
||||
addCriterion("user_id not between", value1, value2, "userId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameIsNull() {
|
||||
addCriterion("file_name is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameIsNotNull() {
|
||||
addCriterion("file_name is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameEqualTo(String value) {
|
||||
addCriterion("file_name =", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameNotEqualTo(String value) {
|
||||
addCriterion("file_name <>", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameGreaterThan(String value) {
|
||||
addCriterion("file_name >", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("file_name >=", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameLessThan(String value) {
|
||||
addCriterion("file_name <", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameLessThanOrEqualTo(String value) {
|
||||
addCriterion("file_name <=", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameLike(String value) {
|
||||
addCriterion("file_name like", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameNotLike(String value) {
|
||||
addCriterion("file_name not like", value, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameIn(List<String> values) {
|
||||
addCriterion("file_name in", values, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameNotIn(List<String> values) {
|
||||
addCriterion("file_name not in", values, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameBetween(String value1, String value2) {
|
||||
addCriterion("file_name between", value1, value2, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileNameNotBetween(String value1, String value2) {
|
||||
addCriterion("file_name not between", value1, value2, "fileName");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeIsNull() {
|
||||
addCriterion("file_size is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeIsNotNull() {
|
||||
addCriterion("file_size is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeEqualTo(Double value) {
|
||||
addCriterion("file_size =", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeNotEqualTo(Double value) {
|
||||
addCriterion("file_size <>", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeGreaterThan(Double value) {
|
||||
addCriterion("file_size >", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeGreaterThanOrEqualTo(Double value) {
|
||||
addCriterion("file_size >=", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeLessThan(Double value) {
|
||||
addCriterion("file_size <", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeLessThanOrEqualTo(Double value) {
|
||||
addCriterion("file_size <=", value, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeIn(List<Double> values) {
|
||||
addCriterion("file_size in", values, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeNotIn(List<Double> values) {
|
||||
addCriterion("file_size not in", values, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeBetween(Double value1, Double value2) {
|
||||
addCriterion("file_size between", value1, value2, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andFileSizeNotBetween(Double value1, Double value2) {
|
||||
addCriterion("file_size not between", value1, value2, "fileSize");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromIsNull() {
|
||||
addCriterion("export_from is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromIsNotNull() {
|
||||
addCriterion("export_from is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromEqualTo(String value) {
|
||||
addCriterion("export_from =", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromNotEqualTo(String value) {
|
||||
addCriterion("export_from <>", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromGreaterThan(String value) {
|
||||
addCriterion("export_from >", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("export_from >=", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromLessThan(String value) {
|
||||
addCriterion("export_from <", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromLessThanOrEqualTo(String value) {
|
||||
addCriterion("export_from <=", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromLike(String value) {
|
||||
addCriterion("export_from like", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromNotLike(String value) {
|
||||
addCriterion("export_from not like", value, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromIn(List<String> values) {
|
||||
addCriterion("export_from in", values, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromNotIn(List<String> values) {
|
||||
addCriterion("export_from not in", values, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromBetween(String value1, String value2) {
|
||||
addCriterion("export_from between", value1, value2, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromNotBetween(String value1, String value2) {
|
||||
addCriterion("export_from not between", value1, value2, "exportFrom");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusIsNull() {
|
||||
addCriterion("export_status is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusIsNotNull() {
|
||||
addCriterion("export_status is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusEqualTo(String value) {
|
||||
addCriterion("export_status =", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusNotEqualTo(String value) {
|
||||
addCriterion("export_status <>", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusGreaterThan(String value) {
|
||||
addCriterion("export_status >", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("export_status >=", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusLessThan(String value) {
|
||||
addCriterion("export_status <", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusLessThanOrEqualTo(String value) {
|
||||
addCriterion("export_status <=", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusLike(String value) {
|
||||
addCriterion("export_status like", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusNotLike(String value) {
|
||||
addCriterion("export_status not like", value, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusIn(List<String> values) {
|
||||
addCriterion("export_status in", values, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusNotIn(List<String> values) {
|
||||
addCriterion("export_status not in", values, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusBetween(String value1, String value2) {
|
||||
addCriterion("export_status between", value1, value2, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportStatusNotBetween(String value1, String value2) {
|
||||
addCriterion("export_status not between", value1, value2, "exportStatus");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeIsNull() {
|
||||
addCriterion("export_from_type is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeIsNotNull() {
|
||||
addCriterion("export_from_type is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeEqualTo(String value) {
|
||||
addCriterion("export_from_type =", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeNotEqualTo(String value) {
|
||||
addCriterion("export_from_type <>", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeGreaterThan(String value) {
|
||||
addCriterion("export_from_type >", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("export_from_type >=", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeLessThan(String value) {
|
||||
addCriterion("export_from_type <", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeLessThanOrEqualTo(String value) {
|
||||
addCriterion("export_from_type <=", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeLike(String value) {
|
||||
addCriterion("export_from_type like", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeNotLike(String value) {
|
||||
addCriterion("export_from_type not like", value, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeIn(List<String> values) {
|
||||
addCriterion("export_from_type in", values, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeNotIn(List<String> values) {
|
||||
addCriterion("export_from_type not in", values, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeBetween(String value1, String value2) {
|
||||
addCriterion("export_from_type between", value1, value2, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportFromTypeNotBetween(String value1, String value2) {
|
||||
addCriterion("export_from_type not between", value1, value2, "exportFromType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeIsNull() {
|
||||
addCriterion("export_time is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeIsNotNull() {
|
||||
addCriterion("export_time is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeEqualTo(Long value) {
|
||||
addCriterion("export_time =", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeNotEqualTo(Long value) {
|
||||
addCriterion("export_time <>", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeGreaterThan(Long value) {
|
||||
addCriterion("export_time >", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeGreaterThanOrEqualTo(Long value) {
|
||||
addCriterion("export_time >=", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeLessThan(Long value) {
|
||||
addCriterion("export_time <", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeLessThanOrEqualTo(Long value) {
|
||||
addCriterion("export_time <=", value, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeIn(List<Long> values) {
|
||||
addCriterion("export_time in", values, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeNotIn(List<Long> values) {
|
||||
addCriterion("export_time not in", values, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeBetween(Long value1, Long value2) {
|
||||
addCriterion("export_time between", value1, value2, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportTimeNotBetween(Long value1, Long value2) {
|
||||
addCriterion("export_time not between", value1, value2, "exportTime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressIsNull() {
|
||||
addCriterion("export_pogress is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressIsNotNull() {
|
||||
addCriterion("export_pogress is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressEqualTo(String value) {
|
||||
addCriterion("export_pogress =", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressNotEqualTo(String value) {
|
||||
addCriterion("export_pogress <>", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressGreaterThan(String value) {
|
||||
addCriterion("export_pogress >", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("export_pogress >=", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressLessThan(String value) {
|
||||
addCriterion("export_pogress <", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressLessThanOrEqualTo(String value) {
|
||||
addCriterion("export_pogress <=", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressLike(String value) {
|
||||
addCriterion("export_pogress like", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressNotLike(String value) {
|
||||
addCriterion("export_pogress not like", value, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressIn(List<String> values) {
|
||||
addCriterion("export_pogress in", values, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressNotIn(List<String> values) {
|
||||
addCriterion("export_pogress not in", values, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressBetween(String value1, String value2) {
|
||||
addCriterion("export_pogress between", value1, value2, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExportPogressNotBetween(String value1, String value2) {
|
||||
addCriterion("export_pogress not between", value1, value2, "exportPogress");
|
||||
return (Criteria) this;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criteria extends GeneratedCriteria {
|
||||
|
||||
protected Criteria() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criterion {
|
||||
private String condition;
|
||||
|
||||
private Object value;
|
||||
|
||||
private Object secondValue;
|
||||
|
||||
private boolean noValue;
|
||||
|
||||
private boolean singleValue;
|
||||
|
||||
private boolean betweenValue;
|
||||
|
||||
private boolean listValue;
|
||||
|
||||
private String typeHandler;
|
||||
|
||||
public String getCondition() {
|
||||
return condition;
|
||||
}
|
||||
|
||||
public Object getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public Object getSecondValue() {
|
||||
return secondValue;
|
||||
}
|
||||
|
||||
public boolean isNoValue() {
|
||||
return noValue;
|
||||
}
|
||||
|
||||
public boolean isSingleValue() {
|
||||
return singleValue;
|
||||
}
|
||||
|
||||
public boolean isBetweenValue() {
|
||||
return betweenValue;
|
||||
}
|
||||
|
||||
public boolean isListValue() {
|
||||
return listValue;
|
||||
}
|
||||
|
||||
public String getTypeHandler() {
|
||||
return typeHandler;
|
||||
}
|
||||
|
||||
protected Criterion(String condition) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.typeHandler = null;
|
||||
this.noValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.typeHandler = typeHandler;
|
||||
if (value instanceof List<?>) {
|
||||
this.listValue = true;
|
||||
} else {
|
||||
this.singleValue = true;
|
||||
}
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value) {
|
||||
this(condition, value, null);
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.secondValue = secondValue;
|
||||
this.typeHandler = typeHandler;
|
||||
this.betweenValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue) {
|
||||
this(condition, value, secondValue, null);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package io.dataease.plugins.common.base.mapper;
|
||||
|
||||
import io.dataease.plugins.common.base.domain.ExportTask;
|
||||
import io.dataease.plugins.common.base.domain.ExportTaskExample;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
public interface ExportTaskMapper {
|
||||
long countByExample(ExportTaskExample example);
|
||||
|
||||
int deleteByExample(ExportTaskExample example);
|
||||
|
||||
int deleteByPrimaryKey(String id);
|
||||
|
||||
int insert(ExportTask record);
|
||||
|
||||
int insertSelective(ExportTask record);
|
||||
|
||||
List<ExportTask> selectByExample(ExportTaskExample example);
|
||||
|
||||
ExportTask selectByPrimaryKey(String id);
|
||||
|
||||
int updateByExampleSelective(@Param("record") ExportTask record, @Param("example") ExportTaskExample example);
|
||||
|
||||
int updateByExample(@Param("record") ExportTask record, @Param("example") ExportTaskExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(ExportTask record);
|
||||
|
||||
int updateByPrimaryKey(ExportTask record);
|
||||
}
|
@ -0,0 +1,276 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="io.dataease.plugins.common.base.mapper.ExportTaskMapper">
|
||||
<resultMap id="BaseResultMap" type="io.dataease.plugins.common.base.domain.ExportTask">
|
||||
<id column="id" jdbcType="VARCHAR" property="id" />
|
||||
<result column="user_id" jdbcType="BIGINT" property="userId" />
|
||||
<result column="file_name" jdbcType="VARCHAR" property="fileName" />
|
||||
<result column="file_size" jdbcType="DOUBLE" property="fileSize" />
|
||||
<result column="export_from" jdbcType="VARCHAR" property="exportFrom" />
|
||||
<result column="export_status" jdbcType="VARCHAR" property="exportStatus" />
|
||||
<result column="export_from_type" jdbcType="VARCHAR" property="exportFromType" />
|
||||
<result column="export_time" jdbcType="BIGINT" property="exportTime" />
|
||||
<result column="export_pogress" jdbcType="VARCHAR" property="exportPogress" />
|
||||
</resultMap>
|
||||
<sql id="Example_Where_Clause">
|
||||
<where>
|
||||
<foreach collection="oredCriteria" item="criteria" separator="or">
|
||||
<if test="criteria.valid">
|
||||
<trim prefix="(" prefixOverrides="and" suffix=")">
|
||||
<foreach collection="criteria.criteria" item="criterion">
|
||||
<choose>
|
||||
<when test="criterion.noValue">
|
||||
and ${criterion.condition}
|
||||
</when>
|
||||
<when test="criterion.singleValue">
|
||||
and ${criterion.condition} #{criterion.value}
|
||||
</when>
|
||||
<when test="criterion.betweenValue">
|
||||
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
|
||||
</when>
|
||||
<when test="criterion.listValue">
|
||||
and ${criterion.condition}
|
||||
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
|
||||
#{listItem}
|
||||
</foreach>
|
||||
</when>
|
||||
</choose>
|
||||
</foreach>
|
||||
</trim>
|
||||
</if>
|
||||
</foreach>
|
||||
</where>
|
||||
</sql>
|
||||
<sql id="Update_By_Example_Where_Clause">
|
||||
<where>
|
||||
<foreach collection="example.oredCriteria" item="criteria" separator="or">
|
||||
<if test="criteria.valid">
|
||||
<trim prefix="(" prefixOverrides="and" suffix=")">
|
||||
<foreach collection="criteria.criteria" item="criterion">
|
||||
<choose>
|
||||
<when test="criterion.noValue">
|
||||
and ${criterion.condition}
|
||||
</when>
|
||||
<when test="criterion.singleValue">
|
||||
and ${criterion.condition} #{criterion.value}
|
||||
</when>
|
||||
<when test="criterion.betweenValue">
|
||||
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
|
||||
</when>
|
||||
<when test="criterion.listValue">
|
||||
and ${criterion.condition}
|
||||
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
|
||||
#{listItem}
|
||||
</foreach>
|
||||
</when>
|
||||
</choose>
|
||||
</foreach>
|
||||
</trim>
|
||||
</if>
|
||||
</foreach>
|
||||
</where>
|
||||
</sql>
|
||||
<sql id="Base_Column_List">
|
||||
id, user_id, file_name, file_size, export_from, export_status, export_from_type,
|
||||
export_time, export_pogress
|
||||
</sql>
|
||||
<select id="selectByExample" parameterType="io.dataease.plugins.common.base.domain.ExportTaskExample" resultMap="BaseResultMap">
|
||||
select
|
||||
<if test="distinct">
|
||||
distinct
|
||||
</if>
|
||||
<include refid="Base_Column_List" />
|
||||
from export_task
|
||||
<if test="_parameter != null">
|
||||
<include refid="Example_Where_Clause" />
|
||||
</if>
|
||||
<if test="orderByClause != null">
|
||||
order by ${orderByClause}
|
||||
</if>
|
||||
</select>
|
||||
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="Base_Column_List" />
|
||||
from export_task
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
</select>
|
||||
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
|
||||
delete from export_task
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
</delete>
|
||||
<delete id="deleteByExample" parameterType="io.dataease.plugins.common.base.domain.ExportTaskExample">
|
||||
delete from export_task
|
||||
<if test="_parameter != null">
|
||||
<include refid="Example_Where_Clause" />
|
||||
</if>
|
||||
</delete>
|
||||
<insert id="insert" parameterType="io.dataease.plugins.common.base.domain.ExportTask">
|
||||
insert into export_task (id, user_id, file_name,
|
||||
file_size, export_from, export_status,
|
||||
export_from_type, export_time, export_pogress
|
||||
)
|
||||
values (#{id,jdbcType=VARCHAR}, #{userId,jdbcType=BIGINT}, #{fileName,jdbcType=VARCHAR},
|
||||
#{fileSize,jdbcType=DOUBLE}, #{exportFrom,jdbcType=VARCHAR}, #{exportStatus,jdbcType=VARCHAR},
|
||||
#{exportFromType,jdbcType=VARCHAR}, #{exportTime,jdbcType=BIGINT}, #{exportPogress,jdbcType=VARCHAR}
|
||||
)
|
||||
</insert>
|
||||
<insert id="insertSelective" parameterType="io.dataease.plugins.common.base.domain.ExportTask">
|
||||
insert into export_task
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null">
|
||||
id,
|
||||
</if>
|
||||
<if test="userId != null">
|
||||
user_id,
|
||||
</if>
|
||||
<if test="fileName != null">
|
||||
file_name,
|
||||
</if>
|
||||
<if test="fileSize != null">
|
||||
file_size,
|
||||
</if>
|
||||
<if test="exportFrom != null">
|
||||
export_from,
|
||||
</if>
|
||||
<if test="exportStatus != null">
|
||||
export_status,
|
||||
</if>
|
||||
<if test="exportFromType != null">
|
||||
export_from_type,
|
||||
</if>
|
||||
<if test="exportTime != null">
|
||||
export_time,
|
||||
</if>
|
||||
<if test="exportPogress != null">
|
||||
export_pogress,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null">
|
||||
#{id,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="userId != null">
|
||||
#{userId,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="fileName != null">
|
||||
#{fileName,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="fileSize != null">
|
||||
#{fileSize,jdbcType=DOUBLE},
|
||||
</if>
|
||||
<if test="exportFrom != null">
|
||||
#{exportFrom,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportStatus != null">
|
||||
#{exportStatus,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportFromType != null">
|
||||
#{exportFromType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportTime != null">
|
||||
#{exportTime,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="exportPogress != null">
|
||||
#{exportPogress,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<select id="countByExample" parameterType="io.dataease.plugins.common.base.domain.ExportTaskExample" resultType="java.lang.Long">
|
||||
select count(*) from export_task
|
||||
<if test="_parameter != null">
|
||||
<include refid="Example_Where_Clause" />
|
||||
</if>
|
||||
</select>
|
||||
<update id="updateByExampleSelective" parameterType="map">
|
||||
update export_task
|
||||
<set>
|
||||
<if test="record.id != null">
|
||||
id = #{record.id,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.userId != null">
|
||||
user_id = #{record.userId,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="record.fileName != null">
|
||||
file_name = #{record.fileName,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.fileSize != null">
|
||||
file_size = #{record.fileSize,jdbcType=DOUBLE},
|
||||
</if>
|
||||
<if test="record.exportFrom != null">
|
||||
export_from = #{record.exportFrom,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.exportStatus != null">
|
||||
export_status = #{record.exportStatus,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.exportFromType != null">
|
||||
export_from_type = #{record.exportFromType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.exportTime != null">
|
||||
export_time = #{record.exportTime,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="record.exportPogress != null">
|
||||
export_pogress = #{record.exportPogress,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</set>
|
||||
<if test="_parameter != null">
|
||||
<include refid="Update_By_Example_Where_Clause" />
|
||||
</if>
|
||||
</update>
|
||||
<update id="updateByExample" parameterType="map">
|
||||
update export_task
|
||||
set id = #{record.id,jdbcType=VARCHAR},
|
||||
user_id = #{record.userId,jdbcType=BIGINT},
|
||||
file_name = #{record.fileName,jdbcType=VARCHAR},
|
||||
file_size = #{record.fileSize,jdbcType=DOUBLE},
|
||||
export_from = #{record.exportFrom,jdbcType=VARCHAR},
|
||||
export_status = #{record.exportStatus,jdbcType=VARCHAR},
|
||||
export_from_type = #{record.exportFromType,jdbcType=VARCHAR},
|
||||
export_time = #{record.exportTime,jdbcType=BIGINT},
|
||||
export_pogress = #{record.exportPogress,jdbcType=VARCHAR}
|
||||
<if test="_parameter != null">
|
||||
<include refid="Update_By_Example_Where_Clause" />
|
||||
</if>
|
||||
</update>
|
||||
<update id="updateByPrimaryKeySelective" parameterType="io.dataease.plugins.common.base.domain.ExportTask">
|
||||
update export_task
|
||||
<set>
|
||||
<if test="userId != null">
|
||||
user_id = #{userId,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="fileName != null">
|
||||
file_name = #{fileName,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="fileSize != null">
|
||||
file_size = #{fileSize,jdbcType=DOUBLE},
|
||||
</if>
|
||||
<if test="exportFrom != null">
|
||||
export_from = #{exportFrom,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportStatus != null">
|
||||
export_status = #{exportStatus,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportFromType != null">
|
||||
export_from_type = #{exportFromType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="exportTime != null">
|
||||
export_time = #{exportTime,jdbcType=BIGINT},
|
||||
</if>
|
||||
<if test="exportPogress != null">
|
||||
export_pogress = #{exportPogress,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</set>
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
</update>
|
||||
<update id="updateByPrimaryKey" parameterType="io.dataease.plugins.common.base.domain.ExportTask">
|
||||
update export_task
|
||||
set user_id = #{userId,jdbcType=BIGINT},
|
||||
file_name = #{fileName,jdbcType=VARCHAR},
|
||||
file_size = #{fileSize,jdbcType=DOUBLE},
|
||||
export_from = #{exportFrom,jdbcType=VARCHAR},
|
||||
export_status = #{exportStatus,jdbcType=VARCHAR},
|
||||
export_from_type = #{exportFromType,jdbcType=VARCHAR},
|
||||
export_time = #{exportTime,jdbcType=BIGINT},
|
||||
export_pogress = #{exportPogress,jdbcType=VARCHAR}
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
</update>
|
||||
</mapper>
|
Loading…
Reference in New Issue
Block a user