From 1609b77ba4715a7f17030d61d20c8e526861ca1a Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Fri, 23 Jan 2026 14:16:04 +0800
Subject: [PATCH] 1. 修改任务航线业务逻辑,优化写法。

---
 ard-route/src/main/java/com/ard/route/util/InitializationUtils.java |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/ard-route/src/main/java/com/ard/route/util/InitializationUtils.java b/ard-route/src/main/java/com/ard/route/util/InitializationUtils.java
index 747af86..f4edd7b 100644
--- a/ard-route/src/main/java/com/ard/route/util/InitializationUtils.java
+++ b/ard-route/src/main/java/com/ard/route/util/InitializationUtils.java
@@ -8,6 +8,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import static com.ard.route.enums.kml.DroneEnumValueEnums.M350_RTK;
 import static com.ard.route.util.ToolUtils.getDoublePoint;
 
 /**
@@ -17,7 +18,7 @@
 public class InitializationUtils {
 
     // 禅思H20T 公倍数
-    private static final Double CHANSI_H20 = 23.76237623;
+    private static final Double CHANSI_H20T = 23.76237623;
 
     // 禅思H20T 焦距值
     private static final Double CHANSI_H20_FOCUS = 6.83;
@@ -55,8 +56,10 @@
         }
         uavRouteReq.setWaypointTurnReq(waypointTurnReq);
         uavRouteReq.setGimbalPitchMode("usePointSetting");
-        // 变焦数值加工
-        buildZoom(uavRouteReq);
+        if (M350_RTK.getValue().equals(uavRouteReq.getDroneType())) {
+            // 变焦数值加工
+            buildZoom(uavRouteReq);
+        }
         // 修改每个航点的高度
         buildHeight(uavRouteReq);
         // 动作组编号数据加工
@@ -98,15 +101,24 @@
      */
     private void buildZoom(UavRouteReq uavRouteReq){
         for (RoutePointReq routePointReq : uavRouteReq.getRoutePointList()) {
-            for (ActionGroupReq actionGroupReq : routePointReq.getActionGroupList()) {
-                for (PointActionReq action : actionGroupReq.getActions()) {
-                    if (action.getZoom() != null){
-                        //action.setZoom(action.getZoom() * CHANSI_H20);
-                        action.setZoom(action.getZoom() * CHANSI_H20_FOCUS);
+            if (!routePointReq.getActionGroupList().isEmpty()){
+                for (ActionGroupReq actionGroupReq : routePointReq.getActionGroupList()) {
+                    for (PointActionReq action : actionGroupReq.getActions()) {
+                        if (action.getZoom() != null){
+                            action.setZoom(multiple_23(action.getZoom()));
+                        }
                     }
                 }
             }
         }
+    }
+
+    public static Double multiple_23(Double zoom){
+        return zoom * CHANSI_H20T;
+    }
+
+    public static Double divided_23(Double zoom){
+        return zoom / CHANSI_H20T;
     }
 
     /**
@@ -269,8 +281,6 @@
 //        ardRoutePoints1.setLon(103.75851462);
 //        ardRoutePoints1.setSafeGohomeFlag(0);
 //        ardRoutePoints1.setSpeed(8);
-//
-//
 //    }
 
 //    private ArdRouteActions buildArdRouteActions(){

--
Gitblit v1.9.3