添加舱门状态

This commit is contained in:
孙小云 2026-01-21 18:33:36 +08:00
parent 6e538bd4cb
commit ec5dba7fc5
1 changed files with 33 additions and 1 deletions

View File

@ -17,6 +17,7 @@ import com.ruoyi.device.api.enums.AircraftStatusEnum;
import com.ruoyi.device.api.enums.DockStatusEnum;
import com.ruoyi.device.api.enums.NetworkTypeEnum;
import com.ruoyi.device.api.enums.AirConditionerStatusEnum;
import com.ruoyi.device.api.enums.CabinDoorStatusEnum;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -224,7 +225,14 @@ public class BufferDeviceImpl implements IBufferDeviceService
}
});
//cabinDoorStatus
// 舱门状态枚举值0-关闭1-打开2-半开3-舱盖状态异常
telemetryMap.get(DeviceTelemetry.Cover_State)
.ifPresent(telemetryValue -> {
Integer coverState = telemetryValue.getValue();
if (coverState != null) {
dto.setCabinDoorStatus(mapCabinDoorState(coverState));
}
});
return dto;
}
@ -297,6 +305,30 @@ public class BufferDeviceImpl implements IBufferDeviceService
}
}
/**
* 将舱门状态代码映射到 CabinDoorStatusEnum
* @param coverState 舱门状态代码0-关闭1-打开2-半开3-舱盖状态异常
* @return 舱门状态枚举的 code
*/
private String mapCabinDoorState(Integer coverState) {
if (coverState == null) {
return null;
}
switch (coverState) {
case 0:
return CabinDoorStatusEnum.CLOSED.getCode();
case 1:
return CabinDoorStatusEnum.OPEN.getCode();
case 2:
return CabinDoorStatusEnum.HALF_OPEN.getCode();
case 3:
return CabinDoorStatusEnum.ABNORMAL.getCode();
default:
return null;
}
}
private AircraftDetailDTO getChangeAbleAirDetailDTO(String deviceIotId)
{