From 0572c25ae338931cb4d07407f6d010bb6d145416 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Thu, 13 Nov 2025 10:25:31 +0800
Subject: [PATCH] 1.分组管理名称修改folder-》grouping。 2.去掉多余File业务。 3.航线(kmz)业务 ArdRouteInformation修改ArdRouteInfor。 4.航线业务字段优化修改。 5.返回类型实体修改。 6.工具类优化方法优化。

---
 ard-route/src/main/java/com/ard/route/service/UavRouteService.java                   |    2 
 ard-route/src/main/resources/mapper/ArdRouteGroupingMapper.xml                       |   44 +-
 ard-route/src/main/java/com/ard/route/service/IArdRouteGroupingService.java          |   63 +++
 ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java             |    8 
 ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfor.java                |   54 ++
 ard-route/src/main/java/com/ard/route/util/ToolUtils.java                            |   17 
 ard-route/src/main/resources/mapper/ArdRouteInforMapper.xml                          |  141 ++++++
 ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java     |  237 +++++++++++
 ard-route/src/main/java/com/ard/route/mapper/ArdRouteGroupingMapper.java             |   62 ++
 /dev/null                                                                            |  157 -------
 ard-route/src/main/java/com/ard/route/mapper/ArdRouteInforMapper.java                |   97 ++++
 ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java  |  137 ++++++
 ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java             |   99 ++++
 ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java          |   31 
 ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInforController.java    |   56 +-
 ard-route/src/main/java/com/ard/route/domain/vo/KmzResultVo.java                     |    9 
 ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteGroupingController.java |   39 
 17 files changed, 997 insertions(+), 256 deletions(-)

diff --git a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFileController.java b/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFileController.java
deleted file mode 100644
index d02d79c..0000000
--- a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFileController.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package com.ard.web.controller.route;
-
-import java.util.List;
-import javax.servlet.http.HttpServletResponse;
-
-import com.alibaba.fastjson2.JSON;
-import com.ard.common.annotation.Log;
-import com.ard.common.core.controller.BaseController;
-import com.ard.common.core.domain.AjaxResult;
-import com.ard.common.core.page.TableDataInfo;
-import com.ard.common.enums.BusinessType;
-import com.ard.common.utils.poi.ExcelUtil;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-import com.ard.route.domain.route.ArdRouteFile;
-import com.ard.route.service.IArdRouteFileService;
-import org.springframework.web.multipart.MultipartFile;
-
-/**
- * 文件Controller
- * 
- * @author xia
- * @date 2025-10-18
- */
-//@Api(tags = "文件")
-@RestController
-@RequestMapping("/route/file")
-public class ArdRouteFileController extends BaseController {
-
-    @Autowired
-    private IArdRouteFileService ardRouteFileService;
-
-    /**
-     * 查询文件列表
-     */
-    //@ApiOperation("查询文件列表")
-    //@PreAuthorize("@ss.hasPermi('route:file:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ArdRouteFile ardRouteFile) {
-        startPage();
-        List<ArdRouteFile> list = ardRouteFileService.selectArdRouteFileList(ardRouteFile);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出文件列表
-     */
-    //@ApiOperation("导出文件列表")
-    //@PreAuthorize("@ss.hasPermi('route:file:export')")
-    @Log(title = "文件", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, ArdRouteFile ardRouteFile) {
-        List<ArdRouteFile> list = ardRouteFileService.selectArdRouteFileList(ardRouteFile);
-        ExcelUtil<ArdRouteFile> util = new ExcelUtil<ArdRouteFile>(ArdRouteFile.class);
-        util.exportExcel(response, list, "文件数据");
-    }
-
-    /**
-     * 获取文件详细信息
-     */
-    //@ApiOperation("获取文件详细信息")
-    //@PreAuthorize("@ss.hasPermi('route:file:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") String id) {
-        return success(ardRouteFileService.selectArdRouteFileById(id));
-    }
-
-    /**
-     * 新增文件
-     */
-    //@ApiOperation("新增文件")
-    //@PreAuthorize("@ss.hasPermi('route:file:add')")
-    @Log(title = "文件", businessType = BusinessType.INSERT)
-    //@PostMapping("/addFile/{folderId}")
-    @PostMapping("/addFile")
-    public AjaxResult add(@RequestPart("file") MultipartFile file)
-                          //@PathVariable String folderId)
-    {
-        ArdRouteFile ardRouteFile = new ArdRouteFile();
-        ardRouteFile.setCreateBy(getUsername());
-        //ardRouteFile.setFolderId(folderId);
-        return toAjax(ardRouteFileService.insertArdRouteFile(ardRouteFile, file));
-    }
-
-    /**
-     * 修改文件
-     */
-    //@ApiOperation("修改文件")
-    //@PreAuthorize("@ss.hasPermi('route:file:edit')")
-    @Log(title = "文件", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ArdRouteFile ardRouteFile) {
-        ardRouteFile.setUpdateBy(getUsername());
-        return toAjax(ardRouteFileService.updateArdRouteFile(ardRouteFile));
-    }
-
-    /**
-     * 删除文件
-     */
-    //@ApiOperation("删除文件")
-    //@PreAuthorize("@ss.hasPermi('route:file:remove')")
-    @Log(title = "文件", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable String[] ids) {
-        return toAjax(ardRouteFileService.deleteArdRouteFileByIds(ids));
-    }
-
-}
diff --git a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFolderController.java b/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteGroupingController.java
similarity index 62%
rename from ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFolderController.java
rename to ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteGroupingController.java
index f696a17..59105ee 100644
--- a/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteFolderController.java
+++ b/ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteGroupingController.java
@@ -10,10 +10,10 @@
 import com.ard.common.core.page.TableDataInfo;
 import com.ard.common.enums.BusinessType;
 import com.ard.common.utils.poi.ExcelUtil;
+import com.ard.route.domain.route.ArdRouteGrouping;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PutMapping;
@@ -22,8 +22,7 @@
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
-import com.ard.route.domain.route.ArdRouteFolder;
-import com.ard.route.service.IArdRouteFolderService;
+import com.ard.route.service.IArdRouteGroupingService;
 
 /**
  * 分组Controller
@@ -33,20 +32,20 @@
  */
 @Api(tags = "分组管理")
 @RestController
