From 2ca94de8ede18ac07ccfd8dec7b6f6a707adde9b Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Mon, 01 Sep 2025 11:20:24 +0800
Subject: [PATCH] Merge branch 'refs/heads/feature/v5.0/5.0.5' into patch_management

---
 src/utils/device-cmd.js |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/utils/device-cmd.js b/src/utils/device-cmd.js
index 01043cd..b22bafc 100644
--- a/src/utils/device-cmd.js
+++ b/src/utils/device-cmd.js
@@ -1,14 +1,17 @@
-import { DeviceCmd, DeviceCmdStatusText } from '@/types/device-cmd';
+import { DeviceCmd, DeviceCmdStatusText,DeviceCmdExecuteStatus } from '@/types/device-cmd';
 import {
   CoverStateEnum,
   PutterStateEnum,
+  ChargeStateEnum,
   SupplementLightStateEnum,
   AlarmModeEnum,
   BatteryStoreModeEnum,
   DroneBatteryStateEnum,
   LinkWorkModeEnum,
+  AirConditioningModeEnum,
+  DroneBatteryModeEnum
 } from '@/types/airport-tsa';
-import { DEFAULT_PLACEHOLDER } from './constants';
+import { DEFAULT_PLACEHOLDER, SIZES as byteSizes, BYTE_SIZES } from './constants'
 
 /**
  * 根据osd 更新信息
@@ -70,6 +73,9 @@
     } else if (cmdItem.cmdKey === DeviceCmd.SdrWorkModeSwitch) {
       // 增强图传开关
       getSdrWorkNode(cmdItem, dock);
+    } else if (cmdItem.cmdKey === DeviceCmd.AirConditioningModeSwitch) {
+      // 空调模式开关
+      getAirConditionerSwitch(cmdItem, dock);
     }
   });
 }
@@ -290,6 +296,26 @@
   }
 }
 
+// 空调模式开关
+function getAirConditionerSwitch (cmdItem, airportProperties) {
+  const conditionerState = airportProperties?.basic_osd?.air_conditioner?.air_conditioner_state || 0
+  if (conditionerState === 0) {
+    cmdItem.status = DeviceCmdStatusText.AirConditionerModeCoolNormalText
+  }
+  if (conditionerState === 1) {
+    cmdItem.status = DeviceCmdStatusText.AirConditionerModeCoolText
+    cmdItem.action = AirConditioningModeEnum.CLOSE
+  }
+  if (conditionerState === 2) {
+    cmdItem.status = DeviceCmdStatusText.AirConditionerModeHeatText
+    cmdItem.action = AirConditioningModeEnum.CLOSE
+  }
+  if (conditionerState === 3) {
+    cmdItem.status = DeviceCmdStatusText.AirConditionerModeDehumdidfyText
+    cmdItem.action = AirConditioningModeEnum.CLOSE
+  }
+}
+
 /**
  * 根据指令执行消息更新信息
  * @param cmd

--
Gitblit v1.9.3