佛山有轨电车 信号机站台操作代码调整

This commit is contained in:
joylink_cuiweidong 2020-03-23 17:43:37 +08:00
parent 3d6f5a2537
commit 93fd139b6e
4 changed files with 12 additions and 456 deletions

View File

@ -1,279 +0,0 @@
<template>
<el-dialog v-dialogDrag class="ningbo-01__systerm stand-detain-train" :title="'批量设置' + title" :visible.sync="show" width="480px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row style="margin-top: -13px; padding: 20px 0px 5px 0;">
<el-col :span="11">
<span>上行线路设置{{ title }}</span>
<el-table ref="multipleTable" :data="upStandList" tooltip-effect="dark" height="400" style="width: 100%;margin: 5px 0;" @selection-change="handleSelectionChangeUp">
<el-table-column type="selection" width="50" />
<el-table-column label="站台名称">
<template slot-scope="scope">{{ scope.row.name }}</template>
</el-table-column>
</el-table>
<el-checkbox v-model="upForward" style="display: block; text-align: left;margin-bottom: 5px;">正向{{ title }}</el-checkbox>
</el-col>
<el-col :span="11" :offset="2">
<span>下行线路设置{{ title }}</span>
<el-table ref="multipleTable" :data="downStandList" tooltip-effect="dark" height="400" style="width: 100%;margin: 5px 0;" @selection-change="handleSelectionChangeDown">
<el-table-column type="selection" width="50" />
<el-table-column label="站台名称">
<template slot-scope="scope">{{ scope.row.name }}</template>
</el-table-column>
</el-table>
<el-checkbox v-model="downForward" style="display: block; text-align: left;margin-bottom: 5px;">正向{{ title }}</el-checkbox>
</el-col>
</el-row>
<el-row class="button-group">
<el-col :span="10" :offset="2">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定</el-button>
</el-col>
<el-col :span="8" :offset="4">
<el-button :id="domIdCancel" @click="cancel"> </el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" />
</el-dialog>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import OperationHandler from '@/scripts/cmdPlugin/OperationHandler';
import NoticeInfo from './childDialog/childDialog/noticeInfo';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { mapGetters } from 'vuex';
export default {
name: 'StandDetainTrain',
components: {
NoticeInfo
},
data() {
return {
dialogShow: false,
loading: false,
selected: null,
operation: null,
standCode: '',
radio: '1',
upSelectList: [],
downSelectList: [],
upForward: true, //
downForward: false //
};
},
computed: {
...mapGetters('map', [
'stationStandList'
]),
upStandList() { //
const list = [];
if (this.stationStandList && this.stationStandList.length) {
const arr = this.stationStandList.filter(elem => { return !elem.small; });
arr.forEach(item => {
if (item.right) {
list.push(item);
}
});
}
return list;
},
downStandList() { //
const list = [];
if (this.stationStandList && this.stationStandList.length) {
const arr = this.stationStandList.filter(elem => { return !elem.small; });
arr.forEach(item => {
if (!item.right) {
list.push(item);
}
});
}
return list;
},
show() {
return this.dialogShow && !this.$store.state.menuOperation.break;
},
domIdCancel() {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
},
domIdConfirm() {
return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : '';
},
upRadioId() {
return this.dialogShow ? OperationEvent.StationStand.earlyDeparture.upSelect.domId : '';
},
downRadioId() {
return this.dialogShow ? OperationEvent.StationStand.earlyDeparture.downSelect.domId : '';
},
title() {
if (this.operation == OperationEvent.StationStand.setBulkBuckleTrain.menu.operation) {
return '扣车';
} else if (this.operation == OperationEvent.StationStand.cancelBulkBuckleTrain.menu.operation) {
return '取消扣车';
}
return '';
}
},
mounted() {
this.$nextTick(() => {
this.$store.dispatch('training/tipReload');
});
},
methods: {
doShow(operate, selected) {
this.selected = selected;
if (!this.dialogShow) {
this.standName = '';
this.stationName = '';
if (selected) {
this.standName = selected.name;
}
if (selected && selected._type.toUpperCase() === 'StationStand'.toUpperCase()) {
this.standName = selected.name;
const station = this.$store.getters['map/getDeviceByCode'](selected.deviceStationCode);
if (station) {
this.stationName = station.name;
}
}
this.operation = operate.operation;
this.standCode = operate.code;
}
this.dialogShow = true;
this.$nextTick(function () {
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.loading = false;
this.dialogShow = false;
this.operation = '';
this.$store.dispatch('training/emitTipFresh');
this.mouseCancelState(this.selected);
},
changeRadio(val) { //
const operate = {
operation: '',
val: val
};
if (val == 1) {
operate.operation = OperationEvent.StationStand.earlyDeparture.upSelect.operation;
} else if (val == 2) {
operate.operation = OperationEvent.StationStand.earlyDeparture.downSelect.operation;
}
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
}
}).catch(error => {
console.log(error);
});
},
handleSelectionChangeUp(val) {
this.upSelectList = val;
},
handleSelectionChangeDown(val) {
this.downSelectList = val;
},
commit() {
if (this.operation == OperationEvent.StationStand.setBulkBuckleTrain.menu.operation) {
/** 设置扣车*/
this.setDetainTrain();
} else if (this.operation == OperationEvent.StationStand.cancelBulkBuckleTrain.menu.operation) {
/** 取消扣车*/
this.cancelDetainTrain();
}
},
//
setDetainTrain() {
const operate = {
over: true,
operation: OperationEvent.StationStand.setBulkBuckleTrain.menu.operation,
cmdType: CMD.Stand.CMD_STAND_SET_HOLD_TRAIN_ALL,
param: {
rightHoldTrain: { standCodes: [], forward: this.upForward },
leftHoldTrain: { standCodes: [], forward: this.downForward }
}
};
this.upSelectList.forEach(item => {
operate.param.rightHoldTrain.standCodes.push(item.code);
});
this.downSelectList.forEach(item => {
operate.param.leftHoldTrain.standCodes.push(item.code);
});
if (!operate.param.rightHoldTrain.forward) {
operate.param.rightHoldTrain.standCodes = [];
}
if (!operate.param.leftHoldTrain.forward) {
operate.param.leftHoldTrain.standCodes = [];
}
this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
this.loading = false;
this.doClose();
if (!valid) {
this.$refs.noticeInfo.doShow(operate);
}
}).catch((error) => {
this.loading = false;
this.doClose();
this.$refs.noticeInfo.doShow(operate, [error.message]);
});
},
//
cancelDetainTrain() {
const operate = {
over: true,
operation: OperationEvent.StationStand.cancelBulkBuckleTrain.menu.operation,
cmdType: CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN_ALL,
param: {
rightHoldTrain: { standCodes: [], forward: this.upForward },
leftHoldTrain: { standCodes: [], forward: this.downForward }
}
};
this.upSelectList.forEach(item => {
operate.param.rightHoldTrain.standCodes.push(item.code);
});
this.downSelectList.forEach(item => {
operate.param.leftHoldTrain.standCodes.push(item.code);
});
if (!operate.param.rightHoldTrain.forward) {
operate.param.rightHoldTrain.standCodes = [];
}
if (!operate.param.leftHoldTrain.forward) {
operate.param.leftHoldTrain.standCodes = [];
}
this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
this.loading = false;
this.doClose();
if (!valid) {
this.$refs.noticeInfo.doShow(operate);
}
}).catch((error) => {
this.loading = false;
this.doClose();
this.$refs.noticeInfo.doShow(operate, [error.message]);
});
},
cancel() {
const operate = {
operation: OperationEvent.Command.cancel.menu.operation
};
this.loading = false;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.doClose();
}
}).catch(() => {
this.doClose();
});
}
}
};
</script>
<style lang="scss" scope>
</style>