-@RequestMapping("/route/folder")
-public class ArdRouteFolderController extends BaseController {
+@RequestMapping("/route/grouping")
+public class ArdRouteGroupingController extends BaseController {
 
     @Autowired
-    private IArdRouteFolderService ardRouteFolderService;
+    private IArdRouteGroupingService ardRouteGroupingService;
 
     /**
      * 查询分组列表
      */
     @ApiOperation("查询分组列表")
     @GetMapping("/list")
-    public TableDataInfo list(ArdRouteFolder ardRouteFolder) {
+    public TableDataInfo list(ArdRouteGrouping ardRouteGrouping) {
         //startPage();
-        List<ArdRouteFolder> list = ardRouteFolderService.selectArdRouteFolderList(ardRouteFolder);
+        List<ArdRouteGrouping> list = ardRouteGroupingService.selectArdRouteGroupingList(ardRouteGrouping);
         return getDataTable(list);
     }
 
@@ -56,9 +55,9 @@
     @ApiOperation("导出分组列表")
     @Log(title = "分组", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public void export(HttpServletResponse response, ArdRouteFolder ardRouteFolder) {
-        List<ArdRouteFolder> list = ardRouteFolderService.selectArdRouteFolderList(ardRouteFolder);
-        ExcelUtil<ArdRouteFolder> util = new ExcelUtil<ArdRouteFolder>(ArdRouteFolder.class);
+    public void export(HttpServletResponse response, ArdRouteGrouping ardRouteGrouping) {
+        List<ArdRouteGrouping> list = ardRouteGroupingService.selectArdRouteGroupingList(ardRouteGrouping);
+        ExcelUtil<ArdRouteGrouping> util = new ExcelUtil<ArdRouteGrouping>(ArdRouteGrouping.class);
         util.exportExcel(response, list, "分组数据");
     }
 
@@ -68,7 +67,7 @@
     @ApiOperation("获取分组详细信息")
     @GetMapping(value = "/{id}")
     public AjaxResult getInfo(@PathVariable("id") String id) {
-        return success(ardRouteFolderService.selectArdRouteFolderById(id));
+        return success(ardRouteGroupingService.selectArdRouteGroupingById(id));
     }
 
     /**
@@ -77,9 +76,9 @@
     @ApiOperation("新增分组")
     @Log(title = "分组", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@RequestBody ArdRouteFolder ardRouteFolder) {
-        ardRouteFolder.setCreateBy(getUsername());
-        return toAjax(ardRouteFolderService.insertArdRouteFolder(ardRouteFolder));
+    public AjaxResult add(@RequestBody ArdRouteGrouping ardRouteGrouping) {
+        ardRouteGrouping.setCreateBy(getUsername());
+        return toAjax(ardRouteGroupingService.insertArdRouteGrouping(ardRouteGrouping));
     }
 
     /**
@@ -88,9 +87,9 @@
     @ApiOperation("修改分组")
     @Log(title = "分组", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult edit(@RequestBody ArdRouteFolder ardRouteFolder) {
-        ardRouteFolder.setUpdateBy(getUsername());
-        return toAjax(ardRouteFolderService.updateArdRouteFolder(ardRouteFolder));
+    public AjaxResult edit(@RequestBody ArdRouteGrouping ardRouteGrouping) {
+        ardRouteGrouping.setUpdateBy(getUsername());
+        return toAjax(ardRouteGroupingService.updateArdRouteGrouping(ardRouteGrouping));
     }
 
     /**
@@ -101,9 +100,9 @@
 	@DeleteMapping("/{ids}")
     public AjaxResult remove(@PathVariable String[] ids) {
         try {
-            Map<String, Integer> result = ardRouteFolderService.deleteArdRouteFolderByIds(ids);
+            Map<String, Integer> result = ardRouteGroupingService.deleteArdRouteGroupingByIds(ids);
             if (!result.isEmpty()) {
-                return AjaxResult.success("删除成功.分组删除" + result.get("folder") + "文件删除" + result.get("file"));
+                return AjaxResult.success("删除成功:分组删除" + result.get("groupingCount") + ",航线删除" + result.get("informationCount"));
             } else {
                 return AjaxResult.success("没有删除分组信息。");
             }
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/ArdRouteInforController.java
similarity index 60%
rename from ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java
rename to ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInforController.java
index 06f0da7..ba89a97 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/ArdRouteInforController.java
@@ -5,17 +5,16 @@
 
 import com.ard.common.utils.poi.ExcelUtil;
 import com.ard.oss.model.MinioUploadResult;
-import com.ard.route.domain.route.ArdRouteInformation;
+import com.ard.route.domain.route.ArdRouteInfor;
+import com.ard.route.service.IArdRouteInforService;
 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.*;
 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;
 
@@ -30,19 +29,19 @@
 @Api(tags = "航线信息接口")
 @RestController
 @RequestMapping("/route/information")
-public class ArdRouteInformationController extends BaseController {
+public class ArdRouteInforController extends BaseController {
 
     @Autowired
-    private IArdRouteInformationService ardRouteInformationService;
+    private IArdRouteInforService ardRouteInforService;
 
     /**
      * 查询航线(kmz)列表
      */
     @ApiOperation("查询航线(kmz)列表")
     @GetMapping("/list")
-    public TableDataInfo list(ArdRouteInformation ardRouteInformation) {
+    public TableDataInfo list(ArdRouteInfor ardRouteInfor) {
         startPage();
-        List<ArdRouteInformation> list = ardRouteInformationService.selectArdRouteInformationList(ardRouteInformation);
+        List<ArdRouteInfor> list = ardRouteInforService.selectArdRouteInforList(ardRouteInfor);
         return getDataTable(list);
     }
 
@@ -52,9 +51,9 @@
     @ApiOperation("导出航线(kmz)列表")
     @Log(title = "航线(kmz)", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public void export(HttpServletResponse response, ArdRouteInformation ardRouteInformation) {
-        List<ArdRouteInformation> list = ardRouteInformationService.selectArdRouteInformationList(ardRouteInformation);
-        ExcelUtil<ArdRouteInformation> util = new ExcelUtil<ArdRouteInformation>(ArdRouteInformation.class);
+    public void export(HttpServletResponse response, ArdRouteInfor ardRouteInfor) {
+        List<ArdRouteInfor> list = ardRouteInforService.selectArdRouteInforList(ardRouteInfor);
+        ExcelUtil<ArdRouteInfor> util = new ExcelUtil<ArdRouteInfor>(ArdRouteInfor.class);
         util.exportExcel(response, list, "航线(kmz)数据");
     }
 
@@ -64,7 +63,7 @@
     @ApiOperation("获取航线(kmz)详细信息")
     @GetMapping(value = "/{id}")
     public AjaxResult getInfo(@PathVariable("id") String id) {
-        return success(ardRouteInformationService.selectArdRouteInformationById(id));
+        return success(ardRouteInforService.selectArdRouteInforById(id));
     }
 
     /**
@@ -73,9 +72,9 @@
     @ApiOperation("新增航线(kmz)")
     @Log(title = "航线(kmz)", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@RequestBody ArdRouteInformation ardRouteInformation) {
-        ardRouteInformation.setCreateBy(getUsername());
-        return success(ardRouteInformationService.insertArdRouteInformation(ardRouteInformation));
+    public AjaxResult add(@RequestBody ArdRouteInfor ardRouteInfor) {
+        ardRouteInfor.setCreateBy(getUsername());
+        return success(ardRouteInforService.insertArdRouteInfor(ardRouteInfor));
     }
 
     /**
@@ -84,9 +83,9 @@
     @ApiOperation("修改航线(kmz)")
     @Log(title = "航线(kmz)", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult edit(@RequestBody ArdRouteInformation ardRouteInformation) {
-        ardRouteInformation.setUpdateBy(getUsername());
-        return toAjax(ardRouteInformationService.updateArdRouteInformation(ardRouteInformation));
+    public AjaxResult edit(@RequestBody ArdRouteInfor ardRouteInfor) {
+        ardRouteInfor.setUpdateBy(getUsername());
+        return toAjax(ardRouteInforService.updateArdRouteInfor(ardRouteInfor));
     }
 
     /**
@@ -96,7 +95,7 @@
     @Log(title = "航线(kmz)", businessType = BusinessType.DELETE)
 	@DeleteMapping("/{ids}")
     public AjaxResult remove(@PathVariable String[] ids) {
-        return toAjax(ardRouteInformationService.deleteArdRouteInformationByIds(ids));
+        return toAjax(ardRouteInforService.deleteArdRouteInforByIds(ids));
     }
 
     /**
@@ -105,7 +104,7 @@
     @ApiOperation("导入航线(kmz)文件")
     @PostMapping("/upload")
     public AjaxResult upload(@RequestPart("file") MultipartFile file) {
-        MinioUploadResult minioUploadResult = ardRouteInformationService.uploadArdRouteInformation(file);
+        MinioUploadResult minioUploadResult = ardRouteInforService.uploadArdRouteInfor(file);
         return success(minioUploadResult);
     }
 
@@ -114,10 +113,10 @@
      */
     @ApiOperation("修改航线分组ID")
     @Log(title = "航线(kmz)", businessType = BusinessType.UPDATE)
-    @PutMapping("/updateFolderId/{id}/{folderId}")
-    public AjaxResult updateFolderId(@PathVariable("id") String id,
-                                     @PathVariable("folderId") String folderId) {
-        return toAjax(ardRouteInformationService.updateRouteInformationFolderId(id,folderId));
+    @PutMapping("/updateGroupingId/{id}/{groupingId}")
+    public AjaxResult updateGroupingId(@PathVariable("id") String id,
+                                     @PathVariable("groupingId") String groupingId) {
+        return toAjax(ardRouteInforService.updateRouteInformationGroupingId(id,groupingId));
     }
 
     /**
@@ -127,7 +126,16 @@
     @GetMapping("/noFly/{longitude}/{latitude}")
     public Boolean noFly(@PathVariable("longitude") Double longitude,
                                @PathVariable("latitude") Double latitude) {
-        return ardRouteInformationService.selectRouteInformationNoFly(longitude,latitude);
+        return ardRouteInforService.selectRouteInformationNoFly(longitude,latitude);
     }
 
+    /**
+     * 上传航线到边缘服务器
+     */
+//    @ApiOperation("上传航线到边缘服务器")
+//    @PostMapping
+//    public AjaxResult uploadRouteInformation(@RequestBody ArdRouteInfor ArdRouteInfor) {
+//        return success(ArdRouteInforService.selectArdRouteInforByName(ArdRouteInfor.getName()));
+//    }
+
 }
diff --git a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFile.java b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFile.java
deleted file mode 100644
index 5b8b989..0000000
--- a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFile.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.ard.route.domain.route;
-
-import java.util.Date;
-import java.util.List;
-
-import com.ard.common.annotation.Excel;
-import com.ard.common.core.domain.BaseEntity;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-
-/**
- * 文件对象 ard_route_file
- * 
- * @author xia
- * @date 2025-10-18
- */
-@Data
-public class ArdRouteFile extends BaseEntity {
-
-    private static final long serialVersionUID = 1L;
-
-    /** ID */
-    private String id;
-
-    /** 文件名称 */
-    @Excel(name = "文件名称")
-    private String name;
-
-    /** 所属文件夹ID */
-    @Excel(name = "所属文件夹ID")
-    private String folderId;
-
-    /** 文件类型 */
-    @Excel(name = "文件类型")
-    private String fileType;
-
-    /** 文件大小(字节) */
-    @Excel(name = "文件大小(字节)")
-    private Long fileSize;
-
-    /** 文件存储路径 */
-    @Excel(name = "文件存储路径")
-    private String filePath;
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFolder.java b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java
similarity index 73%
rename from ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFolder.java
rename to ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java
index 8ec7f54..9772825 100644
--- a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteFolder.java
+++ b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java
@@ -7,13 +7,13 @@
 import lombok.Data;
 
 /**
- * 分组对象 ard_route_folder
+ * 分组对象 ard_route_grouping
  * 
  * @author xia
  * @date 2025-10-18
  */
 @Data
-public class ArdRouteFolder extends BaseEntity {
+public class ArdRouteGrouping extends BaseEntity {
 
     private static final long serialVersionUID = 1L;
 
@@ -22,12 +22,12 @@
 
     /** 文件夹名称 */
     @Excel(name = "文件夹名称")
-    private String fileName;
+    private String groupingName;
 
     /** 序列号 */
     @Excel(name = "序列号")
     private Integer serialNumber;
 
-    private List<ArdRouteInformation> ardRouteInformationLs;
+    private List<ArdRouteInfor> ardRouteInforLS;
 
 }
diff --git a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfor.java b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfor.java
new file mode 100644
index 0000000..3c35e1e
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfor.java
@@ -0,0 +1,54 @@
+package com.ard.route.domain.route;
+
+import com.ard.common.annotation.Excel;
+import com.ard.common.core.domain.BaseEntity;
+import com.ard.route.domain.UavRouteReq;
+import lombok.Data;
+
+/**
+ * 航线(kmz)对象 ard_route_infor
+ * 
+ * @author xia
+ * @date 2025-10-23
+ */
+@Data
+public class ArdRouteInfor extends BaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    private String id;
+
+    /** 文件名称 */
+    @Excel(name = "文件名称")
+    private String kmzName;
+
+    /** 文件路径 */
+    @Excel(name = "文件路径")
+    private String upPath;
+
+    /** 分组ID */
+    @Excel(name = "分组ID")
+    private String groupingId;
+
+    /** 航线类型 */
+    @Excel(name = "航线类型")
+    private String type;
+
+    /** 飞行器产品 */
+    @Excel(name = "飞行器产品")
+    private String aircraft;
+
+    /** 负载类型 */
+    @Excel(name = "负载类型")
+    private String payload;
+
+    /**
+     * 生成kmz文件实体类
+     */
+    private UavRouteReq uavRouteReq;
+
+    /** 航线数据 */
+    private byte[] routeData;
+
+}
diff --git a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInformation.java b/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInformation.java
deleted file mode 100644
index 24cd6eb..0000000
--- a/ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInformation.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.ard.route.domain.route;
-
-import com.ard.common.annotation.Excel;
-import com.ard.common.core.domain.BaseEntity;
-import com.ard.route.domain.UavRouteReq;
-import lombok.Data;
-
-/**
- * 航线(kmz)对象 ard_route_information
- * 
- * @author xia
- * @date 2025-10-23
- */
-@Data
-public class ArdRouteInformation extends BaseEntity {
-
-    private static final long serialVersionUID = 1L;
-
-    /** ID */
-    private String id;
-
-    /** 文件名称 */
-    @Excel(name = "文件名称")
-    private String fileName;
-
-    /** 新文件名称 */
-    @Excel(name = "新文件名称")
-    private String fileNameNew;
-
-    /** 文件路径 */
-    @Excel(name = "文件路径")
-    private String upPath;
-
-    /** 文件大小 */
-    @Excel(name = "文件大小")
-    private Double upFileSize;
-
-    /** Minio文件路径 */
-    @Excel(name = "Minio文件路径")
-    private String minioUpPath;
-
-    /** 分组ID */
-    private String folderId;
-
-    /** 航线类型 */
-    private String routeType;
-
-    /** 飞行器 */
-    private String aircraft;
-
-    /** 飞行器型号 */
-    private String aircraftModel;
-
-    /**
-     * 生成kmz文件实体类
-     */
-    private UavRouteReq uavRouteReq;
-
-    /** 航线数据 */
-    private byte[] routeData;
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/domain/vo/KmzResultVo.java b/ard-route/src/main/java/com/ard/route/domain/vo/KmzResultVo.java
index 0e5622e..5237b82 100644
--- a/ard-route/src/main/java/com/ard/route/domain/vo/KmzResultVo.java
+++ b/ard-route/src/main/java/com/ard/route/domain/vo/KmzResultVo.java
@@ -5,17 +5,8 @@
 @Data
 public class KmzResultVo {
 
-    /** 新文件名称 */
-    private String fileNameNew;
-
-    /** Minio文件路径 */
-    private String minioUpPath;
-
     /** 文件路径 */
     private String upPath;
-
-    /** 文件大小 */
-    private Double upFileSize;
 
     /** 返回数据 */
     private String data;
diff --git a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFileMapper.java b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFileMapper.java
deleted file mode 100644
index 45321db..0000000
--- a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFileMapper.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.ard.route.mapper;
-
-import java.util.List;
-import com.ard.route.domain.route.ArdRouteFile;
-
-/**
- * 文件Mapper接口
- * 
- * @author xia
- * @date 2025-10-18
- */
-public interface ArdRouteFileMapper {
-
-    /**
-     * 查询文件
-     * 
-     * @param id 文件主键
-     * @return 文件
-     */
-    public ArdRouteFile selectArdRouteFileById(String id);
-
-    /**
-     * 查询文件列表
-     * 
-     * @param ardRouteFile 文件
-     * @return 文件集合
-     */
-    public List<ArdRouteFile> selectArdRouteFileList(ArdRouteFile ardRouteFile);
-
-    /**
-     * 新增文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    public int insertArdRouteFile(ArdRouteFile ardRouteFile);
-
-    /**
-     * 修改文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    public int updateArdRouteFile(ArdRouteFile ardRouteFile);
-
-    /**
-     * 删除文件
-     * 
-     * @param id 文件主键
-     * @return 结果
-     */
-    public int deleteArdRouteFileById(String id);
-
-    /**
-     * 批量删除文件
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    public int deleteArdRouteFileByIds(String[] ids);
-
-    /**
-     * 根据所属文件夹ID,删除文件
-     *
-     * @param folderIds 所属文件夹ID
-     * @return 结果
-     */
-    public int deleteRouteFileByFolderIds(String[] folderIds);
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFolderMapper.java b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFolderMapper.java
deleted file mode 100644
index faf8960..0000000
--- a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteFolderMapper.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.ard.route.mapper;
-
-import java.util.List;
-import com.ard.route.domain.route.ArdRouteFolder;
-
-/**
- * 分组Mapper接口
- * 
- * @author xia
- * @date 2025-10-18
- */
-public interface ArdRouteFolderMapper {
-
-    /**
-     * 查询分组
-     * 
-     * @param id 分组主键
-     * @return 分组
-     */
-    public ArdRouteFolder selectArdRouteFolderById(String id);
-
-    /**
-     * 查询分组列表
-     * 
-     * @param ardRouteFolder 分组
-     * @return 分组集合
-     */
-    public List<ArdRouteFolder> selectArdRouteFolderList(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 新增分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    public int insertArdRouteFolder(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 修改分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    public int updateArdRouteFolder(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 删除分组
-     * 
-     * @param id 分组主键
-     * @return 结果
-     */
-    public int deleteArdRouteFolderById(String id);
-
-    /**
-     * 批量删除分组
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    public int deleteArdRouteFolderByIds(String[] ids);
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteGroupingMapper.java b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteGroupingMapper.java
new file mode 100644
index 0000000..67ea263
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteGroupingMapper.java
@@ -0,0 +1,62 @@
+package com.ard.route.mapper;
+
+import java.util.List;
+import com.ard.route.domain.route.ArdRouteGrouping;
+
+/**
+ * 分组Mapper接口
+ * 
+ * @author xia
+ * @date 2025-10-18
+ */
+public interface ArdRouteGroupingMapper {
+
+    /**
+     * 查询分组
+     * 
+     * @param id 分组主键
+     * @return 分组
+     */
+    public ArdRouteGrouping selectArdRouteGroupingById(String id);
+
+    /**
+     * 查询分组列表
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 分组集合
+     */
+    public List<ArdRouteGrouping> selectArdRouteGroupingList(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 新增分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    public int insertArdRouteGrouping(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 修改分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    public int updateArdRouteGrouping(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 删除分组
+     * 
+     * @param id 分组主键
+     * @return 结果
+     */
+    public int deleteArdRouteGroupingById(String id);
+
+    /**
+     * 批量删除分组
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteArdRouteGroupingByIds(String[] ids);
+
+}
diff --git a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInforMapper.java b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInforMapper.java
new file mode 100644
index 0000000..ea2f681
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInforMapper.java
@@ -0,0 +1,97 @@
+package com.ard.route.mapper;
+
+import com.ard.route.domain.route.ArdRouteInfor;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 航线(kmz)Mapper接口
+ * 
+ * @author xia
+ * @date 2025-10-23
+ */
+public interface ArdRouteInforMapper {
+
+    /**
+     * 查询航线(kmz)
+     * 
+     * @param id 航线(kmz)主键
+     * @return 航线(kmz)
+     */
+    public ArdRouteInfor selectArdRouteInforById(String id);
+
+    /**
+     * 查询航线(kmz)列表
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 航线(kmz)集合
+     */
+    public List<ArdRouteInfor> selectArdRouteInforList(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 新增航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    public int insertArdRouteInfor(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 修改航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    public int updateArdRouteInfor(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 删除航线(kmz)
+     * 
+     * @param id 航线(kmz)主键
+     * @return 结果
+     */
+    public int deleteArdRouteInforById(String id);
+
+    /**
+     * 批量删除航线(kmz)
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteArdRouteInforByIds(String[] ids);
+
+    /**
+     * 根据文件名称查询航线信息
+     *
+     * @param fileName 文件名称
+     * @return 结果
+     */
+    public ArdRouteInfor selectArdRouteInforByName(String fileName);
+
+    /**
+     * 根据所属分组ID,删除信息
+     *
+     * @param groupingIds 所属文件夹ID
+     * @return 结果
+     */
+    public int deleteRouteInforByGroupingIds(String[] groupingIds);
+
+    /**
+     * 查询航线(kmz)列表
+     *
+     * @param groupingId 所属分组ID
+     * @return 航线(kmz)集合
+     */
+    public List<ArdRouteInfor> selectArdRouteInforByGroupingId(String groupingId);
+
+    /**
+     * 修改航线分组ID
+     *
+     * @param id ID
+     * @param groupingId 分组ID
+     * @return 结果
+     */
+    public int updateRouteInforGroupingId(@Param("id") String id, @Param("groupingId")String groupingId);
+
+}
diff --git a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInformationMapper.java b/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInformationMapper.java
deleted file mode 100644
index 62a0099..0000000
--- a/ard-route/src/main/java/com/ard/route/mapper/ArdRouteInformationMapper.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package com.ard.route.mapper;
-
-import com.ard.route.domain.route.ArdRouteInformation;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * 航线(kmz)Mapper接口
- * 
- * @author xia
- * @date 2025-10-23
- */
-public interface ArdRouteInformationMapper {
-
-    /**
-     * 查询航线(kmz)
-     * 
-     * @param id 航线(kmz)主键
-     * @return 航线(kmz)
-     */
-    public ArdRouteInformation selectArdRouteInformationById(String id);
-
-    /**
-     * 查询航线(kmz)列表
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 航线(kmz)集合
-     */
-    public List<ArdRouteInformation> selectArdRouteInformationList(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 新增航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    public int insertArdRouteInformation(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 修改航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    public int updateArdRouteInformation(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 删除航线(kmz)
-     * 
-     * @param id 航线(kmz)主键
-     * @return 结果
-     */
-    public int deleteArdRouteInformationById(String id);
-
-    /**
-     * 批量删除航线(kmz)
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    public int deleteArdRouteInformationByIds(String[] ids);
-
-    /**
-     * 根据文件名称查询航线信息
-     *
-     * @param fileName 文件名称
-     * @return 结果
-     */
-    public ArdRouteInformation selectArdRouteInformationByName(String fileName);
-
-    /**
-     * 根据所属分组ID,删除信息
-     *
-     * @param folderIds 所属文件夹ID
-     * @return 结果
-     */
-    public int deleteRouteInformationByFolderIds(String[] folderIds);
-
-    /**
-     * 查询航线(kmz)列表
-     *
-     * @param folderId 所属文件夹ID
-     * @return 航线(kmz)集合
-     */
-    public List<ArdRouteInformation> selectArdRouteInformationByFolderId(String folderId);
-
-    /**
-     * 修改航线分组ID
-     *
-     * @param id ID
-     * @param folderId 分组ID
-     * @return 结果
-     */
-    public int updateRouteInformationFolderId(@Param("id") String id, @Param("folderId")String folderId);
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/IArdRouteFileService.java b/ard-route/src/main/java/com/ard/route/service/IArdRouteFileService.java
deleted file mode 100644
index b8db8fa..0000000
--- a/ard-route/src/main/java/com/ard/route/service/IArdRouteFileService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.ard.route.service;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.List;
-import com.ard.route.domain.route.ArdRouteFile;
-import org.springframework.web.multipart.MultipartFile;
-
-/**
- * 文件Service接口
- * 
- * @author xia
- * @date 2025-10-18
- */
-public interface IArdRouteFileService {
-
-    /**
-     * 查询文件
-     * 
-     * @param id 文件主键
-     * @return 文件
-     */
-    public ArdRouteFile selectArdRouteFileById(String id);
-
-    /**
-     * 查询文件列表
-     * 
-     * @param ardRouteFile 文件
-     * @return 文件集合
-     */
-    public List<ArdRouteFile> selectArdRouteFileList(ArdRouteFile ardRouteFile);
-
-    /**
-     * 新增文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    public int insertArdRouteFile(ArdRouteFile ardRouteFile, MultipartFile file);
-
-    /**
-     * 修改文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    public int updateArdRouteFile(ArdRouteFile ardRouteFile);
-
-    /**
-     * 批量删除文件
-     * 
-     * @param ids 需要删除的文件主键集合
-     * @return 结果
-     */
-    public int deleteArdRouteFileByIds(String[] ids);
-
-    /**
-     * 删除文件信息
-     * 
-     * @param id 文件主键
-     * @return 结果
-     */
-    public int deleteArdRouteFileById(String id);
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/IArdRouteFolderService.java b/ard-route/src/main/java/com/ard/route/service/IArdRouteFolderService.java
deleted file mode 100644
index 648bd74..0000000
--- a/ard-route/src/main/java/com/ard/route/service/IArdRouteFolderService.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.ard.route.service;
-
-import java.util.List;
-import java.util.Map;
-
-import com.ard.route.domain.route.ArdRouteFolder;
-
-/**
- * 分组Service接口
- * 
- * @author xia
- * @date 2025-10-18
- */
-public interface IArdRouteFolderService {
-
-    /**
-     * 查询分组
-     * 
-     * @param id 分组主键
-     * @return 分组
-     */
-    public ArdRouteFolder selectArdRouteFolderById(String id);
-
-    /**
-     * 查询分组列表
-     * 
-     * @param ardRouteFolder 分组
-     * @return 分组集合
-     */
-    public List<ArdRouteFolder> selectArdRouteFolderList(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 新增分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    public int insertArdRouteFolder(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 修改分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    public int updateArdRouteFolder(ArdRouteFolder ardRouteFolder);
-
-    /**
-     * 批量删除分组
-     * 
-     * @param ids 需要删除的分组主键集合
-     * @return 结果
-     */
-    public Map<String, Integer> deleteArdRouteFolderByIds(String[] ids);
-
-    /**
-     * 删除分组信息
-     * 
-     * @param id 分组主键
-     * @return 结果
-     */
-    public int deleteArdRouteFolderById(String id);
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/IArdRouteGroupingService.java b/ard-route/src/main/java/com/ard/route/service/IArdRouteGroupingService.java
new file mode 100644
index 0000000..4c48806
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/service/IArdRouteGroupingService.java
@@ -0,0 +1,63 @@
+package com.ard.route.service;
+
+import java.util.List;
+import java.util.Map;
+
+import com.ard.route.domain.route.ArdRouteGrouping;
+
+/**
+ * 分组Service接口
+ * 
+ * @author xia
+ * @date 2025-10-18
+ */
+public interface IArdRouteGroupingService {
+
+    /**
+     * 查询分组
+     * 
+     * @param id 分组主键
+     * @return 分组
+     */
+    public ArdRouteGrouping selectArdRouteGroupingById(String id);
+
+    /**
+     * 查询分组列表
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 分组集合
+     */
+    public List<ArdRouteGrouping> selectArdRouteGroupingList(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 新增分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    public int insertArdRouteGrouping(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 修改分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    public int updateArdRouteGrouping(ArdRouteGrouping ardRouteGrouping);
+
+    /**
+     * 批量删除分组
+     * 
+     * @param ids 需要删除的分组主键集合
+     * @return 结果
+     */
+    public Map<String, Integer> deleteArdRouteGroupingByIds(String[] ids);
+
+    /**
+     * 删除分组信息
+     * 
+     * @param id 分组主键
+     * @return 结果
+     */
+    public int deleteArdRouteGroupingById(String id);
+}
diff --git a/ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java b/ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java
new file mode 100644
index 0000000..73b1bbe
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java
@@ -0,0 +1,99 @@
+package com.ard.route.service;
+
+import com.ard.oss.model.MinioUploadResult;
+import com.ard.route.domain.route.ArdRouteInfor;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+/**
+ * 航线(kmz)Service接口
+ * 
+ * @author xia
+ * @date 2025-10-23
+ */
+public interface IArdRouteInforService {
+
+    /**
+     * 查询航线(kmz)
+     * 
+     * @param id 航线(kmz)主键
+     * @return 航线(kmz)
+     */
+    public ArdRouteInfor selectArdRouteInforById(String id);
+
+    /**
+     * 查询航线(kmz)列表
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 航线(kmz)集合
+     */
+    public List<ArdRouteInfor> selectArdRouteInforList(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 新增航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    public String insertArdRouteInfor(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 修改航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    public int updateArdRouteInfor(ArdRouteInfor ardRouteInfor);
+
+    /**
+     * 批量删除航线(kmz)
+     * 
+     * @param ids 需要删除的航线(kmz)主键集合
+     * @return 结果
+     */
+    public int deleteArdRouteInforByIds(String[] ids);
+
+    /**
+     * 删除航线(kmz)信息
+     * 
+     * @param id 航线(kmz)主键
+     * @return 结果
+     */
+    public int deleteArdRouteInforById(String id);
+
+    /**
+     * 导入航线(kmz)文件
+     *
+     * @param file 文件
+     * @return 结果
+     */
+    public MinioUploadResult uploadArdRouteInfor(MultipartFile file);
+
+    /**
+     * 根据文件名称查询航线信息
+     *
+     * @param name 文件
+     * @return 结果
+     */
+    public ArdRouteInfor selectArdRouteInforByName(String name);
+
+    /**
+     * 修改航线分组ID
+     *
+     * @param id ID
+     * @param groupingId 分组ID
+     * @return 结果
+     */
+    public int updateRouteInformationGroupingId(String id,String groupingId);
+
+    /**
+     * 判断行点是否在禁飞区
+     *
+     * @param longitude 经度
+     * @param latitude 纬度
+     * @return 结果
+     */
+    public Boolean selectRouteInformationNoFly(Double longitude, Double latitude);
+
+}
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
deleted file mode 100644
index 4de644c..0000000
--- a/ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java
+++ /dev/null
@@ -1,99 +0,0 @@
-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;
-
-/**
- * 航线(kmz)Service接口
- * 
- * @author xia
- * @date 2025-10-23
- */
-public interface IArdRouteInformationService {
-
-    /**
-     * 查询航线(kmz)
-     * 
-     * @param id 航线(kmz)主键
-     * @return 航线(kmz)
-     */
-    public ArdRouteInformation selectArdRouteInformationById(String id);
-
-    /**
-     * 查询航线(kmz)列表
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 航线(kmz)集合
-     */
-    public List<ArdRouteInformation> selectArdRouteInformationList(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 新增航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    public String insertArdRouteInformation(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 修改航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    public int updateArdRouteInformation(ArdRouteInformation ardRouteInformation);
-
-    /**
-     * 批量删除航线(kmz)
-     * 
-     * @param ids 需要删除的航线(kmz)主键集合
-     * @return 结果
-     */
-    public int deleteArdRouteInformationByIds(String[] ids);
-
-    /**
-     * 删除航线(kmz)信息
-     * 
-     * @param id 航线(kmz)主键
-     * @return 结果
-     */
-    public int deleteArdRouteInformationById(String id);
-
-    /**
-     * 导入航线(kmz)文件
-     *
-     * @param file 文件
-     * @return 结果
-     */
-    public MinioUploadResult uploadArdRouteInformation(MultipartFile file);
-
-    /**
-     * 根据文件名称查询航线信息
-     *
-     * @param name 文件
-     * @return 结果
-     */
-    public ArdRouteInformation selectArdRouteInformationByName(String name);
-
-    /**
-     * 修改航线分组ID
-     *
-     * @param id ID
-     * @param folderId 分组ID
-     * @return 结果
-     */
-    public int updateRouteInformationFolderId(String id,String folderId);
-
-    /**
-     * 判断行点是否在禁飞区
-     *
-     * @param longitude 经度
-     * @param latitude 纬度
-     * @return 结果
-     */
-    public Boolean selectRouteInformationNoFly(Double longitude, Double latitude);
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/UavRouteService.java b/ard-route/src/main/java/com/ard/route/service/UavRouteService.java
index 4937908..dbc1984 100644
--- a/ard-route/src/main/java/com/ard/route/service/UavRouteService.java
+++ b/ard-route/src/main/java/com/ard/route/service/UavRouteService.java
@@ -17,7 +17,7 @@
     /**
      * 生成kmz文件(带航点)
      */
-    public KmzResultVo buildKmz(UavRouteReq uavRouteReq, String fileName);
+    public KmzResultVo buildKmz(UavRouteReq uavRouteReq, String kmzName);
 
     /**
      * 解析kmz文件
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFileServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFileServiceImpl.java
deleted file mode 100644
index 97b721c..0000000
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFileServiceImpl.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package com.ard.route.service.impl;
-
-import java.io.IOException;
-import java.util.List;
-
-import com.ard.common.annotation.DataScope;
-import com.ard.common.utils.DateUtils;
-import com.ard.common.utils.uuid.IdUtils;
-import com.ard.oss.service.impl.OssServiceContext;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.ard.route.mapper.ArdRouteFileMapper;
-import com.ard.route.domain.route.ArdRouteFile;
-import com.ard.route.service.IArdRouteFileService;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.annotation.Resource;
-
-/**
- * 文件Service业务层处理
- * 
- * @author xia
- * @date 2025-10-18
- */
-@Service
-public class ArdRouteFileServiceImpl implements IArdRouteFileService {
-
-    @Autowired
-    private ArdRouteFileMapper ardRouteFileMapper;
-
-    @Autowired
-    private OssServiceContext ossService;
-
-    /**
-     * 查询文件
-     * 
-     * @param id 文件主键
-     * @return 文件
-     */
-    @Override
-    public ArdRouteFile selectArdRouteFileById(String id) {
-        return ardRouteFileMapper.selectArdRouteFileById(id);
-    }
-
-    /**
-     * 查询文件列表
-     * 
-     * @param ardRouteFile 文件
-     * @return 文件
-     */
-    @Override
-    @DataScope(deptAlias = "d", userAlias = "u")
-    public List<ArdRouteFile> selectArdRouteFileList(ArdRouteFile ardRouteFile) {
-        return ardRouteFileMapper.selectArdRouteFileList(ardRouteFile);
-    }
-
-    /**
-     * 新增文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    @Override
-    public int insertArdRouteFile(ArdRouteFile ardRouteFile, MultipartFile file){
-        ardRouteFile.setId(IdUtils.simpleUUID());
-        ardRouteFile.setCreateTime(DateUtils.getNowDate());
-        // 放到默认文件夹
-        ardRouteFile.setFolderId("0");
-        try {
-            String url = ossService.upload("kmz",file);
-            ardRouteFile.setFilePath(url);
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-        return ardRouteFileMapper.insertArdRouteFile(ardRouteFile);
-    }
-
-    /**
-     * 修改文件
-     * 
-     * @param ardRouteFile 文件
-     * @return 结果
-     */
-    @Override
-    public int updateArdRouteFile(ArdRouteFile ardRouteFile) {
-        ardRouteFile.setUpdateTime(DateUtils.getNowDate());
-        return ardRouteFileMapper.updateArdRouteFile(ardRouteFile);
-    }
-
-    /**
-     * 批量删除文件
-     * 
-     * @param ids 需要删除的文件主键
-     * @return 结果
-     */
-    @Override
-    public int deleteArdRouteFileByIds(String[] ids) {
-        return ardRouteFileMapper.deleteArdRouteFileByIds(ids);
-    }
-
-    /**
-     * 删除文件信息
-     * 
-     * @param id 文件主键
-     * @return 结果
-     */
-    @Override
-    public int deleteArdRouteFileById(String id) {
-        return ardRouteFileMapper.deleteArdRouteFileById(id);
-    }
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFolderServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFolderServiceImpl.java
deleted file mode 100644
index a97621b..0000000
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteFolderServiceImpl.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package com.ard.route.service.impl;
-
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import com.ard.common.annotation.DataScope;
-import com.ard.common.utils.DateUtils;
-import com.ard.common.utils.uuid.IdUtils;
-import com.ard.route.domain.route.ArdRouteFile;
-import com.ard.route.domain.route.ArdRouteInformation;
-import com.ard.route.mapper.ArdRouteFileMapper;
-import com.ard.route.mapper.ArdRouteInformationMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.ard.route.mapper.ArdRouteFolderMapper;
-import com.ard.route.domain.route.ArdRouteFolder;
-import com.ard.route.service.IArdRouteFolderService;
-import org.springframework.transaction.annotation.Transactional;
-
-/**
- * 文件夹Service业务层处理
- * 
- * @author xia
- * @date 2025-10-18
- */
-@Service
-public class ArdRouteFolderServiceImpl implements IArdRouteFolderService {
-
-    @Autowired
-    private ArdRouteFolderMapper ardRouteFolderMapper;
-
-    @Autowired
-    private ArdRouteInformationMapper ardRouteInformationMapper;
-
-    /**
-     * 查询分组
-     * 
-     * @param id 分组主键
-     * @return 分组
-     */
-    @Override
-    public ArdRouteFolder selectArdRouteFolderById(String id) {
-        ArdRouteFolder ardRouteFolder = ardRouteFolderMapper.selectArdRouteFolderById(id);
-        ardRouteFolder.setArdRouteInformationLs(ardRouteInformationMapper.selectArdRouteInformationByFolderId(id));
-        return ardRouteFolder;
-    }
-
-    /**
-     * 查询分组列表
-     * 
-     * @param ardRouteFolder 分组
-     * @return 分组
-     */
-    @Override
-    @DataScope(deptAlias = "d", userAlias = "u")
-    public List<ArdRouteFolder> selectArdRouteFolderList(ArdRouteFolder ardRouteFolder) {
-        List<ArdRouteFolder> list = ardRouteFolderMapper.selectArdRouteFolderList(ardRouteFolder);
-        for (ArdRouteFolder routeFolder : list) {
-            routeFolder.setArdRouteInformationLs(ardRouteInformationMapper.selectArdRouteInformationByFolderId(routeFolder.getId()));
-        }
-        return list;
-    }
-
-    /**
-     * 新增分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    @Override
-    public int insertArdRouteFolder(ArdRouteFolder ardRouteFolder) {
-        ardRouteFolder.setId(IdUtils.simpleUUID());
-        ardRouteFolder.setCreateTime(DateUtils.getNowDate());
-        // 获取当前数据条数
-        int count = ardRouteFolderMapper.selectArdRouteFolderList(null).size();
-        ardRouteFolder.setSerialNumber(count + 1);
-        return ardRouteFolderMapper.insertArdRouteFolder(ardRouteFolder);
-    }
-
-    /**
-     * 修改分组
-     * 
-     * @param ardRouteFolder 分组
-     * @return 结果
-     */
-    @Override
-    public int updateArdRouteFolder(ArdRouteFolder ardRouteFolder) {
-        // 不能修改默认分组
-        if ("0".equals(ardRouteFolder.getId())) {
-            throw new RuntimeException("不能修改默认分组");
-        }
-        ardRouteFolder.setUpdateTime(DateUtils.getNowDate());
-        return ardRouteFolderMapper.updateArdRouteFolder(ardRouteFolder);
-    }
-
-    /**
-     * 批量删除分组
-     * 
-     * @param ids 需要删除的分组主键
-     * @return 结果
-     */
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public Map<String, Integer> deleteArdRouteFolderByIds(String[] ids) {
-        // 检查是否包含默认分组,不能删除默认分组
-        for (String id : ids) {
-            if ("0".equals(id)) {
-                throw new RuntimeException("不能删除默认分组");
-            }
-        }
-
-        Map<String, Integer> result = new HashMap<>();
-        try {
-            // 先删除航线信息
-            int informationCount = ardRouteInformationMapper.deleteRouteInformationByFolderIds(ids);
-            result.put("informationCount", informationCount);
-
-            // 再删除分组
-            int folderCount = ardRouteFolderMapper.deleteArdRouteFolderByIds(ids);
-            result.put("folderCount", folderCount);
-
-            return result;
-        } catch (Exception e) {
-            throw e; // 抛出异常让事务回滚
-        }
-    }
-
-    /**
-     * 删除分组信息
-     * 
-     * @param id 分组主键
-     * @return 结果
-     */
-    @Override
-    public int deleteArdRouteFolderById(String id) {
-        return ardRouteFolderMapper.deleteArdRouteFolderById(id);
-    }
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java
new file mode 100644
index 0000000..715c106
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java
@@ -0,0 +1,137 @@
+package com.ard.route.service.impl;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import com.ard.common.annotation.DataScope;
+import com.ard.common.utils.DateUtils;
+import com.ard.common.utils.uuid.IdUtils;
+import com.ard.route.domain.route.ArdRouteGrouping;
+import com.ard.route.mapper.ArdRouteGroupingMapper;
+import com.ard.route.mapper.ArdRouteInforMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ard.route.service.IArdRouteGroupingService;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * 文件夹Service业务层处理
+ * 
+ * @author xia
+ * @date 2025-10-18
+ */
+@Service
+public class ArdRouteGroupingServiceImpl implements IArdRouteGroupingService {
+
+    @Autowired
+    private ArdRouteGroupingMapper ardRouteGroupingMapper;
+
+    @Autowired
+    private ArdRouteInforMapper ardRouteInforMapper;
+
+    /**
+     * 查询分组
+     * 
+     * @param id 分组主键
+     * @return 分组
+     */
+    @Override
+    public ArdRouteGrouping selectArdRouteGroupingById(String id) {
+        ArdRouteGrouping ardRouteGrouping = ardRouteGroupingMapper.selectArdRouteGroupingById(id);
+        ardRouteGrouping.setArdRouteInforLS(ardRouteInforMapper.selectArdRouteInforByGroupingId(id));
+        return ardRouteGrouping;
+    }
+
+    /**
+     * 查询分组列表
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 分组
+     */
+    @Override
+    @DataScope(deptAlias = "d", userAlias = "u")
+    public List<ArdRouteGrouping> selectArdRouteGroupingList(ArdRouteGrouping ardRouteGrouping) {
+        List<ArdRouteGrouping> list = ardRouteGroupingMapper.selectArdRouteGroupingList(ardRouteGrouping);
+        for (ArdRouteGrouping routeGrouping : list) {
+            routeGrouping.setArdRouteInforLS(ardRouteInforMapper.selectArdRouteInforByGroupingId(routeGrouping.getId()));
+        }
+        return list;
+    }
+
+    /**
+     * 新增分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    @Override
+    public int insertArdRouteGrouping(ArdRouteGrouping ardRouteGrouping) {
+        ardRouteGrouping.setId(IdUtils.simpleUUID());
+        ardRouteGrouping.setCreateTime(DateUtils.getNowDate());
+        // 获取当前数据条数
+        int count = ardRouteGroupingMapper.selectArdRouteGroupingList(null).size();
+        ardRouteGrouping.setSerialNumber(count + 1);
+        return ardRouteGroupingMapper.insertArdRouteGrouping(ardRouteGrouping);
+    }
+
+    /**
+     * 修改分组
+     * 
+     * @param ardRouteGrouping 分组
+     * @return 结果
+     */
+    @Override
+    public int updateArdRouteGrouping(ArdRouteGrouping ardRouteGrouping) {
+        // 不能修改默认分组
+        if ("0".equals(ardRouteGrouping.getId())) {
+            throw new RuntimeException("不能修改默认分组");
+        }
+        ardRouteGrouping.setUpdateTime(DateUtils.getNowDate());
+        return ardRouteGroupingMapper.updateArdRouteGrouping(ardRouteGrouping);
+    }
+
+    /**
+     * 批量删除分组
+     * 
+     * @param ids 需要删除的分组主键
+     * @return 结果
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Map<String, Integer> deleteArdRouteGroupingByIds(String[] ids) {
+        // 检查是否包含默认分组,不能删除默认分组
+        for (String id : ids) {
+            if ("0".equals(id)) {
+                throw new RuntimeException("不能删除默认分组");
+            }
+        }
+
+        Map<String, Integer> result = new HashMap<>();
+        try {
+            // 先删除航线信息
+            int informationCount = ardRouteInforMapper.deleteRouteInforByGroupingIds(ids);
+            result.put("informationCount", informationCount);
+
+            // 再删除分组
+            int groupingCount = ardRouteGroupingMapper.deleteArdRouteGroupingByIds(ids);
+            result.put("groupingCount", groupingCount);
+
+            return result;
+        } catch (Exception e) {
+            throw e; // 抛出异常让事务回滚
+        }
+    }
+
+    /**
+     * 删除分组信息
+     * 
+     * @param id 分组主键
+     * @return 结果
+     */
+    @Override
+    public int deleteArdRouteGroupingById(String id) {
+        return ardRouteGroupingMapper.deleteArdRouteGroupingById(id);
+    }
+
+}
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java
new file mode 100644
index 0000000..ea33a8b
--- /dev/null
+++ b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java
@@ -0,0 +1,237 @@
+package com.ard.route.service.impl;
+
+import java.io.IOException;
+import java.util.List;
+
+import com.ard.common.exception.ControlException;
+import com.ard.common.utils.DateUtils;
+import com.ard.common.utils.file.FileUtils;
+import com.ard.common.utils.uuid.IdUtils;
+import com.ard.data.noflyzone.domain.ArdNoFlyZone;
+import com.ard.data.noflyzone.domain.Vertex;
+import com.ard.data.noflyzone.service.IArdNoFlyZoneService;
+import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
+import com.ard.oss.model.MinioUploadResult;
+import com.ard.oss.service.impl.OssServiceContext;
+import com.ard.route.domain.UavRouteReq;
+import com.ard.route.domain.route.ArdRouteInfor;
+import com.ard.route.domain.vo.KmzResultVo;
+import com.ard.route.mapper.ArdRouteInforMapper;
+import com.ard.route.service.IArdRouteInforService;
+import com.ard.route.service.UavRouteService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+
+import static com.ard.route.util.ToolUtils.*;
+
+/**
+ * 航线(kmz)Service业务层处理
+ * 
+ * @author xia
+ * @date 2025-10-23
+ */
+@Service
+public class ArdRouteInforServiceImpl implements IArdRouteInforService {
+
+    @Autowired
+    private ArdRouteInforMapper ardRouteInforMapper;
+
+    @Autowired
+    private OssServiceContext ossService;
+
+    @Autowired
+    private UavRouteService routeService;
+
+    @Resource
+    private IArdNoFlyZoneService ardNoFlyZoneService;
+
+    /**
+     * 查询航线(kmz)
+     * 
+     * @param id 航线(kmz)主键
+     * @return 航线(kmz)
+     */
+    @Override
+    public ArdRouteInfor selectArdRouteInforById(String id) {
+        ArdRouteInfor ardRouteInfor = ardRouteInforMapper.selectArdRouteInforById(id);
+        try {
+            ardRouteInfor.setUavRouteReq((UavRouteReq) deserialize(ardRouteInfor.getRouteData()));
+        } catch (IOException | ClassNotFoundException e) {
+            throw new RuntimeException(e);
+        }
+        return ardRouteInfor;
+    }
+
+    /**
+     * 查询航线(kmz)列表
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 航线(kmz)
+     */
+    @Override
+    public List<ArdRouteInfor> selectArdRouteInforList(ArdRouteInfor ardRouteInfor) {
+        return ardRouteInforMapper.selectArdRouteInforList(ardRouteInfor);
+    }
+
+    /**
+     * 新增航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    @Override
+    public String insertArdRouteInfor(ArdRouteInfor ardRouteInfor) {
+        ardRouteInfor.setId(IdUtils.simpleUUID());
+        ardRouteInfor.setCreateTime(DateUtils.getNowDate());
+        if (ardRouteInfor.getGroupingId() == null){
+            ardRouteInfor.setGroupingId("0");
+        }
+        // 航线数据
+        byte[] routeData;
+        try {
+            routeData = serialize(ardRouteInfor.getUavRouteReq());
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+        ardRouteInfor.setRouteData(routeData);
+        KmzResultVo kmzResult = routeService.buildKmz(ardRouteInfor.getUavRouteReq(), ardRouteInfor.getKmzName());
+        ardRouteInfor.setUpPath(kmzResult.getUpPath());
+        ardRouteInforMapper.insertArdRouteInfor(ardRouteInfor);
+        return kmzResult.getUpPath();
+    }
+
+    /**
+     * 修改航线(kmz)
+     * 
+     * @param ardRouteInfor 航线(kmz)
+     * @return 结果
+     */
+    @Override
+    public int updateArdRouteInfor(ArdRouteInfor ardRouteInfor) {
+        ardRouteInfor.setUpdateTime(DateUtils.getNowDate());
+        KmzResultVo kmzResult = new KmzResultVo();
+        // 获取源文件名字
+        ArdRouteInfor route = ardRouteInforMapper.selectArdRouteInforById(ardRouteInfor.getId());
+        if (route.getKmzName().equals(ardRouteInfor.getKmzName())) {
+            kmzResult = routeService.updateKmz(ardRouteInfor.getUavRouteReq(), ardRouteInfor.getKmzName());
+        }else {
+            kmzResult = routeService.updateKmzNew(ardRouteInfor.getUavRouteReq(), route.getKmzName(), ardRouteInfor.getKmzName());
+        }
+        if ("更新航线kmz文件失败".equals(kmzResult.getData())) {
+            return 0;
+        }
+        ardRouteInfor.setUpPath(kmzResult.getUpPath());
+        return ardRouteInforMapper.updateArdRouteInfor(ardRouteInfor);
+    }
+
+    /**
+     * 批量删除航线(kmz)
+     * 
+     * @param ids 需要删除的航线(kmz)主键
+     * @return 结果
+     */
+    @Override
+    public int deleteArdRouteInforByIds(String[] ids) {
+        // 删除航线(kmz)文件
+        for (String id : ids) {
+            ArdRouteInfor information = ardRouteInforMapper.selectArdRouteInforById(id);
+            ossService.deleteObject("kmz", subStringMinioUrlName(information.getUpPath()));
+        }
+        return ardRouteInforMapper.deleteArdRouteInforByIds(ids);
+    }
+
+    /**
+     * 删除航线(kmz)信息
+     * 
+     * @param id 航线(kmz)主键
+     * @return 结果
+     */
+    @Override
+    public int deleteArdRouteInforById(String id) {
+        return ardRouteInforMapper.deleteArdRouteInforById(id);
+    }
+
+    /**
+     * 导入航线(kmz)文件
+     *
+     * @param file 文件
+     * @return 结果
+     */
+    @Override
+    public MinioUploadResult uploadArdRouteInfor(MultipartFile file) {
+        try {
+            String url = ossService.upload("kmz",file);
+            ArdRouteInfor information = new ArdRouteInfor();
+            information.setKmzName(file.getOriginalFilename());
+            information.setUpPath(url);
+            information.setGroupingId("0");     // 默认分组
+            insertRouteInformation(information);
+            return MinioUploadResult.builder()
+                    .url(url)
+                    .newFileName(FileUtils.getName(url))
+                    .originalFilename(file.getOriginalFilename())
+                    .build();
+        }catch (Exception e){
+            return null;
+        }
+    }
+
+    /**
+     * 根据文件名称查询航线信息
+     *
+     * @param name 文件名称
+     * @return 结果
+     */
+    @Override
+    public ArdRouteInfor selectArdRouteInforByName(String name) {
+        return ardRouteInforMapper.selectArdRouteInforByName(name);
+    }
+
+    /**
+     * 修改航线分组ID
+     *
+     * @param id ID
+     * @param groupingId 分组ID
+     * @return 结果
+     */
+    @Override
+    public int updateRouteInformationGroupingId(String id, String groupingId) {
+        return ardRouteInforMapper.updateRouteInforGroupingId(id, groupingId);
+    }
+
+    /**
+     * 判断行点是否在禁飞区
+     *
+     * @param longitude 经度
+     * @param latitude 纬度
+     * @return 结果
+     */
+    @Override
+    public Boolean selectRouteInformationNoFly(Double longitude, Double latitude) {
+        if (longitude == null || latitude == null) {
+            throw new ControlException("方法参数中未找到有效经纬度字段,无法判断禁飞区!");
+        }
+        List<ArdNoFlyZone> ardNoFlyZones = ardNoFlyZoneService.selectArdNoFlyZoneList(new ArdNoFlyZone());
+        if (!ardNoFlyZones.isEmpty()) {
+            Vertex vertex = new Vertex(longitude, latitude);
+            boolean inNoFlyZones = NoFlyZoneUtils.isInNoFlyZones(vertex, ardNoFlyZones);
+            if (inNoFlyZones) {
+                throw new ControlException("目标点在禁飞区内,无法执行操作!");
+            }
+        }
+        return true;
+    }
+
+    /**
+     * 数据新增航线信息
+     */
+    private void insertRouteInformation(ArdRouteInfor ardRouteInfor){
+        ardRouteInfor.setId(IdUtils.simpleUUID());
+        ardRouteInfor.setCreateTime(DateUtils.getNowDate());
+        ardRouteInforMapper.insertArdRouteInfor(ardRouteInfor);
+    }
+
+}
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
deleted file mode 100644
index 7118c21..0000000
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java
+++ /dev/null
@@ -1,246 +0,0 @@
-package com.ard.route.service.impl;
-
-import java.io.IOException;
-import java.util.List;
-
-import com.ard.common.exception.ControlException;
-import com.ard.common.utils.DateUtils;
-import com.ard.common.utils.file.FileUtils;
-import com.ard.common.utils.uuid.IdUtils;
-import com.ard.data.noflyzone.domain.ArdNoFlyZone;
-import com.ard.data.noflyzone.domain.Vertex;
-import com.ard.data.noflyzone.service.IArdNoFlyZoneService;
-import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
-import com.ard.oss.model.MinioUploadResult;
-import com.ard.oss.service.impl.OssServiceContext;
-import com.ard.route.domain.UavRouteReq;
-import com.ard.route.domain.route.ArdRouteInformation;
-import com.ard.route.domain.vo.KmzResultVo;
-import com.ard.route.service.UavRouteService;
-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 javax.annotation.Resource;
-
-import static com.ard.route.util.ToolUtils.*;
-
-/**
- * 航线(kmz)Service业务层处理
- * 
- * @author xia
- * @date 2025-10-23
- */
-@Service
-public class ArdRouteInformationServiceImpl implements IArdRouteInformationService {
-
-    @Autowired
-    private ArdRouteInformationMapper ardRouteInformationMapper;
-
-    @Autowired
-    private OssServiceContext ossService;
-
-    @Autowired
-    private UavRouteService routeService;
-
-    @Resource
-    private IArdNoFlyZoneService ardNoFlyZoneService;
-
-    /**
-     * 查询航线(kmz)
-     * 
-     * @param id 航线(kmz)主键
-     * @return 航线(kmz)
-     */
-    @Override
-    public ArdRouteInformation selectArdRouteInformationById(String id) {
-        ArdRouteInformation ardRouteInformation = ardRouteInformationMapper.selectArdRouteInformationById(id);
-        try {
-            ardRouteInformation.setUavRouteReq((UavRouteReq) deserialize(ardRouteInformation.getRouteData()));
-        } catch (IOException | ClassNotFoundException e) {
-            throw new RuntimeException(e);
-        }
-        return ardRouteInformation;
-    }
-
-    /**
-     * 查询航线(kmz)列表
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 航线(kmz)
-     */
-    @Override
-    public List<ArdRouteInformation> selectArdRouteInformationList(ArdRouteInformation ardRouteInformation) {
-        return ardRouteInformationMapper.selectArdRouteInformationList(ardRouteInformation);
-    }
-
-    /**
-     * 新增航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    @Override
-    public String insertArdRouteInformation(ArdRouteInformation ardRouteInformation) {
-        ardRouteInformation.setId(IdUtils.simpleUUID());
-        ardRouteInformation.setCreateTime(DateUtils.getNowDate());
-        if (ardRouteInformation.getFolderId() == null){
-            ardRouteInformation.setFolderId("0");
-        }
-        // 航线数据
-        byte[] routeData;
-        try {
-            routeData = serialize(ardRouteInformation.getUavRouteReq());
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-        ardRouteInformation.setRouteData(routeData);
-        KmzResultVo kmzResult = routeService.buildKmz(ardRouteInformation.getUavRouteReq(), ardRouteInformation.getFileName());
-        ardRouteInformationMapper.insertArdRouteInformation(assembly(ardRouteInformation,kmzResult));
-        return kmzResult.getUpPath();
-    }
-
-    /**
-     * 修改航线(kmz)
-     * 
-     * @param ardRouteInformation 航线(kmz)
-     * @return 结果
-     */
-    @Override
-    public int updateArdRouteInformation(ArdRouteInformation ardRouteInformation) {
-        ardRouteInformation.setUpdateTime(DateUtils.getNowDate());
-        KmzResultVo kmzResult = new KmzResultVo();
-        // 获取源文件名字
-        ArdRouteInformation route = ardRouteInformationMapper.selectArdRouteInformationById(ardRouteInformation.getId());
-        if (route.getFileName().equals(ardRouteInformation.getFileName())) {
-            kmzResult = routeService.updateKmz(ardRouteInformation.getUavRouteReq(), ardRouteInformation.getFileName());
-        }else {
-            kmzResult = routeService.updateKmzNew(ardRouteInformation.getUavRouteReq(), route.getFileName(),ardRouteInformation.getFileName());
-        }
-        if ("更新航线kmz文件失败".equals(kmzResult.getData())) {
-            return 0;
-        }
-        return ardRouteInformationMapper.updateArdRouteInformation(assembly(ardRouteInformation,kmzResult));
-    }
-
-    //组装数据
-    private ArdRouteInformation assembly(ArdRouteInformation information,KmzResultVo kmzResult){
-        information.setFileNameNew(kmzResult.getFileNameNew());
-        information.setMinioUpPath(kmzResult.getMinioUpPath());
-        information.setUpPath(kmzResult.getUpPath());
-        information.setUpFileSize(kmzResult.getUpFileSize());
-        return information;
-    }
-
-    /**
-     * 批量删除航线(kmz)
-     * 
-     * @param ids 需要删除的航线(kmz)主键
-     * @return 结果
-     */
-    @Override
-    public int deleteArdRouteInformationByIds(String[] ids) {
-        // 删除航线(kmz)文件
-        for (String id : ids) {
-            ArdRouteInformation information = ardRouteInformationMapper.selectArdRouteInformationById(id);
-            ossService.deleteObject("kmz", information.getMinioUpPath());
-        }
-        return ardRouteInformationMapper.deleteArdRouteInformationByIds(ids);
-    }
-
-    /**
-     * 删除航线(kmz)信息
-     * 
-     * @param id 航线(kmz)主键
-     * @return 结果
-     */
-    @Override
-    public int deleteArdRouteInformationById(String id) {
-        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.setMinioUpPath(extractFilePath(url));
-            information.setUpPath(url);
-            information.setUpFileSize((double) file.getSize());
-            insertRouteInformation(information);
-            return MinioUploadResult.builder()
-                    .url(url)
-                    .newFileName(FileUtils.getName(url))
-                    .originalFilename(file.getOriginalFilename())
-                    .build();
-        }catch (Exception e){
-            return null;
-        }
-    }
-
-    /**
-     * 根据文件名称查询航线信息
-     *
-     * @param name 文件名称
-     * @return 结果
-     */
-    @Override
-    public ArdRouteInformation selectArdRouteInformationByName(String name) {
-        return ardRouteInformationMapper.selectArdRouteInformationByName(name);
-    }
-
-    /**
-     * 修改航线分组ID
-     *
-     * @param id ID
-     * @param folderId 分组ID
-     * @return 结果
-     */
-    @Override
-    public int updateRouteInformationFolderId(String id, String folderId) {
-        return ardRouteInformationMapper.updateRouteInformationFolderId(id, folderId);
-    }
-
-    /**
-     * 判断行点是否在禁飞区
-     *
-     * @param longitude 经度
-     * @param latitude 纬度
-     * @return 结果
-     */
-    @Override
-    public Boolean selectRouteInformationNoFly(Double longitude, Double latitude) {
-        if (longitude == null || latitude == null) {
-            throw new ControlException("方法参数中未找到有效经纬度字段,无法判断禁飞区!");
-        }
-        List<ArdNoFlyZone> ardNoFlyZones = ardNoFlyZoneService.selectArdNoFlyZoneList(new ArdNoFlyZone());
-        if (!ardNoFlyZones.isEmpty()) {
-            Vertex vertex = new Vertex(longitude, latitude);
-            boolean inNoFlyZones = NoFlyZoneUtils.isInNoFlyZones(vertex, ardNoFlyZones);
-            if (inNoFlyZones) {
-                throw new ControlException("目标点在禁飞区内,无法执行操作!");
-            }
-        }
-        return true;
-    }
-
-    /**
-     * 数据新增航线信息
-     */
-    private void insertRouteInformation(ArdRouteInformation ardRouteInformation){
-        ardRouteInformation.setId(IdUtils.simpleUUID());
-        ardRouteInformation.setCreateTime(DateUtils.getNowDate());
-        ardRouteInformationMapper.insertArdRouteInformation(ardRouteInformation);
-    }
-
-}
diff --git a/ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java
index 8ed3af7..99fd85a 100644
--- a/ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java
+++ b/ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java
@@ -2,8 +2,6 @@
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollectionUtil;
-import cn.hutool.core.io.FileUtil;
-import com.ard.common.utils.SecurityUtils;
 import com.ard.oss.service.impl.OssServiceContext;
 import com.ard.route.constant.FileTypeConstants;
 import com.ard.route.domain.RoutePointReq;
@@ -11,12 +9,11 @@
 import com.ard.route.domain.WaypointHeadingReq;
 import com.ard.route.domain.WaypointTurnReq;
 import com.ard.route.domain.kml.*;
-import com.ard.route.domain.route.ArdRouteInformation;
+import com.ard.route.domain.route.ArdRouteInfor;
 import com.ard.route.domain.vo.KmzInfoVO;
 import com.ard.route.domain.vo.KmzResultVo;
 import com.ard.route.enums.kml.ExitOnRCLostEnums;
-import com.ard.route.service.IArdRouteInformationService;
-import com.ard.route.util.FileUtils;
+import com.ard.route.service.IArdRouteInforService;
 import com.ard.route.util.InitializationUtils;
 import com.ard.route.util.RouteFileUtils;
 import com.ard.route.service.UavRouteService;
@@ -27,7 +24,6 @@
 import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
@@ -53,7 +49,7 @@
     private OssServiceContext ossService;
 
     @Resource
-    private IArdRouteInformationService ardRouteInformationService;
+    private IArdRouteInforService ardRouteInformationService;
 
     InitializationUtils init = new InitializationUtils();
 
@@ -64,15 +60,15 @@
     public KmzResultVo updateKmz(UavRouteReq uavRouteReq,String fileName){
         KmzResultVo result = new KmzResultVo();
         // 校验修改的文件是否存在
-        ArdRouteInformation routeInformation = ardRouteInformationService.selectArdRouteInformationByName(fileName);
+        ArdRouteInfor routeInformation = ardRouteInformationService.selectArdRouteInforByName(fileName);
         if ( routeInformation == null ){
             result.setData("修改航线文件失败,请检查文件是否存在");
             return result;
         }
 
         // 获取文件
-        String minioUrl = routeInformation.getMinioUpPath();
-        try (InputStream inputStream = ossService.getObject(kmzPath,minioUrl);
+        String minioUrlName = subStringMinioUrlName(routeInformation.getUpPath());
+        try (InputStream inputStream = ossService.getObject(kmzPath,minioUrlName);
              ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(inputStream)){
             ArchiveEntry entry;
             KmlInfo kmlInfo = new KmlInfo();
@@ -90,8 +86,8 @@
                 }
             }
             // 删除文件
-            ossService.deleteObject(kmzPath, minioUrl);
-            return buildKmzMethod(routeInformation.getFileName(), kmlInfo, wpmlInfo);
+            ossService.deleteObject(kmzPath, minioUrlName);
+            return buildKmzMethod(routeInformation.getKmzName(), kmlInfo, wpmlInfo);
         } catch (Exception e) {
             e.printStackTrace();
             result.setData("更新航线kmz文件失败");
@@ -144,13 +140,13 @@
      * 生成kmz文件(带航点)
      */
     @Override
-    public KmzResultVo buildKmz(UavRouteReq uavRouteReq, String fileName) {
+    public KmzResultVo buildKmz(UavRouteReq uavRouteReq, String kmzName) {
         // 赋值默认参数
         init.initialization(uavRouteReq);
         KmlParams kmlParams = new KmlParams();
         BeanUtils.copyProperties(uavRouteReq, kmlParams);
         kmlParams.setRoutePointList(BeanUtil.copyToList(uavRouteReq.getRoutePointList(), RoutePointInfo.class));
-        return buildKmz(fileName, kmlParams);
+        return buildKmz(kmzName, kmlParams);
     }
 
     /**
@@ -225,10 +221,7 @@
                         new ByteArrayInputStream(baos.toByteArray())
                 );
                 String kmzFilePath = ossService.upload(kmzPath,multipartFile);
-                result.setFileNameNew(getFileNameWithoutExtension(kmzFilePath));
-                result.setMinioUpPath(extractFilePath(kmzFilePath));
                 result.setUpPath(kmzFilePath);
-                result.setUpFileSize(fileSize);
                 return result;
             } catch (Exception e) {
                 throw new RuntimeException("KMZ文件生成或上传失败", e);
@@ -264,14 +257,14 @@
     public KmzResultVo updateKmzNew(UavRouteReq uavRouteReq, String oldFile, String newFile) {
         KmzResultVo result = new KmzResultVo();
         // 校验修改的文件是否存在
-        ArdRouteInformation routeInformation = ardRouteInformationService.selectArdRouteInformationByName(oldFile);
+        ArdRouteInfor routeInformation = ardRouteInformationService.selectArdRouteInforByName(oldFile);
         if ( routeInformation == null ){
             result.setData("修改航线文件失败,请检查文件是否存在");
             return result;
         }
 
         // 获取文件
-        String minioUrl = routeInformation.getMinioUpPath();
+        String minioUrl = subStringMinioUrlName(routeInformation.getUpPath());
         try (InputStream inputStream = ossService.getObject(kmzPath,minioUrl);
              ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(inputStream)){
             ArchiveEntry entry;
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 5c11f9b..6ce967f 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
@@ -103,4 +103,21 @@
         }
     }
 
+    /**
+     * 截取字符串
+     * 参数: https://xxx.xxx.xxx.xxx:xxx/kmz/2025/11/08/文件名_20251108152249A001.kmz
+     */
+    public static String subStringMinioName(String url) {
+        return new File(url).getName();
+    }
+
+    /**
+     * 截取字符串
+     * minio里面文件夹路径名称
+     */
+    public static String subStringMinioUrlName(String url) {
+        int kmzIndex = url.indexOf("/kmz/");
+        return url.substring(kmzIndex + 5); // +5 是为了跳过 "/kmz/"
+    }
+
 }
diff --git a/ard-route/src/main/resources/mapper/ArdRouteFileMapper.xml b/ard-route/src/main/resources/mapper/ArdRouteFileMapper.xml
deleted file mode 100644
index 4da07b8..0000000
--- a/ard-route/src/main/resources/mapper/ArdRouteFileMapper.xml
+++ /dev/null
@@ -1,116 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ard.route.mapper.ArdRouteFileMapper">
-
-    <resultMap type="ArdRouteFile" id="ArdRouteFileResult">
-        <result property="id"    column="id"    />
-        <result property="name"    column="name"    />
-        <result property="folderId"    column="folder_id"    />
-        <result property="fileType"    column="file_type"    />
-        <result property="fileSize"    column="file_size"    />
-        <result property="filePath"    column="file_path"    />
-        <result property="createBy"    column="create_by"    />
-        <result property="createTime"    column="create_time"    />
-        <result property="updateBy"    column="update_by"    />
-        <result property="updateTime"    column="update_time"    />
-    </resultMap>
-
-    <sql id="selectArdRouteFileVo">
-        select id,
-               name,
-               folder_id,
-               file_type,
-               file_size,
-               file_path,
-               create_by,
-               create_time,
-               update_by,
-               update_time
-        from ard_route_file
-    </sql>
-
-    <select id="selectArdRouteFileList" parameterType="ArdRouteFile" resultMap="ArdRouteFileResult">
-        <include refid="selectArdRouteFileVo"/>
-        <where>
-            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
-            <if test="folderId != null  and folderId != ''"> and folder_id = #{folderId}</if>
-            <if test="fileType != null  and fileType != ''"> and file_type = #{fileType}</if>
-            <if test="fileSize != null "> and file_size = #{fileSize}</if>
-            <if test="filePath != null  and filePath != ''"> and file_path = #{filePath}</if>
-            <if test="createBy != null  and createBy != ''"> and create_by = #{createBy}</if>
-            <if test="createTime != null "> and create_time = #{createTime}</if>
-            <if test="updateBy != null  and updateBy != ''"> and update_by = #{updateBy}</if>
-            <if test="updateTime != null "> and update_time = #{updateTime}</if>
-        </where>
-    </select>
-
-    <select id="selectArdRouteFileById" parameterType="String" resultMap="ArdRouteFileResult">
-        <include refid="selectArdRouteFileVo"/>
-        where id = #{id}
-    </select>
-
-    <insert id="insertArdRouteFile" parameterType="ArdRouteFile">
-        insert into ard_route_file
-        <trim prefix="(" suffix=")" suffixOverrides=",">
-            <if test="id != null">id,</if>
-            <if test="name != null">name,</if>
-            <if test="folderId != null">folder_id,</if>
-            <if test="fileType != null">file_type,</if>
-            <if test="fileSize != null">file_size,</if>
-            <if test="filePath != null">file_path,</if>
-            <if test="createBy != null">create_by,</if>
-            <if test="createTime != null">create_time,</if>
-            <if test="updateBy != null">update_by,</if>
-            <if test="updateTime != null">update_time,</if>
-        </trim>
-        <trim prefix="values (" suffix=")" suffixOverrides=",">
-            <if test="id != null">#{id},</if>
-            <if test="name != null">#{name},</if>
-            <if test="folderId != null">#{folderId},</if>
-            <if test="fileType != null">#{fileType},</if>
-            <if test="fileSize != null">#{fileSize},</if>
-            <if test="filePath != null">#{filePath},</if>
-            <if test="createBy != null">#{createBy},</if>
-            <if test="createTime != null">#{createTime},</if>
-            <if test="updateBy != null">#{updateBy},</if>
-            <if test="updateTime != null">#{updateTime},</if>
-        </trim>
-    </insert>
-
-    <update id="updateArdRouteFile" parameterType="ArdRouteFile">
-        update ard_route_file
-        <trim prefix="SET" suffixOverrides=",">
-            <if test="name != null">name = #{name},</if>
-            <if test="folderId != null">folder_id = #{folderId},</if>
-            <if test="fileType != null">file_type = #{fileType},</if>
-            <if test="fileSize != null">file_size = #{fileSize},</if>
-            <if test="filePath != null">file_path = #{filePath},</if>
-            <if test="createBy != null">create_by = #{createBy},</if>
-            <if test="createTime != null">create_time = #{createTime},</if>
-            <if test="updateBy != null">update_by = #{updateBy},</if>
-            <if test="updateTime != null">update_time = #{updateTime},</if>
-        </trim>
-        where id = #{id}
-    </update>
-
-    <delete id="deleteArdRouteFileById" parameterType="String">
-        delete from ard_route_file where id = #{id}
-    </delete>
-
-    <delete id="deleteArdRouteFileByIds" parameterType="String">
-        delete from ard_route_file where id in
-        <foreach item="id" collection="array" open="(" separator="," close=")">
-            #{id}
-        </foreach>
-    </delete>
-
-    <delete id="deleteRouteFileByFolderIds" parameterType="String">
-        delete from ard_route_file where folder_id in
-        <foreach item="folderId" collection="array" open="(" separator="," close=")">
-            #{folderId}
-        </foreach>
-    </delete>
-
-</mapper>
\ No newline at end of file
diff --git a/ard-route/src/main/resources/mapper/ArdRouteFolderMapper.xml b/ard-route/src/main/resources/mapper/ArdRouteGroupingMapper.xml
similarity index 65%
rename from ard-route/src/main/resources/mapper/ArdRouteFolderMapper.xml
rename to ard-route/src/main/resources/mapper/ArdRouteGroupingMapper.xml
index 16cf8f2..a8b7943 100644
--- a/ard-route/src/main/resources/mapper/ArdRouteFolderMapper.xml
+++ b/ard-route/src/main/resources/mapper/ArdRouteGroupingMapper.xml
@@ -2,11 +2,11 @@
 <!DOCTYPE mapper
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ard.route.mapper.ArdRouteFolderMapper">
+<mapper namespace="com.ard.route.mapper.ArdRouteGroupingMapper">
 
-    <resultMap type="ArdRouteFolder" id="ArdRouteFolderResult">
+    <resultMap type="ArdRouteGrouping" id="ArdRouteGroupingResult">
         <result property="id"    column="id"    />
-        <result property="fileName"    column="file_name"    />
+        <result property="groupingName"    column="grouping_name"    />
         <result property="serialNumber"    column="serial_number"    />
         <result property="createBy"    column="create_by"    />
         <result property="createTime"    column="create_time"    />
@@ -14,21 +14,21 @@
         <result property="updateTime"    column="update_time"    />
     </resultMap>
 
-    <sql id="selectArdRouteFolderVo">
+    <sql id="selectArdRouteGroupingVo">
         select id,
-               file_name,
+               grouping_name,
                serial_number,
                create_by,
                create_time,
                update_by,
                update_time
-        from ard_route_folder
+        from ard_route_grouping
     </sql>
 
-    <select id="selectArdRouteFolderList" parameterType="ArdRouteFolder" resultMap="ArdRouteFolderResult">
-        <include refid="selectArdRouteFolderVo"/>
+    <select id="selectArdRouteGroupingList" parameterType="ArdRouteGrouping" resultMap="ArdRouteGroupingResult">
+        <include refid="selectArdRouteGroupingVo"/>
         <where>
-            <if test="fileName != null  and fileName != ''"> and file_name like concat('%', #{fileName}, '%')</if>
+            <if test="groupingName != null  and groupingName != ''"> and grouping_name like concat('%', #{groupingName}, '%')</if>
             <if test="createBy != null  and createBy != ''"> and create_by = #{createBy}</if>
             <if test="createTime != null "> and create_time = #{createTime}</if>
             <if test="updateBy != null  and updateBy != ''"> and update_by = #{updateBy}</if>
@@ -37,16 +37,16 @@
         order by serial_number asc
     </select>
 
-    <select id="selectArdRouteFolderById" parameterType="String" resultMap="ArdRouteFolderResult">
-        <include refid="selectArdRouteFolderVo"/>
+    <select id="selectArdRouteGroupingById" parameterType="String" resultMap="ArdRouteGroupingResult">
+        <include refid="selectArdRouteGroupingVo"/>
         where id = #{id}
     </select>
 
-    <insert id="insertArdRouteFolder" parameterType="ArdRouteFolder">
-        insert into ard_route_folder
+    <insert id="insertArdRouteGrouping" parameterType="ArdRouteGrouping">
+        insert into ard_route_grouping
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="id != null">id,</if>
-            <if test="fileName != null">file_name,</if>
+            <if test="groupingName != null">grouping_name,</if>
             <if test="serialNumber != null">serial_number,</if>
             <if test="createBy != null">create_by,</if>
             <if test="createTime != null">create_time,</if>
@@ -55,7 +55,7 @@
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
-            <if test="fileName != null">#{fileName},</if>
+            <if test="groupingName != null">#{groupingName},</if>
             <if test="serialNumber != null">#{serialNumber},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="createTime != null">#{createTime},</if>
@@ -64,10 +64,10 @@
         </trim>
     </insert>
 
-    <update id="updateArdRouteFolder" parameterType="ArdRouteFolder">
-        update ard_route_folder
+    <update id="updateArdRouteGrouping" parameterType="ArdRouteGrouping">
+        update ard_route_grouping
         <trim prefix="SET" suffixOverrides=",">
-            <if test="fileName != null">file_name = #{fileName},</if>
+            <if test="groupingName != null">grouping_name = #{groupingName},</if>
             <if test="serialNumber != null">serial_number = #{serialNumber},</if>
             <if test="createBy != null">create_by = #{createBy},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
@@ -77,12 +77,12 @@
         where id = #{id}
     </update>
 
-    <delete id="deleteArdRouteFolderById" parameterType="String">
-        delete from ard_route_folder where id = #{id}
+    <delete id="deleteArdRouteGroupingById" parameterType="String">
+        delete from ard_route_grouping where id = #{id}
     </delete>
 
-    <delete id="deleteArdRouteFolderByIds" parameterType="String">
-        delete from ard_route_folder where id in
+    <delete id="deleteArdRouteGroupingByIds" parameterType="String">
+        delete from ard_route_grouping where id in
         <foreach item="id" collection="array" open="(" separator="," close=")">
             #{id}
         </foreach>
diff --git a/ard-route/src/main/resources/mapper/ArdRouteInforMapper.xml b/ard-route/src/main/resources/mapper/ArdRouteInforMapper.xml
new file mode 100644
index 0000000..1ca3038
--- /dev/null
+++ b/ard-route/src/main/resources/mapper/ArdRouteInforMapper.xml
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ard.route.mapper.ArdRouteInforMapper">
+    
+    <resultMap type="ArdRouteInfor" id="ArdRouteInforResult">
+        <result property="id"    column="id"    />
+        <result property="kmzName"    column="kmz_name"    />
+        <result property="upPath"    column="up_path"    />
+        <result property="groupingId"    column="grouping_id"    />
+        <result property="type"    column="type"    />
+        <result property="aircraft"    column="aircraft"    />
+        <result property="payload"    column="payload"    />
+        <result property="routeData"    column="route_data"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectArdRouteInforVo">
+        select id,
+               kmz_name,
+               up_path,
+               grouping_id,
+               type,
+               aircraft,
+               payload,
+               route_data,
+               create_by,
+               create_time,
+               update_by,
+               update_time
+        from ard_route_infor
+    </sql>
+
+    <select id="selectArdRouteInforList" parameterType="ArdRouteInfor" resultMap="ArdRouteInforResult">
+        <include refid="selectArdRouteInforVo"/>
+        <where>  
+            <if test="kmzName != null  and kmzName != ''"> and kmz_name like concat('%', #{kmzName}, '%')</if>
+            <if test="aircraft != null  and aircraft != ''"> and aircraft = #{aircraft}</if>
+            <if test="payload != null  and payload != ''"> and payload = #{payload}</if>
+            <if test="type != null  and type != ''"> and type = #{type}</if>
+            <if test="upPath != null  and upPath != ''"> and up_path = #{upPath}</if>
+        </where>
+    </select>
+    
+    <select id="selectArdRouteInforById" parameterType="String" resultMap="ArdRouteInforResult">
+        <include refid="selectArdRouteInforVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertArdRouteInfor" parameterType="ArdRouteInfor">
+        insert into ard_route_infor
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="kmzName != null">kmz_name,</if>
+            <if test="upPath != null">up_path,</if>
+            <if test="groupingId != null">grouping_id,</if>
+            <if test="type != null">type,</if>
+            <if test="aircraft != null">aircraft,</if>
+            <if test="payload != null">payload,</if>
+            <if test="routeData != null">route_data,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="kmzName != null">#{kmzName},</if>
+            <if test="upPath != null">#{upPath},</if>
+            <if test="groupingId != null">#{groupingId},</if>
+            <if test="type != null">#{type},</if>
+            <if test="aircraft != null">#{aircraft},</if>
+            <if test="payload != null">#{payload},</if>
+            <if test="routeData != null">#{routeData},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateArdRouteInfor" parameterType="ArdRouteInfor">
+        update ard_route_infor
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="kmzName != null">kmz_name = #{kmzName},</if>
+            <if test="upPath != null">up_path = #{upPath},</if>
+            <if test="type != null">type = #{type},</if>
+            <if test="aircraft != null">aircraft = #{aircraft},</if>
+            <if test="payload != null">payload = #{payload},</if>
+            <if test="routeData != null">route_data = #{routeData},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteArdRouteInforById" parameterType="String">
+        delete from ard_route_infor where id = #{id}
+    </delete>
+
+    <delete id="deleteArdRouteInforByIds" parameterType="String">
+        delete from ard_route_infor where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+    <select id="selectArdRouteInforByName" parameterType="String" resultMap="ArdRouteInforResult">
+        <include refid="selectArdRouteInforVo"/>
+        where file_name = #{fileName}
+    </select>
+
+    <delete id="deleteRouteInforByGroupingIds" parameterType="String">
+        delete from ard_route_infor where grouping_id in
+        <foreach item="groupingIId" collection="array" open="(" separator="," close=")">
+            #{groupingIId}
+        </foreach>
+    </delete>
+
+    <select id="selectArdRouteInforByGroupingId" parameterType="String" resultMap="ArdRouteInforResult">
+        select id,kmz_name,up_path,grouping_id,type,aircraft,payload,create_by,create_time,update_by,update_time from ard_route_infor
+        <where>
+            <if test="groupingId != null "> and grouping_id = #{groupingId}</if>
+        </where>
+    </select>
+
+    <update id="updateRouteInforGroupingId">
+        update ard_route_infor
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="groupingId != null">grouping_id = #{groupingId},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+</mapper>
\ No newline at end of file
diff --git a/ard-route/src/main/resources/mapper/ArdRouteInformationMapper.xml b/ard-route/src/main/resources/mapper/ArdRouteInformationMapper.xml
deleted file mode 100644
index 6eca74e..0000000
--- a/ard-route/src/main/resources/mapper/ArdRouteInformationMapper.xml
+++ /dev/null
@@ -1,157 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ard.route.mapper.ArdRouteInformationMapper">
-    
-    <resultMap type="ArdRouteInformation" id="ArdRouteInformationResult">
-        <result property="id"    column="id"    />
-        <result property="fileName"    column="file_name"    />
-        <result property="fileNameNew"    column="file_name_new"    />
-        <result property="upPath"    column="up_path"    />
-        <result property="minioUpPath"    column="minio_up_path"    />
-        <result property="upFileSize"    column="up_file_size"    />
-        <result property="folderId"    column="folder_id"    />
-        <result property="routeType"    column="route_type"    />
-        <result property="aircraft"    column="aircraft"    />
-        <result property="aircraftModel"    column="aircraft_model"    />
-        <result property="routeData"    column="route_data"    />
-        <result property="createBy"    column="create_by"    />
-        <result property="createTime"    column="create_time"    />
-        <result property="updateBy"    column="update_by"    />
-        <result property="updateTime"    column="update_time"    />
-    </resultMap>
-
-    <sql id="selectArdRouteInformationVo">
-        select id,
-               file_name,
-               file_name_new,
-               up_path,
-               minio_up_path,
-               up_file_size,
-               folder_id,
-               route_type,
-               aircraft,
-               aircraft_model,
-               route_data,
-               create_by,
-               create_time,
-               update_by,
-               update_time
-        from ard_route_information
-    </sql>
-
-    <select id="selectArdRouteInformationList" parameterType="ArdRouteInformation" resultMap="ArdRouteInformationResult">
-        <include refid="selectArdRouteInformationVo"/>
-        <where>  
-            <if test="fileName != null  and fileName != ''"> and file_name like concat('%', #{fileName}, '%')</if>
-            <if test="aircraft != null  and aircraft != ''"> and aircraft = #{aircraft}</if>
-            <if test="aircraftModel != null  and aircraftModel != ''"> and aircraft_model = #{aircraftModel}</if>
-            <if test="routeType != null  and routeType != ''"> and route_type = #{routeType}</if>
-            <if test="upPath != null  and upPath != ''"> and up_path = #{upPath}</if>
-            <if test="upFileSize != null "> and up_file_size = #{upFileSize}</if>
-        </where>
-    </select>
-    
-    <select id="selectArdRouteInformationById" parameterType="String" resultMap="ArdRouteInformationResult">
-        <include refid="selectArdRouteInformationVo"/>
-        where id = #{id}
-    </select>
-
-    <insert id="insertArdRouteInformation" parameterType="ArdRouteInformation">
-        insert into ard_route_information
-        <trim prefix="(" suffix=")" suffixOverrides=",">
-            <if test="id != null">id,</if>
-            <if test="fileName != null">file_name,</if>
-            <if test="fileNameNew != null">file_name_new,</if>
-            <if test="upPath != null">up_path,</if>
-            <if test="minioUpPath != null">minio_up_path,</if>
-            <if test="upFileSize != null">up_file_size,</if>
-            <if test="folderId != null">folder_id,</if>
-            <if test="routeType != null">route_type,</if>
-            <if test="aircraft != null">aircraft,</if>
-            <if test="aircraftModel != null">aircraft_model,</if>
-            <if test="routeData != null">route_data,</if>
-            <if test="createBy != null">create_by,</if>
-            <if test="createTime != null">create_time,</if>
-            <if test="updateBy != null">update_by,</if>
-            <if test="updateTime != null">update_time,</if>
-         </trim>
-        <trim prefix="values (" suffix=")" suffixOverrides=",">
-            <if test="id != null">#{id},</if>
-            <if test="fileName != null">#{fileName},</if>
-            <if test="fileNameNew != null">#{fileNameNew},</if>
-            <if test="upPath != null">#{upPath},</if>
-            <if test="minioUpPath != null">#{minioUpPath},</if>
-            <if test="upFileSize != null">#{upFileSize},</if>
-            <if test="folderId != null">#{folderId},</if>
-            <if test="routeType != null">#{routeType},</if>
-            <if test="aircraft != null">#{aircraft},</if>
-            <if test="aircraftModel != null">#{aircraftModel},</if>
-            <if test="routeData != null">#{routeData},</if>
-            <if test="createBy != null">#{createBy},</if>
-            <if test="createTime != null">#{createTime},</if>
-            <if test="updateBy != null">#{updateBy},</if>
-            <if test="updateTime != null">#{updateTime},</if>
-         </trim>
-    </insert>
-
-    <update id="updateArdRouteInformation" parameterType="ArdRouteInformation">
-        update ard_route_information
-        <trim prefix="SET" suffixOverrides=",">
-            <if test="fileName != null">file_name = #{fileName},</if>
-            <if test="fileNameNew != null">file_name_new = #{fileNameNew},</if>
-            <if test="upPath != null">up_path = #{upPath},</if>
-            <if test="minioUpPath != null">minio_up_path = #{minioUpPath},</if>
-            <if test="upFileSize != null">up_file_size = #{upFileSize},</if>
-            <if test="folderId != null">folder_id = #{folderId},</if>
-            <if test="routeType != null">route_type = #{routeType},</if>
-            <if test="aircraft != null">aircraft = #{aircraft},</if>
-            <if test="aircraftModel != null">aircraft_model = #{aircraftModel},</if>
-            <if test="createBy != null">create_by = #{createBy},</if>
-            <if test="createTime != null">create_time = #{createTime},</if>
-            <if test="updateBy != null">update_by = #{updateBy},</if>
-            <if test="updateTime != null">update_time = #{updateTime},</if>
-        </trim>
-        where id = #{id}
-    </update>
-
-    <delete id="deleteArdRouteInformationById" parameterType="String">
-        delete from ard_route_information where id = #{id}
-    </delete>
-
-    <delete id="deleteArdRouteInformationByIds" parameterType="String">
-        delete from ard_route_information where id in 
-        <foreach item="id" collection="array" open="(" separator="," close=")">
-            #{id}
-        </foreach>
-    </delete>
-
-    <select id="selectArdRouteInformationByName" parameterType="String" resultMap="ArdRouteInformationResult">
-        <include refid="selectArdRouteInformationVo"/>
-        where file_name = #{fileName}
-    </select>
-
-    <delete id="deleteRouteInformationByFolderIds" parameterType="String">
-        delete from ard_route_information where folder_id in
-        <foreach item="folderId" collection="array" open="(" separator="," close=")">
-            #{folderId}
-        </foreach>
-    </delete>
-
-    <select id="selectArdRouteInformationByFolderId" parameterType="String" resultMap="ArdRouteInformationResult">
-        <include refid="selectArdRouteInformationVo"/>
-        <where>
-            <if test="folderId != null "> and folder_id = #{folderId}</if>
-        </where>
-    </select>
-
-    <update id="updateRouteInformationFolderId">
-        update ard_route_information
-        <trim prefix="SET" suffixOverrides=",">
-            <if test="folderId != null">folder_id = #{folderId},</if>
-        </trim>
-        where id = #{id}
-    </update>
-
-</mapper>
\ No newline at end of file

--
Gitblit v1.9.3