修改获取机场状态的代码
This commit is contained in:
parent
ac9a8944cb
commit
cb1c303a6c
|
|
@ -9,9 +9,11 @@ import com.ruoyi.device.domain.model.Device;
|
||||||
import com.ruoyi.device.domain.model.Dock;
|
import com.ruoyi.device.domain.model.Dock;
|
||||||
import com.ruoyi.device.domain.model.thingsboard.AttributeMap;
|
import com.ruoyi.device.domain.model.thingsboard.AttributeMap;
|
||||||
import com.ruoyi.device.domain.model.thingsboard.TelemetryMap;
|
import com.ruoyi.device.domain.model.thingsboard.TelemetryMap;
|
||||||
|
import com.ruoyi.device.domain.model.thingsboard.constants.DeviceAttributes;
|
||||||
import com.ruoyi.device.service.api.IBufferDeviceService;
|
import com.ruoyi.device.service.api.IBufferDeviceService;
|
||||||
import com.ruoyi.device.service.dto.AircraftDetailDTO;
|
import com.ruoyi.device.service.dto.AircraftDetailDTO;
|
||||||
import com.ruoyi.device.service.dto.DockDetailDTO;
|
import com.ruoyi.device.service.dto.DockDetailDTO;
|
||||||
|
import com.ruoyi.device.service.enums.DockStatusEnum;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
@ -83,11 +85,38 @@ public class BufferDeviceImpl implements IBufferDeviceService
|
||||||
AttributeMap attributeMap = thingsBoardDomain.getPredefinedDeviceAttributes(deviceIotId);
|
AttributeMap attributeMap = thingsBoardDomain.getPredefinedDeviceAttributes(deviceIotId);
|
||||||
TelemetryMap telemetryMap = thingsBoardDomain.getPredefinedDeviceTelemetry(deviceIotId);
|
TelemetryMap telemetryMap = thingsBoardDomain.getPredefinedDeviceTelemetry(deviceIotId);
|
||||||
|
|
||||||
|
// 根据 MODE_CODE 设置机场状态
|
||||||
|
// MODE_CODE 定义: {"0":"空闲中","1":"现场调试","2":"远程调试","3":"固件升级中","4":"作业中","5":"待标定"}
|
||||||
|
attributeMap.get(DeviceAttributes.MODE_CODE).ifPresent(modeCode -> {
|
||||||
|
String dockStatus = mapModeCodeToDockStatus(modeCode);
|
||||||
|
dto.setDockStatus(dockStatus);
|
||||||
|
});
|
||||||
|
|
||||||
return dto;
|
return dto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将 MODE_CODE 映射到机场状态
|
||||||
|
* @param modeCode 模式代码
|
||||||
|
* @return 机场状态字符串
|
||||||
|
*/
|
||||||
|
private String mapModeCodeToDockStatus(Integer modeCode) {
|
||||||
|
switch (modeCode) {
|
||||||
|
case 0:
|
||||||
|
return DockStatusEnum.IDLE.getCode();
|
||||||
|
case 1:
|
||||||
|
case 2:
|
||||||
|
return DockStatusEnum.Debugging.getCode();
|
||||||
|
case 3:
|
||||||
|
return DockStatusEnum.FIRMWARE_UPGRADING.getCode();
|
||||||
|
case 4:
|
||||||
|
return DockStatusEnum.WORKING.getCode();
|
||||||
|
case 5:
|
||||||
|
default:
|
||||||
|
return DockStatusEnum.UNKNOWN.getCode();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private AircraftDetailDTO getChangeAbleAirDetailDTO(String deviceIotId)
|
private AircraftDetailDTO getChangeAbleAirDetailDTO(String deviceIotId)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue