From 6aadb11fadc266df78db165a64f479216da920b6 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Wed, 29 Oct 2025 10:48:01 +0800
Subject: [PATCH] 1.增加minio文件删除-指定桶,接口。 2.航线(kmz)业务增加,导入航线(kmz)文件接口。

---
 ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java |   22 +++++++----
 ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java  |   31 +++++++++++++++
 ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java          |   10 +++++
 3 files changed, 55 insertions(+), 8 deletions(-)

diff --git a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java b/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java
index fc0f9a8..2ea62dc 100644
--- a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java
+++ b/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java
@@ -4,25 +4,20 @@
 import javax.servlet.http.HttpServletResponse;
 
 import com.ard.common.utils.poi.ExcelUtil;
+import com.ard.oss.model.MinioUploadResult;
 import com.ard.route.domain.route.ArdRouteInformation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ard.common.annotation.Log;
 import com.ard.common.core.controller.BaseController;
 import com.ard.common.core.domain.AjaxResult;
 import com.ard.common.enums.BusinessType;
 import com.ard.route.service.IArdRouteInformationService;
 import com.ard.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 航线(kmz)Controller
@@ -108,4 +103,15 @@
         return toAjax(ardRouteInformationService.deleteArdRouteInformationByIds(ids));
     }
 
+    /**
+     * 导入航线(kmz)文件
+     */
+    @ApiOperation("导入航线(kmz)文件")
+    @PreAuthorize("@ss.hasPermi('route:information:upload')")
+    @PostMapping("/upload")
+    public AjaxResult upload(@RequestPart("file") MultipartFile file) {
+        MinioUploadResult minioUploadResult = ardRouteInformationService.uploadArdRouteInformation(file);
+        return success(minioUploadResult);
+    }
+
 }
diff --git a/ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java b/ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java
index 41cd1f5..59e687d 100644
--- a/ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java
+++ b/ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java
@@ -1,6 +1,8 @@
 package com.ard.route.service;
 
+import com.ard.oss.model.MinioUploadResult;
 import com.ard.route.domain.route.ArdRouteInformation;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 
@@ -60,4 +62,12 @@
      */
     public int deleteArdRouteInformationById(String id);
 
+    /**
+     * 导入航线(kmz)文件
+     *
+     * @param file 文件
+     * @return 结果
+     */
+    public MinioUploadResult uploadArdRouteInformation(MultipartFile file);
+
 }
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java
index fcb9d7d..b9d2823 100644
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java
+++ b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java
@@ -2,13 +2,18 @@
 
 import java.util.List;
 import com.ard.common.utils.DateUtils;
+import com.ard.common.utils.file.FileUtils;
 import com.ard.common.utils.uuid.IdUtils;
+import com.ard.oss.model.MinioUploadResult;
 import com.ard.oss.service.impl.OssServiceContext;
 import com.ard.route.domain.route.ArdRouteInformation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ard.route.mapper.ArdRouteInformationMapper;
 import com.ard.route.service.IArdRouteInformationService;
+import org.springframework.web.multipart.MultipartFile;
+
+import static com.ard.route.util.ToolUtils.getFileNameWithoutExtension;
 
 /**
  * 航线(kmz)Service业务层处理
@@ -99,4 +104,30 @@
         return ardRouteInformationMapper.deleteArdRouteInformationById(id);
     }
 
+    /**
+     * 导入航线(kmz)文件
+     *
+     * @param file 文件
+     * @return 结果
+     */
+    @Override
+    public MinioUploadResult uploadArdRouteInformation(MultipartFile file) {
+        try {
+            String url = ossService.upload("kmz",file);
+            ArdRouteInformation information = new ArdRouteInformation();
+            information.setFileName(file.getOriginalFilename());
+            information.setFileNameNew(getFileNameWithoutExtension(url));
+            information.setUpPath(url);
+            information.setUpFileSize((double) file.getSize());
+            insertArdRouteInformation(information);
+            return MinioUploadResult.builder()
+                    .url(url)
+                    .newFileName(FileUtils.getName(url))
+                    .originalFilename(file.getOriginalFilename())
+                    .build();
+        }catch (Exception e){
+            return null;
+        }
+    }
+
 }

--
Gitblit v1.9.3