This commit is contained in:
sunzhenyu 2021-07-26 16:11:20 +08:00
commit 5d08ecb813
11 changed files with 98 additions and 22 deletions

View File

@ -660,3 +660,17 @@ export function checkConfig(mapId, data) {
}); });
} }
// { check: true/false } body体 // { check: true/false } body体
// 进路数据处理删除扣车
export function deleteDetain(mapId) {
return request({
url: `/api/draftMap/${mapId}/route/handle/standHoldList/delete`,
method: 'put'
});
}
// 进路数据处理不办延续保护
export function noOverlap(mapId) {
return request({
url: `/api/draftMap/${mapId}/route/handle/setOverlapInCtc/false`,
method: 'put'
});
}

View File

@ -44,8 +44,8 @@ class ESafeDoor extends Group {
}, },
style: { style: {
lineWidth: 0, lineWidth: 0,
stroke:style.backgroundColor, stroke: style.backgroundColor,
fill:style.backgroundColor fill: style.backgroundColor
// stroke: style.Psd.safetyDoorNormal.defaultColor, // stroke: style.Psd.safetyDoorNormal.defaultColor,
// fill: style.Psd.safetyDoorNormal.defaultColor // fill: style.Psd.safetyDoorNormal.defaultColor
} }
@ -72,11 +72,12 @@ class ESafeDoor extends Group {
} else if (model.fault == 'PSD_CANNOT_BE_CLOSED') { } else if (model.fault == 'PSD_CANNOT_BE_CLOSED') {
this.safeC.show(); this.safeC.show();
} }
} else {
model.screenDoorOpenStatus == 0 ? this.safeC.show() : this.safeC.hide();
}
if (model.interlockRelease) {
const style = this.model.style; const style = this.model.style;
this.setColor(style.Psd.safetyDoorNormal.splitDoorColor); this.setColor(style.Psd.safetyDoorNormal.splitDoorColor);
} else {
// model.screenDoorOpenStatus == 0 ? this.safeC.hide() : this.safeC.show();
model.screenDoorOpenStatus == 0 ? this.safeC.show() : this.safeC.hide();
} }
} }

View File

