test:测试调用在线编辑文件获取

This commit is contained in:
wxyclub
2023-07-03 16:55:31 +08:00
parent d33d1f769a
commit cc6331f6a6
2 changed files with 19 additions and 17 deletions
@@ -113,7 +113,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
private String filePath;//文件存储路径
@Value("${onlyoffice.url}")
private String onlyofficeUrl;//文件存储路径
private String onlyofficeUrl;//onlyoffice文件转换服务URL
@Autowired
private SarBussionessStandDao sarBussionessStandEODao;
@@ -4937,14 +4937,21 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
try {
logger.info("======================================远程调用转换开始启动=================================");
logger.info("=================================="+ onlineFileLogs.get(0).toString());
File file = OnlyofficePdfUtil.downloadFile(filePath+"/",onlineFileLogs.get(0).getOLdFileName(), onlineFileLogs.get(0).getFilekey(), onlineFileLogs.get(0).getFilePath());
File file = OnlyofficePdfUtil.downloadFile(onlyofficeUrl,filePath,onlineFileLogs.get(0).getOLdFileName(), onlineFileLogs.get(0).getFilekey(), onlineFileLogs.get(0).getFilePath());
logger.info("======================================远程调用转换开始结束=================================");
// File file = new File(filePath+"/onlineFile/"+onlineFileLogs.get(0).getOLdFileName());
logger.info("======================================file文件路径================================="+filePath+"/onlineFile/"+onlineFileLogs.get(0).getOLdFileName());
if(file != null && file.exists()){
logger.info("==============================文件所在位置:{}",file.getAbsolutePath());
logger.info("======================================file文件保存================================="+filePath+"/onlineFile/"+onlineFileLogs.get(0).getOLdFileName());
AttFileVo attFileVo = attFileEOService.saveFileInfo(file);
if (file.delete()) {
logger.info("==================删除临时文件成功================");
}else{
logger.info("====================删除临时文件失败=================");
}
if(attFileVo!=null){
logger.info("============================文件ID{},文件存储位置:{}",attFileVo.getId(),attFileVo.getFilePath());
SarBussStandFile sarBussStandFile = new SarBussStandFile();
//sarBussStandFile.setId();
String uuId = com.adc.da.util.utils.UUID.randomUUID(20);
@@ -1,8 +1,6 @@
package com.adc.da.utils.util;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.slrs.sarBussionessStand.service.impl.SarBussionessStandServiceImpl;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.io.FileUtils;
@@ -22,26 +20,20 @@ import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
public class OnlyofficePdfUtil {
private static final Logger logger = LoggerFactory.getLogger(SarBussionessStandServiceImpl.class);
@Value("${onlyoffice.url}")
private static String onlyOfficeUrl; //onlyoffice文件转换服务URL
public static File downloadFile(String filePathInfo,String filePdfName, String key, String onlineFilePath) throws Exception {
String filePath = filePathInfo+"/onlineFile/"+filePdfName;
public static File downloadFile(String onlyOfficeUrl,String filePathInfo,String filePdfName, String key, String onlineFilePath) throws Exception {
String filePath = filePathInfo+"/onlineFile/"+filePdfName+".pdf";
logger.info("================================="+filePath);
logger.info("====================filePdfName:{},key:{},onlineFilePath:{}",filePdfName,key,onlineFilePath);
String fileUrl = convertFile(filePdfName,key,onlineFilePath);
logger.info("====================转换的请求参数:onlyOfficeUrl:{},filePdfName:{},key:{},onlineFilePath:{}",onlyOfficeUrl,filePdfName,key,onlineFilePath);
String fileUrl = convertFile(onlyOfficeUrl,filePdfName,key,onlineFilePath);
logger.info("================================="+fileUrl);
// 创建HttpClientBuilder
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
@@ -77,6 +69,7 @@ public class OnlyofficePdfUtil {
// File file = new File(Objects.requireNonNull(this.getClass().getClassLoader().getResource("")).getPath()+ filePdfName);
File file = new File(filePath);
FileUtils.copyInputStreamToFile(content,file);
content.close();
return file;
}
} else {
@@ -98,7 +91,6 @@ public class OnlyofficePdfUtil {
e.printStackTrace();
}
}
// return Result.success();
return null;
}
@@ -110,7 +102,7 @@ public class OnlyofficePdfUtil {
return newFileUrl;
}
public static String convertFile(String titleName,String key, String onlineFilePath) throws Exception{
public static String convertFile(String onlyOfficeUrl,String titleName,String key, String onlineFilePath) throws Exception{
//String url = "http://47.92.92.38:8103/7.2.1-34/ConvertService.ashx";
// String url = "http://10.100.5.116:8088/7.2.1-34/ConvertService.ashx";
Map<String,Object> map = new HashMap<>();
@@ -123,8 +115,8 @@ public class OnlyofficePdfUtil {
map.put("url","https://srms.foton.com.cn/file/"+onlineFilePath);
logger.info("=======================================https://srms.foton.com.cn/file/"+onlineFilePath);
//map.put("url","https://srms.foton.com.cn/file/model/task_768330d8/task_768330d8_top_768330d8_node.docx");
logger.info("=========================map:{}",map);
JSONObject requestJson = new JSONObject(map);
logger.info("=========================post参数:{}",requestJson);
// 创建HttpClientBuilder
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
// HttpClient
@@ -138,10 +130,12 @@ public class OnlyofficePdfUtil {
.setConnectTimeout(60000)
.build();
httpPost.setConfig(requestConfig);
// httpPost.addHeader("Content-Type","application/json");
CloseableHttpResponse response = null;
try {
//设置post请求方式为JSON
StringEntity data = new StringEntity(String.valueOf(requestJson), "UTF-8");
logger.info("=========================post参数:{}",data);
data.setContentType("application/json; charset=UTF-8");
httpPost.setEntity(data);
//发送post请求
@@ -157,6 +151,7 @@ public class OnlyofficePdfUtil {
HttpEntity entityRes = response.getEntity();
if (entityRes != null) {
String responsetData = EntityUtils.toString(entityRes, "UTF-8");
logger.info("=================================响应结果数据:{}",responsetData);
String fileUrl = analysisXML(responsetData);
logger.info("===========================================返回的文件路径"+fileUrl+"===============================");
return fileUrl;