From ba482fb9b73b43e5fbe6a0e206a103535f8a0c42 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Wed, 29 Oct 2025 17:20:34 +0800
Subject: [PATCH] 1.航线(kmz)业务增加,Minio文件路径字段。 2.增加方法从URL中提取文件路径部分。

---
 ard-route/src/main/java/com/ard/route/util/ToolUtils.java |   34 ++++++++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/ard-route/src/main/java/com/ard/route/util/ToolUtils.java b/ard-route/src/main/java/com/ard/route/util/ToolUtils.java
index 3721f3f..3080eb8 100644
--- a/ard-route/src/main/java/com/ard/route/util/ToolUtils.java
+++ b/ard-route/src/main/java/com/ard/route/util/ToolUtils.java
@@ -40,4 +40,38 @@
         return fileNameWithExt;
     }
 
+    /**
+     * 从URL中提取文件路径部分
+     * @param url 完整的URL字符串
+     * @return 文件路径部分
+     */
+    public static String extractFilePath(String url) {
+        if (url == null || url.isEmpty()) {
+            return "";
+        }
+
+        // 找到最后一个 "kmz/" 的位置,加上4以包含 "kmz/"
+        int index = url.lastIndexOf("kmz/");
+        if (index != -1) {
+            return url.substring(index + 4); // +4 跳过 "kmz/"
+        }
+
+        // 如果没有找到 "kmz/",尝试其他方式
+        return extractPathByDomain(url);
+    }
+
+    /**
+     * 备选方法:通过域名后的第一个斜杠来提取
+     */
+    private static String extractPathByDomain(String url) {
+        // 移除协议头
+        String withoutProtocol = url.replaceFirst("^https?://", "");
+        // 找到第一个斜杠位置
+        int slashIndex = withoutProtocol.indexOf("/");
+        if (slashIndex != -1) {
+            return withoutProtocol.substring(slashIndex + 1);
+        }
+        return "";
+    }
+
 }

--
Gitblit v1.9.3