fix: 企标修改流程文件转换错误
This commit is contained in:
+1
-1
@@ -406,7 +406,7 @@ public class BusProcessModelHisServiceImpl extends ServiceImpl<BusProcessModelHi
|
|||||||
ossFileService.updateById(replaceFile);
|
ossFileService.updateById(replaceFile);
|
||||||
// 将文件扩展名去掉
|
// 将文件扩展名去掉
|
||||||
String fileTitleName = fileName.substring(0, fileName.lastIndexOf("."));
|
String fileTitleName = fileName.substring(0, fileName.lastIndexOf("."));
|
||||||
onlineOfficePdfUtil.convertAndSavePdfFile(fileTitleName, ossFile.getId(), his.getEditFilePath());
|
onlineOfficePdfUtil.convertAndSavePdfFile(fileTitleName, replaceFile.getId(), his.getEditFilePath());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import javax.annotation.Resource;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author: Mzaxd
|
* @author: Mzaxd
|
||||||
@@ -59,15 +60,16 @@ public class OnlyOfficePdfUtil {
|
|||||||
private static final int TIMEOUT = 60000; // 通用超时设置
|
private static final int TIMEOUT = 60000; // 通用超时设置
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
public void convertAndSavePdfFile(String fileName, String key, String onlineFilePath) {
|
public void convertAndSavePdfFile(String fileName, String originFileId, String onlineFilePath) {
|
||||||
log.info("转换的请求参数:onlyOfficeUrl:{}, filePdfName:{}, key:{}, onlineFilePath:{}", onlyOfficeUrl, fileName, key, onlineFilePath);
|
String key = UUID.randomUUID().toString();
|
||||||
|
log.info("转换的请求参数:onlyOfficeUrl:{}, filePdfName:{}, key:{}, originFileId:{}, onlineFilePath:{}", onlyOfficeUrl, fileName, key, originFileId, onlineFilePath);
|
||||||
// 获取onlyOffice转换后文件的url
|
// 获取onlyOffice转换后文件的url
|
||||||
String fileUrl = convertFile(fileName, key, onlineFilePath);
|
String fileUrl = convertFile(fileName, key, onlineFilePath);
|
||||||
log.info("文件转换后PDF的URL: {}", fileUrl);
|
log.info("文件转换后PDF的URL: {}", fileUrl);
|
||||||
|
|
||||||
try (CloseableHttpClient httpClient = HttpClientBuilder.create().build()) {
|
try (CloseableHttpClient httpClient = HttpClientBuilder.create().build()) {
|
||||||
// 根据url获取转换后的文件
|
// 根据url获取转换后的文件
|
||||||
fetchAndSaveFile(httpClient, fileName, fileUrl, key);
|
fetchAndSaveFile(httpClient, fileName, fileUrl, originFileId);
|
||||||
} // 自动关闭httpClient
|
} // 自动关闭httpClient
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -109,7 +111,7 @@ public class OnlyOfficePdfUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
private void fetchAndSaveFile(CloseableHttpClient httpClient, String fileName, String fileUrl, String key) {
|
private void fetchAndSaveFile(CloseableHttpClient httpClient, String fileName, String fileUrl, String originFileId) {
|
||||||
String pdfFileName = fileName + ".pdf";
|
String pdfFileName = fileName + ".pdf";
|
||||||
HttpGet get = new HttpGet(fileUrl);
|
HttpGet get = new HttpGet(fileUrl);
|
||||||
try (CloseableHttpResponse response = httpClient.execute(get)) {
|
try (CloseableHttpResponse response = httpClient.execute(get)) {
|
||||||
@@ -125,7 +127,7 @@ public class OnlyOfficePdfUtil {
|
|||||||
if (oConvertUtils.isNotEmpty(savePath)) {
|
if (oConvertUtils.isNotEmpty(savePath)) {
|
||||||
// 如果有的话,删除原来的pdf版本
|
// 如果有的话,删除原来的pdf版本
|
||||||
LambdaQueryWrapper<OSSFile> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<OSSFile> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
lambdaQueryWrapper.eq(OSSFile::getBindId, key);
|
lambdaQueryWrapper.eq(OSSFile::getBindId, originFileId);
|
||||||
ossFileService.remove(lambdaQueryWrapper);
|
ossFileService.remove(lambdaQueryWrapper);
|
||||||
|
|
||||||
// 上传成功 进行数据库存储
|
// 上传成功 进行数据库存储
|
||||||
@@ -133,7 +135,7 @@ public class OnlyOfficePdfUtil {
|
|||||||
// 文件名
|
// 文件名
|
||||||
ossFile.setFileName(pdfFileName);
|
ossFile.setFileName(pdfFileName);
|
||||||
ossFile.setUrl(savePath);
|
ossFile.setUrl(savePath);
|
||||||
ossFile.setBindId(key);
|
ossFile.setBindId(originFileId);
|
||||||
ossFileService.save(ossFile);
|
ossFileService.save(ossFile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user