Merge branch 'test' of https://git.code.tencent.com/lian-cbtc/jl-client into test
This commit is contained in:
commit
f91f045a1e
@ -152,7 +152,7 @@ export default {
|
|||||||
'routeData',
|
'routeData',
|
||||||
'signalList',
|
'signalList',
|
||||||
'autoReentryList',
|
'autoReentryList',
|
||||||
'autoReentryData',
|
'autoReentryData'
|
||||||
]),
|
]),
|
||||||
Switch() {
|
Switch() {
|
||||||
return OperationEvent.Switch;
|
return OperationEvent.Switch;
|
||||||
@ -385,6 +385,7 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
//
|
||||||
handelFunctionButton(model, subType) {
|
handelFunctionButton(model, subType) {
|
||||||
// debugger;
|
// debugger;
|
||||||
const operate = {
|
const operate = {
|
||||||
@ -404,10 +405,12 @@ export default {
|
|||||||
} else if (model._type === 'AutoTurnBack' ) {
|
} else if (model._type === 'AutoTurnBack' ) {
|
||||||
operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_AUTO_TURN_BACK;
|
operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_AUTO_TURN_BACK;
|
||||||
operate.param = {cycleCode: model.cycleCode};
|
operate.param = {cycleCode: model.cycleCode};
|
||||||
|
operate.code = model.code;
|
||||||
} else if (model._type === 'AutomaticRoute') {
|
} else if (model._type === 'AutomaticRoute') {
|
||||||
const route = this.routeData[model.automaticRouteCode];
|
const route = this.routeData[model.automaticRouteCode];
|
||||||
operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_CI_AUTO;
|
operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_CI_AUTO;
|
||||||
operate.param = {signalCode: route.startSignalCode};
|
operate.param = {signalCode: route.startSignalCode};
|
||||||
|
operate.code = model.code;
|
||||||
} else if (model._type === 'Station') {
|
} else if (model._type === 'Station') {
|
||||||
switch (subType) {
|
switch (subType) {
|
||||||
case 'substation':
|
case 'substation':
|
||||||
@ -460,10 +463,12 @@ export default {
|
|||||||
} else if (model._type === 'AutoTurnBack') {
|
} else if (model._type === 'AutoTurnBack') {
|
||||||
operate.cmdType = CMD.Signal.CMD_SIGNAL_CANCEL_AUTO_TURN_BACK;
|
operate.cmdType = CMD.Signal.CMD_SIGNAL_CANCEL_AUTO_TURN_BACK;
|
||||||
operate.param = {cycleCode: model.cycleCode, cancelRoute: false};
|
operate.param = {cycleCode: model.cycleCode, cancelRoute: false};
|
||||||
|
operate.code = model.code;
|
||||||
} else if (model._type === 'AutomaticRoute') {
|
} else if (model._type === 'AutomaticRoute') {
|
||||||
const route = this.routeData[model.automaticRouteCode];
|
const route = this.routeData[model.automaticRouteCode];
|
||||||
operate.cmdType = CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO;
|
operate.cmdType = CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO;
|
||||||
operate.param = {signalCode: route.startSignalCode};
|
operate.param = {signalCode: route.startSignalCode};
|
||||||
|
operate.code = model.code;
|
||||||
}
|
}
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch((error) => {
|
this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch((error) => {
|
||||||
this.deviceList = [];
|
this.deviceList = [];
|
||||||
|
@ -1,370 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog v-dialogDrag class="haerbin-01__systerm confirm-control" :title="title" :visible.sync="show" width="360px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false" append-to-body>
|
|
||||||
<div class="context">
|
|
||||||
<template v-for="(message,index) in messages">
|
|
||||||
<span :key="index">{{ message }}</span>
|
|
||||||
</template>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" :offset="4">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<notice-info ref="noticeInfo" pop-class="haerbin-01__systerm" />
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
|
||||||
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'ConfirmControl',
|
|
||||||
components: {
|
|
||||||
NoticeInfo
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
operate: {},
|
|
||||||
messages: '',
|
|
||||||
operation: null
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
return this.$t('menu.accessSetting');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
return this.$t('menu.menuSignal.signalOff');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
return this.$t('menu.menuSignal.signalReopen');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
return this.$t('menu.cancelTheWay');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
return this.$t('menu.approachManualControl');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
return this.$t('menu.accessToATSAutomaticControl');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
return this.$t('menu.menuStationStand.setRunLevel');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
return this.$t('menu.stopTime');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
return this.$t('menu.setSwitchbackStrategy');
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
/** 进路设置*/
|
|
||||||
return OperationEvent.Signal.arrangementRoute.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
/** 信号关灯*/
|
|
||||||
return OperationEvent.Signal.signalClose.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
/** 信号重开*/
|
|
||||||
return OperationEvent.Signal.reopenSignal.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
/** 取消进路*/
|
|
||||||
return OperationEvent.Signal.cancelTrainRoute.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
/** 进路交人工控*/
|
|
||||||
return OperationEvent.Signal.humanControl.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
/** 进路交ATS自动控*/
|
|
||||||
return OperationEvent.Signal.atsAutoControl.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
/** 设置运行等级*/
|
|
||||||
return OperationEvent.StationStand.setRunLevel.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
/** 设置停站时间*/
|
|
||||||
return OperationEvent.StationStand.setStopTime.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
/** 设置折返策略*/
|
|
||||||
return OperationEvent.StationStand.setBackStrategy.confirm.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.loading = false;
|
|
||||||
this.operate = operate || {};
|
|
||||||
this.messages = operate.messages;
|
|
||||||
this.operation = operate.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
/** 进路设置*/
|
|
||||||
this.routeSetting();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
/** 信号关灯*/
|
|
||||||
this.signalClose();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
/** 信号重开*/
|
|
||||||
this.reopenSignal();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
/** 取消进路*/
|
|
||||||
this.cancelTrainRoute();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
/** 进路交人工控*/
|
|
||||||
this.humanControl();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
/** 进路交ATS自动控*/
|
|
||||||
this.atsAutoControl();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
/** 设置运行等级*/
|
|
||||||
this.setRunLevel();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
/** 停站时间*/
|
|
||||||
this.setStopTime();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
/** 设置折返策略*/
|
|
||||||
this.setBackStrategy();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 进路设置
|
|
||||||
routeSetting() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.arrangementRoute.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_SET_ROUTE
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 信号关灯
|
|
||||||
signalClose() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.signalClose.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CLOSE_SIGNAL
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 信号重开
|
|
||||||
reopenSignal() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.reopenSignal.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 取消进路
|
|
||||||
cancelTrainRoute() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.cancelTrainRoute.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 进路交人工控
|
|
||||||
humanControl() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.humanControl.menu.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 进路交ATS自动控
|
|
||||||
atsAutoControl() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.atsAutoControl.menu.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_SET_CI_AUTO
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 设置运行等级
|
|
||||||
setRunLevel() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setRunLevel.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_RUN_TIME,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 停站时间
|
|
||||||
setStopTime() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setStopTime.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_PARK_TIME,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 设置折返策略
|
|
||||||
setBackStrategy() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setBackStrategy.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_REENTRY_STRATEGY,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
this.$refs.noticeInfo.doShow();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.confirm-control .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,144 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog v-dialogDrag class="haerbin-01__systerm confirm-control-speed" :title="title" :visible.sync="show" width="540px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false" append-to-body>
|
|
||||||
<div style="height: 60px; padding-left: 20px">
|
|
||||||
<span style="font-size: 18px">{{ message }}</span>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="6" :offset="6">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'ConfirmControlSpeed',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
operation: '',
|
|
||||||
message: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionSetSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionCancelSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
return this.$t('menu.switchSettingSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionCancelSpeedLimit');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
return OperationEvent.Section.setSpeed.confirm.domId; // 区段设置限速
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
return OperationEvent.Section.cancelSpeed.confirm.domId; // 区段取消限速
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
return OperationEvent.Switch.setSpeed.confirm.domId; // 道岔设置限速
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
return OperationEvent.Switch.cancelSpeed.confirm.domId; // 道岔取消限速
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.operation = operate.operation;
|
|
||||||
this.message = operate.message;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
const operate = {};
|
|
||||||
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
/** 区段设置限速*/
|
|
||||||
operate.operation = OperationEvent.Section.setSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
/** 区段取消限速*/
|
|
||||||
operate.operation = OperationEvent.Section.cancelSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
/** 道岔设置限速*/
|
|
||||||
operate.operation = OperationEvent.Switch.setSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
/** 道岔取消限速*/
|
|
||||||
operate.operation = OperationEvent.Switch.cancelSpeed.confirm.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 1, success: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.confirm-control-speed .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,126 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog
|
|
||||||
v-dialogDrag
|
|
||||||
class="haerbin-01__systerm route-unlock-confirm"
|
|
||||||
:title="title"
|
|
||||||
:visible.sync="show"
|
|
||||||
width="500px"
|
|
||||||
:before-close="doClose"
|
|
||||||
:z-index="2000"
|
|
||||||
:modal="false"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
append-to-body
|
|
||||||
>
|
|
||||||
<div style="height: 60px; padding-left: 20px">
|
|
||||||
<span>{{ $t('menu.in') }}{{ stationName }}【{{ signalName }}】{{ $t('menu.signalConfirmed') }}</span>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="6" :offset="6">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'RouteUnlockConfirm',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
signalName: '',
|
|
||||||
stationName: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
return this.$t('menu.signalDeblocking');
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
return this.dialogShow ? OperationEvent.Signal.unlock.confirm.domId : '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate, selected) {
|
|
||||||
this.stationName = '';
|
|
||||||
this.signalName = '';
|
|
||||||
if (selected) {
|
|
||||||
this.signalName = selected.name;
|
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
|
||||||
if (station) {
|
|
||||||
this.stationName = station.name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Signal.unlock.confirm.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 1, success: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.route-unlock-confirm .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,419 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog v-dialogDrag class="haerbin-01__systerm section-cmd-control" :title="title" :visible.sync="show" width="840px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
|
|
||||||
<div style="padding: 10px 20px; border: 1px solid lightgray;">
|
|
||||||
<span class="base-label">{{ $t('menu.commandInformation') }}</span>
|
|
||||||
<el-form label-position="center" size="mini">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('global.status')" label-width="40px">
|
|
||||||
<el-select v-model="operation" size="small" disabled>
|
|
||||||
<el-option v-for="option in typeList" :key="option.code" :label="option.name" :value="option.code" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('menu.stationName')" label-width="80px">
|
|
||||||
<el-input v-model="stationName" size="small" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('menu.sectionName')" label-width="100px">
|
|
||||||
<el-input v-model="sectionName" size="small" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<el-table :data="tempData" border style="width: 100%" size="mini" highlight-current-row height="200">
|
|
||||||
<el-table-column prop="order" :width="110" :label="this.$t('menu.serialNumber2')" />
|
|
||||||
<el-table-column prop="date" :width="160" :label="this.$t('menu.time')" />
|
|
||||||
<el-table-column prop="context" :width="180" :label="this.$t('menu.implementationProcess')" />
|
|
||||||
<el-table-column prop="result" :label="this.$t('menu.executionResult')" />
|
|
||||||
</el-table>
|
|
||||||
<span class="notice">{{ message }}</span>
|
|
||||||
<el-row class="button-group">
|
|
||||||
<el-col :span="2" :offset="3">
|
|
||||||
<el-button :id="domIdCommand" type="primary" :disabled="cmdDisabled[0]" @click="command">
|
|
||||||
{{ $t('menu.release') }}
|
|
||||||
<span v-show="timeCountCommand>0">({{ timeCountCommand }})</span></el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="1">
|
|
||||||
<el-button :id="domIdConfirm1" type="primary" style="width:120px;" :disabled="cmdDisabled[1]" @click="confirm1">{{ $t('menu.firstConfirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="2">
|
|
||||||
<el-button :id="domIdConfirm2" type="primary" style="width:120px;" :disabled="cmdDisabled[2]" @click="confirm2">
|
|
||||||
{{ $t('menu.secondConfirm') }}
|
|
||||||
<span v-show="timeCountConfirm>0">({{ timeCountConfirm }})</span></el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="2">
|
|
||||||
<el-button :id="domIdStop" type="primary" :disabled="stpDisabled" @click="stop">{{ $t('menu.suspend') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="1">
|
|
||||||
<el-button :id="domIdClose" @click="close">{{ $t('global.close') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
import { now } from '@/utils/date';
|
|
||||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'SectionCmdControl',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
backOperate: '',
|
|
||||||
selected: '',
|
|
||||||
order: 0,
|
|
||||||
row: null,
|
|
||||||
timer: null,
|
|
||||||
operation: '',
|
|
||||||
cmdDisabled: [true, true, true],
|
|
||||||
stpDisabled: true,
|
|
||||||
tempData: [],
|
|
||||||
message: '',
|
|
||||||
timeCountCommand: -1,
|
|
||||||
timeCountConfirm: -1,
|
|
||||||
stationName: '',
|
|
||||||
sectionName: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
typeList() {
|
|
||||||
return [
|
|
||||||
{ code: OperationEvent.Section.unlock.menu.operation, name: this.$t('menu.menuSection.sectionUnblock') },
|
|
||||||
{ code: OperationEvent.Section.fault.menu.operation, name: this.$t('menu.menuSection.sectionFaultUnlock') },
|
|
||||||
{ code: OperationEvent.Section.axlePreReset.menu.operation, name: this.$t('menu.menuSection.sectionAxisPreReset') }
|
|
||||||
];
|
|
||||||
},
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
domIdCommand() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
return OperationEvent.Section.unlock.order.domId; // 区段解封
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
return OperationEvent.Section.fault.order.domId; // 区段故障解锁
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
return OperationEvent.Section.axlePreReset.order.domId; // 区段计轴预复位
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdConfirm1() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
return OperationEvent.Section.unlock.confirm1.domId; // 区段解封
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
return OperationEvent.Section.fault.confirm1.domId; // 区段故障解锁
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
return OperationEvent.Section.axlePreReset.confirm1.domId; // 区段计轴预复位
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdConfirm2() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
return OperationEvent.Section.unlock.confirm2.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
return OperationEvent.Section.fault.confirm2.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
return OperationEvent.Section.axlePreReset.confirm2.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdStop() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
return OperationEvent.Section.unlock.stop.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
return OperationEvent.Section.fault.stop.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
return OperationEvent.Section.axlePreReset.stop.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdClose() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
return OperationEvent.Command.close.menu.domId;
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionUnblock');
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionFaultUnlock');
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionAxisPreReset');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
cmdDisabled: {
|
|
||||||
handler(val, oldVal) {
|
|
||||||
this.stpDisabled = true;
|
|
||||||
val.forEach((elem, index) => {
|
|
||||||
// 在确定1之前的操作才可以终止
|
|
||||||
if (elem == false && index >= 1 && index <= 2) {
|
|
||||||
this.stpDisabled = false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
deep: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
this.timer = setInterval(() => {
|
|
||||||
if (!this.$store.state.menuOperation.break) {
|
|
||||||
if (this.timeCountCommand > 0) {
|
|
||||||
this.timeCountCommand--;
|
|
||||||
} else if (this.timeCountCommand == 0) {
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
}
|
|
||||||
if (this.timeCountConfirm > 0) {
|
|
||||||
this.timeCountConfirm--;
|
|
||||||
} else if (this.timeCountConfirm == 0) {
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, 1000);
|
|
||||||
},
|
|
||||||
beforeDestroy() {
|
|
||||||
clearInterval(this.timer);
|
|
||||||
this.timer = null;
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate, selected) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.sectionName = '';
|
|
||||||
this.stationName = '';
|
|
||||||
if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) {
|
|
||||||
if (selected.type === '02') {
|
|
||||||
const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode);
|
|
||||||
if (section) {
|
|
||||||
this.sectionName += section.name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.sectionName += selected.name;
|
|
||||||
|
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
|
||||||
if (station) {
|
|
||||||
this.stationName = station.name;
|
|
||||||
}
|
|
||||||
this.selected = selected;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.order = 0;
|
|
||||||
this.operation = operate.operation || '';
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.tempData = [];
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.cmdDisabled = [false, true, true];
|
|
||||||
}
|
|
||||||
this.stpDisabled = true;
|
|
||||||
this.setMessage(this.$t('tip.releaseTip'));
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
command() {
|
|
||||||
if (this.operation == OperationEvent.Section.fault.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Section.unlock.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Section.cancelSpeed.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 第一步不带弹框处理*/
|
|
||||||
this.commandNoPopUp();
|
|
||||||
} else {
|
|
||||||
/** 第一步带弹框处理*/
|
|
||||||
this.commandHasPopUp();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
commandHasPopUp() {
|
|
||||||
},
|
|
||||||
commandNoPopUp() {
|
|
||||||
const operate = {};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
operate.operation = OperationEvent.Section.unlock.order.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Section.fault.order.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
operate.operation = OperationEvent.Section.axlePreReset.order.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setMessage(this.$t('tip.firstConfirmTip'));
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.setButtonEnable({ step: 1 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
confirm1() {
|
|
||||||
const operate = {
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
operate.operation = OperationEvent.Section.unlock.confirm1.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Section.fault.confirm1.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
operate.operation = OperationEvent.Section.axlePreReset.confirm1.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setMessage(this.$t('tip.secondConfirmTip'));
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = 10;
|
|
||||||
this.setButtonEnable({ step: 2 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
confirm2() {
|
|
||||||
const operate = {};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
operate.operation = OperationEvent.Section.unlock.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Section.CMD_SECTION_UNBLOCK;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Section.fault.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Section.CMD_SECTION_FAULT_UNLOCK;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
operate.operation = OperationEvent.Section.axlePreReset.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Section.CMD_SECTION_AXIS_PRE_RESET;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setMessage('');
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.setButtonEnable({ step: -1 });
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.setButtonEnable({ step: -1 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
stop() {
|
|
||||||
const operate = {};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Section.unlock.menu.operation) {
|
|
||||||
/** 区段解封*/
|
|
||||||
operate.operation = OperationEvent.Section.unlock.stop.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.fault.menu.operation) {
|
|
||||||
/** 区段故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Section.fault.stop.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Section.axlePreReset.menu.operation) {
|
|
||||||
/** 区段计轴预复位*/
|
|
||||||
operate.operation = OperationEvent.Section.axlePreReset.stop.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSuspend'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
close() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.close.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
setButtonEnable(param) {
|
|
||||||
this.cmdDisabled = [true, true, true];
|
|
||||||
if (param && param.step >= 0) {
|
|
||||||
this.cmdDisabled[param.step] = false;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
setMessage(message) {
|
|
||||||
this.message = message;
|
|
||||||
},
|
|
||||||
writeRecord(param) {
|
|
||||||
this.tempData.push(param);
|
|
||||||
},
|
|
||||||
editRecord(param) {
|
|
||||||
this.tempData.forEach(elem => {
|
|
||||||
if (elem.order == param.order) {
|
|
||||||
for (var prop in param) {
|
|
||||||
elem[prop] = param[prop];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,482 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog
|
|
||||||
v-dialogDrag
|
|
||||||
class="haerbin-01__systerm switch-cmd-control"
|
|
||||||
:title="title"
|
|
||||||
:visible.sync="show"
|
|
||||||
width="840px"
|
|
||||||
:before-close="doClose"
|
|
||||||
:z-index="2000"
|
|
||||||
:modal="false"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
>
|
|
||||||
<div style="padding: 10px 20px; border: 1px solid lightgray;">
|
|
||||||
<span class="base-label">{{ $t('menu.commandInformation') }}</span>
|
|
||||||
<el-form label-position="center" size="mini">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('menu.type')" label-width="40px">
|
|
||||||
<el-select v-model="operation" size="small" disabled>
|
|
||||||
<el-option
|
|
||||||
v-for="option in typeList"
|
|
||||||
:key="option.code"
|
|
||||||
:label="option.name"
|
|
||||||
:value="option.code"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('menu.stationName')" label-width="80px">
|
|
||||||
<el-input v-model="stationName" size="small" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="this.$t('menu.switchName')" label-width="80px">
|
|
||||||
<el-input v-model="switchName" size="small" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<el-table
|
|
||||||
ref="tempData"
|
|
||||||
class="table"
|
|
||||||
:data="tempData"
|
|
||||||
border
|
|
||||||
style="width: 100%"
|
|
||||||
size="mini"
|
|
||||||
highlight-current-row
|
|
||||||
height="200"
|
|
||||||
>
|
|
||||||
<el-table-column prop="order" :width="110" :label="this.$t('menu.serialNumber2')" />
|
|
||||||
<el-table-column prop="date" :width="160" :label="this.$t('menu.time')" />
|
|
||||||
<el-table-column prop="context" :width="180" :label="this.$t('menu.implementationProcess')" />
|
|
||||||
<el-table-column prop="result" :label="this.$t('menu.executionResult')" />
|
|
||||||
</el-table>
|
|
||||||
<span class="notice">{{ message }}</span>
|
|
||||||
<el-row class="button-group">
|
|
||||||
<el-col :span="2" :offset="3">
|
|
||||||
<el-button :id="domIdCommand" type="primary" :disabled="cmdDisabled[0]" @click="command">{{ $t('menu.release') }}<span
|
|
||||||
v-show="timeCountCommand>0"
|
|
||||||
>({{ timeCountCommand }})</span></el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="1">
|
|
||||||
<el-button :id="domIdConfirm1" type="primary" style="width:120px;" :disabled="cmdDisabled[1]" @click="confirm1">{{ $t('menu.firstConfirm') }}
|
|
||||||
</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="2">
|
|
||||||
<el-button :id="domIdConfirm2" type="primary" style="width:120px;" :disabled="cmdDisabled[2]" @click="confirm2">{{ $t('menu.secondConfirm') }}<span
|
|
||||||
v-show="timeCountConfirm>0"
|
|
||||||
>({{ timeCountConfirm }})</span></el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="2">
|
|
||||||
<el-button :id="domIdStop" type="primary" :disabled="stpDisabled" @click="stop">{{ $t('menu.suspend') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2" :offset="1">
|
|
||||||
<el-button :id="domIdClose" @click="close">{{ $t('global.close') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
import { now } from '@/utils/date';
|
|
||||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'SwitchCmdControl',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
backOperate: '',
|
|
||||||
selected: '',
|
|
||||||
order: 0,
|
|
||||||
row: null,
|
|
||||||
timer: null,
|
|
||||||
operation: '',
|
|
||||||
cmdDisabled: [true, true, true],
|
|
||||||
stpDisabled: true,
|
|
||||||
tempData: [],
|
|
||||||
message: '',
|
|
||||||
timeCountCommand: -1,
|
|
||||||
timeCountConfirm: -1,
|
|
||||||
stationName: '',
|
|
||||||
switchName: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
typeList() {
|
|
||||||
return [
|
|
||||||
{ code: OperationEvent.Switch.unlock.menu.operation, name: this.$t('menu.menuSwitch.switchUnlock') },
|
|
||||||
{ code: OperationEvent.Switch.unblock.menu.operation, name: this.$t('menu.menuSwitch.switchSectionUnblock') },
|
|
||||||
{ code: OperationEvent.Switch.fault.menu.operation, name: this.$t('menu.menuSwitch.switchMalfunctionUnlock') },
|
|
||||||
{ code: OperationEvent.Switch.axlePreReset.menu.operation, name: this.$t('menu.menuSwitch.switchSectionAxisPreReset') }
|
|
||||||
];
|
|
||||||
},
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
domIdCommand() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
return OperationEvent.Switch.unlock.order.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
return OperationEvent.Switch.unblock.order.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
return OperationEvent.Switch.fault.order.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
return OperationEvent.Switch.axlePreReset.order.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdConfirm1() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
return OperationEvent.Switch.unlock.confirm1.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
return OperationEvent.Switch.unblock.confirm1.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
return OperationEvent.Switch.fault.confirm1.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
return OperationEvent.Switch.axlePreReset.confirm1.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdConfirm2() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
return OperationEvent.Switch.unlock.confirm2.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
return OperationEvent.Switch.unblock.confirm2.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
return OperationEvent.Switch.fault.confirm2.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
return OperationEvent.Switch.axlePreReset.confirm2.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdStop() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
return OperationEvent.Switch.unlock.stop.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
return OperationEvent.Switch.unblock.stop.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
return OperationEvent.Switch.fault.stop.domId;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
return OperationEvent.Switch.axlePreReset.stop.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdClose() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
return OperationEvent.Command.close.menu.domId;
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
return '道岔单解';
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
return '道岔解封';
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
return '道岔故障解锁';
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
return '道岔计轴复位';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
cmdDisabled: {
|
|
||||||
handler(val, oldVal) {
|
|
||||||
this.stpDisabled = true;
|
|
||||||
val.forEach((elem, index) => {
|
|
||||||
// 在确定1之前的操作才可以终止
|
|
||||||
if (elem == false && index >= 1 && index <= 2) {
|
|
||||||
this.stpDisabled = false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
deep: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
this.timer = setInterval(() => {
|
|
||||||
if (!this.$store.state.menuOperation.break) {
|
|
||||||
if (this.timeCountCommand > 0) {
|
|
||||||
this.timeCountCommand--;
|
|
||||||
} else if (this.timeCountCommand == 0) {
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
}
|
|
||||||
if (this.timeCountConfirm > 0) {
|
|
||||||
this.timeCountConfirm--;
|
|
||||||
} else if (this.timeCountConfirm == 0) {
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, 1000);
|
|
||||||
},
|
|
||||||
beforeDestroy() {
|
|
||||||
clearInterval(this.timer);
|
|
||||||
this.timer = null;
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate, selected) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.switchName = '';
|
|
||||||
this.stationName = '';
|
|
||||||
if (selected && selected._type.toUpperCase() === 'Switch'.toUpperCase()) {
|
|
||||||
this.switchName = selected.name;
|
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
|
||||||
if (station) {
|
|
||||||
this.stationName = station.name;
|
|
||||||
}
|
|
||||||
this.selected = selected;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.order = 0;
|
|
||||||
this.operation = operate.operation;
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.tempData = [];
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.cmdDisabled = [false, true, true];
|
|
||||||
}
|
|
||||||
this.stpDisabled = true;
|
|
||||||
this.setMessage(this.$t('tip.releaseTip'));
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
command() {
|
|
||||||
/** 道岔单解/道岔解封/道岔故障解锁/道岔计轴复位*/
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Switch.unblock.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Switch.fault.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Switch.axlePreReset.menu.operation ||
|
|
||||||
this.operation == OperationEvent.Switch.cancelSpeed.menu.operation) {
|
|
||||||
/** 第一步不带弹框处理*/
|
|
||||||
this.commandNoPopUp();
|
|
||||||
} else {
|
|
||||||
/** 第一步带弹框处理*/
|
|
||||||
this.commandHasPopUp();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
commandHasPopUp() {
|
|
||||||
|
|
||||||
},
|
|
||||||
commandNoPopUp() {
|
|
||||||
const operate = {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
operate.operation = OperationEvent.Switch.unlock.order.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
operate.operation = OperationEvent.Switch.unblock.order.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Switch.fault.order.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
operate.operation = OperationEvent.Switch.axlePreReset.order.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setMessage(this.$t('tip.firstConfirmTip'));
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.setButtonEnable({ step: 1 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
confirm1() {
|
|
||||||
const operate = {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
operate.operation = OperationEvent.Switch.unlock.confirm1.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
operate.operation = OperationEvent.Switch.unblock.confirm1.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Switch.fault.confirm1.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
operate.operation = OperationEvent.Switch.axlePreReset.confirm1.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setMessage(this.$t('tip.secondConfirmTip'));
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = 10;
|
|
||||||
this.setButtonEnable({ step: 2 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
confirm2() {
|
|
||||||
const operate = {
|
|
||||||
over: true
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
operate.operation = OperationEvent.Switch.unlock.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Switch.CMD_SWITCH_SINGLE_UNLOCK;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
operate.operation = OperationEvent.Switch.unblock.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Switch.CMD_SWITCH_UNBLOCK;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Switch.fault.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Switch.CMD_SWITCH_FAULT_UNLOCK;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
operate.operation = OperationEvent.Switch.axlePreReset.confirm2.operation;
|
|
||||||
operate.cmdType = CMD.Switch.CMD_SWITCH_AXLE_PRE_RESET;
|
|
||||||
}
|
|
||||||
this.setMessage('');
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.setButtonEnable({ step: -1 });
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.timeCountCommand = -1;
|
|
||||||
this.timeCountConfirm = -1;
|
|
||||||
this.setButtonEnable({ step: -1 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
stop() {
|
|
||||||
const operate = {
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.operation == OperationEvent.Switch.unlock.menu.operation) {
|
|
||||||
/** 道岔单解*/
|
|
||||||
operate.operation = OperationEvent.Switch.unlock.stop.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
|
||||||
/** 道岔解封*/
|
|
||||||
operate.operation = OperationEvent.Switch.unblock.stop.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
|
||||||
/** 道岔故障解锁*/
|
|
||||||
operate.operation = OperationEvent.Switch.fault.stop.operation;
|
|
||||||
} else if (this.operation == OperationEvent.Switch.axlePreReset.menu.operation) {
|
|
||||||
/** 道岔计轴复位*/
|
|
||||||
operate.operation = OperationEvent.Switch.axlePreReset.stop.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSuspend'), result: '' });
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.setButtonEnable({ step: 0 });
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionSucceed') });
|
|
||||||
} else {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionFailed') });
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.editRecord({ order: this.order, date: now(), context: this.$t('menu.clickSuspend'), result: this.$t('tip.executionException') });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
close() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.close.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getOperate(operate) {
|
|
||||||
/** 弹框返回值处理*/
|
|
||||||
},
|
|
||||||
setButtonEnable(param) {
|
|
||||||
this.cmdDisabled = [true, true, true];
|
|
||||||
if (param && param.step >= 0) {
|
|
||||||
this.cmdDisabled[param.step] = false;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
setMessage(message) {
|
|
||||||
this.message = message;
|
|
||||||
},
|
|
||||||
writeRecord(param) {
|
|
||||||
this.tempData.push(param);
|
|
||||||
},
|
|
||||||
editRecord(param) {
|
|
||||||
this.tempData.forEach(elem => {
|
|
||||||
if (elem.order == param.order) {
|
|
||||||
for (var prop in param) {
|
|
||||||
elem[prop] = param[prop];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,365 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog v-dialogDrag class="haerbin-01__systerm confirm-control" :title="title" :visible.sync="show" width="360px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false" append-to-body>
|
|
||||||
<div class="context">
|
|
||||||
<template v-for="(message,index) in messages">
|
|
||||||
<span :key="index">{{ message }}</span>
|
|
||||||
</template>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" :offset="4">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
import { EventBus } from '@/scripts/event-bus';
|
|
||||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'ConfirmControl',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
operate: {},
|
|
||||||
messages: '',
|
|
||||||
operation: null
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
return this.$t('menu.accessSetting');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
return this.$t('menu.menuSignal.signalOff');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
return this.$t('menu.menuSignal.signalReopen');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
return this.$t('menu.cancelTheWay');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
return this.$t('menu.approachManualControl');
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
return this.$t('menu.accessToATSAutomaticControl');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
return this.$t('menu.menuStationStand.setRunLevel');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
return this.$t('menu.stopTime');
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
return this.$t('menu.setSwitchbackStrategy');
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
/** 进路设置*/
|
|
||||||
return OperationEvent.Signal.arrangementRoute.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
/** 信号关灯*/
|
|
||||||
return OperationEvent.Signal.signalClose.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
/** 信号重开*/
|
|
||||||
return OperationEvent.Signal.reopenSignal.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
/** 取消进路*/
|
|
||||||
return OperationEvent.Signal.cancelTrainRoute.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
/** 进路交人工控*/
|
|
||||||
return OperationEvent.Signal.humanControl.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
/** 进路交ATS自动控*/
|
|
||||||
return OperationEvent.Signal.atsAutoControl.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
/** 设置运行等级*/
|
|
||||||
return OperationEvent.StationStand.setRunLevel.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
/** 设置停站时间*/
|
|
||||||
return OperationEvent.StationStand.setStopTime.confirm.domId;
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
/** 设置折返策略*/
|
|
||||||
return OperationEvent.StationStand.setBackStrategy.confirm.domId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.loading = false;
|
|
||||||
this.operate = operate || {};
|
|
||||||
this.messages = operate.messages;
|
|
||||||
this.operation = operate.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
|
||||||
/** 进路设置*/
|
|
||||||
this.routeSetting();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.signalClose.menu.operation) {
|
|
||||||
/** 信号关灯*/
|
|
||||||
this.signalClose();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.reopenSignal.menu.operation) {
|
|
||||||
/** 信号重开*/
|
|
||||||
this.reopenSignal();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.cancelTrainRoute.menu.operation) {
|
|
||||||
/** 取消进路*/
|
|
||||||
this.cancelTrainRoute();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.humanControl.menu.operation) {
|
|
||||||
/** 进路交人工控*/
|
|
||||||
this.humanControl();
|
|
||||||
} else if (this.operation === OperationEvent.Signal.atsAutoControl.menu.operation) {
|
|
||||||
/** 进路交ATS自动控*/
|
|
||||||
this.atsAutoControl();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setRunLevel.menu.operation) {
|
|
||||||
/** 设置运行等级*/
|
|
||||||
this.setRunLevel();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setStopTime.menu.operation) {
|
|
||||||
/** 停站时间*/
|
|
||||||
this.setStopTime();
|
|
||||||
} else if (this.operation === OperationEvent.StationStand.setBackStrategy.menu.operation) {
|
|
||||||
/** 设置折返策略*/
|
|
||||||
this.setBackStrategy();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 进路设置
|
|
||||||
routeSetting() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.arrangementRoute.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_SET_ROUTE
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 信号关灯
|
|
||||||
signalClose() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.signalClose.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CLOSE_SIGNAL
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 信号重开
|
|
||||||
reopenSignal() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.reopenSignal.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 取消进路
|
|
||||||
cancelTrainRoute() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.cancelTrainRoute.confirm.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 进路交人工控
|
|
||||||
humanControl() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.humanControl.menu.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 进路交ATS自动控
|
|
||||||
atsAutoControl() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.Signal.atsAutoControl.menu.operation,
|
|
||||||
cmdType: CMD.Signal.CMD_SIGNAL_SET_CI_AUTO
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 设置运行等级
|
|
||||||
setRunLevel() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setRunLevel.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_RUN_TIME,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 停站时间
|
|
||||||
setStopTime() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setStopTime.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_PARK_TIME,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 设置折返策略
|
|
||||||
setBackStrategy() {
|
|
||||||
const operate = {
|
|
||||||
over: true,
|
|
||||||
operation: OperationEvent.StationStand.setBackStrategy.confirm.operation,
|
|
||||||
cmdType: CMD.Stand.CMD_STAND_SET_REENTRY_STRATEGY,
|
|
||||||
val: this.operate.val
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
this.loading = false;
|
|
||||||
this.doClose();
|
|
||||||
console.error(error);
|
|
||||||
EventBus.$emit('sendMsg', {message: '命令执行失败!'});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
if (valid) {
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.confirm-control .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,144 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog v-dialogDrag class="haerbin-01__systerm confirm-control-speed" :title="title" :visible.sync="show" width="540px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false" append-to-body>
|
|
||||||
<div style="height: 60px; padding-left: 20px">
|
|
||||||
<span style="font-size: 18px">{{ message }}</span>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="6" :offset="6">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'ConfirmControlSpeed',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
operation: '',
|
|
||||||
message: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionSetSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionCancelSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
return this.$t('menu.switchSettingSpeedLimit');
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
return this.$t('menu.menuSection.sectionCancelSpeedLimit');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
if (this.dialogShow) {
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
return OperationEvent.Section.setSpeed.confirm.domId; // 区段设置限速
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
return OperationEvent.Section.cancelSpeed.confirm.domId; // 区段取消限速
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
return OperationEvent.Switch.setSpeed.confirm.domId; // 道岔设置限速
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
return OperationEvent.Switch.cancelSpeed.confirm.domId; // 道岔取消限速
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate) {
|
|
||||||
if (!this.dialogShow) {
|
|
||||||
this.operation = operate.operation;
|
|
||||||
this.message = operate.message;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
const operate = {};
|
|
||||||
|
|
||||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
|
||||||
/** 区段设置限速*/
|
|
||||||
operate.operation = OperationEvent.Section.setSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
|
||||||
/** 区段取消限速*/
|
|
||||||
operate.operation = OperationEvent.Section.cancelSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
|
||||||
/** 道岔设置限速*/
|
|
||||||
operate.operation = OperationEvent.Switch.setSpeed.confirm.operation;
|
|
||||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
|
||||||
/** 道岔取消限速*/
|
|
||||||
operate.operation = OperationEvent.Switch.cancelSpeed.confirm.operation;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 1, success: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.confirm-control-speed .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,126 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-dialog
|
|
||||||
v-dialogDrag
|
|
||||||
class="haerbin-01__systerm route-unlock-confirm"
|
|
||||||
:title="title"
|
|
||||||
:visible.sync="show"
|
|
||||||
width="500px"
|
|
||||||
:before-close="doClose"
|
|
||||||
:z-index="2000"
|
|
||||||
:modal="false"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
append-to-body
|
|
||||||
>
|
|
||||||
<div style="height: 60px; padding-left: 20px">
|
|
||||||
<span>{{ $t('menu.in') }}{{ stationName }}【{{ signalName }}】{{ $t('menu.signalConfirmed') }}</span>
|
|
||||||
</div>
|
|
||||||
<el-row justify="center" class="button-group">
|
|
||||||
<el-col :span="6" :offset="6">
|
|
||||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">{{ $t('global.confirm') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="10" :offset="2">
|
|
||||||
<el-button :id="domIdCancel" @click="cancel">{{ $t('global.cancel') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'RouteUnlockConfirm',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogShow: false,
|
|
||||||
loading: false,
|
|
||||||
signalName: '',
|
|
||||||
stationName: ''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
show() {
|
|
||||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
|
||||||
},
|
|
||||||
title() {
|
|
||||||
return this.$t('menu.signalDeblocking');
|
|
||||||
},
|
|
||||||
domIdCancel() {
|
|
||||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
|
||||||
},
|
|
||||||
domIdConfirm() {
|
|
||||||
return this.dialogShow ? OperationEvent.Signal.unlock.confirm.domId : '';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$store.dispatch('training/tipReload');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
doShow(operate, selected) {
|
|
||||||
this.stationName = '';
|
|
||||||
this.signalName = '';
|
|
||||||
if (selected) {
|
|
||||||
this.signalName = selected.name;
|
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
|
||||||
if (station) {
|
|
||||||
this.stationName = station.name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = true;
|
|
||||||
this.$nextTick(function () {
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
doClose() {
|
|
||||||
this.loading = false;
|
|
||||||
this.dialogShow = false;
|
|
||||||
this.$store.dispatch('training/emitTipFresh');
|
|
||||||
},
|
|
||||||
commit() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Signal.unlock.confirm.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.loading = true;
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 1, success: true });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.loading = false;
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
const operate = {
|
|
||||||
operation: OperationEvent.Command.cancel.menu.operation
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
|
||||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
|
||||||
if (valid) {
|
|
||||||
this.$emit('setOperate', { step: 0, success: false });
|
|
||||||
this.doClose();
|
|
||||||
}
|
|
||||||
}).catch(() => {
|
|
||||||
this.doClose();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
.route-unlock-confirm .context {
|
|
||||||
padding-bottom: 40px !important;
|
|
||||||
border: 1px solid lightgray;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -49,7 +49,7 @@ export default {
|
|||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
// initLoadCallback: this.initForm,
|
initLoadCallback: this.initForm,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
prdType: {
|
prdType: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
@ -180,12 +180,10 @@ export default {
|
|||||||
|
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
},
|
},
|
||||||
initForm(form) {
|
async initForm(form) {
|
||||||
if (form) {
|
if (form) {
|
||||||
this.prdChoose(form);
|
await this.prdChoose(form, false);
|
||||||
this.typeChoose(form);
|
await this.typeChoose(form, false);
|
||||||
// form.type = '';
|
|
||||||
// form.operateType = '';
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
interCheckGenerateStatus() {
|
interCheckGenerateStatus() {
|
||||||
@ -217,7 +215,7 @@ export default {
|
|||||||
}, 3000);
|
}, 3000);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
async prdChoose(form) {
|
async prdChoose(form, isClean = true) {
|
||||||
this.trainingTypeMap = {};
|
this.trainingTypeMap = {};
|
||||||
|
|
||||||
const lineCode = this.$route.query.lineCode;
|
const lineCode = this.$route.query.lineCode;
|
||||||
@ -236,8 +234,10 @@ export default {
|
|||||||
Driver: []
|
Driver: []
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (isClean) {
|
||||||
form.type = '';
|
form.type = '';
|
||||||
form.operateType = '';
|
form.operateType = '';
|
||||||
|
}
|
||||||
this.queryForm.queryObject.type.config.data = [];
|
this.queryForm.queryObject.type.config.data = [];
|
||||||
this.queryForm.queryObject.operateType.config.data = [];
|
this.queryForm.queryObject.operateType.config.data = [];
|
||||||
|
|
||||||
@ -264,9 +264,11 @@ export default {
|
|||||||
this.$message.error(this.$t('error.failedToObtainTrainingType'));
|
this.$message.error(this.$t('error.failedToObtainTrainingType'));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
typeChoose(form) {
|
typeChoose(form, isClean = true) {
|
||||||
this.queryForm.queryObject.operateType.config.data = [];
|
this.queryForm.queryObject.operateType.config.data = [];
|
||||||
|
if (isClean) {
|
||||||
form.operateType = '';
|
form.operateType = '';
|
||||||
|
}
|
||||||
if (form && form.type && this.trainingTypeMap[form.type]) {
|
if (form && form.type && this.trainingTypeMap[form.type]) {
|
||||||
this.trainingTypeMap[form.type].forEach(elem => {
|
this.trainingTypeMap[form.type].forEach(elem => {
|
||||||
this.queryForm.queryObject.operateType.config.data.push({ value: elem.value, label: elem.label });
|
this.queryForm.queryObject.operateType.config.data.push({ value: elem.value, label: elem.label });
|
||||||
|
Loading…
Reference in New Issue
Block a user