大铁线路调整8
This commit is contained in:
parent
140f6306ed
commit
5e30c99d2c
@ -492,6 +492,18 @@ export const menuOperate = {
|
||||
operation: OperationEvent.Train.deleteDestinationTrainId.menu.operation,
|
||||
cmdType: CMD.TrainWindow.CMD_TRAIN_SET_MANUAL
|
||||
}
|
||||
},
|
||||
CTC: {
|
||||
//接预
|
||||
receivingNotice: {
|
||||
operation: OperationEvent.CTCCommand.receivingNotice.menu.operation,
|
||||
cmdType: CMD.CTC.CTC_RECEIVING_NOTICE
|
||||
},
|
||||
// 发预
|
||||
departureNotice: {
|
||||
operation: OperationEvent.CTCCommand.departureNotice.menu.operation,
|
||||
cmdType: CMD.CTC.CTC_DEPARTURE_NOTICE
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@ -530,12 +542,15 @@ export function commitOperate(operate, paramList, over, fillStep = {}) {
|
||||
|
||||
Object.assign(step, fillStep);
|
||||
return new Promise(function(resolve, reject) {
|
||||
console.log(step, '=============');
|
||||
store.dispatch('training/nextNew', step).then(({ valid }) => {
|
||||
console.log(valid, '===11');
|
||||
if (valid) {
|
||||
store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
resolve({ valid: valid, operate: {...step} });
|
||||
}).catch(error=>{
|
||||
console.log(error, '===22');
|
||||
reject(error);
|
||||
});
|
||||
});
|
||||
|
146
src/jmapNew/theme/datie_02/menus/dialog/recDep.vue
Normal file
146
src/jmapNew/theme/datie_02/menus/dialog/recDep.vue
Normal file
@ -0,0 +1,146 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
v-dialogDrag
|
||||
class="chengdou-03__systerm stand-stop-time"
|
||||
title="作业窗口"
|
||||
:visible.sync="show"
|
||||
width="500px"
|
||||
:before-close="doClose"
|
||||
:z-index="2000"
|
||||
:modal="false"
|
||||
:close-on-click-modal="false"
|
||||
>
|
||||
<div>
|
||||
<el-form :model="form" class="demo-form-inline">
|
||||
<el-form-item label="作业任务:">
|
||||
<el-input v-model="form.work" type="textarea" :rows="2" :disabled="true"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="操作时间:">
|
||||
<el-input v-model="form.time" type="textarea" :rows="1" :disabled="true"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="操作信息:">
|
||||
<el-input v-model="form.info" type="textarea" :rows="2" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="text-align: center;"><el-button v-if="type === 'rec'" style="width: 200px;" @click="commit(menuOperate.CTC.receivingNotice)">完成接预</el-button></div>
|
||||
<div style="text-align: center;margin-top: 10px;"><el-button v-if="type === 'dep'" style="width: 200px;" @click="commit(menuOperate.CTC.departureNotice)">完成发预</el-button></div>
|
||||
<div style="text-align: center;margin-top: 10px;"><el-button v-if="type === 'rec'" style="width: 200px;" disabled>取消接预</el-button></div>
|
||||
<div style="text-align: center;margin-top: 10px;"><el-button v-if="type === 'dep'" style="width: 200px;" disabled>取消接预</el-button></div>
|
||||
<el-button @click="doClose" style="height: 50px;width: 50px;position: relative;left: 370px;">关闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapGetters } from 'vuex';
|
||||
import CancelMouseState from '@/mixin/CancelMouseState';
|
||||
import { getUploadFile } from '@/api/pdf';
|
||||
import { DrawingType } from '@/scripts/ConstDic';
|
||||
import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||
|
||||
export default {
|
||||
name: 'TrainMove',
|
||||
mixins: [
|
||||
CancelMouseState
|
||||
],
|
||||
data() {
|
||||
return {
|
||||
selected: null,
|
||||
selectedType: '',
|
||||
dialogShow: false,
|
||||
menuOperate: menuOperate,
|
||||
type: '',
|
||||
stationCode: '',
|
||||
tripNumber: '',
|
||||
loading: false,
|
||||
tableData: [],
|
||||
deviceTypeList: [
|
||||
{ label: '区段', value: 'Section' },
|
||||
{ label: '信号机', value: 'Signal' },
|
||||
{ label: '道岔', value: 'Switch' },
|
||||
{ label: '车站', value: 'Station' }
|
||||
],
|
||||
deviceIdList: [],
|
||||
form: {
|
||||
work: '',
|
||||
time: '',
|
||||
info: ''
|
||||
}
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'stationStandList'
|
||||
]),
|
||||
show() {
|
||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
||||
},
|
||||
title() {
|
||||
if (this.selectedType === 'normStudy') {
|
||||
return '规范学习';
|
||||
} else if (this.selectedType === 'clCaAn') {
|
||||
return '经典案例分析';
|
||||
} else if (this.selectedType === 'baDeTr') {
|
||||
return '基础设备培训';
|
||||
} else {
|
||||
return '图纸检索';
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
doShow(row, type, stationCode) {
|
||||
this.type = type;
|
||||
this.loading = true;
|
||||
this.stationCode = stationCode;
|
||||
this.tripNumber = row.tripNumber;
|
||||
this.dialogShow = true;
|
||||
this.$nextTick(function () {
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
});
|
||||
},
|
||||
doClose() {
|
||||
this.loading = false;
|
||||
this.dialogShow = false;
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
},
|
||||
commit(type) {
|
||||
this.loading = true;
|
||||
//menuOperate.CTC.receivingNotice
|
||||
|
||||
commitOperate(type, {stationCode: this.stationCode, tripNumber: this.tripNumber}, 3).then(({valid, operate})=>{
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
}).catch((error) => {
|
||||
this.loading = false;
|
||||
this.doClose();
|
||||
console.error(error);
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style scoped>
|
||||
.chengdou-03__systerm .el-dialog .base-label {
|
||||
background: rgba(0, 0, 0, x);
|
||||
position: relative;
|
||||
left: -5px;
|
||||
top: -18px;
|
||||
padding: 0 5px;
|
||||
background-color: #F0F0F0;
|
||||
}
|
||||
.text-button{
|
||||
color: #148ad0;
|
||||
cursor:pointer;
|
||||
}
|
||||
.text-button:active{
|
||||
color: #b938e1;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.text-button:hover{
|
||||
color: #b938e1;
|
||||
text-decoration: underline;
|
||||
}
|
||||
</style>
|
302
src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue
Normal file
302
src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue
Normal file
@ -0,0 +1,302 @@
|
||||
<template>
|
||||
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" :width="showExpand? '1100px': '300px'" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="showExpand? 6: 24">
|
||||
<el-row class="header">
|
||||
<el-col :span="11"><span>集中站</span></el-col>
|
||||
<el-col :span="11" :offset="2"><span>始端信号机</span></el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="11">
|
||||
<el-input v-model="stationName" size="small" disabled />
|
||||
</el-col>
|
||||
<el-col :span="11" :offset="2">
|
||||
<el-input v-model="signalName" size="small" disabled />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row style="margin-top: 10px; line-height: 30px;">
|
||||
<el-col :span="11"><span>进路列表</span></el-col>
|
||||
<el-col :span="11" :offset="2">
|
||||
<el-button class="expand" @click="expandPath">{{ expandTitle }}</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-table ref="table" :data="tempData" border :cell-style="tableStyle" style="width: 100%; height: 460px; margin-top:10px" size="mini" highlight-current-row :show-header="false" @row-click="clickEvent">
|
||||
<el-table-column :id="domIdChoose" prop="name" style="margin-left:30px" />
|
||||
</el-table>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="8" :offset="4">
|
||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" :disabled="commitDisabled" @click="commit">确定</el-button>
|
||||
</el-col>
|
||||
<el-col :span="8" :offset="4">
|
||||
<el-button :id="domIdCancel" @click="cancel">取 消</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<el-col v-show="showExpand" :span="showExpand? 18: 0">
|
||||
<map-visual ref="map" :map-data="mapData" :width="780" :height="600" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
|
||||
<confirm-tip ref="confirmTip" @close="doClose" />
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import { menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||
import { deepAssign } from '@/utils/index';
|
||||
import { mouseCancelState} from '@/jmapNew/theme/components/utils/menuItemStatus';
|
||||
import { mapGetters } from 'vuex';
|
||||
// import { dbReadData } from '@/utils/indexedDb';
|
||||
import ConfirmTip from './childDialog/confirmTip';
|
||||
import MapVisual from './mapVisual';
|
||||
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
|
||||
|
||||
export default {
|
||||
name: 'RouteSelection',
|
||||
components: {
|
||||
NoticeInfo,
|
||||
ConfirmTip,
|
||||
MapVisual
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
tempData: [],
|
||||
beforeSectionList: [],
|
||||
beforeSwitchList: [],
|
||||
showExpand: true,
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
selected: null,
|
||||
row: null,
|
||||
operation: '',
|
||||
display: true,
|
||||
stationName: '',
|
||||
signalName: '',
|
||||
mapData: null,
|
||||
tableStyle: {
|
||||
'border-bottom': 'none'
|
||||
}
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'overlapData'
|
||||
]),
|
||||
show() {
|
||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
||||
},
|
||||
domIdCancel() {
|
||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
||||
},
|
||||
domIdChoose() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
|
||||
},
|
||||
domIdConfirm() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
|
||||
},
|
||||
title() {
|
||||
return '进路设置';
|
||||
},
|
||||
expandTitle() {
|
||||
return this.showExpand ? '收起进路预览' : '展开进路预览';
|
||||
},
|
||||
commitDisabled() {
|
||||
let disabled = true;
|
||||
if (this.row) {
|
||||
disabled = !this.row.canSetting;
|
||||
}
|
||||
return disabled;
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'$store.state.map.keyboardEnterCount': function (val) {
|
||||
if (this.show && !this.commitDisabled) {
|
||||
this.commit();
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.mapData = JSON.parse(JSON.stringify(this.$store.state.map.map));
|
||||
},
|
||||
methods: {
|
||||
expandPath() {
|
||||
this.showExpand = !this.showExpand;
|
||||
},
|
||||
doShow(operate, selected, tempData) {
|
||||
this.$root.$emit('dialogOpen', selected);
|
||||
this.selected = selected;
|
||||
// 如果不是断点激活,而是第一次显示,则需要设置初始值
|
||||
if (!this.dialogShow) {
|
||||
this.signalName = '';
|
||||
this.stationName = '';
|
||||
if (selected && selected._type.toUpperCase() === 'Signal'.toUpperCase()) {
|
||||
this.signalName = selected.name;
|
||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
||||
if (station) {
|
||||
this.stationName = station.name;
|
||||
}
|
||||
}
|
||||
const routeList = JSON.parse(JSON.stringify(tempData || []));
|
||||
|
||||
this.tempData = routeList;
|
||||
this.tempData.forEach(route => {
|
||||
if (route.turnBack) {
|
||||
route.name = `${route.name}(Z)`;
|
||||
}
|
||||
});
|
||||
this.operation = operate.operation;
|
||||
}
|
||||
|
||||
this.dialogShow = true;
|
||||
this.$nextTick(function () {
|
||||
this.loadData();
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
});
|
||||
},
|
||||
loadData() {
|
||||
this.beforeSwitchList = [];
|
||||
this.beforeSectionList = [];
|
||||
if (this.mapData) {
|
||||
this.$refs.map.loadData(this.mapData);
|
||||
}
|
||||
},
|
||||
doClose() {
|
||||
this.loading = false;
|
||||
this.dialogShow = false;
|
||||
this.row = null;
|
||||
this.restoreBeforeDevices();
|
||||
this.$root.$emit('dialogClose', this.selected);
|
||||
this.$refs.table.setCurrentRow();
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
mouseCancelState(this.selected);
|
||||
},
|
||||
restoreBeforeDevices() {
|
||||
// 恢复之前选中设备
|
||||
if (this.beforeSectionList && this.beforeSectionList.length) {
|
||||
this.beforeSectionList.forEach(el => {
|
||||
el.routeLock = false;
|
||||
el.preBlue = false;
|
||||
el.preGreen = false;
|
||||
});
|
||||
}
|
||||
|
||||
if (this.beforeSwitchList && this.beforeSwitchList.length) {
|
||||
this.beforeSwitchList.forEach(el => {
|
||||
// N-定位 R-反位 NO-无(失表) EX-挤叉
|
||||
el.pos = 'NO';
|
||||
el.routeLock = false;
|
||||
});
|
||||
}
|
||||
|
||||
this.$refs.map.updateMapDevice([...this.beforeSectionList, ...this.beforeSwitchList]);
|
||||
|
||||
this.beforeSectionList = [];
|
||||
this.beforeSwitchList = [];
|
||||
},
|
||||
clickEvent(row, event, column) {
|
||||
this.row = row;
|
||||
if (row) {
|
||||
// 恢复进路区段的切除状态
|
||||
this.row.canSetting = true;
|
||||
this.restoreBeforeDevices();
|
||||
|
||||
const containSectionList = [];
|
||||
const containSwitchList = [];
|
||||
if (!row.setting) {
|
||||
const signalBegin = this.$refs.map.getDeviceByCode(row.startSignalCode);
|
||||
const signalEnd = this.$refs.map.getDeviceByCode(row.endSignalCode);
|
||||
const diff = signalBegin.position.x - signalEnd.position.x;
|
||||
const code = diff > 0 ? row.endSignalCode : row.startSignalCode;
|
||||
const signal = diff > 0 ? signalEnd : signalBegin;
|
||||
const switchCodeList = [];
|
||||
|
||||
this.$refs.map.setCenterWithOffset(code, 50, signal.position.y);
|
||||
if (row.routeSectionList && row.routeSectionList.length) {
|
||||
row.routeSectionList.forEach(code => {
|
||||
const section = deepAssign({}, this.$refs.map.getDeviceByCode(code));
|
||||
if (section.logicSectionCodeList && section.logicSectionCodeList.length) {
|
||||
section.logicSectionCodeList.forEach(sectionCode => {
|
||||
containSectionList.push({code: sectionCode, preGreen: true, preBlue: false});
|
||||
});
|
||||
} else {
|
||||
containSectionList.push({code, preGreen: true, preBlue: false});
|
||||
}
|
||||
|
||||
if (section.switchSection && section.switch) {
|
||||
switchCodeList.push(section.switch.code);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (row.routeSwitchList && row.routeSwitchList.length) {
|
||||
row.routeSwitchList.filter(el => switchCodeList.includes(el.switchCode)).forEach(el => {
|
||||
const swch = deepAssign({}, this.$refs.map.getDeviceByCode(el.switchCode));
|
||||
const sectionA = this.$refs.map.getDeviceByCode(swch.sectionACode);
|
||||
const sectionB = this.$refs.map.getDeviceByCode(swch.sectionBCode);
|
||||
const sectionC = this.$refs.map.getDeviceByCode(swch.sectionCCode);
|
||||
// normalPosition: el.normal, reversePosition: !el.normal
|
||||
containSwitchList.push({code: el.switchCode, routeLock: true, pos:el.pos });
|
||||
if (el.normal) {
|
||||
containSectionList.push({code: sectionA.code, routeLock:true });
|
||||
containSectionList.push({code: sectionC.code, preBlue: true });
|
||||
} else {
|
||||
containSectionList.push({code: sectionC.code, routeLock:true });
|
||||
containSectionList.push({code: sectionB.code, preBlue: true });
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
this.$refs.map.updateMapDevice([...containSectionList, ...containSwitchList]);
|
||||
this.beforeSectionList = containSectionList;
|
||||
this.beforeSwitchList = containSwitchList;
|
||||
|
||||
// 设置选中指令
|
||||
const operate = {
|
||||
operation: OperationEvent.Signal.arrangementRoute.choose.operation,
|
||||
val: row.code
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.$refs.noticeInfo.doShow('当前进路不允许排列, 与其他进路可能发生冲突');
|
||||
}
|
||||
}
|
||||
},
|
||||
commit() {
|
||||
if (this.row && this.row.canSetting) {
|
||||
this.loading = true;
|
||||
commitOperate(menuOperate.Signal.arrangementRoute, {routeCode:this.row.code}, 1).then(({valid, operate})=>{
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
const signal = this.$store.getters['map/getDeviceByCode'](this.row.startSignalCode);
|
||||
operate.message = `命令:进路设置<br/>始端信号机:${signal.name}<br/>进路:${this.row.name}`;
|
||||
// this.doClose();
|
||||
this.$refs.confirmTip.doShow(operate);
|
||||
}
|
||||
}).catch(() => {
|
||||
this.loading = false;
|
||||
this.doClose();
|
||||
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>
|
@ -1,25 +1,25 @@
|
||||
<template>
|
||||
<div class="menus" :style="{width: width + 'px'}">
|
||||
<!--<menu-bar v-show="isShowBar" ref="menuBar" :selected="selected" />-->
|
||||
<div class="alarm-window">
|
||||
<div v-if="mode === 'liansuo'" class="alarm-window">
|
||||
<div v-for="elem in alarmMessages" :key="elem.id" style="font-size: 14px;">
|
||||
{{ elem.message }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="device-status-window">
|
||||
<div class="device-status-button" style="background: #0f0;">联锁I</div>
|
||||
<div class="device-status-button" style="background: #f00;">CTC</div>
|
||||
<div class="device-status-button" :style="{background: mode === 'liansuo' ? '#0f0': '#f00'}" @click="selectedMode('liansuo')">联锁I</div>
|
||||
<div class="device-status-button" :style="{background: mode === 'ctc' ? '#0f0': '#f00'}" @click="selectedMode('ctc')">CTC</div>
|
||||
<!--<div class="device-status-button" style="background: #f00;">联锁II</div>-->
|
||||
<!--<div class="device-status-button" style="background: #0f0;">操作A</div>-->
|
||||
<!--<div class="device-status-button" style="background: #ff0;">操作B</div>-->
|
||||
<!--<div class="device-status-button" style="background: #f00;">维修机</div>-->
|
||||
</div>
|
||||
<div class="warning-window">
|
||||
<div v-if="mode === 'liansuo'" class="warning-window">
|
||||
<div v-for="elem in warningMessages" :key="elem.id" style="font-size: 14px;color: #ff0">
|
||||
{{ elem.message }}
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: calc(100% - 200px);position: fixed;height: 30px;background: #808080;z-index: 9;bottom: 0;left: 0;display: flex;">
|
||||
<div v-if="mode === 'liansuo'" style="width: calc(100% - 200px);position: fixed;height: 30px;background: #808080;z-index: 9;bottom: 0;left: 0;display: flex;">
|
||||
<div style="width: 60%;height: 30px;line-height: 30px;text-align: center;">提示信息窗</div>
|
||||
<div style="width: 40%;height: 30px;line-height: 30px;text-align: center;border-left: 2px #ccc solid;">{{ '操控A:主机' + ' ' + dateString + ' ' + time }}</div>
|
||||
</div>
|
||||
@ -95,7 +95,8 @@ export default {
|
||||
{ id: 7, message: '这是预警信息七' },
|
||||
],
|
||||
time: '00:00:00',
|
||||
dateString: ''
|
||||
dateString: '',
|
||||
mode: 'liansuo'
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@ -145,6 +146,9 @@ export default {
|
||||
if (months.length < 2) { months = '0' + months; }
|
||||
if (dates.length < 2) { dates = '0' + dates; }
|
||||
this.dateString = years + months + dates;
|
||||
},
|
||||
selectedMode(mode) {
|
||||
this.mode = mode;
|
||||
}
|
||||
}
|
||||
};
|
||||
@ -460,6 +464,7 @@ export default {
|
||||
height: 30px;
|
||||
text-align: center;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.warning-window {
|
||||
width: 400px;
|
||||
|
@ -116,7 +116,8 @@ export default {
|
||||
{ label: '全线限速', value: 'LimitControl' },
|
||||
{ label: '司机', value: 'Driver' },
|
||||
{ label: '列车', value: 'Train' },
|
||||
{ label: '方向杆', value: 'DirectionRod'}
|
||||
{ label: '方向杆', value: 'DirectionRod'},
|
||||
{ label: 'CTC', value: 'CTC' }
|
||||
],
|
||||
|
||||
simulationDeviceList:[
|
||||
|
@ -366,5 +366,9 @@ export default {
|
||||
},
|
||||
DirectionRod: {
|
||||
CMD_DIRECTION_CHANGE: {value: 'Direction_Change', label: '切换方向'}
|
||||
},
|
||||
CTC: {
|
||||
CTC_RECEIVING_NOTICE: {value: 'CTC_RECEIVING_NOTICE', label: '接预'},
|
||||
CTC_DEPARTURE_NOTICE: {value: 'CTC_DEPARTURE_NOTICE', label: '发预'}
|
||||
}
|
||||
};
|
||||
|
@ -3536,6 +3536,20 @@ export const OperationEvent = {
|
||||
domId: '_Tips-Control-StationControl-Confirm{TOP}'
|
||||
}
|
||||
}
|
||||
},
|
||||
CTCCommand: {
|
||||
receivingNotice: {
|
||||
menu: {
|
||||
operation: '1100',
|
||||
domId: '_Tips-CTC-ReceivingNotice-Menu{TOP}'
|
||||
}
|
||||
},
|
||||
departureNotice: {
|
||||
menu: {
|
||||
operation: '1101',
|
||||
domId: '_Tips-CTC-DepartureNotice-Menu{TOP}'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
@ -197,6 +197,10 @@ function handle(state, data) {
|
||||
case 'Simulation_Trip_Plan_Change':
|
||||
state.simulationPlanChange = msg;
|
||||
break;
|
||||
// 占线板信息
|
||||
case 'Simulation_RailCtcStatus':
|
||||
state.railCtcStatusMsg = msg;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
@ -347,7 +351,8 @@ const socket = {
|
||||
simulationPause: false,
|
||||
simulationPslStatus: [], // PSL面板按钮状态信息
|
||||
simulationPlanChange:{}, // 运行图加线/抽线/变化推送消息
|
||||
loggedOutMsg: ''
|
||||
loggedOutMsg: '',
|
||||
railCtcStatusMsg: {}, // 占线板信息
|
||||
},
|
||||
getters: {
|
||||
},
|
||||
|
@ -4,25 +4,27 @@
|
||||
:visible.sync="dialogVisible"
|
||||
width="99%"
|
||||
top="5vh"
|
||||
class="lineBoard"
|
||||
center
|
||||
:before-close="handleClose">
|
||||
<div style="height: 500px; overflow-y: auto;background: #DFE3E6;padding: 7px;">
|
||||
<div :key="item.id" v-for="item in infoList" style="display: flex; justify-content: space-between;border-top: 1px solid #fff;padding: 3px;height: 36px;align-items: center;">
|
||||
<div>
|
||||
<el-select v-model="item.sectionCode" filterable placeholder="请选择" size="mini" style="width: 120px;">
|
||||
<el-option
|
||||
v-for="elem in sectionList"
|
||||
:key="elem.code"
|
||||
:label="elem.name"
|
||||
:value="elem.code"
|
||||
/>
|
||||
</el-select>
|
||||
<div style="width: 100%;display: flex;align-items: center;margin-bottom: 10px;">
|
||||
<div
|
||||
:key="item.code"
|
||||
v-for="item in stationList"
|
||||
class="tab-box"
|
||||
@click="selectStandCode(item.code)"
|
||||
:style="{background: selectCode === item.code ? '#F1F1F1': '#DBDBDB', color: selectCode === item.code ? '#000': '#ccc'}">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
<div>{{item.trainCode}}</div>
|
||||
<div style="background: #FFCBEC;border: 1px solid #315FD1;border-radius: 3px;font-size: 10px;">客</div>
|
||||
<div>列车未接近</div>
|
||||
</div>
|
||||
<div :key="item.id" v-for="item in infoList" style="display: flex; justify-content: space-between;border-top: 1px solid #fff;padding: 3px;height: 36px;align-items: center;">
|
||||
<div>{{item.trackName}}</div>
|
||||
<div>{{item.tripNumber}}</div>
|
||||
<div style="background: #FFCBEC;border: 1px solid #315FD1;border-radius: 3px;font-size: 10px;">{{ item.trainType?'客':'' }}</div>
|
||||
<div>{{item.trainDistanceInfo}}</div>
|
||||
<div>
|
||||
<el-select v-model="item.sectionStatus" filterable placeholder="请选择" size="mini" style="width: 120px;">
|
||||
<el-select v-model="item.process" placeholder="请选择" size="mini" style="width: 120px;" :disabled="true">
|
||||
<el-option
|
||||
v-for="elem in sectionStatusList"
|
||||
:key="elem.value"
|
||||
@ -31,32 +33,42 @@
|
||||
/>
|
||||
</el-select>
|
||||
</div>
|
||||
<div>
|
||||
<div>始发</div>
|
||||
<div>15:00</div>
|
||||
<div style="display: flex;">
|
||||
<div :style="{ background: item.receivingNotice ? '#29CA42': '#ccc' }" class="button-box-fir" @click="doShowRecDep(item,'rec')">接预</div>
|
||||
<div class="button-box-sec" :style="{ background: handleBackground(item.receivingRouteLock, item.receivingRouteCode) }" >{{ '接路' + (item.receivingRouteLock ? '':getRouteName(item.receivingRouteCode)) }}</div>
|
||||
<div :style="{ background: item.arrive ? '#29CA42': '#ccc' }" class="button-box-fir" style="margin-left: 10px;">到点</div>
|
||||
</div>
|
||||
<div>
|
||||
<div>图定始发</div>
|
||||
<div>15:00</div>
|
||||
<div>{{item.arriveTime}}</div>
|
||||
<div>{{item.departureTime}}</div>
|
||||
</div>
|
||||
<div>
|
||||
<div>{{ item.planArriveTime }}</div>
|
||||
<div>{{ item.planDepartureTime }}</div>
|
||||
</div>
|
||||
<div>起点-->终点</div>
|
||||
<div>{{ item.trainCode2 }}</div>
|
||||
<div>{{ item.sectionName }}</div>
|
||||
<div style="display: flex;">
|
||||
<div :style="{ background: item.departureNotice ? '#29CA42': '#ccc' }" class="button-box-fir" @click="doShowRecDep(item,'dep')">发预</div>
|
||||
<div class="button-box-sec" :style="{ background: handleBackground(item.departureRouteLock, item.departureRouteCode) }" >{{ '发路' + (item.departureRouteLock ? '':getRouteName(item.departureRouteCode)) }}</div>
|
||||
<div :style="{ background: item.departure ? '#29CA42': '#ccc' }" class="button-box-fir" style="margin-left: 10px;">发点</div>
|
||||
</div>
|
||||
<div>{{ item.tripNumber }}</div>
|
||||
<div>{{ item.trackName }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: center;">
|
||||
<img class="img-box" :src="arrowPic" />
|
||||
<img class="img-box" :src="picT3" />
|
||||
<img class="img-box" :src="controlPanelPic" />
|
||||
<img class="img-box" :src="trainPic" />
|
||||
<img class="img-box" :src="controlPanel2Pic"/>
|
||||
<img class="img-box" :src="linkPic"/>
|
||||
<img class="img-box" :src="cameraPic"/>
|
||||
</div>
|
||||
<!--<div style="display: flex; justify-content: center;">-->
|
||||
<!--<img class="img-box" :src="arrowPic" />-->
|
||||
<!--<img class="img-box" :src="picT3" />-->
|
||||
<!--<img class="img-box" :src="controlPanelPic" />-->
|
||||
<!--<img class="img-box" :src="trainPic" />-->
|
||||
<!--<img class="img-box" :src="controlPanel2Pic"/>-->
|
||||
<!--<img class="img-box" :src="linkPic"/>-->
|
||||
<!--<img class="img-box" :src="cameraPic"/>-->
|
||||
<!--</div>-->
|
||||
<div style="display: flex;margin-top: 5px;justify-content: space-around;background: #DEE2E5;">
|
||||
<div style="width: 49%;margin-top: 10px;">
|
||||
<div style="display: flex;align-items: center;">
|
||||
<div style="background: #0f0;">{{ '进路序列模式:<可修改>' }}</div>
|
||||
<div style="background: #0f0;">{{ `进路序列模式:<${readOnly ? '只读':'可修改'}>` }}</div>
|
||||
<el-button size="mini" style="padding: 7px 4px;">修改申请</el-button>
|
||||
<el-button size="mini" style="padding: 7px 4px;">只读申请</el-button>
|
||||
<el-button size="mini" style="padding: 7px 4px;margin-left: 30px;">查找列车</el-button>
|
||||
@ -99,20 +111,35 @@
|
||||
>
|
||||
<el-table-column width="50" label="序号" align="center">
|
||||
<template slot-scope="scope">
|
||||
<div :style="{ background: scope.$index? '#f00':'#ff0' }" >{{ scope.$index }}</div>
|
||||
<!--:style="{ background: scope.$index? '#f00':'#ff0' }" -->
|
||||
<div>{{ scope.$index }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="date" label="注意确认"/>
|
||||
<el-table-column property="train" label="车次"/>
|
||||
<el-table-column property="sectionName" label="股道"/>
|
||||
<el-table-column property="tripNumber" label="车次"/>
|
||||
<el-table-column property="trackName" label="股道"/>
|
||||
<el-table-column property="touchSelf" label="自触"/>
|
||||
<el-table-column property="type" label="类型"/>
|
||||
<el-table-column property="status" label="状态"/>
|
||||
<el-table-column property="startTime" label="开始时间"/>
|
||||
<el-table-column property="planTime" label="计划时间"/>
|
||||
<el-table-column property="direction" label="方向"/>
|
||||
<el-table-column property="description" label="序列描述" />
|
||||
<el-table-column property="routeCode" label="序列描述">
|
||||
<template slot-scope="scope">
|
||||
<div>{{getRouteName(scope.row.routeCode)}}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div style="width: 100%;display: flex;align-items: center;margin: 5px 0;">
|
||||
<div
|
||||
:key="item.code"
|
||||
v-for="item in stationList"
|
||||
class="tab-box"
|
||||
@click="selectStandCode1(item.code)"
|
||||
:style="{background: selectCode1 === item.code ? '#F1F1F1': '#DBDBDB', color: selectCode1 === item.code ? '#000': '#ccc'}">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 49%;margin-top: 10px;">
|
||||
<div style="display: flex;align-items: center;">
|
||||
@ -138,7 +165,7 @@
|
||||
<el-button size="mini">发送机车</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
:data="tableData1"
|
||||
style="width: 100%;margin-top: 10px;"
|
||||
highlight-current-row
|
||||
border
|
||||
@ -157,6 +184,7 @@
|
||||
</el-table>
|
||||
</div>
|
||||
</div>
|
||||
<rec-dep ref="recDep" />
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@ -169,11 +197,18 @@
|
||||
import TrainPic from '@/assets/datie/train.png';
|
||||
import LinkPic from '@/assets/datie/link.png';
|
||||
import CameraPic from '@/assets/datie/camera.png';
|
||||
import RecDep from '@/jmapNew/theme/datie_02/menus/dialog/recDep'
|
||||
export default {
|
||||
name: 'lineBoard',
|
||||
components: {
|
||||
RecDep
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false,
|
||||
selectCode: '',
|
||||
selectCode1: '',
|
||||
readOnly: '',
|
||||
arrowPic: ArrowPic,
|
||||
picT3: PicT3,
|
||||
controlPanelPic: ControlPanelPic,
|
||||
@ -185,53 +220,89 @@
|
||||
andDown: 'all',
|
||||
unknow: '',
|
||||
unknow1: '',
|
||||
tableData: [{id: 1},{id: 2}],
|
||||
tableData: [],
|
||||
tableData1: [],
|
||||
unknowList1: [{label: '全部机车', value: 'all'}],
|
||||
unknowList: [{label: 'J101-执行中', value: 'J101'}],
|
||||
andDownList: [{ label: '全部', value: 'all' }, { label: '上行', value: 'up' }, { label: '下行', value: 'down' }],
|
||||
sectionStatusList: [
|
||||
{label: '办理发车进路', value: ''}
|
||||
{label: '准备接车', value: 'RECEIVING'},
|
||||
{label: '办理接车进路', value: 'RECEIVING_ROUTE'},
|
||||
{label: '列车到达(通过)报点', value: 'ARRIVE'},
|
||||
{label: '发车进路办理、发车报点', value: 'DEPARTURE'},
|
||||
{label: '流程终止', value: 'FINISH'}
|
||||
],
|
||||
infoList : [
|
||||
{ id: 1 },
|
||||
{ id: 2 },
|
||||
{ id: 3 },
|
||||
{ id: 4 },
|
||||
{ id: 5 },
|
||||
{ id: 6 },
|
||||
{ id: 7 },
|
||||
{ id: 8 },
|
||||
{ id: 9 },
|
||||
{ id: 10 },
|
||||
{ id: 11 },
|
||||
{ id: 12 },
|
||||
{ id: 13 },
|
||||
{ id: 14 },
|
||||
{ id: 15 }
|
||||
]
|
||||
stationDataMap: {},
|
||||
infoList : []
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'sectionList',
|
||||
'stationList'
|
||||
])
|
||||
},
|
||||
watch: {
|
||||
'$store.state.socket.railCtcStatusMsg': function (val) {
|
||||
if (val && val.length) {
|
||||
val.forEach(item => {
|
||||
if (item) {
|
||||
this.stationDataMap[item.stationCode] = { trackView: item.trackView, routeSequence: item.routeSequence };
|
||||
}
|
||||
});
|
||||
this.infoList = this.stationDataMap[this.selectCode] ? this.stationDataMap[this.selectCode].trackView.lines: [];
|
||||
this.tableData = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.lines: [];
|
||||
this.readOnly = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.readOnly: false;
|
||||
};
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleClose() {
|
||||
this.dialogVisible = false;
|
||||
},
|
||||
doShow() {
|
||||
this.dialogVisible = true;
|
||||
this.selectCode = this.stationList[0].code;
|
||||
this.selectCode1 = this.stationList[0].code;
|
||||
this.infoList = this.stationDataMap[this.selectCode] ? this.stationDataMap[this.selectCode].trackView.lines: [];
|
||||
this.tableData = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.lines: [];
|
||||
this.readOnly = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.readOnly: false;
|
||||
},
|
||||
getScope(scope) {
|
||||
console.log(scope, '=====',scope.$index);
|
||||
selectStandCode(code) {
|
||||
this.selectCode = code;
|
||||
this.infoList = this.stationDataMap[this.selectCode].trackView.lines;
|
||||
},
|
||||
selectStandCode1(code) {
|
||||
this.selectCode1 = code;
|
||||
this.tableData = this.stationDataMap[this.selectCode1].routeSequence.lines;
|
||||
this.readOnly = this.stationDataMap[this.selectCode1].routeSequence.readOnly;
|
||||
},
|
||||
getRouteName(code){
|
||||
if(code){
|
||||
const route = this.$store.state.map.routeData[code];
|
||||
return route? route.name: ''
|
||||
} else { return '' }
|
||||
},
|
||||
handleBackground(flag, code) {
|
||||
if (flag){
|
||||
return '#29CA42';
|
||||
} else if(code) {
|
||||
const route = this.$store.state.map.routeData[code];
|
||||
return route && route.atsControl ? '#FFBF2F' : '#CCCCCC'
|
||||
}
|
||||
},
|
||||
filterTrain(val ,row){
|
||||
console.log(val, row);
|
||||
},
|
||||
doShowRecDep(row, type) {
|
||||
this.$refs.recDep.doShow(row, type, this.selectCode);
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/deep/ .el-dialog__header{
|
||||
/deep/ .lineBoard .el-dialog__header{
|
||||
background: #B4B6B9;
|
||||
}
|
||||
/deep/ .el-dialog__body{
|
||||
@ -254,4 +325,33 @@
|
||||
margin: 10px 5px 5px 5px;
|
||||
background: #FAFAFA;
|
||||
}
|
||||
.tab-box {
|
||||
padding: 5px;
|
||||
text-align: center;
|
||||
width: 33% ;
|
||||
font-size: 18px;
|
||||
border: 2px solid #F5F5F5;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
.button-box-sec{
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
background: #ccc;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
margin-left: 10px;
|
||||
width: 160px;
|
||||
text-align: center;
|
||||
}
|
||||
.button-box-fir{
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
background: #ccc;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
|
@ -7,9 +7,9 @@
|
||||
<!-- 设备视图 -->
|
||||
<el-button v-if="jl3dmodelShow && !isContest && project !== 'bjd'" size="small" @click="jumpjlmap3dmodel">{{ jl3dmodel }}</el-button>
|
||||
<!-- 三维视图/数字沙盘 -->
|
||||
<el-button v-if="jl3dnameShow && !isContest && project !== 'bjd'" size="small" @click="jumpjlmap3d">{{ jl3dname }}</el-button>
|
||||
<el-button v-if="jl3dnameShow && !isContest && project !== 'bjd' && $route.query.lineCode !== '16'" size="small" @click="jumpjlmap3d">{{ jl3dname }}</el-button>
|
||||
<!-- cctv视图 -->
|
||||
<el-button v-if="jl3dnameShow && !isContest && project !== 'bjd'" size="small" @click="jumpjl3dpassflow">{{ jl3dpassflow }}</el-button>
|
||||
<el-button v-if="jl3dnameShow && !isContest && project !== 'bjd' && $route.query.lineCode !== '16'" size="small" @click="jumpjl3dpassflow">{{ jl3dpassflow }}</el-button>
|
||||
<!-- 客流规划视图 -->
|
||||
<!-- <el-button v-if="trafficplanShow && project == 'bjd' && !isContest" size="small" @click="jumpjl3dtrafficplan">{{ jl3dtrafficplan }}</el-button>
|
||||
<el-button v-if="trafficplanShow && project == 'bjd' && !isContest" size="small" @click="jumpjl3dtraffictrain">{{ $t('display.demon.traffictraintext') }}</el-button> -->
|
||||
@ -23,7 +23,6 @@
|
||||
<el-button v-if="schedulePreviewShow" type="primary" size="small" @click="schedulingView">派班计划预览</el-button>
|
||||
<el-button v-if="isContest" size="small" :disabled="practiceDisabled" @click="fieldPractice">实操练习</el-button>
|
||||
<el-button v-if="isContest" size="small" @click="goTheoryQuiz">理论考试</el-button>
|
||||
<el-button v-if="$route.query.lineCode === '16'" size="small" @click="showLineBoard">占线板</el-button>
|
||||
<el-button v-if="messageBoard" size="small" @click="messageBoardShow">留言板</el-button>
|
||||
<!-- v-if="isContest" -->
|
||||
<el-button v-if="!isLocal" size="small" @click="contectUs">联系方式</el-button>
|
||||
@ -40,7 +39,6 @@
|
||||
<scheduling v-if="scheduleLoadShow" ref="scheduling" :group="group" />
|
||||
<scheduling-view v-if="schedulePreviewShow" ref="schedulingView" :group="group" />
|
||||
<contect-us ref="contectUs" />
|
||||
<line-board ref="lineBoard" />
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@ -52,7 +50,6 @@ import Scheduling from '@/views/newMap/displayNew/demon/scheduling';
|
||||
import SchedulingView from '@/views/newMap/displayNew/demon/schedulingView';
|
||||
import { EventBus } from '@/scripts/event-bus';
|
||||
import ContectUs from '@/views/newMap/displayNew/dispatherContest/contectUs';
|
||||
import LineBoard from '../displayCity/lineBoard';
|
||||
import { getPostByProjectCode } from '@/api/learn';
|
||||
import { ProjectCode } from '@/scripts/ProjectConfig';
|
||||
export default {
|
||||
@ -62,8 +59,7 @@ export default {
|
||||
Jl3dDrive,
|
||||
Scheduling,
|
||||
SchedulingView,
|
||||
ContectUs,
|
||||
LineBoard
|
||||
ContectUs
|
||||
},
|
||||
props:{
|
||||
isAllShow:{
|
||||
@ -181,9 +177,6 @@ export default {
|
||||
this.btnWidth = 0;
|
||||
}
|
||||
},
|
||||
showLineBoard() {
|
||||
this.$refs.lineBoard.doShow();
|
||||
},
|
||||
jumpjlmap3dmodel() {
|
||||
if (this.deviceif == false) {
|
||||
this.deviceif = true;
|
||||
|
@ -30,9 +30,9 @@
|
||||
<el-button type="danger" size="small" @click="handleQuitQuest">退出剧本</el-button>
|
||||
</template>
|
||||
<template v-else-if="!projectDevice">
|
||||
<el-button v-if="project !== 'srsandbox'" type="success" :disabled="isDisable" size="small" @click="selectBeginTime">{{ $t('display.demon.drivingByPlan') }}</el-button>
|
||||
<el-button v-if="project !== 'srsandbox' && $route.query.lineCode !== '16' " type="success" :disabled="isDisable" size="small" @click="selectBeginTime">{{ $t('display.demon.drivingByPlan') }}</el-button>
|
||||
<!-- isDisable&& -->
|
||||
<el-button v-if="isAdmin" v-loading="pauseLoading" :type="simulationPaused?'warning':'primary'" size="small" @click="startOrPause">{{ simulationPaused?'开始':'暂停' }}</el-button>
|
||||
<el-button v-if="isAdmin && $route.query.lineCode !== '16' " v-loading="pauseLoading" :type="simulationPaused?'warning':'primary'" size="small" @click="startOrPause">{{ simulationPaused?'开始':'暂停' }}</el-button>
|
||||
<el-button type="danger" size="small" @click="end">{{ $t('display.demon.initialize') }}</el-button>
|
||||
</template>
|
||||
</template>
|
||||
|
@ -12,15 +12,16 @@
|
||||
</el-select>
|
||||
<template v-if="!dataError">
|
||||
<el-button-group v-if="project !== 'bjd'">
|
||||
<el-button v-if="isLocalStation && $route.query.lineCode!='08'" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="$route.query.lineCode === '16'" size="small" @click="showLineBoard">占线板</el-button>
|
||||
<el-button v-if="isLocalStation && $route.query.lineCode!='08' && $route.query.lineCode!='16'" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="isScheduling && isDepot" size="small" type="primary" @click="runPlanEditShow">运行图编辑</el-button>
|
||||
<!-- 加载剧本 -->
|
||||
<el-button v-if="isDemon && !isScheduling && !isContest && !isDepoltSim" size="small" :disabled="viewDisabled" type="success" @click="viewRunQuest">{{ $t('display.schema.loadScript') }}</el-button>
|
||||
<el-button v-if="isDemon && !isScheduling && !isContest && !isDepoltSim && $route.query.lineCode!='16'" size="small" :disabled="viewDisabled" type="success" @click="viewRunQuest">{{ $t('display.schema.loadScript') }}</el-button>
|
||||
<!-- 运行图加载 -->
|
||||
<!-- notScript && -->
|
||||
<el-button v-if="running" size="small" :disabled="viewDisabled" @click="viewRunPlan">{{ $t('display.schema.previewRunDiagram') }}</el-button>
|
||||
<!-- notScript && -->
|
||||
<el-button v-if="!running" size="small" type="warning" @click="loadRunPlan">{{ $t('display.schema.loadRunDiagram') }}</el-button>
|
||||
<el-button v-if="!running && $route.query.lineCode!='16'" size="small" type="warning" @click="loadRunPlan">{{ $t('display.schema.loadRunDiagram') }}</el-button>
|
||||
</el-button-group>
|
||||
<el-button v-if="!isScheduling && project !== 'bjd'" size="small" :type="faultMode ? '':'primary' " @click="changeOperateMode()">{{ faultMode?'切换到普通模式[Tab]':'切换到故障模式[Tab]' }}</el-button>
|
||||
|
||||
@ -34,6 +35,7 @@
|
||||
<run-plan-view ref="runPlanView" :group="group" />
|
||||
<!-- 加载剧本列表弹窗 -->
|
||||
<add-quest ref="addQuest" @selectQuest="selectQuest" />
|
||||
<line-board ref="lineBoard" />
|
||||
<!-- <run-plan-edit v-if="isScheduling && isDepot" ref="runPlanEdit" /> -->
|
||||
</div>
|
||||
</template>
|
||||
@ -42,6 +44,7 @@ import SelectStation from './selectStation';
|
||||
import RunPlanLoad from './demon/runPlanLoad';
|
||||
import RunPlanView from './demon/runPlanView';
|
||||
import FaultChoose from './demon/faultChoose';
|
||||
import LineBoard from '../displayCity/lineBoard';
|
||||
import AddQuest from './demon/addQuest';
|
||||
import { OperateMode } from '@/scripts/ConstDic';
|
||||
import { getByGroupStationList } from '@/api/jmap/map';
|
||||
@ -62,7 +65,8 @@ export default {
|
||||
FaultChoose,
|
||||
AddQuest,
|
||||
// RunPlanEdit,
|
||||
SelectStation
|
||||
SelectStation,
|
||||
LineBoard
|
||||
},
|
||||
props: {
|
||||
offset: {
|
||||
@ -206,6 +210,9 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
showLineBoard() {
|
||||
this.$refs.lineBoard.doShow();
|
||||
},
|
||||
changeOperateMode() {
|
||||
this.faultMode = !this.faultMode;
|
||||
let mode = OperateMode.NORMAL;
|
||||
|
@ -173,7 +173,7 @@
|
||||
// this.mapInfo.id,
|
||||
deleteAssist( row.id).then(res=>{
|
||||
this.$message.success('删除指示灯关联信息成功');
|
||||
this.reloadData();
|
||||
this.reloadTable();
|
||||
this.$emit('refresh');
|
||||
}).catch(error=>{
|
||||
this.$messageBox('删除指示灯关联信息失败:' + error.meessage);
|
||||
|
Loading…
Reference in New Issue
Block a user