Commit 1a2e2bbf authored by hanbing's avatar hanbing

运行信息接口-信号运行状态数据-订阅信号机故障信息、订阅信号灯态

parent 3c28b9be
package net.wanji.utc.common.typeenum;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Objects;
/**
* @author Kent HAN
* @date 2022/11/21 21:28
*/
@Getter
@AllArgsConstructor
public enum HkControlModeEnum {
ZERO(7, 0),
ONE(-1, 1),
TWO(3, 2),
THREE(2, 3),
FOUR(1, 4),
FIVE(-1, 5),
SIX(-1, 6),
SEVEN(-1, 7),
EIGHT(-1, 8),
NINE(-1, 9),
TEN(-1, 10),
TWELVE(4, 12);
private Integer code;
private Integer hkCode;
public static Integer getCodeByHkCode(Integer hkCode) {
for (HkControlModeEnum value : values()) {
if (Objects.equals(hkCode, value.getHkCode())) {
return value.getCode();
}
}
return null;
}
}
...@@ -9,10 +9,13 @@ import lombok.extern.slf4j.Slf4j; ...@@ -9,10 +9,13 @@ import lombok.extern.slf4j.Slf4j;
import net.wanji.utc.common.baseentity.BaseCrossInfo; import net.wanji.utc.common.baseentity.BaseCrossInfo;
import net.wanji.utc.common.commonentity.HttpRequest; import net.wanji.utc.common.commonentity.HttpRequest;
import net.wanji.utc.common.constant.Constants; import net.wanji.utc.common.constant.Constants;
import net.wanji.utc.common.constant.RedisKeyConst;
import net.wanji.utc.common.typeenum.BasicEnum; import net.wanji.utc.common.typeenum.BasicEnum;
import net.wanji.utc.common.typeenum.HkControlModeEnum;
import net.wanji.utc.po.SignalStatusLogPO; import net.wanji.utc.po.SignalStatusLogPO;
import net.wanji.utc.service.runninginfo.HkRunningStatusService; import net.wanji.utc.service.runninginfo.HkRunningStatusService;
import net.wanji.utc.vo.RunningStatusVO; import net.wanji.utc.util.RedisUtil;
import net.wanji.utc.vo.LightsStatusVO;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -33,6 +36,8 @@ public class HkRunningStatusServiceImpl implements HkRunningStatusService { ...@@ -33,6 +36,8 @@ public class HkRunningStatusServiceImpl implements HkRunningStatusService {
private String artemisPath; private String artemisPath;
@Autowired @Autowired
private ArtemisConfig artemisConfig; private ArtemisConfig artemisConfig;
@Autowired
private RedisUtil redisUtil;
@Override @Override
public List<SignalStatusLogPO> getHkRunningStatus(List<BaseCrossInfo> baseCrossInfoList) { public List<SignalStatusLogPO> getHkRunningStatus(List<BaseCrossInfo> baseCrossInfoList) {
...@@ -58,8 +63,14 @@ public class HkRunningStatusServiceImpl implements HkRunningStatusService { ...@@ -58,8 +63,14 @@ public class HkRunningStatusServiceImpl implements HkRunningStatusService {
if (hasFault == 0) { if (hasFault == 0) {
po.setFaultType(hasFault); po.setFaultType(hasFault);
} }
// todo 从Redis中查询控制类型 // 从Redis中查询控制类型
String lightsStatusVOStr = redisUtil.getHash(RedisKeyConst.KEY_PREFIX + RedisKeyConst.LIGHTS_STATUS,
baseCrossInfo.getManufacturerAbbr() + Constants.SEPARATOR_UNDER_LINE + po.getSignalId());
LightsStatusVO lightsStatusVO = JSON.parseObject(lightsStatusVOStr, LightsStatusVO.class);
String runMode = lightsStatusVO.getRunMode();
int runModeInt = Integer.parseInt(runMode);
Integer controlType = HkControlModeEnum.getCodeByHkCode(runModeInt);
po.setControlType(controlType);
result.add(po); result.add(po);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment