From da2ad4874c91ee6e14654eb11f35676ebcd1f66b Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 24 四月 2025 18:17:29 +0800 Subject: [PATCH] zjh20250424 --- ltkj-common/src/main/java/com/ltkj/common/utils/file/FileUploadUtils.java | 35 +++++++++++++++++++++++++++++++++-- 1 files changed, 33 insertions(+), 2 deletions(-) diff --git a/ltkj-common/src/main/java/com/ltkj/common/utils/file/FileUploadUtils.java b/ltkj-common/src/main/java/com/ltkj/common/utils/file/FileUploadUtils.java index 12be581..97cab76 100644 --- a/ltkj-common/src/main/java/com/ltkj/common/utils/file/FileUploadUtils.java +++ b/ltkj-common/src/main/java/com/ltkj/common/utils/file/FileUploadUtils.java @@ -78,6 +78,14 @@ } } + public static final String upload(String baseDir,String fileName,MultipartFile file) throws IOException { + try { + return upload(baseDir,fileName, file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION); + } catch (Exception e) { + throw new IOException(e.getMessage(), e); + } + } + /** * 鏂囦欢涓婁紶 * @@ -102,16 +110,38 @@ String fileName = extractFilename(file); - //String absPath = getAbsoluteFile(baseDir, fileName).getAbsolutePath(); String absPath = getAbsoluteFile(baseDir, fileName).getPath(); file.transferTo(Paths.get(absPath)); return getPathFileName(baseDir, fileName); + } + + public static final String upload(String baseDir,String fileName, MultipartFile file, String[] allowedExtension) + throws FileSizeLimitExceededException, IOException, FileNameLengthLimitExceededException, + InvalidExtensionException { + int fileNamelength = Objects.requireNonNull(file.getOriginalFilename()).length(); + if (fileNamelength > FileUploadUtils.DEFAULT_FILE_NAME_LENGTH) { + throw new FileNameLengthLimitExceededException(FileUploadUtils.DEFAULT_FILE_NAME_LENGTH); + } + + assertAllowed(file, allowedExtension); + + fileName =StringUtils.format("{}/{}.{}", DateUtils.datePath(), + fileName, getExtension(file)); + + String absPath = getAbsoluteFile(baseDir, fileName).getPath(); + file.transferTo(Paths.get(absPath)); + return fileName; } /** * 缂栫爜鏂囦欢鍚� */ public static final String extractFilename(MultipartFile file) { + return StringUtils.format("{}/{}_{}.{}", DateUtils.datePath(), + FilenameUtils.getBaseName(file.getOriginalFilename()), Seq.getId(Seq.uploadSeqType), getExtension(file)); + } + + public static final String extractXdtFilename(MultipartFile file) { return StringUtils.format("{}/{}_{}.{}", DateUtils.datePath(), FilenameUtils.getBaseName(file.getOriginalFilename()), Seq.getId(Seq.uploadSeqType), getExtension(file)); } @@ -130,9 +160,10 @@ public static final String getPathFileName(String uploadDir, String fileName) throws IOException { int dirLastIndex = ltkjConfig.getProfile().length() + 1; String currentDir = StringUtils.substring(uploadDir, dirLastIndex); - return Constants.RESOURCE_PREFIX + "/" + currentDir + "/" + fileName; + return Constants.RESOURCE_PREFIX + currentDir + "/" + fileName; } + /** * 鏂囦欢澶у皬鏍¢獙 * -- Gitblit v1.8.0