From d6e936e3dcb645658fa7e0c3e02c1daa30bfeb68 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期二, 13 十月 2026 15:55:56 +0800
Subject: [PATCH] 上传命名规则调整
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java | 49 +++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 45 insertions(+), 4 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
index 259a1ff..16be382 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
@@ -3,18 +3,23 @@
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
import com.ruoyi.common.utils.file.FileUtils;
import com.ruoyi.framework.config.ServerConfig;
+import io.swagger.annotations.ApiOperation;
import org.apache.catalina.connector.Connector;
import org.apache.catalina.startup.Tomcat;
import org.apache.coyote.AbstractProtocol;
+import org.apache.pdfbox.pdmodel.PDDocument;
+import org.apache.pdfbox.text.PDFTextStripper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
+import org.springframework.mock.web.MockMultipartFile;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -23,6 +28,7 @@
import javax.management.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.lang.management.ManagementFactory;
import java.util.Set;
@@ -72,13 +78,31 @@
@PostMapping("/common/upload")
public AjaxResult uploadFile(MultipartFile file) throws Exception {
- int tomcatPort1 = getTomcatPort();
- log.info("tomcatPort1鐨勫�间负锛� {}", tomcatPort1);
- //杩欎釜鐪佷汉姘戞槸8099锛屾墍浠ョ洿鎺ュ啓姝�
- int tomcatPort = 8099;
try {
// 涓婁紶鏂囦欢璺緞
String filePath = RuoYiConfig.getUploadPath();
+
+ //鍒ゆ柇鏂囦欢鏄惁瀛樺湪
+ String filename = file.getOriginalFilename().trim();
+ String felinamePath = FileUploadUtils.extractFilename(file);
+// String pathFileName = FileUploadUtils.getPathFileName(filePath, s);
+ for (int i=1;i<500;i++) {
+ File file1 = new File(filePath + "/" + felinamePath);
+ boolean exists = file1.exists();
+ if (exists) {
+ int index = filename.lastIndexOf(".");
+ String startStr = filename.substring(0, index);
+ String endStr = filename.substring(index, filename.length());
+
+ String newFilename = startStr + "-" + i + endStr; // your new filename
+ felinamePath = DateUtils.datePath() + "/" + newFilename;
+ String contentType = file.getContentType();
+ byte[] bytes = file.getBytes();
+ file = new MockMultipartFile(newFilename, newFilename, contentType, bytes);
+ }else{
+ break;
+ }
+ }
// 涓婁紶骞惰繑鍥炴柊鏂囦欢鍚嶇О
String fileName = FileUploadUtils.upload(filePath, file);
String url1 = serverConfig.getUrl();
@@ -161,4 +185,21 @@
}
return 0;
}
+
+ @ApiOperation("pdf璇嗗埆")
+ @GetMapping("/common/pdfBox")
+ public String pdfBox(String filePath) throws Exception {
+ try (PDDocument document = PDDocument.load(new File(filePath))) {
+ PDFTextStripper stripper = new PDFTextStripper();
+ stripper.setSortByPosition(true); // 鎸夐〉闈㈡帓鐗堥『搴忚緭鍑烘枃瀛楋紝鍙戠エ蹇呴』寮�杩欎釜
+ // 鍙戠エ浠g爜
+ String codeReg = "鍙戠エ浠g爜[:锛歖(\\d{10,12})";
+ // 鍙戠エ鍙风爜
+ String noReg = "鍙戠エ鍙风爜[:锛歖(\\d{8})";
+ // 浠风◣鍚堣
+ String amountReg = "浠风◣鍚堣.*?楼([0-9.]+)";
+ String text=stripper.getText(document);
+ return text;
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3