2019-11-29 12:51:58 +08:00
|
|
|
import * as zrUtil from 'zrender/src/core/util';
|
|
|
|
import * as matrix from 'zrender/src/core/matrix';
|
|
|
|
import deviceType from '../constant/deviceType';
|
|
|
|
import deviceRender from '../constant/deviceRender';
|
|
|
|
import Vue from 'vue';
|
|
|
|
import { deepClone } from '@/utils/index';
|
|
|
|
|
|
|
|
export function createTransform(opts) {
|
|
|
|
let transform = matrix.create();
|
|
|
|
transform = matrix.scale(matrix.create(), transform, [opts.scaleRate, opts.scaleRate]);
|
|
|
|
transform = matrix.translate(matrix.create(), transform, [-opts.offsetX, -opts.offsetY]);
|
|
|
|
return transform;
|
|
|
|
}
|
|
|
|
|
|
|
|
export function createBoundingRect(view) {
|
2019-12-18 09:49:44 +08:00
|
|
|
const rect = view.getBoundingRect().clone();
|
2019-11-29 12:51:58 +08:00
|
|
|
const scale = view.scale[0];
|
|
|
|
const offsetX = view.position[0];
|
|
|
|
const offsetY = view.position[1];
|
|
|
|
rect.x = rect.x * scale + offsetX;
|
|
|
|
rect.y = rect.y * scale + offsetY;
|
|
|
|
rect.width = rect.width * scale;
|
|
|
|
rect.height = rect.height * scale;
|
|
|
|
return rect;
|
|
|
|
}
|
|
|
|
|
|
|
|
export function calculateDCenter(viewRect, zrbound) {
|
|
|
|
var dx = (zrbound.width - viewRect.width) / 2 - viewRect.x;
|
|
|
|
var dy = 0;
|
|
|
|
return { dx: dx, dy: dy };
|
|
|
|
}
|
|
|
|
|
2020-03-11 10:53:09 +08:00
|
|
|
export function deviceFactory(type, elem, showConfig) {
|
|
|
|
return {...deviceRender[type], ...elem, ...showConfig};
|
2019-11-29 12:51:58 +08:00
|
|
|
}
|
|
|
|
|
2020-03-11 15:10:08 +08:00
|
|
|
export function createDevice(type, elem, propConvert, showConfig) {
|
|
|
|
const device = deviceFactory(type, Object.assign(elem, { _type: type } ), showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
return propConvert ? propConvert.initPrivateProps(device) : device;
|
|
|
|
}
|
|
|
|
|
2020-03-11 15:10:08 +08:00
|
|
|
export function parser(data, skinCode, showConfig) {
|
2019-11-29 12:51:58 +08:00
|
|
|
var mapDevice = {};
|
|
|
|
var propConvert = skinCode ? Vue.prototype.$theme.loadPropConvert(skinCode) : null;
|
|
|
|
if (data) {
|
|
|
|
zrUtil.each(data.sectionList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Section, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.signalList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Signal, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.stationList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Station, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.stationStandList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.StationStand, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
2020-01-07 10:52:44 +08:00
|
|
|
zrUtil.each(data.stationControlList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.StationControl, elem, propConvert, showConfig);
|
2020-01-07 10:52:44 +08:00
|
|
|
}, this);
|
2019-11-29 12:51:58 +08:00
|
|
|
|
|
|
|
zrUtil.each(data.counterList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.StationCounter, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.delayShowList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.StationDelayUnlock, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.lineList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Line, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
2019-12-06 18:03:13 +08:00
|
|
|
zrUtil.each(data.espList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Esp, elem, propConvert, showConfig);
|
2019-12-06 18:03:13 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.psdList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Psd, elem, propConvert, showConfig);
|
2019-12-06 18:03:13 +08:00
|
|
|
}, this);
|
|
|
|
|
2019-11-29 12:51:58 +08:00
|
|
|
zrUtil.each(data.textList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Text, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.zcList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ZcControl, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.lcList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.LcControl, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
2020-03-17 16:12:15 +08:00
|
|
|
zrUtil.each(data.tempSpeedLimitList || [], elem => { // 全线临时限速列表
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.LimitControl, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.resourceList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Resource, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.trainList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Train, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.Line || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Line, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.Text || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Text, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
}, this);
|
|
|
|
|
2020-03-17 16:12:15 +08:00
|
|
|
zrUtil.each(data.cycleButtonList || [], elem => { // 自动折返列表
|
2020-03-18 09:10:57 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.AutoTurnBack, elem, propConvert, showConfig);
|
2020-03-05 15:48:51 +08:00
|
|
|
}, this);
|
2020-03-05 16:43:53 +08:00
|
|
|
|
2020-03-17 16:12:15 +08:00
|
|
|
zrUtil.each(data.axleCounterResetButtonList || [], elem => { // 计轴复位列表
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.AxleReset, elem, propConvert, showConfig);
|
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.totalGuideLockButtonVOList || [], elem => { // 引导总锁列表
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.GuideLock, elem, propConvert, showConfig);
|
2020-03-20 14:12:02 +08:00
|
|
|
mapDevice[elem.stationCode].guideLockCode = elem.code; // 保证处理车站列表在处理引导总锁列表之前
|
2020-03-17 16:12:15 +08:00
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.automaticRouteButtonList || [], elem => { // 自动进路列表
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.AutomaticRoute, elem, propConvert, showConfig);
|
2020-03-05 16:43:53 +08:00
|
|
|
}, this);
|
|
|
|
|
2020-03-17 16:12:15 +08:00
|
|
|
zrUtil.each(data.outerFrameList || [], elem => { // 矩形框列表
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.OutFrame, elem, propConvert, showConfig);
|
2020-03-04 20:59:16 +08:00
|
|
|
}, this);
|
2020-04-15 14:13:08 +08:00
|
|
|
zrUtil.each(data.splitStationList || [], elem => {
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.SplitStation, elem, propConvert, showConfig);
|
|
|
|
}, this);
|
2020-04-26 16:24:34 +08:00
|
|
|
zrUtil.each( data.arrowList || [], elem => {
|
2020-04-26 17:16:20 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Arrow, elem, propConvert, showConfig);
|
2020-04-26 16:24:34 +08:00
|
|
|
}, this);
|
2020-03-20 11:09:06 +08:00
|
|
|
zrUtil.each(data.indicatorLightList || [], elem => {
|
|
|
|
switch (elem.type) {
|
|
|
|
case 'AtsControl':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.AtsControl, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'CenterCommunication':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.CenterCommunication, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'ChainControl':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ChainControl, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'IntersiteControl':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.IntersiteControl, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'LeuControl':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.LeuControl, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'LocalControl':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.LocalControl, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'Maintain':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Maintain, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'PowerSupply':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.PowerSupply, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'NoOneReturn':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.NoOneReturn, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-03-24 15:02:14 +08:00
|
|
|
case 'MaintenanceLamps':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.MaintenanceLamps, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-03-24 16:35:09 +08:00
|
|
|
case 'ZcCommunication':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ZcCommunication, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-04-14 15:45:13 +08:00
|
|
|
case 'FaultStatusGroup':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.FaultStatusGroup, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'Axle':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Axle, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-04-17 15:59:50 +08:00
|
|
|
case 'ModeStatusGroup':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ModeStatusGroup, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'LampFilament':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.LampFilament, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'ReturnModeGroup':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ReturnModeGroup, elem, propConvert, showConfig);
|
|
|
|
break;
|
|
|
|
case 'ControlSwitch':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.ControlSwitch, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-04-22 17:12:29 +08:00
|
|
|
case 'SwitchFault':
|
|
|
|
mapDevice[elem.code] = createDevice(deviceType.SwitchFault, elem, propConvert, showConfig);
|
|
|
|
break;
|
2020-03-20 11:09:06 +08:00
|
|
|
}
|
|
|
|
}, this);
|
2020-03-19 16:17:34 +08:00
|
|
|
|
2019-11-29 12:51:58 +08:00
|
|
|
zrUtil.each(data.trainWindowList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.TrainWindow, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
if (elem.sectionCode) {
|
|
|
|
const section = mapDevice[elem.sectionCode];
|
|
|
|
if (section) {
|
|
|
|
section['trainWindowCode'] = elem.code;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}, this);
|
|
|
|
|
|
|
|
zrUtil.each(data.switchList || [], elem => {
|
2020-03-11 15:10:08 +08:00
|
|
|
mapDevice[elem.code] = createDevice(deviceType.Switch, elem, propConvert, showConfig);
|
2019-11-29 12:51:58 +08:00
|
|
|
const cnodeSection = mapDevice[mapDevice[elem.code].sectionACode];
|
|
|
|
const lnodeSection = mapDevice[mapDevice[elem.code].sectionBCode];
|
|
|
|
const rnodeSection = mapDevice[mapDevice[elem.code].sectionCCode];
|
|
|
|
|
|
|
|
if (cnodeSection && lnodeSection && rnodeSection) {
|
|
|
|
cnodeSection['switch'] = lnodeSection['switch'] = rnodeSection['switch'] = mapDevice[elem.code];
|
2020-04-09 15:21:44 +08:00
|
|
|
const sectionParent = mapDevice[cnodeSection.parentCode];
|
2020-05-09 17:27:28 +08:00
|
|
|
if (sectionParent) {
|
|
|
|
sectionParent['switch'] = mapDevice[elem.code];
|
|
|
|
}
|
2019-12-03 14:42:00 +08:00
|
|
|
if (cnodeSection.points[0].x == lnodeSection.points[lnodeSection.points.length - 1].x && cnodeSection.points[0].y == lnodeSection.points[lnodeSection.points.length - 1].y) {
|
2019-11-29 12:51:58 +08:00
|
|
|
mapDevice[elem.code].intersection = {
|
|
|
|
x: cnodeSection.points[0].x,
|
|
|
|
y: cnodeSection.points[0].y
|
|
|
|
};
|
|
|
|
mapDevice[elem.code].skew = {
|
|
|
|
x: rnodeSection.points[rnodeSection.points.length - 2].x,
|
|
|
|
y: rnodeSection.points[rnodeSection.points.length - 2].y
|
|
|
|
};
|
2019-12-03 14:42:00 +08:00
|
|
|
} else if (cnodeSection.points[cnodeSection.points.length - 1].x == lnodeSection.points[0].x && cnodeSection.points[cnodeSection.points.length - 1].y == lnodeSection.points[0].y) {
|
2019-11-29 12:51:58 +08:00
|
|
|
mapDevice[elem.code].intersection = {
|
|
|
|
x: cnodeSection.points[cnodeSection.points.length - 1].x,
|
|
|
|
y: cnodeSection.points[cnodeSection.points.length - 1].y
|
|
|
|
};
|
|
|
|
mapDevice[elem.code].skew = {
|
|
|
|
x: rnodeSection.points[1].x,
|
|
|
|
y: rnodeSection.points[1].y
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
const section = mapDevice[cnodeSection.parentCode];
|
|
|
|
if (section) {
|
|
|
|
mapDevice[elem.code].sectionName = section.name;
|
2020-03-19 17:18:46 +08:00
|
|
|
mapDevice[elem.code].sectionParentCode = section.code;
|
2019-11-29 12:51:58 +08:00
|
|
|
section['relSwitchCode'] = elem.code;
|
|
|
|
}
|
|
|
|
|
|
|
|
rnodeSection['layer'] = -1;
|
|
|
|
}
|
|
|
|
}, this);
|
|
|
|
}
|
|
|
|
|
|
|
|
return mapDevice;
|
|
|
|
}
|
|
|
|
|
|
|
|
// 同步绘制数据到原始数据
|
|
|
|
export function updateForList(model, state, liststr) {
|
|
|
|
const list = state.map[liststr];
|
|
|
|
if (list && list instanceof Array) {
|
|
|
|
const i = list.findIndex(elem => { return elem.code == model.code; });
|
|
|
|
if (model._dispose) {
|
|
|
|
i >= 0 && list.splice(i, 1); // 删除
|
|
|
|
} else if (!list[i]) {
|
|
|
|
list.push(deepClone(model)); // 新增
|
|
|
|
} else if (i >= 0) {
|
|
|
|
list[i] = deepClone(model); // item map 数据 model 页面表单数据
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
state.map[liststr] = [model];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export function updateMapData(state, model) {
|
|
|
|
if (state.map && model) {
|
|
|
|
switch (model._type) {
|
|
|
|
case deviceType.Section: updateForList(model, state, 'sectionList'); break;
|
|
|
|
case deviceType.Switch: updateForList(model, state, 'switchList'); break;
|
|
|
|
case deviceType.Signal: updateForList(model, state, 'signalList'); break;
|
|
|
|
case deviceType.Station: updateForList(model, state, 'stationList'); break;
|
|
|
|
case deviceType.StationStand: updateForList(model, state, 'stationStandList'); break;
|
|
|
|
case deviceType.StationControl: updateForList(model, state, 'stationControlList'); break;
|
|
|
|
case deviceType.StationCounter: updateForList(model, state, 'stationCounterList'); break;
|
2019-12-17 19:03:38 +08:00
|
|
|
case deviceType.ZcControl: updateForList(model, state, 'zcList'); break;
|
2019-11-29 12:51:58 +08:00
|
|
|
case deviceType.StationDelayUnlock:updateForList(model, state, 'stationDelayUnlockList'); break;
|
2020-03-05 12:21:28 +08:00
|
|
|
case deviceType.LcControl: updateForList(model, state, 'lcList'); break;
|
2019-11-29 12:51:58 +08:00
|
|
|
case deviceType.LimitControl: updateForList(model, state, 'tempSpeedLimitList'); break;
|
2019-12-23 10:53:25 +08:00
|
|
|
case deviceType.Resource: updateForList(model, state, 'resourceList'); break;
|
2019-11-29 12:51:58 +08:00
|
|
|
case deviceType.Train: updateForList(model, state, 'trainList'); break;
|
|
|
|
case deviceType.TrainWindow: updateForList(model, state, 'trainWindowList'); break;
|
|
|
|
case deviceType.Line: updateForList(model, state, 'lineList'); break;
|
|
|
|
case deviceType.Text: updateForList(model, state, 'textList'); break;
|
2019-12-06 18:03:13 +08:00
|
|
|
case deviceType.Psd: updateForList(model, state, 'psdList'); break;
|
|
|
|
case deviceType.Esp: updateForList(model, state, 'espList'); break;
|
2020-03-18 09:10:57 +08:00
|
|
|
case deviceType.AutoTurnBack: updateForList(model, state, 'cycleButtonList'); break;
|
2020-03-17 16:12:15 +08:00
|
|
|
case deviceType.AxleReset: updateForList(model, state, 'axleCounterResetButtonList'); break;
|
|
|
|
case deviceType.GuideLock: updateForList(model, state, 'totalGuideLockButtonVOList'); break;
|
2020-03-06 10:21:41 +08:00
|
|
|
case deviceType.OutFrame: updateForList(model, state, 'outerFrameList'); break;
|
2020-03-05 16:39:49 +08:00
|
|
|
case deviceType.AutomaticRoute: updateForList(model, state, 'automaticRouteButtonList'); break;
|
2020-03-20 11:09:06 +08:00
|
|
|
case deviceType.AtsControl: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.CenterCommunication: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.ChainControl: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.IntersiteControl: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.LeuControl: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.LocalControl: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.Maintain: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.PowerSupply: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.NoOneReturn: updateForList(model, state, 'indicatorLightList'); break;
|
2020-03-24 15:02:14 +08:00
|
|
|
case deviceType.MaintenanceLamps: updateForList(model, state, 'indicatorLightList'); break;
|
2020-03-24 16:35:09 +08:00
|
|
|
case deviceType.ZcCommunication: updateForList(model, state, 'indicatorLightList'); break;
|
2020-04-14 15:45:13 +08:00
|
|
|
case deviceType.FaultStatusGroup: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.ModeStatusGroup: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.LampFilament: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.ReturnModeGroup: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.ControlSwitch: updateForList(model, state, 'indicatorLightList'); break;
|
|
|
|
case deviceType.Axle: updateForList(model, state, 'indicatorLightList'); break;
|
2020-04-15 14:13:08 +08:00
|
|
|
case deviceType.SplitStation: updateForList(model, state, 'splitStationList'); break;
|
2020-04-22 17:12:29 +08:00
|
|
|
case deviceType.SwitchFault: updateForList(model, state, 'indicatorLightList'); break;
|
2020-04-26 16:24:34 +08:00
|
|
|
case deviceType.Arrow: updateForList(model, state, 'arrowList'); break;
|
2019-11-29 12:51:58 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|