空调模式

This commit is contained in:
孙小云 2026-02-06 14:24:39 +08:00
parent b5ccef48d0
commit e5a642b4d5
2 changed files with 20 additions and 1 deletions

View File

@ -225,6 +225,17 @@ public class TuohengDeviceAttributes {
} }
); );
/**
* 空调状态属性手动维护
*/
// 空调状态 - String (IDLE=空闲, COOLING=制冷, HEATING=制热, DEHUMIDIFYING=除湿)
public static final AttributeKey<String> AIR_CONDITIONER_STATUS = AttributeKey.of(
"airConditionerStatus",
String.class,
value -> value != null ? value.toString() : null
);
private TuohengDeviceAttributes() { private TuohengDeviceAttributes() {
// 工具类禁止实例化 // 工具类禁止实例化
} }
@ -253,7 +264,8 @@ public class TuohengDeviceAttributes {
BACKUP_LONGITUDE, BACKUP_LONGITUDE,
BACKUP_LATITUDE, BACKUP_LATITUDE,
RUNNING_DURATION, RUNNING_DURATION,
MISSION_COUNT MISSION_COUNT,
AIR_CONDITIONER_STATUS
); );
} }

View File

@ -364,6 +364,13 @@ public class TuohengBufferDeviceImpl implements IBufferDeviceService {
log.info("设置舱门状态: {}", cabinDoorStatus); log.info("设置舱门状态: {}", cabinDoorStatus);
}); });
// 设置空调状态从属性中获取 airConditionerStatus取不到则默认为 IDLE
log.info("---------- 解析空调状态 ----------");
String airConditionerStatus = attributes.get(TuohengDeviceAttributes.AIR_CONDITIONER_STATUS)
.orElse("IDLE");
log.info("AIR_CONDITIONER_STATUS 空调状态: {}", airConditionerStatus);
dto.setAirConditionerStatus(airConditionerStatus);
// 设置环境数据 // 设置环境数据
log.info("---------- 解析气象数据 ----------"); log.info("---------- 解析气象数据 ----------");
telemetry.get(TuohengDeviceTelemetry.NEST_INNER_TEMP) telemetry.get(TuohengDeviceTelemetry.NEST_INNER_TEMP)