@ -612,8 +612,8 @@ class Signal extends Group {
} }
} else { } else {
this.cbtcStatus = ''; this.cbtcStatus = '';
this.lamps[0] && this.lamps[0].setColor(this.style.Signal.lamp.greenColor); this.lamps[1] && this.lamps[1].setColor(this.style.Signal.lamp.greenColor);
this.lamps[1] && this.lamps[1].setColor(this.style.backgroundColor); // 设置黑色 this.lamps[0] && this.lamps[0].setColor(this.style.backgroundColor); // 设置黑色
this.virtualSignal && this.virtualSignal.setColor(this.style.Signal.lamp.blueColor); this.virtualSignal && this.virtualSignal.setColor(this.style.Signal.lamp.blueColor);
if (this.style.Signal.lamp.guidName === 'doubleAndBase') { // 设置底座颜色 if (this.style.Signal.lamp.guidName === 'doubleAndBase') { // 设置底座颜色
this.sigPost.setColor('#00FF00'); this.sigPost.setColor('#00FF00');
@ -636,8 +636,8 @@ class Signal extends Group {
} }
} else { } else {
this.cbtcStatus = ''; this.cbtcStatus = '';
this.lamps[0] && this.lamps[0].setColor(this.style.Signal.lamp.yellowColor); this.lamps[1] && this.lamps[1].setColor(this.style.Signal.lamp.yellowColor);
this.lamps[1] && this.lamps[1].setColor(this.style.backgroundColor); this.lamps[0] && this.lamps[0].setColor(this.style.backgroundColor);
if (this.style.Signal.lamp.guidName === 'doubleAndBase') { // 设置底座颜色 if (this.style.Signal.lamp.guidName === 'doubleAndBase') { // 设置底座颜色
this.sigPost.setColor('#00FF00'); this.sigPost.setColor('#00FF00');
if (this.model.logicLight) { // 设置哈尔滨逻辑点灯 颜色 if (this.model.logicLight) { // 设置哈尔滨逻辑点灯 颜色

View File

@ -38,7 +38,7 @@ class EReentry extends Group {
setColor(color) { setColor(color) {
this.create(); this.create();
this.reentry.setStyle('textFill', color); this.reentry.setStyle('fill', color);
} }
hideMode() { hideMode() {
@ -56,16 +56,16 @@ class EReentry extends Group {
setState(model) { setState(model) {
const style = this.model.style; const style = this.model.style;
let reentryStrategy = ''; let typeStrategy = '';
if (model.reentryStrategy !== '04') { if (model.typeStrategy !== '04') {
reentryStrategy = model.reentryStrategy; typeStrategy = model.typeStrategy;
} else { } else {
reentryStrategy = model.defaultReentryStrategy; typeStrategy = model.defaultReentryStrategy;
} }
switch (reentryStrategy) { switch (typeStrategy) {
case 'DEFAULT': /** 默认*/ case 'DEFAULT': /** 默认*/
case 'NONE': { case 'NONE': {
this.reentry && this.reentry.hideMode(); /** 无折返策略*/ this.reentry && this.hideMode(); /** 无折返策略*/
break; break;
} }
case 'UNMANNED': { case 'UNMANNED': {

View File

@ -245,6 +245,14 @@ export default {
initMenu() { initMenu() {
this.menu = MenuContextHandler.covert(this.menuNormal); this.menu = MenuContextHandler.covert(this.menuNormal);
// //
const menuItem = this.menu.find( item => item.cmdType === CMD.Signal.CMD_SIGNAL_SET_CI_AUTO);
const menuItemDisabled = menuItem.disabled;
menuItem.disabled = true;
this.routeList.forEach(route => {
if (route.startSignalCode === this.selected.code && route.flt) {
menuItem.disabled = menuItemDisabled;
}
});
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {
this.menu = this.menuForce; this.menu = this.menuForce;
} }

View File

@ -49,7 +49,8 @@ export const deviceFaultType = {
], ],
StationStand: [ StationStand: [
{label: '屏蔽门无法关闭', value: 'PSD_CANNOT_BE_CLOSED'}, {label: '屏蔽门无法关闭', value: 'PSD_CANNOT_BE_CLOSED'},
{label: '屏蔽门无法开启', value: 'PSD_CANNOT_BE_OPENED'} {label: '屏蔽门无法开启', value: 'PSD_CANNOT_BE_OPENED'},
{label: '无关闭锁紧信号', value: 'NO_CLOSE_AND_LOCK'}
], ],
ZcControl:[ ZcControl:[
{label: 'zc故障', value: 'FAULT'} {label: 'zc故障', value: 'FAULT'}
@ -87,7 +88,8 @@ export const deviceFaultMap = {
}, },
StationStand: { StationStand: {
PSD_CANNOT_BE_CLOSED: '屏蔽门无法关闭', PSD_CANNOT_BE_CLOSED: '屏蔽门无法关闭',
PSD_CANNOT_BE_OPENED: '屏蔽门无法开启' PSD_CANNOT_BE_OPENED: '屏蔽门无法开启',
NO_CLOSE_AND_LOCK: '无关闭锁紧信号'
}, },
ZcControl: { ZcControl: {
FAULT: 'zc故障' FAULT: 'zc故障'

View File

@ -1434,5 +1434,6 @@ export default {
.teleNameIn{ .teleNameIn{
width: 16px; width: 16px;
white-space: pre-wrap; white-space: pre-wrap;
font-size:16px;
} }
</style> </style>

View File

@ -149,6 +149,7 @@ export default {
background: #404040; background: #404040;
color: #1DEA1E; color: #1DEA1E;
text-align: center; text-align: center;
font-size: 16px;
} }
</style> </style>

View File

@ -149,6 +149,7 @@ export default {
background: #404040; background: #404040;
color: #1DEA1E; color: #1DEA1E;
text-align: center; text-align: center;
font-size: 16px;
} }
</style> </style>

View File

@ -93,7 +93,7 @@ export default {
'routeNameUseEndOppositeSignalName', 'generateTbRoute', 'tbRouteNameUseEndOppositeSignalName', 'routeSignalAlwaysGreen', 'routeNameUseEndOppositeSignalName', 'generateTbRoute', 'tbRouteNameUseEndOppositeSignalName', 'routeSignalAlwaysGreen',
'routeApartByOverlap', 'overlapOnlySwitch', 'overlapSwitchNpOnly', 'overlapSignalOppositeSwitchNpOnly', 'routeApartByOverlap', 'overlapOnlySwitch', 'overlapSwitchNpOnly', 'overlapSignalOppositeSwitchNpOnly',
'generateCycle', 'routeButton', 'likeHa1', 'getNearlySignal', 'overlapSettingByTrigger', 'generateFls', 'signalApproachNotPassPreSignal', 'generateCycle', 'routeButton', 'likeHa1', 'getNearlySignal', 'overlapSettingByTrigger', 'generateFls', 'signalApproachNotPassPreSignal',
'generateDestination', 'ctcOverlapOnlyTurnBackStationLock' 'generateDestination', 'ctcOverlapOnlyTurnBackStationLock', 'routeInterlockDoNotIncludeStandHoldTrain'
], ],
multipleList: ['sharingECStations'], multipleList: ['sharingECStations'],
selectList: [], selectList: [],
@ -127,7 +127,8 @@ export default {
signalApproachNotPassPreSignal:'信号机接近区段不跨过前方同向信号机', signalApproachNotPassPreSignal:'信号机接近区段不跨过前方同向信号机',
generateDestination: '是否生成目的地码定义(泰雷兹)', generateDestination: '是否生成目的地码定义(泰雷兹)',
sharingECStations: '共享紧急关闭效果的车站', sharingECStations: '共享紧急关闭效果的车站',
ctcOverlapOnlyTurnBackStationLock: 'CTC列车进路延续保护仅折返站处锁闭' ctcOverlapOnlyTurnBackStationLock: 'CTC列车进路延续保护仅折返站处锁闭',
routeInterlockDoNotIncludeStandHoldTrain: '进路联锁不包含站台扣车'
} }
}; };
}, },

View File

@ -1,6 +1,6 @@
<template> <template>
<div v-show="show"> <div v-show="show">
<el-dialog v-dialogDrag :title="$t('map.routePreview')" :visible.sync="show" width="95%" top="1vh" class="dialog_content_box" :before-do-close="doClose" append-to-body> <el-dialog v-dialogDrag v-loading="loading" :title="$t('map.routePreview')" :visible.sync="show" width="95%" top="1vh" class="dialog_content_box" :before-do-close="doClose" append-to-body>
<div> <div>
<QueryListPage <QueryListPage
ref="queryListPage" ref="queryListPage"
@ -18,7 +18,7 @@
<script> <script>
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { listMap, getRouteNewList, delRouteNew, putRouteNew, putSetDraftMapRouteById } from '@/api/jmap/mapdraft'; import { listMap, getRouteNewList, delRouteNew, putRouteNew, putSetDraftMapRouteById, deleteDetain, noOverlap } from '@/api/jmap/mapdraft';
// import ProtectDetail from './protectDetail'; // import ProtectDetail from './protectDetail';
import PreViewField from './preview'; import PreViewField from './preview';
import Related from './related'; import Related from './related';
@ -48,6 +48,7 @@ export default {
data() { data() {
return { return {
show: false, show: false,
loading: false,
showType: '', showType: '',
codeType: '', codeType: '',
mapList: [], mapList: [],
@ -151,6 +152,12 @@ export default {
type: 'tag', type: 'tag',
prop: 'flt' prop: 'flt'
}, },
{
title: 'ctc级别下需要办理延续保护',
edit: true,
type: 'tag',
prop: 'setOverlapInCtc'
},
{ {
title: this.$t('map.accessType'), title: this.$t('map.accessType'),
prop: 'turnBack', prop: 'turnBack',
@ -223,6 +230,10 @@ export default {
} }
] ]
} }
],
actions: [
{ text: '删除扣车', handler: this.handleDeleteDetain },
{ text: '不办延续保护', handler: this.handleNoOverlap }
] ]
}; };
} }
@ -344,6 +355,42 @@ export default {
selectedObj(index, row) { selectedObj(index, row) {
this.$emit('setRouteCode', row, this.codeType); this.$emit('setRouteCode', row, this.codeType);
this.show = false; this.show = false;
},
handleDeleteDetain() {
this.$confirm('是否确认批量删除扣车?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.loading = true;
deleteDetain(this.$route.params.mapId).then(response => {
this.$message.success('批量删除扣车成功');
}).catch(() => {
this.$messageBox('批量删除扣车失败');
}).finally(() => {
this.loading = false;
});
}).catch(() => {
this.$message.info('已取消批量删除扣车');
});
},
handleNoOverlap() {
this.$confirm('是否确认批量设置不办延续保护?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.loading = true;
noOverlap(this.$route.params.mapId).then(response => {
this.$message.success('批量批量设置不办延续保护成功');
}).catch(() => {
this.$messageBox('批量批量设置不办延续保护失败');
}).finally(() => {
this.loading = false;
});
}).catch(() => {
this.$message.info('已取消批量批量设置不办延续保护');
});
} }
// showConflictingSignalList(data) { // showConflictingSignalList(data) {
// const nameList = []; // const nameList = [];