Commit 0783e5a6 authored by duanruiming's avatar duanruiming

[update] 控制模式与运行模式优化

parent 94b36411
......@@ -6,12 +6,31 @@ import org.springframework.stereotype.Component;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@Component
@SuppressWarnings("all")
public class Constants {
/**
* 信号机运行模式
*/
public static final Map<String, String> controlModeMap = new ConcurrentHashMap<>();
/**
* 运行状态和WEB控制模式转换
*/
public static final Map<String, Integer> runModeControlMap = new HashMap<>();
static {
runModeControlMap.put("2", 4);
runModeControlMap.put("3", 2);
runModeControlMap.put("4", 3);
runModeControlMap.put("9", 5);
runModeControlMap.put("11", 1);
}
/**
* 厂商接口地址
*/
......@@ -126,6 +145,7 @@ public class Constants {
public static ConcurrentHashMap<String, List<CrossLanesVo>> getTelesemeLaneRealMap() {
return telesemeLaneRealMap;
}
/*记录当前用户*/
public static ThreadLocal<String> current_user_id = ThreadLocal.withInitial(() -> "");
//gisc-develop 工作流事务全局标识,默认不开启
......@@ -135,19 +155,19 @@ public class Constants {
//日志消息名称关键字
public static final String BP_LOG = "log";
//数据扩展表关键字
public static final String TABLE_RELATION="_relation";
public static final String TABLE_RELATION = "_relation";
public final class MessageES{
public final class MessageES {
public static final String MESSAGE_HISTORY = "message_history";
public static final String MESSAGE_CONSUME_HISTORY = "message_consume_history";
public static final String MESSAGE_FILTER_HISTORY = "message_filter_history";
}
public final class WebsocketMessage{
public final class WebsocketMessage {
public static final String NEW_UNREAD_MESSAGE = "";
public static final String GET_UNREAD_COUNT="";
public static final String GET_READ_MESSAGE="";
public static final String GET_UNREAD_MESSAGE="";
public static final String GET_UNREAD_COUNT = "";
public static final String GET_READ_MESSAGE = "";
public static final String GET_UNREAD_MESSAGE = "";
}
......@@ -249,8 +269,8 @@ public class Constants {
public static final String CLI_IC_ROLE_BUSINESSACCOUNT_RLAT = "CLI_IC_ROLE_BUSINESSACCOUNT_RLAT.csv";
public static final String CLI_DEV_MENU = "CLI_DEV_MENU.csv";
public static final String MAN_MSG_TOPIC_FILTER_ITEM_RLAT= "MAN_MSG_TOPIC_FILTER_ITEM_RLAT.csv";
public static final String MAN_DEV_PLUGIN_PARAM="MAN_DEV_PLUGIN_PARAM.csv";
public static final String MAN_MSG_TOPIC_FILTER_ITEM_RLAT = "MAN_MSG_TOPIC_FILTER_ITEM_RLAT.csv";
public static final String MAN_DEV_PLUGIN_PARAM = "MAN_DEV_PLUGIN_PARAM.csv";
}
public final class BpmExport {
......@@ -290,6 +310,7 @@ public class Constants {
//导出组件版本表
public static final String COMPONENT_VERSION = "CLI_DEV_COMPONENT_VERSION.csv";
}
/**
* 系统基础服务路径
*/
......@@ -345,7 +366,7 @@ public class Constants {
//基础数据
public static final String MODEL_BASE_DATA = "design/basedata/";
//服务接口
public static final String MODEL_DEV_SERVICE="develop/service/";
public static final String MODEL_DEV_SERVICE = "develop/service/";
//基础设置
public static final String MODEL_CONFIG_DATA = "design/config/";
//MSP
......@@ -373,10 +394,9 @@ public class Constants {
public static final String DEVICE_API = "api/device/";
}
public final class ServiceDevPathPrefix{
public final class ServiceDevPathPrefix {
/**
* 数据库接口
*/
......@@ -384,9 +404,8 @@ public class Constants {
/**
* 服务接口接口
*
*/
public static final String DEV_API_INTERFACE="sgw/apiInterface";
public static final String DEV_API_INTERFACE = "sgw/apiInterface";
/**
* dev 注册服务
......@@ -396,14 +415,14 @@ public class Constants {
/**
* vt 矢量栅格服务
*/
public static final String DEV_VT_SERVICE="develop/vt/";
public static final String DEV_VT_SERVICE = "develop/vt/";
}
/**
* 数据能力标签,元数据驱动的核心代码
*/
public final class DataTag{
public final class DataTag {
/**
* geometry
......@@ -426,13 +445,13 @@ public class Constants {
* --
* edit
*/
public static final String DATA_TAG_EXPORT="export";
public static final String DATA_TAG_GEOMETRY="geometry";
public static final String DATA_TAG_NEST="nest";
public static final String DATA_TAG_HOOK="hook";
public static final String DATA_TAG_CACHE="cache";
public static final String DATA_TAG_PUBLISH="publish";
public static final String DATA_TAG_EDIT="edit";
public static final String DATA_TAG_EXPORT = "export";
public static final String DATA_TAG_GEOMETRY = "geometry";
public static final String DATA_TAG_NEST = "nest";
public static final String DATA_TAG_HOOK = "hook";
public static final String DATA_TAG_CACHE = "cache";
public static final String DATA_TAG_PUBLISH = "publish";
public static final String DATA_TAG_EDIT = "edit";
}
/**
......@@ -694,7 +713,7 @@ public class Constants {
public static final String ORACLE = "oracle";
public static final String BEYONDB = "beyondb";
public static final String POSTGRESQL = "postgresql";
public static final String SQLSERVER="sqlserver";
public static final String SQLSERVER = "sqlserver";
}
/**
......@@ -1090,7 +1109,7 @@ public class Constants {
public static final String DB_REDIS = "redis";
public static final String DB_WEBSOCKET = "websocket";
public static final String DB_WEBSERVICE = "webservice";
public static final String DB_MONGODB="mongo";
public static final String DB_MONGODB = "mongo";
}
public static final class TableRestfulConstants {
......@@ -1120,11 +1139,11 @@ public class Constants {
public static final String BETWEEN_OPERATION = "between";
public static final String PAGE_SIZE = "pageSize";
public static final String PAGE_NUM = "pageNum";
public static final String ORDER="order";
public static final String IN_OPERATION="in";
public static final String DESC_OPERATION="DESC";
public static final String ASC_OPERATION="ASC";
public static final String LIKE_OPERATION="like";
public static final String ORDER = "order";
public static final String IN_OPERATION = "in";
public static final String DESC_OPERATION = "DESC";
public static final String ASC_OPERATION = "ASC";
public static final String LIKE_OPERATION = "like";
}
......@@ -1194,7 +1213,7 @@ public class Constants {
/**
* 路网数据更新状态
* 路网数据更新状态
*/
public final class DataConstants {
// 数据状态 0继承,1删除,2增加,3修改
......
......@@ -9,10 +9,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import net.wanji.databus.po.SignalStatusLogPO;
import net.wanji.databus.vo.BaseCrossInfo;
import net.wanji.databus.vo.LightsStatusVO;
import net.wanji.utc.common.constant.Constants;
import net.wanji.utc.common.constant.RedisKeyConst;
import net.wanji.utc.common.typeenum.HkControlModeEnum;
import net.wanji.utc.service.runninginfo.HkRunningStatusService;
import net.wanji.utc.util.PathUtil;
import net.wanji.utc.util.RedisUtil;
......@@ -64,17 +61,12 @@ public class HkRunningStatusServiceImpl implements HkRunningStatusService {
// if (hasFault == 0) {
po.setFaultType(hasFault);
// }
// 从Redis中查询控制类型
String lightsStatusVOStr = redisUtil.getHash(RedisKeyConst.KEY_PREFIX + RedisKeyConst.LIGHTS_STATUS,
baseCrossInfo.getManufacturerCode() + Constants.SEPARATOR_UNDER_LINE + po.getSignalId());
LightsStatusVO lightsStatusVO = JSON.parseObject(lightsStatusVOStr, LightsStatusVO.class);
Integer controlType = 1;
if (Objects.nonNull(lightsStatusVO)) {
String runMode = lightsStatusVO.getRunMode();
int runModeInt = Integer.parseInt(runMode);
controlType = HkControlModeEnum.getCodeByHkCode(runModeInt);
Map<String, String> controlModeMap = Constants.controlModeMap;
Map<String, Integer> runModeControlMap = Constants.runModeControlMap;
if (!controlModeMap.isEmpty() && !runModeControlMap.isEmpty()) {
String currentControl = controlModeMap.get(baseCrossInfo.getCrossId());
po.setControlType(runModeControlMap.get(currentControl));
}
po.setControlType(controlType);
result.add(po);
}
}
......
......@@ -5,6 +5,7 @@ import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.extern.slf4j.Slf4j;
import net.wanji.databus.po.SignalStatusLogPO;
import net.wanji.databus.vo.LightsStatusVO;
import net.wanji.utc.common.constant.Constants;
import net.wanji.utc.service.runninginfo.HkLightsStatusService;
import net.wanji.utc.service.runninginfo.SignalStatusService;
import net.wanji.utc.websocket.RealTimeDataWebSocket;
......@@ -83,6 +84,7 @@ public class SignalStatusTask {
} else if (StringUtils.equals(lightsStatusVO.getRunMode(), "11")) {
runModeTimeMap.remove(crossIdStr);
}
Constants.controlModeMap.putIfAbsent(crossId, lightsStatusVO.getRunMode());
try {
webSocket.sendInfo(JSONObject.toJSONString(lightsStatusVOS, SerializerFeature.WriteMapNullValue), crossIdStr);
} catch (Exception e) {
......
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