This commit is contained in:
fan 2021-02-19 09:12:39 +08:00
commit baa0ba70a3
8 changed files with 179 additions and 125 deletions

View File

@ -446,6 +446,7 @@ export default {
setSwitchbackStrategyTipPrefix: 'Tip: Check the station',
setSwitchbackStrategyTipSuffix: 'setting to run the switchback strategy',
setSwitchbackStrategy: 'Set switchback strategy',
setSectionFaultUnlock:'set section fault unlock',
noSwitchback: 'No switchback',
noOneSwitchback: 'No one switchback',
automaticChange: 'Automatic change',

View File

@ -441,6 +441,7 @@ export default {
setSwitchbackStrategyTipPrefix: '提示: 选中站台',
setSwitchbackStrategyTipSuffix: '设置运行折返策略',
setSwitchbackStrategy: '设置折返策略',
setSectionFaultUnlock:'设置区故解',
noSwitchback: '无折返',
noOneSwitchback: '无人折返',
automaticChange: '自动换端',

View File

@ -1,4 +1,5 @@
<template>
<div>
<el-dialog
v-dialogDrag
class="confirm-control"
@ -27,10 +28,14 @@
</el-row>
<notice-info ref="noticeInfo" :pop-class="popClass" />
</el-dialog>
<section-un-lock ref="sectionUnLock" pop-class="ningbo-01__systerm" />
</div>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import SectionUnLock from '../dialog/sectionUnLock';
import NoticeInfo from './noticeInfo';
import { commitOperate } from '../../utils/menuOperate';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
@ -38,7 +43,8 @@ import CMD from '@/scripts/cmdPlugin/CommandEnum';
export default {
name: 'ConfirmControl',
components: {
NoticeInfo
NoticeInfo,
SectionUnLock
},
props: {
popClass: {
@ -49,6 +55,7 @@ export default {
data() {
return {
dialogShow: false,
selected:'',
loading: false,
operate: {},
messages: '',
@ -78,6 +85,8 @@ export default {
return this.$t('menu.stopTime');
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
return this.$t('menu.setSwitchbackStrategy'); //
} else if (this.operation === OperationEvent.Section.fault.menu.operation) {
return this.$t('menu.setSectionFaultUnlock'); //
}
return '';
},
@ -103,13 +112,16 @@ export default {
return OperationEvent.StationStand.setStopTime.confirm.domId; //
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
return OperationEvent.StationStand.setBackStrategy.confirm.domId; //
} else if (this.operation === OperationEvent.Section.fault.menu.operation) {
return OperationEvent.Section.fault.menu.domId; //
}
return '';
}
},
methods: {
doShow(operate) {
doShow(operate, selected) {
if (!this.dialogShow) {
this.selected = selected;
this.loading = false;
this.operate = operate || {};
this.messages = operate.messages;
@ -145,6 +157,8 @@ export default {
this.setStopTime(); //
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
this.setBackStrategy(); //
} else if (this.operation === OperationEvent.Section.fault.menu.operation) {
this.setSectionFaultUnlock(); //
}
},
//
@ -167,6 +181,27 @@ export default {
this.sendCommand(operate);
},
//
setSectionFaultUnlock() {
this.loading = true;
const operate = {
operation: this.operation
// cmdType: CMD.Stand.CMD_STAND_SET_REENTRY_STRATEGY,
// val: this.operate.val
};
commitOperate(operate, {}, 1).then(({valid})=>{
this.loading = false;
if (valid) {
this.doClose();
this.$refs.sectionUnLock.doShow(operate, this.selected);
}
}).catch(() => {
this.loading = false;
this.doClose();
this.$refs.noticeInfo.doShow();
});
},
//
routeSetting() {
const operate = {

View File

@ -1,4 +1,5 @@
<template>
<div>
<el-dialog
v-dialogDrag
class="ningbo-01__systerm confirm-control-speed"
@ -22,14 +23,20 @@
</el-col>
</el-row>
</el-dialog>
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
</div>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import {commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
export default {
name: 'ConfirmTip',
components: {
NoticeInfo
},
data() {
return {
dialogShow: false,
@ -72,6 +79,9 @@ export default {
this.$emit('close');
this.doClose();
}
}).catch(() => {
this.doClose();
this.$refs.noticeInfo.doShow();
});
}
},

View File

@ -47,7 +47,7 @@ import { menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menu
import { deepAssign } from '@/utils/index';
import { mouseCancelState} from '@/jmapNew/theme/components/utils/menuItemStatus';
import { mapGetters } from 'vuex';
import { dbReadData } from '@/utils/indexedDb';
// import { dbReadData } from '@/utils/indexedDb';
import ConfirmTip from './childDialog/confirmTip';
import MapVisual from './mapVisual';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
@ -202,7 +202,7 @@ export default {
const signalBegin = this.$refs.map.getDeviceByCode(row.startSignalCode);
const signalEnd = this.$refs.map.getDeviceByCode(row.endSignalCode);
const diff = signalBegin.position.x - signalEnd.position.x;
const code = diff > 0? row.endSignalCode : row.startSignalCode;
const code = diff > 0 ? row.endSignalCode : row.startSignalCode;
const switchCodeList = [];
this.$refs.map.setCenterWithOffset(code, 0);
@ -211,10 +211,10 @@ export default {
const section = deepAssign({}, this.$refs.map.getDeviceByCode(code));
if (section.logicSectionCodeList && section.logicSectionCodeList.length) {
section.logicSectionCodeList.forEach(sectionCode => {
containSectionList.push({code: sectionCode,preGreen: true,preBlue: false});
containSectionList.push({code: sectionCode, preGreen: true, preBlue: false});
});
} else {
containSectionList.push({code, preGreen: true,preBlue: false});
containSectionList.push({code, preGreen: true, preBlue: false});
}
if (section.switchSection && section.switch) {
@ -229,7 +229,7 @@ export default {
const sectionA = this.$refs.map.getDeviceByCode(swch.sectionACode);
const sectionB = this.$refs.map.getDeviceByCode(swch.sectionBCode);
const sectionC = this.$refs.map.getDeviceByCode(swch.sectionCCode);
containSwitchList.push({code: el.switchCode, routeLock: true, normalPosition: el.normal,reversePosition: !el.normal});
containSwitchList.push({code: el.switchCode, routeLock: true, normalPosition: el.normal, reversePosition: !el.normal});
if (el.normal) {
containSectionList.push({code: sectionA.code, routeLock:true });
containSectionList.push({code: sectionC.code, preBlue: true });
@ -241,7 +241,7 @@ export default {
}
this.$refs.map.updateMapDevice([...containSectionList, ...containSwitchList]);
this.beforeSectionList = containSectionList
this.beforeSectionList = containSectionList;
this.beforeSwitchList = containSwitchList;
//
@ -267,7 +267,7 @@ export default {
this.loading = false;
if (valid) {
const signal = this.$store.getters['map/getDeviceByCode'](this.row.startSignalCode);
operate.message = `<div>命令:进路设置</div><div>始端信号机:${signal.name}</div><div>进路:${this.row.name} </div>`;
operate.message = `命令:进路设置<br/>始端信号机:${signal.name}<br/>进路:${this.row.name}`;
this.doClose();
this.$refs.confirmTip.doShow(operate);
}

View File

@ -20,7 +20,7 @@
size="mini"
@change="sectionSelectChange"
>
<el-option v-for="(option,index) in switchAndPhySicalSectionList" :key="index" :label="option.name" :value="option.name" />
<el-option v-for="(option,index) in switchAndPhySicalSectionList" :key="index" :label="option.name" :value="option.code" />
</el-select>
</el-col>
</el-row>

View File

@ -32,6 +32,7 @@ export default {
data() {
return {
menu: [],
menuForce:[],
menuNormal: {
Local: [
{

View File

@ -2,7 +2,8 @@
<div>
<pop-menu ref="popMenu" :menu="menu" />
<section-control ref="sectionControl" pop-class="ningbo-01__systerm" />
<section-un-lock ref="sectionUnLock" pop-class="ningbo-01__systerm" />
<!-- <section-un-lock ref="sectionUnLock" pop-class="ningbo-01__systerm" /> -->
<confirm-control ref="confirmControl" pop-class="ningbo-01__systerm" />
<speed-limit-control ref="speedLimitControl" pop-class="ningbo-01__systerm" />
<alxe-effective ref="alxeEffective" />
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
@ -18,10 +19,12 @@ import SectionControl from '@/jmapNew/theme/components/menus/dialog/sectionContr
import TrainAddPlan from '@/jmapNew/theme/components/menus/dialog/trainAddPlan';
import LoadSpareTrain from '@/jmapNew/theme/components/menus/dialog/loadSpareTrain';
import SetFault from '@/jmapNew/theme/components/menus/dialog/setFault';
import SectionUnLock from '@/jmapNew/theme/components/menus/dialog/sectionUnLock';
// import SectionUnLock from '@/jmapNew/theme/components/menus/dialog/sectionUnLock';
import SpeedLimitControl from '@/jmapNew/theme/components/menus/dialog/speedCmdControl';
import AlxeEffective from './dialog/alxeEffective';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
import ConfirmControl from '@/jmapNew/theme/components/menus/childDialog/confirmControl';
import { mapGetters } from 'vuex';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
@ -33,12 +36,13 @@ export default {
components: {
PopMenu,
SectionControl,
SectionUnLock,
// SectionUnLock,
SpeedLimitControl,
AlxeEffective,
NoticeInfo,
TrainAddPlan,
SetFault,
ConfirmControl,
LoadSpareTrain
},
props: {
@ -214,7 +218,9 @@ export default {
fault() {
commitOperate(menuOperate.Section.fault, {sectionCode:this.selected.code}, 0).then(({valid, operate})=>{
if (valid) {
this.$refs.sectionUnLock.doShow(operate, this.selected);
// this.$refs.sectionUnLock.doShow(operate, this.selected);
operate.messages = '是否执行区故解命令?';
this.$refs.confirmControl.doShow(operate, this.selected);
}
});
},