View File

@ -177,10 +177,6 @@ export default {
return '取消扣车';
} else if (this.operation == OperationEvent.StationStand.earlyDeparture.menu.operation) {
return '提前发车';
} else if (this.operation == OperationEvent.StationStand.setDetainTrainAuto.menu.operation) {
return '区间自动扣车';
} else if (this.operation == OperationEvent.StationStand.cancelDetainTrainAuto.menu.operation) {
return '区间自动扣车';
}
return '';
}
@ -236,20 +232,6 @@ export default {
} else {
this.radio2 = '1';
}
} else if (this.operation == OperationEvent.StationStand.setDetainTrainAuto.menu.operation) {
this.AutomaticBuckle = true;
this.autoRadio1 = '1';
this.autoRadio = '1';
if (!this.selected.right) {
this.autoRadio = '2';
}
} else if (this.operation == OperationEvent.StationStand.cancelDetainTrainAuto.menu.operation) {
this.AutomaticBuckle = true;
this.autoRadio1 = '2';
this.autoRadio = '1';
if (!this.selected.right) {
this.autoRadio = '2';
}
}
},
doClose() {
@ -288,62 +270,8 @@ export default {
} else if (this.operation == OperationEvent.StationStand.earlyDeparture.menu.operation) {
/** 提前发车*/
this.earlyDeparture();
} else if (this.operation == OperationEvent.StationStand.setDetainTrainAuto.menu.operation) {
/** 区间自动扣车*/
this.setDetainTrainAuto();
} else if (this.operation == OperationEvent.StationStand.cancelDetainTrainAuto.menu.operation) {
/** 取消区间自动扣车*/
this.cancelDetainTrainAuto();
}
},
setDetainTrainAuto() { //
const operate = {
over: true,
operation: OperationEvent.StationStand.setDetainTrainAuto.menu.operation,
cmdType: CMD.Stand.CMD_STAND_SET_HOLD_TRAIN_AUTO,
param: {
leftDirection: this.autoRadio == '2', // 1 2
rightDirection: this.autoRadio == '1'
}
};
this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
this.loading = false;
this.doClose();
if (!valid) {
this.$refs.noticeInfo.doShow(operate);
}
}).catch((error) => {
this.loading = false;
this.doClose();
this.$refs.noticeInfo.doShow(operate, [error.message]);
});
},
cancelDetainTrainAuto() { //
const operate = {
over: true,
operation: OperationEvent.StationStand.cancelDetainTrainAuto.menu.operation,
cmdType: CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN_AUTO,
param: {
leftDirection: this.autoRadio == '2', // 1 2
rightDirection: this.autoRadio == '1'
}
};
this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
this.loading = false;
this.doClose();
if (!valid) {
this.$refs.noticeInfo.doShow(operate);
}
}).catch((error) => {
this.loading = false;
this.doClose();
this.$refs.noticeInfo.doShow(operate, [error.message]);
});
},
//
setDetainTrain() {
const operate = {

View File

@ -72,7 +72,7 @@ export default {
cmdType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL
},
{
label: '信号机引导办理',
label: '进路引导',
handler: this.guide,
cmdType: CMD.Signal.CMD_SIGNAL_ROUTE_GUIDE
},
@ -92,12 +92,12 @@ export default {
cmdType: CMD.Signal.CMD_SIGNAL_UNBLOCK
},
{
label: 'Fleet进路办理',
label: '设置自动进路',
handler: this.singalPassModel,
cmdType: CMD.Signal.CMD_SIGNAL_SET_CI_AUTO
},
{
label: 'Fleet进路取消',
label: '取消自动进路',
handler: this.singalCancelPassModel,
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO
},
@ -143,16 +143,6 @@ export default {
handler: this.atsAutoControl,
cmdType: CMD.Signal.CMD_SIGNAL_OPEN_AUTO_SETTING
},
{
label: '设置通过模式',
handler: this.singalPassModel,
cmdType: CMD.Signal.CMD_SIGNAL_SET_CI_AUTO
},
{
label: '取消通过模式',
handler: this.singalCancelPassModel,
cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO
},
{
label: '查询进路控制状态',
handler: this.detail,

View File

@ -7,7 +7,6 @@
<stand-run-level ref="standRunLevel" />
<stand-stop-time ref="standStopTime" />
<stand-back-strategy ref="standBackStrategy" />
<StandBulkBuckleTrain ref="standBulkBuckleTrain" />
<notice-info ref="noticeInfo" />
</div>
</template>
@ -20,7 +19,6 @@ import StandBackStrategy from './dialog/standBackStrategy';
import StandDetail from './dialog/standDetail';
import StandRunLevel from './dialog/standRunLevel';
import StandStopTime from './dialog/standStopTime';
import StandBulkBuckleTrain from './dialog/standBulkBuckleTrain';
import NoticeInfo from './dialog/childDialog/childDialog/noticeInfo';
// import Handler from '@/scripts/cmdPlugin/Handler';
@ -36,7 +34,6 @@ export default {
PopMenu,
StandControl,
StandJumpStopControl,
StandBulkBuckleTrain,
StandDetail,
StandRunLevel,
NoticeInfo,
@ -57,7 +54,7 @@ export default {
menuNormal: {
Local: [
{
label: '扣车',
label: '设置扣车',
handler: this.setDetainTrain,
cmdType:CMD.Stand.CMD_STAND_SET_HOLD_TRAIN
},
@ -67,19 +64,20 @@ export default {
cmdType:CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN
},
{
label: '提前发车',
label: '设置提前发车',
handler: this.earlyDeparture,
cmdType:CMD.Stand.CMD_STAND_EARLY_DEPART
},
{
label: '站台详细信息',
label: '查询站台状态',
handler: this.detail,
cmdType:CMD.Stand.CMD_STAND_VIEW_STATUS
}
// 线
],
Center: [
{
label: '扣车',
label: '设置扣车',
handler: this.setDetainTrain,
cmdType:CMD.Stand.CMD_STAND_SET_HOLD_TRAIN
},
@ -89,17 +87,7 @@ export default {
cmdType:CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN
},
{
label: '批量扣车',
handler: this.setBulkBuckleTrain,
cmdType:CMD.Stand.CMD_STAND_SET_HOLD_TRAIN_ALL
},
{
label: '批量取消扣车',
handler: this.cancelBulkBuckleTrain,
cmdType:CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN_ALL
},
{
label: '提前发车',
label: '设置提前发车',
handler: this.earlyDeparture,
cmdType:CMD.Stand.CMD_STAND_EARLY_DEPART
},
@ -124,20 +112,12 @@ export default {
cmdType:CMD.Stand.CMD_STAND_SET_RUN_TIME
},
{
label: '区间列车数量限制',
handler: this.setDetainTrainAll,
cmdType:CMD.Stand.CMD_STAND_SET_HOLD_TRAIN_AUTO
},
{
label: '取消区间列车数量限制',
handler: this.cancelDetainTrainAll,
cmdType:CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN_AUTO
},
{
label: '查看站台信息',
label: '查询站台状态',
handler: this.detail,
cmdType:CMD.Stand.CMD_STAND_VIEW_STATUS
}
// 线
// 线
]
},
menuForce: [
@ -277,69 +257,6 @@ export default {
}
});
},
//
setDetainTrainAll() {
const step = {
start: true,
code: this.selected.code,
operation: OperationEvent.StationStand.setDetainTrainAuto.menu.operation,
param: {
standCode: `${this.selected.code}`
}
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.$refs.standControl.doShow(step, this.selected);
}
});
},
//
cancelDetainTrainAll() {
const step = {
start: true,
code: this.selected.code,
operation: OperationEvent.StationStand.cancelDetainTrainAuto.menu.operation,
param: {
standCode: `${this.selected.code}`
}
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.$refs.standControl.doShow(step, this.selected);
}
});
},
//
setBulkBuckleTrain() {
const step = {
start: true,
code: this.selected.code,
operation: OperationEvent.StationStand.setBulkBuckleTrain.menu.operation
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.$refs.standBulkBuckleTrain.doShow(step, this.selected);
}
});
},
//
cancelBulkBuckleTrain() {
const step = {
start: true,
code: this.selected.code,
operation: OperationEvent.StationStand.cancelBulkBuckleTrain.menu.operation
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.$refs.standBulkBuckleTrain.doShow(step, this.selected);
}
});
},
//
setJumpStop() {
const step = {