diff --git a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DatabaseDocController.java b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DatabaseDocController.java index 24715ca4..1d3dac2c 100644 --- a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DatabaseDocController.java +++ b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DatabaseDocController.java @@ -189,10 +189,13 @@ public class DatabaseDocController { DatabaseExportVo exportVo = new DatabaseExportVo(columnList, tableList); if (Objects.equals(exportFormat, 1)) { PoiUtil.exportByText(exportVo, response); + return null; } else if (Objects.equals(exportFormat, 2)) { PoiUtil.exportByXlsx(exportVo, response); + return null; } else if (Objects.equals(exportFormat, 3)) { PoiUtil.exportByDocx(dbName, exportVo, response); + return null; } return DocDbResponseJson.error("导出失败:请先选择导出类型"); } catch (Exception e) { diff --git a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DbDataViewController.java b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DbDataViewController.java index 8d7c4066..0603c8f0 100644 --- a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DbDataViewController.java +++ b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/DbDataViewController.java @@ -127,7 +127,7 @@ public class DbDataViewController { e.printStackTrace(); return DocDbResponseJson.error("导出失败:" + e.getMessage()); } - return DocDbResponseJson.ok(); + return null; } /** diff --git a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/download/ExcelFormatDownloadService.java b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/download/ExcelFormatDownloadService.java index d1f33c6b..cb8b7e6f 100644 --- a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/download/ExcelFormatDownloadService.java +++ b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/controller/download/ExcelFormatDownloadService.java @@ -15,6 +15,7 @@ import com.zyplayer.doc.db.framework.db.mapper.base.ExecuteParam; import com.zyplayer.doc.db.framework.db.mapper.base.ExecuteResult; import com.zyplayer.doc.db.framework.db.mapper.base.ExecuteType; import com.zyplayer.doc.db.framework.db.mapper.base.SqlExecutor; +import com.zyplayer.doc.db.framework.utils.SQLTransformUtils; import com.zyplayer.doc.db.service.common.ExecuteAuthService; import com.zyplayer.doc.db.service.database.DatabaseServiceFactory; import com.zyplayer.doc.db.service.database.DbBaseService; @@ -24,11 +25,11 @@ import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; - import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.net.URLEncoder; +import java.sql.Clob; import java.sql.Timestamp; import java.util.*; import java.util.stream.Collectors; @@ -43,7 +44,7 @@ import java.util.stream.Stream; @Service(FormatDownloadConst.EXCEL) public class ExcelFormatDownloadService implements FormatDownloadService { private static Logger logger = LoggerFactory.getLogger(ExcelFormatDownloadService.class); - + @Resource ExecuteAuthService executeAuthService; @Resource @@ -52,7 +53,7 @@ public class ExcelFormatDownloadService implements FormatDownloadService { BaseDownloadService baseDownloadService; @Resource SqlExecutor sqlExecutor; - + @Override public void download(HttpServletResponse response, DataViewParam param, String[] tableNameArr) throws Exception { DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(param.getSourceId()); @@ -112,6 +113,12 @@ public class ExcelFormatDownloadService implements FormatDownloadService { downloadDataList.add(new LinkedList() {{ for (TableColumnDescDto columnDto : columnListRetain) { Object data = dataMap.get(columnDto.getName()); + //CLOB类型数据处理 + if(columnDto.getType().equals("CLOB")){ + if(data!=null){ + data = SQLTransformUtils.ClobToString((Clob) data); + } + } // 数据格式处理,不处理有些格式会造成乱码,打不开文件 if (!(data == null || data instanceof Number || data instanceof CharSequence)) { if (data instanceof Timestamp) { @@ -147,7 +154,7 @@ public class ExcelFormatDownloadService implements FormatDownloadService { } } } - + private List> getSheetHeadList(List columnListRetain) { List> sheetHeadList = new ArrayList<>(); for (TableColumnDescDto dataCol : columnListRetain) { diff --git a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/service/database/DmServiceImpl.java b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/service/database/DmServiceImpl.java index 2fc2ec4d..41104149 100644 --- a/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/service/database/DmServiceImpl.java +++ b/zyplayer-doc-db/src/main/java/com/zyplayer/doc/db/service/database/DmServiceImpl.java @@ -48,6 +48,9 @@ public class DmServiceImpl extends DbBaseService { if(queryColumnsArray[i].equalsIgnoreCase("IDENTITY")){ queryColumnsArray[i] = "\"IDENTITY\""; } + if(queryColumnsArray[i].equalsIgnoreCase("DOMAIN")){ + queryColumnsArray[i] = "\"DOMAIN\""; + } if(i < queryColumnsArray.length-1){ resultString +=queryColumnsArray[i] + ","; }else{