1、项目列表和知识库的导出改为脚本导出
This commit is contained in:
@@ -42,11 +42,11 @@ public class ExportOperate {
|
||||
} finally {
|
||||
File taskFile = new File(taskJsonFileName);
|
||||
if (taskFile.exists()) {
|
||||
// taskFile.delete();
|
||||
taskFile.delete();
|
||||
}
|
||||
File columnFile = new File(columnFileName);
|
||||
if (columnFile.exists()) {
|
||||
// columnFile.delete();
|
||||
columnFile.delete();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -592,7 +592,7 @@ public class DataFileController implements IDataFeignClient {
|
||||
@PostMapping("/exportKnowledgeList")
|
||||
@Operation(summary = "导出知识库", description = "导出知识库")
|
||||
public SdmResponse exportKnowledgeList(@RequestBody KnowledgeExportExcelFormat knowledgeExportExcelFormat , HttpServletResponse httpservletResponse) {
|
||||
return IDataFileService.exportKnowledgeList(knowledgeExportExcelFormat, httpservletResponse);
|
||||
return IDataFileService.exportKnowledgeListByScript(knowledgeExportExcelFormat, httpservletResponse);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -441,6 +441,8 @@ public interface IDataFileService {
|
||||
*/
|
||||
SdmResponse exportKnowledgeList(KnowledgeExportExcelFormat knowledgeExportExcelFormat, HttpServletResponse httpservletResponse);
|
||||
|
||||
SdmResponse exportKnowledgeListByScript(KnowledgeExportExcelFormat knowledgeExportExcelFormat, HttpServletResponse httpservletResponse);
|
||||
|
||||
ResponseEntity<Object> onlyOfficeCallback(CallbackData callbackData);
|
||||
|
||||
SdmResponse downloadFileForEdit(Long fileId);
|
||||
|
||||
@@ -35,6 +35,7 @@ import com.sdm.common.log.CoreLogger;
|
||||
import com.sdm.common.utils.*;
|
||||
import com.sdm.common.utils.excel.ExcelUtil;
|
||||
import com.sdm.data.aop.PermissionCheckAspect;
|
||||
import com.sdm.data.bo.ExportOperate;
|
||||
import com.sdm.data.model.bo.ApprovalFileDataContentsModel;
|
||||
import com.sdm.data.model.dto.ExportKnowledgeDto;
|
||||
import com.sdm.data.model.dto.FileDictTagsAggDTO;
|
||||
@@ -186,6 +187,9 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
|
||||
@Autowired
|
||||
private FileModifyApproveHelper fileModifyApproveHelper;
|
||||
|
||||
@Autowired
|
||||
private ExportOperate exportOperate;
|
||||
|
||||
|
||||
|
||||
private static final String TEMP_FILE_PATH = "/usr/local/nginx/html/storage/";
|
||||
@@ -3829,6 +3833,33 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SdmResponse exportKnowledgeListByScript(KnowledgeExportExcelFormat knowledgeExportExcelFormat, HttpServletResponse httpServletResponse) {
|
||||
FileSearchReq req = new FileSearchReq();
|
||||
KnowledgeExportExcelParam params = knowledgeExportExcelFormat.getParams();
|
||||
if (ObjectUtils.isNotEmpty(params)) {
|
||||
BeanUtils.copyProperties(params,req);
|
||||
}
|
||||
req.setCurrent(1);
|
||||
req.setSize(10000);
|
||||
SdmResponse response = fileSearch(req);
|
||||
if (ObjectUtils.isEmpty(response)) {
|
||||
log.error("exportKnowledgeListByScript,未查询到知识库文件");
|
||||
return SdmResponse.success(new ArrayList<>());
|
||||
} else {
|
||||
String taskFileName = exportOperate.convertToFile(JSON.toJSONString(response), JSON.toJSONString(knowledgeExportExcelFormat));
|
||||
File file = new File(taskFileName);
|
||||
if (!file.exists()) {
|
||||
response = SdmResponse.failed("知识库文件不存在");
|
||||
} else {
|
||||
String taskSaveName = "仿真标准库_" + RandomUtil.generateString(6) + ".xlsx";
|
||||
SystemOperate.outputHttpFileStream(httpServletResponse, taskFileName, taskSaveName);
|
||||
file.delete();
|
||||
}
|
||||
}
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Object> onlyOfficeCallback(CallbackData callbackData) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.sdm.data.service.impl;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.sdm.common.common.ResultCode;
|
||||
@@ -18,6 +19,7 @@ import com.sdm.common.entity.resp.data.FileMetadataInfoResp;
|
||||
import com.sdm.common.service.CommonService;
|
||||
import com.sdm.common.utils.*;
|
||||
import com.sdm.common.utils.excel.ExcelUtil;
|
||||
import com.sdm.data.bo.ExportOperate;
|
||||
import com.sdm.data.dao.DataMapper;
|
||||
import com.sdm.data.dao.SystemMapper;
|
||||
import com.sdm.data.dao.UserMapper;
|
||||
@@ -32,6 +34,7 @@ import lombok.Data;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -73,6 +76,9 @@ public class SystemFileIDataFileServiceImpl implements IDataFileService {
|
||||
@Resource
|
||||
private CommonService commonService;
|
||||
|
||||
@Autowired
|
||||
private ExportOperate exportOperate;
|
||||
|
||||
// @Override
|
||||
// public String getType() {
|
||||
// return type;
|
||||
@@ -1616,6 +1622,33 @@ public class SystemFileIDataFileServiceImpl implements IDataFileService {
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SdmResponse exportKnowledgeListByScript(KnowledgeExportExcelFormat knowledgeExportExcelFormat, HttpServletResponse httpServletResponse) {
|
||||
FileSearchReq req = new FileSearchReq();
|
||||
KnowledgeExportExcelParam params = knowledgeExportExcelFormat.getParams();
|
||||
if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(params)) {
|
||||
BeanUtils.copyProperties(params,req);
|
||||
}
|
||||
req.setCurrent(1);
|
||||
req.setSize(10000);
|
||||
SdmResponse response = fileSearch(req);
|
||||
if (org.apache.commons.lang3.ObjectUtils.isEmpty(response)) {
|
||||
log.error("exportKnowledgeListByScript,未查询到知识库文件");
|
||||
return SdmResponse.success(new ArrayList<>());
|
||||
} else {
|
||||
String taskFileName = exportOperate.convertToFile(JSON.toJSONString(response), JSON.toJSONString(knowledgeExportExcelFormat));
|
||||
File file = new File(taskFileName);
|
||||
if (!file.exists()) {
|
||||
response = SdmResponse.failed("知识库文件不存在");
|
||||
} else {
|
||||
String taskSaveName = "仿真标准库_" + RandomUtil.generateString(6) + ".xlsx";
|
||||
SystemOperate.outputHttpFileStream(httpServletResponse, taskFileName, taskSaveName);
|
||||
file.delete();
|
||||
}
|
||||
}
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Object> onlyOfficeCallback(CallbackData callbackData) {
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user