浏览代码

问题修改

hlf 2 年之前
父节点
当前提交
357e850ed7

+ 0 - 5
ims-service/ims-eval/pom.xml

@@ -75,11 +75,6 @@
             <artifactId>poi-ooxml</artifactId>
             <version>3.17-beta1</version>
         </dependency>
-        <dependency>
-            <groupId>com.artofsolving</groupId>
-            <artifactId>jodconverter</artifactId>
-            <version>2.2.1</version>
-        </dependency>
     </dependencies>
     <build>
         <plugins>

+ 11 - 10
ims-service/ims-eval/src/main/java/com/ims/eval/controller/NoticeManagementController.java

@@ -10,7 +10,6 @@ import com.ims.eval.entity.custom.Path;
 import com.ims.eval.entity.dto.result.R;
 import com.ims.eval.service.IDataDictionaryService;
 import com.ims.eval.service.IEvaluationNoticeService;
-import com.ims.eval.util.FileConversionUtil;
 import com.ims.eval.util.FileUploadUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -226,13 +225,17 @@ public class NoticeManagementController {
 	/**
 	 * 通告展示
 	 *
-	 * @return 结果
+	 * @param deptId      部门主键
+	 * @param noticeTitle 通告标题
+	 * @return
 	 */
-	@GetMapping(value = "/circularDisplay/{deptId}")
-	public R circularDisplay(@PathVariable String deptId) {
+	@GetMapping(value = "/circularDisplay")
+	public R circularDisplay(@RequestParam(value = "deptId") String deptId,
+							 @RequestParam(value = "noticeTitle") String noticeTitle) {
 		QueryWrapper<EvaluationNotice> qw = new QueryWrapper<>();
-		if (StringUtils.isNotEmpty("已发布")) {
-			qw.lambda().eq(EvaluationNotice::getReleaseState, "已发布");
+		qw.lambda().eq(EvaluationNotice::getReleaseState, "已发布");
+		if (StringUtils.isNotEmpty(noticeTitle)) {
+			qw.lambda().eq(EvaluationNotice::getNoticeTitle, noticeTitle);
 		}
 		List<EvaluationNotice> evaluationNoticeList = evaluationNoticeService.list(qw);
 		List<EvaluationNotice> list = new ArrayList<>();
@@ -264,9 +267,7 @@ public class NoticeManagementController {
 	 */
 	@GetMapping(value = "/filePreview")
 	public R convertToHtml(@RequestParam("url") String url) {
-		String fromFilePath = Path.getNoticePath() + url;
-		String saveFilePath = Path.getNoticePath() + url.substring(0, url.lastIndexOf("/")) + "/";
-		String fileName = FileConversionUtil.conversionToPdf(fromFilePath, saveFilePath);
-		return R.ok().data(fileName);
+		String httpUrl = "http://192.168.2.14:8098/office/" + url;
+		return R.ok().data(httpUrl);
 	}
 }

+ 0 - 122
ims-service/ims-eval/src/main/java/com/ims/eval/util/FileConversionUtil.java

@@ -1,122 +0,0 @@
-package com.ims.eval.util;
-
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.io.FileTypeUtil;
-import com.artofsolving.jodconverter.DocumentConverter;
-import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
-import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;
-import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;
-
-import java.io.*;
-import java.nio.file.Files;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-/**
- * @author hlf
- * @date 2023/6/1 17:30
- * 文件说明:
- */
-public class FileConversionUtil {
-
-	//启动OpenOffice服务
-	static {
-		List<String> command = new ArrayList<>();
-		//OpenOffice的安装目录下的soffice路径D:\OpenOffice 4\program\soffice.exe
-		command.add("D:\\OpenOffice 4\\program\\soffice.exe");
-		command.add("-headless");
-		command.add("-accept=\"socket,host=127.0.0.1,port=8100;urp;\" -nofirststartwizard");
-		command.add("-nofirststartwizard");
-		command.forEach(v -> System.out.print(v + " "));
-		System.out.println();
-		ProcessBuilder builder = new ProcessBuilder();
-		//正常信息和错误信息合并输出
-		builder.redirectErrorStream(true);
-		builder.command(command);
-		//开始执行命令
-		try {
-			builder.start();
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * office文件转换成pdf文件
-	 *
-	 * @param fromFilePath 要转换文件的文件路径
-	 * @param saveFilePath 转换完后文件的保存路径
-	 * @return 返回最后转换后的文件名
-	 */
-	public static String conversionToPdf(String fromFilePath, String saveFilePath) {
-		String timesuffix = DateUtil.format(new Date(), "yyyyMMddHHmmss");
-		String docFileName;
-		String resultFileName;
-		// 识别文件类型
-		String fileType = "";
-		try (FileInputStream fromFileInputStream = new FileInputStream(fromFilePath)) {
-			fileType = FileTypeUtil.getType(fromFileInputStream);
-		} catch (FileNotFoundException e) {
-			return "待转换的文件不存在";
-		} catch (IOException e) {
-			return "文件读取失败";
-		}
-		if ("doc".equals(fileType)) {
-			docFileName = "doc_" + timesuffix + ".doc";
-			resultFileName = "doc_" + timesuffix + ".pdf";
-		} else if ("docx".equals(fileType)) {
-			docFileName = "docx_" + timesuffix + ".docx";
-			resultFileName = "docx_" + timesuffix + ".pdf";
-		} else if ("xls".equals(fileType)) {
-			docFileName = "xls_" + timesuffix + ".xls";
-			resultFileName = "xls_" + timesuffix + ".pdf";
-		} else if ("xlsx".equals(fileType)) {
-			docFileName = "xlsx_" + timesuffix + ".xlsx";
-			resultFileName = "xlsx_" + timesuffix + ".pdf";
-		} else if ("ppt".equals(fileType)) {
-			docFileName = "ppt_" + timesuffix + ".ppt";
-			resultFileName = "ppt_" + timesuffix + ".pdf";
-		} else if ("pptx".equals(fileType)) {
-			docFileName = "pptx_" + timesuffix + ".pptx";
-			resultFileName = "pptx_" + timesuffix + ".pdf";
-		} else {
-			return "转换错误,文件后缀不是doc、docx、xls、xlsx、ppt、pptx";
-		}
-		// 将待转文件拷贝一份写入到saveFilePath下
-		File docInputFile = new File(saveFilePath + File.separatorChar + docFileName);
-		File resultOutputFile = new File(saveFilePath + File.separatorChar + resultFileName);
-		if (resultOutputFile.exists()) {
-			resultOutputFile.delete();
-		}
-		try (OutputStream os = Files.newOutputStream(docInputFile.toPath())) {
-			try (FileInputStream fromFileInputStream = new FileInputStream(fromFilePath)) {
-				int bytesRead = 0;
-				byte[] buffer = new byte[1024 * 8];
-				while ((bytesRead = fromFileInputStream.read(buffer)) != -1) {
-					os.write(buffer, 0, bytesRead);
-				}
-			}
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-		// 连接OpenOffice服务。需提前开启OpenOffice服务,否则会报错
-		OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
-		try {
-			connection.connect();
-		} catch (Exception e) {
-			System.out.println("连接OpenOffice服务失败,请检查是否启动OpenOffice服务");
-		}
-		// 转化,将saveFilePath下的拷贝的原始文件转化为pdf
-		DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
-		try {
-			converter.convert(docInputFile, resultOutputFile);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		// 转换完之后删除拷贝的原始文件
-		docInputFile.delete();
-		connection.disconnect();
-		return resultFileName;
-	}
-}

+ 1 - 3
ims-service/ims-eval/src/main/java/com/ims/eval/util/FileUploadUtil.java

@@ -1,14 +1,12 @@
 package com.ims.eval.util;
 
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.lang.UUID;
 import com.ims.common.utils.StringUtils;
 import com.ims.eval.entity.custom.Path;
 import com.ims.eval.exception.FileNameLengthLimitExceededException;
 import com.ims.eval.exception.FileSizeLimitExceededException;
 import com.ims.eval.exception.InvalidExtensionException;
 import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.lang3.time.DateFormatUtils;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.File;
@@ -108,7 +106,7 @@ public class FileUploadUtil {
 		String fileName = file.getOriginalFilename();
 		String fileNameNow = fileName.substring(0, fileName.lastIndexOf("."));
 		String extension = getExtension(file);
-		fileName = DateFormatUtils.format(new Date(), "yyyy/MM/dd") + "/" + fileNameNow + "_" + DateUtil.format(new Date(), "HHmmssSSS") + "." + extension;
+		fileName = fileNameNow + "_" + DateUtil.format(new Date(), "HHmmssSSS") + "." + extension;
 		return fileName;
 	}