From e17f787bb9450a90ec4d0731ca068b8284f044b2 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sun, 11 Jan 2026 15:55:21 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/controller/backend/AdminController.java |   59 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 38 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/nq/controller/backend/AdminController.java b/src/main/java/com/nq/controller/backend/AdminController.java
index 033cd1b..17b4237 100644
--- a/src/main/java/com/nq/controller/backend/AdminController.java
+++ b/src/main/java/com/nq/controller/backend/AdminController.java
@@ -1,6 +1,7 @@
 package com.nq.controller.backend;
 
 
+import cn.hutool.core.util.StrUtil;
 import com.github.pagehelper.PageInfo;
 
 import com.google.common.collect.Maps;
@@ -15,7 +16,11 @@
 
 import com.nq.utils.PropertiesUtil;
 
+import java.io.File;
+import java.io.IOException;
+import java.time.LocalDate;
 import java.util.Map;
+import java.util.UUID;
 
 import javax.servlet.http.HttpServletRequest;
 
@@ -92,29 +97,41 @@
     @ResponseBody
     public ServerResponse upload(HttpSession session, @RequestParam(value = "upload_file", required = false) MultipartFile file, HttpServletRequest request) {
 
-        String path = request.getSession().getServletContext().getRealPath("upload");
-
-        ServerResponse serverResponse = this.iFileUploadService.upload(file, path);
-
-        if (serverResponse.isSuccess()) {
-
-            String targetFileName = serverResponse.getData().toString();
-
-            String url = PropertiesUtil.getProperty("ftp.server.http.prefix") + targetFileName;
-
-
-            Map fileMap = Maps.newHashMap();
-
-            fileMap.put("uri", targetFileName);
-
-            fileMap.put("url", url);
-
-
-            return ServerResponse.createBySuccess(fileMap);
-
+        // 兼容c端组件上传原理
+        String fileType = file.getOriginalFilename();
+        if (StrUtil.isEmpty(fileType) || fileType.contains("blob")) {
+            fileType = "blob.png";
         }
 
-        return serverResponse;
+        String fileName = file.getOriginalFilename();
+        String fileExtentionName = fileName.substring(fileName.lastIndexOf(".") + 1);
+
+        // 生成唯一的文件名
+        String id = UUID.randomUUID().toString();
+        String path = LocalDate.now() + "/" + id + "." + fileExtentionName;
+
+        // 确保目标文件夹存在
+        File targetDir = new File(PropertiesUtil.getProperty("loca.images.dir")  + "/" + LocalDate.now());
+        if (!targetDir.exists()) {
+            targetDir.mkdirs();
+        }
+
+        // 构建本地文件路径
+        File localFile = new File(targetDir, id + "." + fileExtentionName);
+
+        // 打印上传路径
+        log.info("LocalFileUploadService uploadFile localFilePath: {}", localFile.getAbsolutePath());
+
+        try {
+            // 将文件保存到本地
+            file.transferTo(localFile);
+
+        } catch (IOException e) {
+            log.error("LocalFileUploadService uploadFile IOException", e.getMessage(), e);
+        }
+        String url = PropertiesUtil.getProperty("ftp.server.http.prefix") + path;
+        // 返回相对路径
+        return ServerResponse.createBySuccess(url);
 
     }
 

--
Gitblit v1.9.3