+
+ 一键生成
+
diff --git a/src/views/newMap/newMapdraft/dataRelation/index.vue b/src/views/newMap/newMapdraft/dataRelation/index.vue
index cb22506f1..c775bc312 100644
--- a/src/views/newMap/newMapdraft/dataRelation/index.vue
+++ b/src/views/newMap/newMapdraft/dataRelation/index.vue
@@ -32,6 +32,7 @@
import RouteOperate from './routeoperate/index';
import RoutingOperate from './routingoperate/index';
import BigRoutingOperate from './bigroutingoperate/index';
+import IndicatorAssociatedInfo from './indicatorAssociatedInfo/index';
import AutomaticOperate from './automaticoperate/index';
// import PathOperate from './pathoperate/index';
import RunLevelOperate from './runLeveloperate/index';
@@ -56,7 +57,8 @@ export default {
SignalOperate,
TurnedOperate,
DwellTimeOperate,
- ContinueProtectOperate
+ ContinueProtectOperate,
+ IndicatorAssociatedInfo
// DestinationOperate
},
props: {
@@ -94,10 +96,11 @@ export default {
},
mounted() {
this.initLoad();
- if (this.$route.query.lineCode == '15') {
+ if (this.$route.query.lineCode == '15' || this.$route.query.lineCode == '16') {
this.tabList = [
{label: '大铁进路', name:'bigRoutingOperate', menus:BigRoutingOperate},
- {label: this.$t('map.routing'), name:'routing', menus:RoutingOperate}
+ {label: '指示灯关联', name: 'indicatorAssociatedInfo', menus: IndicatorAssociatedInfo}
+ // {label: this.$t('map.routing'), name:'routing', menus:RoutingOperate}
];
this.enabledTab = 'bigRoutingOperate';
} else {
diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue
new file mode 100644
index 000000000..0888fcca2
--- /dev/null
+++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue
new file mode 100644
index 000000000..f84bd881d
--- /dev/null
+++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue
new file mode 100644
index 000000000..881da06d9
--- /dev/null
+++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+ {{ $t('map.activate') }}
+
+
+
+
+
+
+
+
+
+
+ {{ $t('map.activate') }}
+
+
+
+
+
+ {{$t('map.activate')}}
+
+
+
+
+ 更新
+ 保存
+
+
+
+
+
+
diff --git a/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue b/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue
index 3871bc87a..8f6900bbd 100644
--- a/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue
+++ b/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue
@@ -57,7 +57,7 @@
@mouseenter="mouseenter(nor)"
@mouseleave="mouseleave(nor)"
>
- {{ nor.name }}
+ {{ nor.name || nor.code }}
@@ -119,7 +119,12 @@ export default {
type: 'Signal',
name: '信号机列表',
list: []
- }
+ },
+ {
+ type: 'SignalButton',
+ name: '信号按钮列表',
+ list: []
+ }
]
};
},
@@ -156,7 +161,9 @@ export default {
this.modelList[1].list.push(item);
} else if (item._type == 'Signal') {
this.modelList[2].list.push(item);
- }
+ } else if (item._type == 'SignalButton') {
+ this.modelList[3].list.push(item);
+ }
if (item.stationCode == this.seclectDeviceList[0].stationCode) {
count++;
}
@@ -317,7 +324,12 @@ export default {
type: 'Signal',
name: '信号机列表',
list: []
- }
+ },
+ {
+ type: 'SignalButton',
+ name: '信号按钮列表',
+ list: []
+ }
];
},
mouseenter(model) {
diff --git a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue
index 26670103d..a97025f0a 100644
--- a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue
+++ b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue
@@ -99,7 +99,8 @@ export default {
'Recovery',
'Accident',
'Occlusion',
- 'PickOrDepartArrow'
+ 'PickArrow',
+ 'DepartArrow'
],
noNameTypeList: ['FaultStatusGroup', 'ModeStatusGroup', 'LampFilament', 'ReturnModeGroup', 'ControlSwitch', 'Axle'],
typeList: [
@@ -130,9 +131,10 @@ export default {
{ name: '复原', value: 'Recovery' },
{ name: '事故', value: 'Accident' },
{ name: '闭塞', value: 'Occlusion' },
- { name: '接发车箭头', value: 'PickOrDepartArrow' }
+ { name: '接车箭头', value: 'PickArrow' },
+ { name: '发车箭头', value: 'DepartArrow' }
],
- hasDirectionList: ['SectionOccupied', 'AssistStatus', 'TotalAssist', 'DepartAssist', 'PickAssist', 'Recovery', 'Accident', 'Occlusion', 'PickOrDepartArrow'],
+ hasDirectionList: ['SectionOccupied', 'AssistStatus', 'TotalAssist', 'DepartAssist', 'PickAssist', 'Recovery', 'Accident', 'Occlusion', 'PickArrow', 'DepartArrow'],
directionList: [{label: 'X',value: 'X'},{label: 'XF',value: 'XF'},{label: 'XD',value: 'XD'}, {label:'S',value:'S'},{label:'SF',value:'SF'},{label:'SD',value: 'SD'}],
editModel:getModel('ControlLamp'),
addModel:getModel('ControlLamp'),
@@ -165,8 +167,8 @@ export default {
] },
{ prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup' },
{ prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup'},
- { prop: 'right', label: '朝右:', type: 'checkbox', isHidden: this.editModel.type !== 'PickOrDepartArrow' },
- { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.editModel.type) },
+ { prop: 'right', label: '朝右:', type: 'checkbox', isHidden: this.editModel.type !== 'DepartArrow' && this.editModel.type !== 'PickArrow' },
+ { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.editModel.type) },
{ prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.editModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType },
{ prop:'stationCode', label: '所属车站:', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList}
]
@@ -191,7 +193,7 @@ export default {
] },
{ prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup' },
{ prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup'},
- { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.addModel.type) },
+ { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.addModel.type) },
{ prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.addModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType }
]
}
@@ -222,7 +224,7 @@ export default {
switchCode: [
{ required: true, message: '请选择所属道岔!', trigger: 'change'}
],
- direction: [
+ labelEnum: [
{ required: true, message: '请选择方向!', trigger: 'change'}
]
};
@@ -292,7 +294,8 @@ export default {
this.RecoveryList = [];
this.AccidentList = [];
this.OcclusionList = [];
- this.PickOrDepartArrowList = [];
+ this.DepartArrowList = [];
+ this.PickArrowList = [];
indicatorLightList.forEach(item => {
switch (item._type) {
case 'AtsControl':
@@ -376,8 +379,11 @@ export default {
case 'Occlusion':
this.OcclusionList.push(item);
break;
- case 'PickOrDepartArrow':
- this.PickOrDepartArrowList.push(item);
+ case 'PickArrow':
+ this.PickArrowList.push(item);
+ break;
+ case 'DepartArrow':
+ this.DepartArrowList.push(item);
break;
}
});
@@ -465,8 +471,11 @@ export default {
case 'Occlusion':
this.selectLists = this.OcclusionList;
break;
- case 'PickOrDepartArrow':
- this.selectLists = this.PickOrDepartArrowList;
+ case 'PickArrow':
+ this.selectLists = this.PickArrowList;
+ break;
+ case 'DepartArrow':
+ this.selectLists = this.DepartArrowList;
break;
default :
this.selectLists = this.intersiteControlList;
@@ -478,6 +487,7 @@ export default {
this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code));
},
deviceSelect(selected) {
+ console.log(selected, '======');
if (this.field.toUpperCase() === 'switchSelectCode'.toUpperCase() && selected._type.toUpperCase() === 'Switch'.toUpperCase()) {
if (this.activeName === 'first') {
this.editModel.switchCode = selected.code;
@@ -576,8 +586,11 @@ export default {
case 'Occlusion':
idPrefix = 'occlusion';
break;
- case 'PickOrDepartArrow':
- idPrefix = 'podArrow'
+ case 'PickArrow':
+ idPrefix = 'pickArrow';
+ break;
+ case 'DepartArrow':
+ idPrefix = 'departArrow';
break;
}
return idPrefix;
diff --git a/src/views/newMap/newMapdraft/mapoperate/index.vue b/src/views/newMap/newMapdraft/mapoperate/index.vue
index d77a7041f..d93335d52 100644
--- a/src/views/newMap/newMapdraft/mapoperate/index.vue
+++ b/src/views/newMap/newMapdraft/mapoperate/index.vue
@@ -208,7 +208,10 @@ export default {
this.$emit('showMap');
},
handleSelectControlPage(device) {
- const controlLampTypeList = ['AtsControl', 'CenterCommunication', 'ChainControl', 'IntersiteControl', 'LeuControl', 'LocalControl', 'Maintain', 'SwitchFault', 'PowerSupply', 'NoOneReturn', 'MaintenanceLamps', 'ZcCommunication', 'FaultStatusGroup', 'ModeStatusGroup', 'LampFilament', 'ReturnModeGroup', 'ControlSwitch', 'Axle', 'IndicatorLight'];
+ const controlLampTypeList = ['AtsControl', 'CenterCommunication', 'ChainControl', 'IntersiteControl', 'LeuControl', 'LocalControl', 'Maintain',
+ 'SwitchFault', 'PowerSupply', 'NoOneReturn', 'MaintenanceLamps', 'ZcCommunication', 'FaultStatusGroup', 'ModeStatusGroup', 'LampFilament',
+ 'ReturnModeGroup', 'ControlSwitch', 'Axle', 'IndicatorLight', 'SectionOccupied', 'AssistStatus', 'TotalAssist', 'DepartAssist', 'PickAssist',
+ 'Recovery', 'Accident', 'Occlusion', 'PickArrow' ,'DepartArrow'];
const type = device._type;
if (this.selectDevice) {
this.enabledTab = this.selectDevice;
diff --git a/src/views/newMap/newMapdraft/mapoperate/models.js b/src/views/newMap/newMapdraft/mapoperate/models.js
index 484846ab5..986f919cf 100644
--- a/src/views/newMap/newMapdraft/mapoperate/models.js
+++ b/src/views/newMap/newMapdraft/mapoperate/models.js
@@ -112,6 +112,7 @@ class Model {
this.tp = { x: 0, y: 0 };
this.belongStationCode = '';
this.srCode = '';
+ this.throat = '';
}
StationModel() {
this._type = 'Station';
@@ -201,6 +202,7 @@ class Model {
this.mfNum = 0;
this.pfNum = 0;
this.switchCode = '';
+ this.labelEnum = '';
this.right = false;
}
}
diff --git a/src/views/newMap/newMapdraft/mapoperate/signal/index.vue b/src/views/newMap/newMapdraft/mapoperate/signal/index.vue
index 916ca7690..24595f18a 100644
--- a/src/views/newMap/newMapdraft/mapoperate/signal/index.vue
+++ b/src/views/newMap/newMapdraft/mapoperate/signal/index.vue
@@ -69,13 +69,17 @@ export default {
{ code: 'EXIT', name: '出站信号机' },
{ code: 'SHUNTING2', name: '列车兼调车信号机' },
{ code: 'INBOUND', name: '进段信号机' },
- { code: 'OUTBOUND', name: '出段信号机' }
+ { code: 'OUTBOUND', name: '出段信号机' },
+ { code: 'RECEIVING', name: '接车信号机(大铁)' },
+ { code: 'DEPARTURE', name: '发车信号机(大铁)'}
],
signalModelList:[
{ code: 'RGY', name: '红绿黄三灯信号机'},
{ code: 'R', name: '单红灯信号机'},
{ code: 'BW', name: '蓝白调车信号机'},
- { code: 'YRW', name: '黄红白列车兼调车信号机' }
+ { code: 'YRW', name: '黄红白列车兼调车信号机' },
+ { code: 'YGRYW', name: '黄绿红黄白信号机' },
+ { code: 'YGRGW', name: '黄绿红绿白信号机' }
],
field:'',
editModel: getModel('Signal'),
diff --git a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue
index 04743c41d..57a7e573f 100644
--- a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue
+++ b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue
@@ -56,7 +56,7 @@ export default {
signalCode: '',
sectionCode: '',
switchCode: '',
- direction: '',
+ labelEnum: '',
position: {
x: 0,
y: 0
@@ -84,14 +84,16 @@ export default {
{ value: 'PASS', label: '通过按钮' },
{ value: 'GUIDE', label: '引导按钮' },
{ value: 'FLEXIBLE', label: '变通按钮' },
- { value: 'RAMP_TERMINAL', label: '坡道终端按钮' },
+ { value: 'RAMP_TERMINAL', label: '坡道终端按钮'},
{ value: 'TRAIN_TERMINAL', label: '列车终端按钮'},
{ value: 'SHUNT_TERMINAL', label: '调车终端按钮'},
{ value: 'ASSIST', label: '总辅助按钮' },
{ value: 'PICK_ASSIST', label: '接辅助按钮' },
{ value: 'DEPART_ASSIST', label: '发辅助按钮' },
{ value: 'ACCIDENT', label: '事故按钮' },
- { value: 'CHANGE_DIRECTION', label: '改方按钮' }
+ { value: 'CHANGE_DIRECTION', label: '改方按钮' },
+ { value: 'RECOVERY', label: '复原按钮' },
+ { value: 'OCCLUSION', label: '闭塞按钮' }
],
centralizedStationList: [], // 设备集中站列表
directionList: [{label:'X',value:'X'},{label:'XF',value:'XF'},{label:'XD',value:'XD'},{label:'S',value:'S'},{label:'SF',value:'SF'},{label:'SD',value:'SD'}],
@@ -120,7 +122,7 @@ export default {
'position.y': [
{ required: true, message: this.$t('rules.pleaseEnterYCoordinate'), trigger: 'blur' }
],
- direction: [
+ labelEnum: [
{ required: true, message: '请选择方向', trigger: 'change' }
]
}
@@ -156,7 +158,7 @@ export default {
{ prop: 'signalCode', label: '关联信号机:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.signalList, hover: this.hover, buttonType: 'linkSignal', buttonShowType: this.isLinkSignalShow, isHidden: !this.isLinkSignal },
{ prop: 'sectionCode', label: '关联区段:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.sectionList, hover: this.hover, buttonType: 'linkSection', buttonShowType: this.isLinkSectionShow, isHidden: !this.isLinkSection },
{ prop: 'switchCode', label: '关联道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchList, hover: this.hover, buttonType: 'linkSwitch', buttonShowType: this.isLinkSwitchShow, isHidden: !this.isLinkSwitch },
- { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.isLinkDirection },
+ { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.isLinkDirection },
{ prop: 'position', label: this.$t('map.textPoints'), type: 'coordinate', width: '120px', children: [
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px', disabled: false },
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px', disabled: false }
@@ -213,7 +215,7 @@ export default {
return this.editModel.type === 'FLEXIBLE';
},
isLinkDirection() {
- return ['ASSIST', 'PICK_ASSIST', 'DEPART_ASSIST', 'ACCIDENT', 'CHANGE_DIRECTION'].includes(this.editModel.type);
+ return ['ASSIST', 'PICK_ASSIST', 'DEPART_ASSIST', 'ACCIDENT', 'CHANGE_DIRECTION', 'RECOVERY', 'OCCLUSION'].includes(this.editModel.type);
}
},
methods: {
@@ -242,7 +244,7 @@ export default {
this.editModel.signalCode = '';
this.editModel.switchCode = '';
this.editModel.sectionCode = '';
- this.editModel.direction = '';
+ this.editModel.labelEnum = '';
this.activeName = 'first';
this.editModel = deepAssign(this.editModel, selected);
} else if (this.field === 'linkSignal' && selected && selected._type.toUpperCase() === 'Signal'.toUpperCase()) {
@@ -288,11 +290,11 @@ export default {
},
updateMapModel(data) {
if (this.isLinkSignal) {
- data.sectionCode = ''; data.switchCode = ''; data.direction = '';
+ data.sectionCode = ''; data.switchCode = ''; data.labelEnum = '';
} else if (this.isLinkSection) {
- data.signalCode = ''; data.switchCode = ''; data.direction = '';
+ data.signalCode = ''; data.switchCode = ''; data.labelEnum = '';
} else if (this.isLinkSwitch) {
- data.signalCode = ''; data.sectionCode = ''; data.direction = '';
+ data.signalCode = ''; data.sectionCode = ''; data.labelEnum = '';
} else if (this.isLinkDirection) {
data.sectionCode = ''; data.signalCode = ''; data.switchCode = '';
}
diff --git a/src/views/newMap/newMapdraft/mapoperate/switch/batchSet.vue b/src/views/newMap/newMapdraft/mapoperate/switch/batchSet.vue
new file mode 100644
index 000000000..a2af778fd
--- /dev/null
+++ b/src/views/newMap/newMapdraft/mapoperate/switch/batchSet.vue
@@ -0,0 +1,102 @@
+
+