环境温度和湿度也从IOT读取
This commit is contained in:
parent
e5a642b4d5
commit
5eafcff343
|
|
@ -236,6 +236,36 @@ public class TuohengDeviceAttributes {
|
||||||
value -> value != null ? value.toString() : null
|
value -> value != null ? value.toString() : null
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 环境数据属性(手动维护)
|
||||||
|
*/
|
||||||
|
|
||||||
|
// 环境温度 - Double
|
||||||
|
public static final AttributeKey<Double> ENVIRONMENT_TEMPERATURE = AttributeKey.of(
|
||||||
|
"environmentTemperature",
|
||||||
|
Double.class,
|
||||||
|
value -> {
|
||||||
|
if (value == null) return null;
|
||||||
|
if (value instanceof Number) {
|
||||||
|
return ((Number) value).doubleValue();
|
||||||
|
}
|
||||||
|
return Double.parseDouble(value.toString());
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
// 环境湿度 - Double
|
||||||
|
public static final AttributeKey<Double> ENVIRONMENT_HUMIDITY = AttributeKey.of(
|
||||||
|
"environmentHumidity",
|
||||||
|
Double.class,
|
||||||
|
value -> {
|
||||||
|
if (value == null) return null;
|
||||||
|
if (value instanceof Number) {
|
||||||
|
return ((Number) value).doubleValue();
|
||||||
|
}
|
||||||
|
return Double.parseDouble(value.toString());
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
private TuohengDeviceAttributes() {
|
private TuohengDeviceAttributes() {
|
||||||
// 工具类,禁止实例化
|
// 工具类,禁止实例化
|
||||||
}
|
}
|
||||||
|
|
@ -265,7 +295,9 @@ public class TuohengDeviceAttributes {
|
||||||
BACKUP_LATITUDE,
|
BACKUP_LATITUDE,
|
||||||
RUNNING_DURATION,
|
RUNNING_DURATION,
|
||||||
MISSION_COUNT,
|
MISSION_COUNT,
|
||||||
AIR_CONDITIONER_STATUS
|
AIR_CONDITIONER_STATUS,
|
||||||
|
ENVIRONMENT_TEMPERATURE,
|
||||||
|
ENVIRONMENT_HUMIDITY
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -114,8 +114,8 @@ public class DockDetailDTO implements Serializable
|
||||||
/** 舱门状态 */
|
/** 舱门状态 */
|
||||||
private String cabinDoorStatus;
|
private String cabinDoorStatus;
|
||||||
|
|
||||||
/** 机场运行状态 */
|
// /** 机场运行状态 */
|
||||||
private String dockRunStatus;
|
// private String dockRunStatus;
|
||||||
|
|
||||||
/** 舱内摄像头 */
|
/** 舱内摄像头 */
|
||||||
private String internalCamera;
|
private String internalCamera;
|
||||||
|
|
|
||||||
|
|
@ -373,11 +373,19 @@ public class TuohengBufferDeviceImpl implements IBufferDeviceService {
|
||||||
|
|
||||||
// 设置环境数据
|
// 设置环境数据
|
||||||
log.info("---------- 解析气象数据 ----------");
|
log.info("---------- 解析气象数据 ----------");
|
||||||
telemetry.get(TuohengDeviceTelemetry.NEST_INNER_TEMP)
|
// 环境温度和湿度从属性中获取(手动维护),取不到则为 null
|
||||||
|
attributes.get(TuohengDeviceAttributes.ENVIRONMENT_TEMPERATURE)
|
||||||
.ifPresent(value -> {
|
.ifPresent(value -> {
|
||||||
log.info("环境温度(使用舱内温度): {}", value.getValue());
|
log.info("ENVIRONMENT_TEMPERATURE 环境温度: {}", value);
|
||||||
dto.setEnvironmentTemperature(value.getValue());
|
dto.setEnvironmentTemperature(value);
|
||||||
});
|
});
|
||||||
|
attributes.get(TuohengDeviceAttributes.ENVIRONMENT_HUMIDITY)
|
||||||
|
.ifPresent(value -> {
|
||||||
|
log.info("ENVIRONMENT_HUMIDITY 环境湿度: {}", value);
|
||||||
|
dto.setEnvironmentHumidity(value);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 风速和降雨量从遥测数据中获取
|
||||||
telemetry.get(TuohengDeviceTelemetry.WEATHER_WIND_SPEED)
|
telemetry.get(TuohengDeviceTelemetry.WEATHER_WIND_SPEED)
|
||||||
.ifPresent(value -> {
|
.ifPresent(value -> {
|
||||||
log.info("WEATHER_WIND_SPEED 风速: {}", value.getValue());
|
log.info("WEATHER_WIND_SPEED 风速: {}", value.getValue());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue