# Conflicts:
#	src/jmapNew/config/skinCode/ningbo_01.js
This commit is contained in:
lVAL 2021-02-20 17:03:45 +08:00
commit 17057cc014
16 changed files with 589 additions and 340 deletions

View File

@ -239,7 +239,9 @@ class SkinCode extends defaultStyle {
fontWeight:'normal', // 字体粗细
textPadding:[0, 0], // 字体边距
borderColor:'', // 字体边框颜色
textBorderWidth:0 // 字体边框宽度
textBorderWidth:0, // 字体边框宽度
isSpecialType:true, // 特雷兹特殊类型
noneModeColor:'#ff0' // 无模式时字体颜色
},
kmPostShow: false, // 公里标显示
@ -262,7 +264,7 @@ class SkinCode extends defaultStyle {
lampSpace: 60 // 灯间距
},
StationControl: {
disPlayNone: true, // 不显示
disPlayNone: true, // 不显示
text: {
distance: 12, // 灯和文字之间的距离
fontSize: 12, // 字体大小

View File

@ -528,6 +528,10 @@ class Signal extends Group {
this.sigBack.show();
this.sigBack.setStyle('fill', this.style.Signal.sigBack.fillColor);
}
if (this.style.Signal.lamp.blockFlash ) {
this.lamps[0].setBorderColor(this.style.Signal.lamp.borderColor);
this.lamps[0].setAnimationStart(this.style.Signal.lamp.blockColor);
}
}
reblock() {
this.sigPost.setHorColor(this.style.Signal.post.reblockHorColor);
@ -733,92 +737,92 @@ class Signal extends Group {
const path = window.location.href;
this.recover();
// 只响应前端自定义类型的状态变化
if (model._free) {
this.setAshShow()
} else {
/** 信号机进路按钮显示 */
/** 终端信号机按钮 */
if (model.isRouteActive) {
this.setLowButtonActive();
} else {
this.setLowButtonRecover();
}
model.isRouteSignal && this.setLowButtonShow();
// 只响应前端自定义类型的状态变化
if (model._free) {
this.setAshShow();
} else {
/** 信号机进路按钮显示 */
/** 终端信号机按钮 */
if (model.isRouteActive) {
this.setLowButtonActive();
} else {
this.setLowButtonRecover();
}
model.isRouteSignal && this.setLowButtonShow();
/** 设置灯的颜色 */
model.redOpen && !model.yellowOpen && !model.greenOpen && this.close(model.logicLight); // 信号关闭
model.greenOpen && !model.redOpen && !model.yellowOpen && this.openPositive(model.logicLight); // 信号正向开放
model.yellowOpen && !model.redOpen && !model.greenOpen && this.openLateral(model.logicLight); // 信号侧向开放
model.redOpen && model.yellowOpen && !model.greenOpen && this.guid(); // 引导信号显示
/** 设置灯的颜色 */
model.redOpen && !model.yellowOpen && !model.greenOpen && this.close(model.logicLight); // 信号关闭
model.greenOpen && !model.redOpen && !model.yellowOpen && this.openPositive(model.logicLight); // 信号正向开放
model.yellowOpen && !model.redOpen && !model.greenOpen && this.openLateral(model.logicLight); // 信号侧向开放
model.redOpen && model.yellowOpen && !model.greenOpen && this.guid(); // 引导信号显示
/** 信号机封锁 */ // 缺一个功能封锁
model.blockade && this.block();
model.reblockade && this.reblock();
model.remainTime && this.showRemainTime(model.remainTime);
if (!path.includes('/map/draw')) {
// 联锁自动进路通过
model.fleetMode && this.setAutoRouteOpen();
// 联锁自动触发
if (model.ciControl) {
this.setAutoTriggerOpen();
} else {
!model.atsControl && this.setArtificialRouteClose(); /** 进路交人工控或自动控 */
}
}
// 设置点灯类型 必须在最后设置不能放前面 logicLight 0 物理点灯 1 逻辑点灯
if (model.logicLight) {
this.logicalLight(); // 设置逻辑点灯
} else {
this.physicsLight(); // 设置物理点灯
}
if (model.isStartSignal) {
this.insideTriangle && this.insideTriangle.show();
this.lamps.forEach(item => { item.hide(); });
this.insideTriangle.setStyle({fill: this.style.Signal.insideTriangle.startSignalColor, stroke: this.style.Signal.insideTriangle.startSignalColor});
} else if (model.isTerminalSignal) {
this.sigPost && this.sigPost.setTerminalOptional();
}
if (model.isCiConfirm) {
this.setCiConfirm();
}
if (model.isRequestLock) {
this.sigBack && this.sigBack.show();
this.sigBack && this.sigBack.animateStyle(true)
.when(0, { fill: this.style.backgroundColor })
.when(1000, { fill: this.style.Signal.sigBack.fillColor })
.when(2000, { fill: this.style.backgroundColor })
.when(3000, { fill: this.style.Signal.sigBack.fillColor })
.start();
}
if (model.isRequestGuide) {
this.lamps && this.lamps[0] && this.lamps[0].setAnimationStart(this.style.Signal.lamp.yellowColor);
}
if (path.includes('/map/draw')) {
if (model.type == 'PASSING') {
this.lamps && this.lamps.length && this.lamps.forEach(elem => {
elem.setColor(this.style.Signal.lamp.greenColor);
});
} else {
this.lamps && this.lamps.length && this.lamps.forEach(elem => {
elem.setColor(this.style.Signal.lamp.redColor);
});
}
}
if ( model.level === 3 && this.style.Signal.post.mainSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.mainSignalVerColor);
} else if (model.level === 1 && this.style.Signal.post.closeSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.closeSignalVerColor);
} else if (model.level === 2 && this.style.Signal.post.guideSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.guideSignalVerColor);
}
// 信号机故障
model.fault && this.fault();
// 设置灰显
if (model.noStatus || model.level === 0) {
this.setAshShow();
}
}
/** 信号机封锁 */ // 缺一个功能封锁
model.blockade && this.block();
model.reblockade && this.reblock();
model.remainTime && this.showRemainTime(model.remainTime);
if (!path.includes('/map/draw')) {
// 联锁自动进路通过
model.fleetMode && this.setAutoRouteOpen();
// 联锁自动触发
if (model.ciControl) {
this.setAutoTriggerOpen();
} else {
!model.atsControl && this.setArtificialRouteClose(); /** 进路交人工控或自动控 */
}
}
// 设置点灯类型 必须在最后设置不能放前面 logicLight 0 物理点灯 1 逻辑点灯
if (model.logicLight) {
this.logicalLight(); // 设置逻辑点灯
} else {
this.physicsLight(); // 设置物理点灯
}
if (model.isStartSignal) {
this.insideTriangle && this.insideTriangle.show();
this.lamps.forEach(item => { item.hide(); });
this.insideTriangle.setStyle({fill: this.style.Signal.insideTriangle.startSignalColor, stroke: this.style.Signal.insideTriangle.startSignalColor});
} else if (model.isTerminalSignal) {
this.sigPost && this.sigPost.setTerminalOptional();
}
if (model.isCiConfirm) {
this.setCiConfirm();
}
if (model.isRequestLock) {
this.sigBack && this.sigBack.show();
this.sigBack && this.sigBack.animateStyle(true)
.when(0, { fill: this.style.backgroundColor })
.when(1000, { fill: this.style.Signal.sigBack.fillColor })
.when(2000, { fill: this.style.backgroundColor })
.when(3000, { fill: this.style.Signal.sigBack.fillColor })
.start();
}
if (model.isRequestGuide) {
this.lamps && this.lamps[0] && this.lamps[0].setAnimationStart(this.style.Signal.lamp.yellowColor);
}
if (path.includes('/map/draw')) {
if (model.type == 'PASSING') {
this.lamps && this.lamps.length && this.lamps.forEach(elem => {
elem.setColor(this.style.Signal.lamp.greenColor);
});
} else {
this.lamps && this.lamps.length && this.lamps.forEach(elem => {
elem.setColor(this.style.Signal.lamp.redColor);
});
}
}
if ( model.level === 3 && this.style.Signal.post.mainSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.mainSignalVerColor);
} else if (model.level === 1 && this.style.Signal.post.closeSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.closeSignalVerColor);
} else if (model.level === 2 && this.style.Signal.post.guideSignalVerColor && !model.fleetMode) {
this.sigPost.setVerColor(this.style.Signal.post.guideSignalVerColor);
}
// 信号机故障
model.fault && this.fault();
// 设置灰显
if (model.noStatus || model.level === 0) {
this.setAshShow();
}
}
}
getBoundingRect() {

View File

@ -386,7 +386,12 @@ export default class Station extends Group {
this.substationControl && this.substationControl.setColor(this.style.Station.StationControl.lamp.grayColor);
this.centerControl && this.centerControl.setColor(this.style.Station.StationControl.lamp.greenColor);
this.centerControl && this.centerControl.setTextColor(this.style.Station.StationControl.lamp.greenColor); // 文字颜色
this.stationText.setColor('#1fdc1f');
if (this.style.Station.stationText.isSpecialType) {
// simulationRoleList
} else {
this.stationText.setColor('#1fdc1f');
}
this.stationControlText && this.stationControlText.setStyle({text:'CC', textFill:this.style.Station.StationControl.text.centerControlColor});
//
//
@ -412,7 +417,11 @@ export default class Station extends Group {
// this.subheadText && this.subheadText.setStyle('textFill', '#fff');
// }
// }
this.stationText.setColor('#fff');
if (this.style.Station.stationText.isSpecialType) {
} else {
this.stationText.setColor('#fff');
}
}
handleEmergency() { // 紧急站控
@ -428,7 +437,11 @@ export default class Station extends Group {
// this.subheadText && this.subheadText.setStyle('textFill', '#fff');
// }
// }
this.stationText.setColor('#fff');
if (this.style.Station.stationText.isSpecialType) {
} else {
this.stationText.setColor('#fff');
}
}
handleInterlock() { // 联锁控 成都三号线
@ -449,6 +462,9 @@ export default class Station extends Group {
if (this.style.Station.stationText.noneModeFlash) {
this.stationText.setAnimateStyle(this.noneBeforeMode);
}
if (this.style.Station.stationText.isSpecialType) {
this.stationText.setColor(this.style.Station.stationText.noneModeColor);
}
}
recover() {
@ -463,7 +479,11 @@ export default class Station extends Group {
this.substationArrowsControl && this.substationArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
this.emergencyArrowsControl && this.emergencyArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
this.stationText && this.stationText.stopAnimate();
if (this.style.Station.stationText.isSpecialType) {
} else {
this.stationText && this.stationText.stopAnimate();
}
}
// 设置状态

View File

@ -122,10 +122,10 @@ class ESolidStand extends Group {
model.trainParking && this.setColor(style.StationStand.solidStand.stopColor);
// 紧急停车
model.emergencyClosed && this.setColor(style.StationStand.solidStand.spareColor);
// 系统扣车
// model.centerHoldTrain && this.setHoldTrain('System');
// 站台扣车
(model.centerHoldTrain || model.stationHoldTrain) && this.setHoldTrain('Station');
// 系统扣车
model.sysHoldTrain && this.setHoldTrain('System');
} else {
this.handlePassagerColor(model.num);
}

View File

@ -156,6 +156,7 @@ export default {
},
{
title: '区域选择',
operate: OperationEvent.Station.areaSelection.mbar,
click: this.selectedArea
},
{
@ -362,6 +363,7 @@ export default {
},
{
title: '区域选择',
operate: OperationEvent.Station.areaSelection.mbar,
click: this.selectedArea
},
{
@ -978,8 +980,8 @@ export default {
},
selectedArea(order) {
const operate = {
type: 'bar'
// operation: order.operation
type: 'bar',
operation: order.operation
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {

View File

@ -4,7 +4,7 @@
class="ningbo-01__systerm station-control"
:title="title"
:visible.sync="show"
width="600px"
width="650px"
:before-close="doClose"
:show-close="true"
:z-index="2000"
@ -14,27 +14,38 @@
<el-row>
<el-col :span="18">
<el-table :data="tableData" style="width: 100%" height="334px" size="mini">
<el-table-column prop="apply" label="申请">
<el-checkbox />
<el-table-column prop="apply" label="申请" width="50" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.apply" />
</template>
</el-table-column>
<el-table-column prop="release" label="释放">
<el-checkbox />
<el-table-column prop="release" label="释放" width="50" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.release" />
</template>
</el-table-column>
<el-table-column prop="distribution" label="强制分配">
<el-checkbox />
<el-table-column prop="distribution" label="强制分配" width="80" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.distribution" />
</template>
</el-table-column>
<el-table-column prop="name" label="车站名" />
<el-table-column prop="control" label="控制状态" />
<el-table-column prop="name" label="车站名" align="center" width="100" :show-overflow-tooltip="true" />
<el-table-column prop="control" label="控制状态" align="center" width="70">
<template slot-scope="scope">
<div>{{ getControlStatus(scope.row) }}</div>
</template>
</el-table-column>
<el-table-column prop="stationCode" label="" align="center" />
</el-table>
</el-col>
<el-col :span="6">
<el-button style="width: 125px;margin-left: 10px;">全部申请</el-button>
<el-button style="width: 125px;margin-top: 10px;">取消全部申请</el-button>
<el-button style="width: 125px;margin-top: 10px;">全部释放</el-button>
<el-button style="width: 125px;margin-top: 10px;">取消全部释放</el-button>
<el-button style="width: 125px;margin-top: 10px;">全部强制分配</el-button>
<el-button style="width: 125px;margin-top: 10px;">取消全部强制分配</el-button>
<el-button style="width: 125px;margin-top: 10px;">应用</el-button>
<el-button style="width: 125px;margin-left: 10px;" @click="applyAll">全部申请</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="cancelApplyAll">取消全部申请</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="releaseAll">全部释放</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="cancelReleaseAll">取消全部释放</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="distributionAll">全部强制分配</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="cancelDistributionAll">取消全部强制分配</el-button>
<el-button style="width: 125px;margin-top: 10px;" @click="commit">应用</el-button>
<el-button style="width: 125px;margin-top: 10px;">退出</el-button>
</el-col>
</el-row>
@ -44,6 +55,8 @@
<script>
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { mapGetters } from 'vuex';
export default {
name: 'AreaSelection',
@ -54,7 +67,9 @@ export default {
return {
show: false,
title: '区域选择',
tableData: []
tableData: [],
stationCentralizedMap: {},
memberId: ''
};
},
computed: {
@ -62,19 +77,106 @@ export default {
'stationList'
])
},
mounted() {
this.stationList.forEach(item => {
if (item.centralized) {
this.stationCentralizedMap[item.code] = item.code;
item.chargeStationCodeList.forEach(ele => {
this.stationCentralizedMap[ele] = item.code;
});
}
});
},
methods: {
doShow() {
this.tableData = [];
this.stationList.forEach(item => {
if (item.centralized) {
this.tableData.push(item);
this.$store.state.training.simulationUserList.forEach(item => {
if (item.type === 'STATION_SUPERVISOR' && item.userId == this.$store.state.user.id) {
this.memberId = item.memberId;
const centralizedStationCode = this.stationCentralizedMap[item.deviceCode];
const centralizedStation = this.$store.getters['map/getDeviceByCode'](centralizedStationCode);
this.$set(centralizedStation, 'apply', false);
this.$set(centralizedStation, 'release', false);
this.$set(centralizedStation, 'distribution', false);
this.tableData.push(centralizedStation);
centralizedStation.chargeStationCodeList.forEach(elem => {
const station = this.$store.getters['map/getDeviceByCode'](elem);
this.$set(station, 'apply', false);
this.$set(station, 'release', false);
this.$set(station, 'distribution', false);
this.tableData.push(station);
});
} else if (item.type === 'DISPATCHER' && item.userId == this.$store.state.user.id) {
this.memberId = item.memberId;
this.stationList.forEach(item => {
this.$set(item, 'apply', false);
this.$set(item, 'release', false);
this.$set(item, 'distribution', false);
this.tableData.push(item);
});
}
});
console.log(this.stationList, this.tableData);
this.show = true;
},
doClose() {
this.show = false;
},
getControlStatus(station) {
const newStation = this.$store.getters['map/getDeviceByCode'](station.code);
return newStation.controller === this.memberId ? '自控' : '未控';
},
applyAll() {
this.tableData.forEach(item => {
// this.$set(item, 'apply', true);
item.apply = true;
});
},
cancelApplyAll() {
this.tableData.forEach(item => {
item.apply = false;
});
},
releaseAll() {
this.tableData.forEach(item => {
item.release = true;
});
},
cancelReleaseAll() {
this.tableData.forEach(item => {
item.release = false;
});
},
distributionAll() {
this.tableData.forEach(item => {
item.distribution = true;
});
},
cancelDistributionAll() {
this.tableData.forEach(item => {
item.distribution = false;
});
},
commit() {
const paramsStation = [];
this.tableData.forEach(item => {
if (item.apply) {
paramsStation.push(item.code);
}
});
const operate = {
over: true,
operation: OperationEvent.Station.areaSelection.confirm.operation,
cmdType: CMD.Station.CMD_STATION_APPLY_CONTROL,
param: {
stationCodes: paramsStation
}
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
// this.doClose();
}
});
}
}
};

View File

@ -95,9 +95,9 @@
<interval-stop-number ref="intervalStopNumber" />
<allocate-time ref="allocateTime" />
<station-transfer ref="stationTransfer" />
<station-request ref="stationRequest" />
<station-devolution ref="stationDevolution" />
<station-reclaim ref="stationReclaim" />
<station-request ref="stationRequest" />
<station-devolution ref="stationDevolution" />
<station-reclaim ref="stationReclaim" />
<stand-detail ref="standDetail" />
<switch-command ref="switchCommand" />
<initialize-switch-block ref="initializeSwitchBlock" />
@ -203,10 +203,10 @@ export default {
StandDetain,
IntervalStopNumber,
AllocateTime,
StationTransfer,
StationRequest,
StationDevolution,
StationReclaim,
StationTransfer,
StationRequest,
StationDevolution,
StationReclaim,
StandDetail,
SwitchCommand,
InitializeSwitchBlock,
@ -356,7 +356,7 @@ export default {
{
title: '取消CBTC列车进路',
click: this.cancelCbtcRoute
},
}
// {
// title: 'VOBC',
// click: this.undeveloped
@ -429,33 +429,33 @@ export default {
children: [
{
title: '开放/关闭',
click: this.standOpenOrClose,
click: this.standOpenOrClose,
operate: OperationEvent.Command.commandNingBo3.line_stand_openOrClose
},
{
title: '设置/取消扣车',
click: this.setStandDetain,
operate: OperationEvent.Command.commandNingBo3.line_stand_holdOrNot
click: this.setStandDetain,
operate: OperationEvent.Command.commandNingBo3.line_stand_holdOrNot
},
{
title: '设置站间列车数量',
click: this.undeveloped,
operate: OperationEvent.Command.commandNingBo3.line_stand_trainNum
click: this.undeveloped,
operate: OperationEvent.Command.commandNingBo3.line_stand_trainNum
},
{
title: '分配停站时间',
click: this.setAllocateTime,
operate: OperationEvent.Command.commandNingBo3.line_stand_stopTime
click: this.setAllocateTime,
operate: OperationEvent.Command.commandNingBo3.line_stand_stopTime
},
{
title: '授权转移',
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_stand_transfer
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_stand_transfer
},
{
title: '显示',
click: this.showStandDetail,
operate: OperationEvent.Command.commandNingBo3.line_stand_detail
click: this.showStandDetail,
operate: OperationEvent.Command.commandNingBo3.line_stand_detail
}
]
},
@ -464,28 +464,28 @@ export default {
operate: OperationEvent.Command.commandNingBo3.line_switch,
children: [
{
title: '命令',
operate: OperationEvent.Command.commandNingBo3.line_switch_cmd,
title: '命令',
operate: OperationEvent.Command.commandNingBo3.line_switch_cmd,
click: this.setSwitchCommand
},
{
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_block,
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_block,
click: this.setBlockSwitch
},
{
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_unblock,
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_unblock,
click: this.setUnblockSwitch
},
{
title: '请求动岔/请求或授权/取消',
operate: OperationEvent.Command.commandNingBo3.line_switch_empower,
title: '请求动岔/请求或授权/取消',
operate: OperationEvent.Command.commandNingBo3.line_switch_empower,
click: this.setSwitchActive
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_switch_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_switch_detail,
click: this.showSwitchDetail
}
]
@ -496,38 +496,38 @@ export default {
children: [
{
title: '引导',
operate: OperationEvent.Command.commandNingBo3.line_signal_guide,
title: '引导',
operate: OperationEvent.Command.commandNingBo3.line_signal_guide,
click: this.setSignalGuide
},
{
title: '取消允许锁闭',
operate: OperationEvent.Command.commandNingBo3.line_signal_lockOrNot,
title: '取消允许锁闭',
operate: OperationEvent.Command.commandNingBo3.line_signal_lockOrNot,
click: this.setSignalCanBlock
},
{
title: '进路/命令',
operate: OperationEvent.Command.commandNingBo3.line_signal_cmd,
title: '进路/命令',
operate: OperationEvent.Command.commandNingBo3.line_signal_cmd,
click: this.setRouteCommand
},
{
title: '信号指示模式',
operate: OperationEvent.Command.commandNingBo3.line_signal_indicator,
title: '信号指示模式',
operate: OperationEvent.Command.commandNingBo3.line_signal_indicator,
click: this.setSignalModel
},
{
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_block,
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_block,
click: this.setSignalBlock
},
{
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_unblock,
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_unblock,
click: this.setSignalCancelBlock
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_signal_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_signal_detail,
click: this.showSignalDetail
}
]
@ -537,23 +537,23 @@ export default {
operate: OperationEvent.Command.commandNingBo3.line_section,
children: [
{
title: '开放',
operate: OperationEvent.Command.commandNingBo3.line_section_open,
title: '开放',
operate: OperationEvent.Command.commandNingBo3.line_section_open,
click: this.handleOpenSection
},
{
title: '关闭',
operate: OperationEvent.Command.commandNingBo3.line_section_close,
title: '关闭',
operate: OperationEvent.Command.commandNingBo3.line_section_close,
click: this.handleCloseSection
},
{
title: '临时限速',
operate: OperationEvent.Command.commandNingBo3.line_section_limitSpeed,
title: '临时限速',
operate: OperationEvent.Command.commandNingBo3.line_section_limitSpeed,
click: this.handleLimitSpeed
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_section_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_section_detail,
click: this.handleSectionShow
}
]
@ -727,6 +727,38 @@ export default {
}
]
},
{
title: '用户权限(U)',
operate: OperationEvent.Command.mBar.userManage,
children: [
{
title: '转移控制',
operate: OperationEvent.Command.commandNingBo3.line_user,
children: [
{
title: '请求区域控制权',
click: this.authorizeRequest,
operate: OperationEvent.Command.commandNingBo3.line_user_request
},
{
title: '授权转移',
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_user_transfer
},
{
title: '下放站控',
click: this.authorizeDevolution,
operate: OperationEvent.Command.commandNingBo3.line_user_devolution
},
{
title: '收回站控',
click: this.authorizeReclaim,
operate: OperationEvent.Command.commandNingBo3.line_user_reclaim
}
]
}
]
}
// {
// title: '(V)',
// operate: '',
@ -919,39 +951,39 @@ export default {
title: '线路(G)',
operate: OperationEvent.Command.commandNingBo3.line,
children: [
{
{
title: '站台',
operate: OperationEvent.Command.commandNingBo3.line_stand,
children: [
{
title: '开放/关闭',
click: this.standOpenOrClose,
click: this.standOpenOrClose,
operate: OperationEvent.Command.commandNingBo3.line_stand_openOrClose
},
{
title: '设置/取消扣车',
click: this.setStandDetain,
operate: OperationEvent.Command.commandNingBo3.line_stand_holdOrNot
click: this.setStandDetain,
operate: OperationEvent.Command.commandNingBo3.line_stand_holdOrNot
},
{
title: '设置站间列车数量',
click: this.undeveloped,
operate: OperationEvent.Command.commandNingBo3.line_stand_trainNum
click: this.undeveloped,
operate: OperationEvent.Command.commandNingBo3.line_stand_trainNum
},
{
title: '分配停站时间',
click: this.setAllocateTime,
operate: OperationEvent.Command.commandNingBo3.line_stand_stopTime
click: this.setAllocateTime,
operate: OperationEvent.Command.commandNingBo3.line_stand_stopTime
},
{
title: '授权转移',
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_stand_transfer
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_stand_transfer
},
{
title: '显示',
click: this.showStandDetail,
operate: OperationEvent.Command.commandNingBo3.line_stand_detail
click: this.showStandDetail,
operate: OperationEvent.Command.commandNingBo3.line_stand_detail
}
]
},
@ -960,99 +992,99 @@ export default {
operate: OperationEvent.Command.commandNingBo3.line_switch,
children: [
{
title: '命令',
operate: OperationEvent.Command.commandNingBo3.line_switch_cmd,
title: '命令',
operate: OperationEvent.Command.commandNingBo3.line_switch_cmd,
click: this.setSwitchCommand
},
{
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_block,
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_block,
click: this.setBlockSwitch
},
{
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_unblock,
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_switch_unblock,
click: this.setUnblockSwitch
},
{
title: '请求动岔/请求或授权/取消',
operate: OperationEvent.Command.commandNingBo3.line_switch_empower,
title: '请求动岔/请求或授权/取消',
operate: OperationEvent.Command.commandNingBo3.line_switch_empower,
click: this.setSwitchActive
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_switch_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_switch_detail,
click: this.showSwitchDetail
}
]
},
{
{
title: '信号机',
operate: OperationEvent.Command.commandNingBo3.line_signal,
children: [
{
title: '引导',
operate: OperationEvent.Command.commandNingBo3.line_signal_guide,
title: '引导',
operate: OperationEvent.Command.commandNingBo3.line_signal_guide,
click: this.setSignalGuide
},
{
title: '取消允许锁闭',
operate: OperationEvent.Command.commandNingBo3.line_signal_lockOrNot,
title: '取消允许锁闭',
operate: OperationEvent.Command.commandNingBo3.line_signal_lockOrNot,
click: this.setSignalCanBlock
},
{
title: '进路/命令',
operate: OperationEvent.Command.commandNingBo3.line_signal_cmd,
title: '进路/命令',
operate: OperationEvent.Command.commandNingBo3.line_signal_cmd,
click: this.setRouteCommand
},
{
title: '信号指示模式',
operate: OperationEvent.Command.commandNingBo3.line_signal_indicator,
title: '信号指示模式',
operate: OperationEvent.Command.commandNingBo3.line_signal_indicator,
click: this.setSignalModel
},
{
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_block,
title: '封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_block,
click: this.setSignalBlock
},
{
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_unblock,
title: '解除封锁',
operate: OperationEvent.Command.commandNingBo3.line_signal_unblock,
click: this.setSignalCancelBlock
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_signal_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_signal_detail,
click: this.showSignalDetail
}
]
},
{
{
title: '轨道',
operate: OperationEvent.Command.commandNingBo3.line_section,
children: [
{
title: '开放',
operate: OperationEvent.Command.commandNingBo3.line_section_open,
title: '开放',
operate: OperationEvent.Command.commandNingBo3.line_section_open,
click: this.handleOpenSection
},
{
title: '关闭',
operate: OperationEvent.Command.commandNingBo3.line_section_close,
title: '关闭',
operate: OperationEvent.Command.commandNingBo3.line_section_close,
click: this.handleCloseSection
},
{
title: '临时限速',
operate: OperationEvent.Command.commandNingBo3.line_section_limitSpeed,
title: '临时限速',
operate: OperationEvent.Command.commandNingBo3.line_section_limitSpeed,
click: this.handleLimitSpeed
},
{
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_section_detail,
title: '显示',
operate: OperationEvent.Command.commandNingBo3.line_section_detail,
click: this.handleSectionShow
}
]
},
},
{
title: '闭塞区段',
operate: '',
@ -1214,9 +1246,9 @@ export default {
click: this.adjustStrategy
}
]
},
{
title: '用户权限(U)',
},
{
title: '用户权限(U)',
operate: OperationEvent.Command.mBar.userManage,
children: [
{
@ -1225,28 +1257,28 @@ export default {
children: [
{
title: '请求区域控制权',
click: this.authorizeRequest,
operate: OperationEvent.Command.commandNingBo3.line_user_request
click: this.authorizeRequest,
operate: OperationEvent.Command.commandNingBo3.line_user_request
},
{
title: '授权转移',
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_user_transfer
},
{
click: this.authorizeTransfer,
operate: OperationEvent.Command.commandNingBo3.line_user_transfer
},
{
title: '下放站控',
click: this.authorizeDevolution,
operate: OperationEvent.Command.commandNingBo3.line_user_devolution
},
{
click: this.authorizeDevolution,
operate: OperationEvent.Command.commandNingBo3.line_user_devolution
},
{
title: '收回站控',
click: this.authorizeReclaim,
operate: OperationEvent.Command.commandNingBo3.line_user_reclaim
click: this.authorizeReclaim,
operate: OperationEvent.Command.commandNingBo3.line_user_reclaim
}
]
}
]
}
}
]
}
// {
// title: '(V)',
// operate: '',
@ -1317,7 +1349,7 @@ export default {
return true;
},
initMenu(menu) {
const type = State2SimulationMap[this.$store.state.training.prdType];
const type = State2SimulationMap[this.$store.state.training.prdType];
this.menu = MenuContextHandler.menuBarConvert(this.menuNormal[type], this.$store.state.training.operatemode);
this.clickEvent();
this.closeMenu(true);
@ -1357,7 +1389,7 @@ export default {
hookClick(item, event) {
this.$store.dispatch('menuOperation/setPopMenu', { position: null, menu: null });
if (item && typeof item.click == 'function') {
item.click(item.operate||{});
item.click(item.operate || {});
}
},
selectedClassA(item, index) {
@ -1538,10 +1570,10 @@ export default {
this.$refs.stationTransfer.doShow();
}
});
},
},
//
authorizeRequest(item) {
const operate = {
const operate = {
type: 'bar',
operation: item.operation
};
@ -1552,10 +1584,10 @@ export default {
this.$refs.stationRequest.doShow();
}
});
},
//
authorizeDevolution(item) {
const operate = {
},
//
authorizeDevolution(item) {
const operate = {
type: 'bar',
operation: item.operation
};
@ -1566,10 +1598,10 @@ export default {
this.$refs.stationDevolution.doShow();
}
});
},
//
authorizeReclaim(item) {
const operate = {
},
//
authorizeReclaim(item) {
const operate = {
type: 'bar',
operation: item.operation
};
@ -1580,7 +1612,7 @@ export default {
this.$refs.stationReclaim.doShow();
}
});
},
},
showStandDetail(item) {
const operate = {
type: 'bar',
@ -1632,8 +1664,8 @@ export default {
if (valid) {
this.closeMenu(true);
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
// this.$refs.initializeSwitchBlock.doShow(operate);
this.$refs.switchBlock.doShow(operate);
// this.$refs.initializeSwitchBlock.doShow(operate);
this.$refs.switchBlock.doShow(operate);
}
});
},

View File

@ -2,7 +2,7 @@
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="600px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-col :span="16">
<el-tabs v-model="activeName" type="border-card">
<el-tabs v-model="activeName" type="border-card" @tab-click="changeTabs">
<el-tab-pane label="站台" name="first">
<el-table
:id="domIdChoose"
@ -45,10 +45,10 @@
</el-row>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" :disabled="!selected" @click="commit(true)">确定(O)</el-button>
<el-button :id="domIdConfirm" type="primary" :loading="loading" :disabled="!((selected.code&&activeName!='second')||activeName=='second')" @click="commit(true)">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdApply" :loading="loading" :disabled="!selected" @click="commit(false)">应用(A)</el-button>
<el-button :id="domIdApply" :loading="loading" :disabled="!((selected.code&&activeName!='second')||activeName=='second')" @click="commit(false)">应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdClose" @click="cancel">关闭(C)</el-button>
@ -92,6 +92,7 @@ export default {
selected() {
return this.$store.state.menuOperation.selected;
},
domIdChoose() {
return this.dialogShow ? OperationEvent.Command.common.choose.domId : '';
},
@ -131,7 +132,7 @@ export default {
},
doShow(data) {
if (data.active == 'second') {
this.status = true;
this.judgeStatus();
}
this.activeName = data.active;
//
@ -141,6 +142,23 @@ export default {
this.$store.dispatch('training/emitTipFresh');
});
},
changeTabs() {
if (this.activeName == 'second') {
this.judgeStatus();
} else {
this.status = true;
}
},
judgeStatus() {
this.status = false;
this.stationStandList.forEach(element => {
const stand = this.$store.getters['map/getDeviceByCode'](element.code);
if (stand.sysHoldTrain) {
this.status = this.status || true;
}
});
this.status = !this.status;
},
doClose() {
this.loading = false;
this.dialogShow = false;
@ -148,20 +166,30 @@ export default {
this.$store.dispatch('training/emitTipFresh');
},
commit(isClose = false) {
const step = {
over: true,
cmdType:this.status ? CMD.Stand.CMD_STAND_SET_HOLD_TRAIN : CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN,
operation: isClose ? OperationEvent.Command.common.confirm.operation : OperationEvent.Command.common.apply.operation,
param: {standCode: this.selected.code}
};
let step = {};
if (this.activeName == 'first') {
step = {
over: true,
cmdType:this.status ? CMD.Stand.CMD_STAND_SET_HOLD_TRAIN : CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN,
operation: isClose ? OperationEvent.Command.common.confirm.operation : OperationEvent.Command.common.apply.operation,
param: {standCode: this.selected.code}
};
} else {
step = {
over: true,
cmdType:this.status ? CMD.Stand.CMD_STAND_SYS_HOLD_TRAIN : CMD.Stand.CMD_STAND_SYS_CANCEL_HOLD_TRAIN,
operation: isClose ? OperationEvent.Command.common.confirm.operation : OperationEvent.Command.common.apply.operation
};
}
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
if (isClose) {
this.$store.dispatch('menuOperation/setSelected', {device: {}});
}
isClose && this.doClose();
}
}).catch((error) => {
console.log(error);
}).catch(() => {
isClose && this.doClose();
this.$refs.noticeInfo.doShow();
});

View File

@ -12,19 +12,19 @@
:close-on-click-modal="false"
>
<el-table :id="domIdChoose" ref="table" :data="centralizedStaionList" style="width: 100%;" height="320px" highlight-current-row @current-change="handleCurrentChange">
<el-table-column prop="name" label="控制区域" />
<el-table-column label="用户Id" />
<el-table-column label="授权范围" />
</el-table>
<el-checkbox v-model="allChecked" :disabled="true" >所有站台(F)</el-checkbox>
<el-table :id="domIdChoose" ref="table" :data="centralizedStaionList" style="width: 100%;" height="320px" highlight-current-row @current-change="handleCurrentChange">
<el-table-column prop="name" label="控制区域" />
<el-table-column label="用户Id" />
<el-table-column label="授权范围" />
</el-table>
<el-checkbox v-model="allChecked" :disabled="true">所有站台(F)</el-checkbox>
<div class="message" style="color:#ff0000;font-size:14px;margin-left:10px">{{ message }}</div>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit(true)">确定(O)</el-button>
<el-button :id="domIdConfirm" type="primary" :loading="loading" :disabled="status==''" @click="commit(true)">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdApply" @click="commit(false)">应用(A)</el-button>
<el-button :id="domIdApply" :disabled="status==''" @click="commit(false)">应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdClose" @click="cancel">关闭(C)</el-button>
@ -46,15 +46,15 @@ import CMD from '@/scripts/cmdPlugin/CommandEnum';
export default {
name: 'StationControl',
components: {
NoticeInfo
NoticeInfo
},
data() {
return {
status: true,
status: '',
operate: null,
loading: false,
dialogShow: false,
allChecked: false,
allChecked: false,
station:{},
message:''
};
@ -107,26 +107,31 @@ export default {
'selected': function(val) {
if (val) {
const sationEle = this.$store.getters['map/getDeviceByCode'](val.code);
if (this.prdType == '02') {
this.status = sationEle && sationEle.controlMode != 'Center';
} else {
this.status = sationEle && sationEle.controlMode == 'Center';
if (this.prdType == '01' && sationEle && sationEle.controlMode == 'Center') {
this.status = 'Center';
} else if (this.prdType == '02' && sationEle && sationEle.controlMode != 'Center') {
this.status = 'Local';
}
// if (this.prdType == '02') {
//
// } else {
// this.status = sationEle && sationEle.controlMode == 'Center';
// }
}
}
},
methods: {
doShow() {
this.message = '';
this.dialogShow = true;
this.$nextTick(e => {
this.$refs.table.setCurrentRow();
this.$store.dispatch('training/emitTipFresh');
})
this.dialogShow = true;
this.$nextTick(e => {
this.$refs.table.setCurrentRow();
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.dialogShow = false;
this.$refs.table.setCurrentRow();
this.dialogShow = false;
this.$refs.table.setCurrentRow();
this.$store.dispatch('training/emitTipFresh');
this.$store.dispatch('socket/shiftMsgQueue');
},
@ -160,21 +165,23 @@ export default {
});
},
commit(isClose = true) {
debugger;
const val = this.selected || {};
const steps = {
operation: isClose ? OperationEvent.Command.common.confirm.operation : OperationEvent.Command.common.apply.operation,
over: true,
param: {stationCode:val.code}
param: {stationCodes:[val.code]}
};
steps.cmdType = this.status ? CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL : CMD.ControlConvertMenu.CMD_CM_SURRENDER_CONTROL;
// steps.cmdType = this.status ? CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL : CMD.ControlConvertMenu.CMD_CM_SURRENDER_CONTROL;
steps.cmdType = this.status == 'Center' ? CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL : CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL;
this.$store.dispatch('training/nextNew', steps).then(({ valid }) => {
if (valid) {
isClose && this.doClose();
this.$emit('commandSuccess', val.code);
}
}).catch((error) => {
}).catch(() => {
isClose && this.doClose();
this.$refs.noticeInfo.doShow();
});

View File

@ -161,6 +161,12 @@ export default {
CMD_STAND_SET_HOLD_TRAIN: {value:'Stand_Set_Hold_Train', label: '设置扣车'},
/** 取消扣车 */
CMD_STAND_CANCEL_HOLD_TRAIN: {value:'Stand_Cancel_Hold_Train', label: '取消扣车'},
/** 设置系统扣车 */
CMD_STAND_SYS_HOLD_TRAIN: {value:'Stand_Sys_Hold_Train', label: '设置系统扣车'},
/** 取消系统扣车 */
CMD_STAND_SYS_CANCEL_HOLD_TRAIN: {value:'Stand_Cancel_Sys_Hold_Train', label: '取消系统扣车'},
/** 批量扣车 */
CMD_STAND_SET_HOLD_TRAIN_ALL: {value:'Stand_Set_Hold_Train_Batch', label: '批量扣车'},
/** 批量取消扣车 */
@ -223,7 +229,17 @@ export default {
/** 全站取消自动通过 */
CMD_STATION_CANCEL_CI_AUTO: {value: 'Station_Cancel_CI_Auto', label: '全站取消自动通过'},
/** 设置/取消强制点灯 */
CMD_STATION_SET_OR_CANCEL_FORCE_PHYSICAL_SIGNAL: {value: 'Station_Set_Or_Cancel_Force_Physical_Signal', label: '设置/取消强制点灯'}
CMD_STATION_SET_OR_CANCEL_FORCE_PHYSICAL_SIGNAL: {value: 'Station_Set_Or_Cancel_Force_Physical_Signal', label: '设置/取消强制点灯'},
/** 区域选择(请求区域控制权【泰雷兹】) */
CMD_STATION_CONTROL_APPLY: {value: 'Station_Control_Apply', label: '请求区域控制权'},
/** 授权转移 (【泰雷兹】) */
CMD_STATION_CONTROL_TRANSFER: {value: 'Station_Control_Transfer', label: '授权转移'},
/** 下放站控 (【泰雷兹】) */
CMD_STATION_CONTROL_DEVOLVE: {value: 'Station_Control_Devolve', label: '下放站控'},
/** 收回站控 (【泰雷兹】) */
CMD_STATION_CONTROL_REVOKE: {value: 'Station_Control_Revoke', label: '收回站控'},
/** 计轴预复位 */
CMD_STATION_PRE_RESET : {value: 'Station_Pre_Reset', label: '计轴预复位'}
},
// 列车

View File

@ -65,11 +65,11 @@ class Handler {
}
getCommand(operation) {
let command = null;
let command = null;
if (operation.cmdType) {
const cmdType = operation.cmdType;
const wholeParam = this.getWholeParam();
command = CommandHandler.getCommand(cmdType, wholeParam);
command = CommandHandler.getCommand(cmdType, wholeParam);
if (command && command.isError) {
this.operations.pop();
command = null;
@ -88,7 +88,7 @@ class Handler {
execute(cmdType, wholeParam) {
return new Promise((resolve, reject) => {
const command = CommandHandler.getCommand(cmdType, wholeParam);
const command = CommandHandler.getCommand(cmdType, wholeParam);
if (command.isError) {
reject(command);
} else {
@ -109,13 +109,13 @@ class Handler {
this.afterValid(operation, valid).then(()=>{
rtn.valid = valid;
if (operation.cmdType && valid) {
const command = this.getCommand(operation);
const command = this.getCommand(operation);
if (command) {
CommandHandler.execute(command.id, command.get()).then(response => {
rtn.response = response;
resolve(rtn);
}).catch(error => {
console.error(error)
console.error(error);
reject(error);
});
} else {

View File

@ -2488,6 +2488,25 @@ export const OperationEvent = {
operation: '6152',
domId: '_Tips-Station-stationCancelCIAuto-Confirm'
}
},
// 区域选择 申请控制权
areaSelection: {
menu: {
operation: '616',
domId: '_Tips-Station-areaSelection-Menu'
},
mbar: {
operation: '6161',
domId: '_Tips-Station-areaSelection-Mbar'
},
choose: {
operation: '6162',
domId: '_Tips-Station-areaSelection-Choose'
},
confirm: {
operation: '6163',
domId: '_Tips-Station-areaSelection-Confirm'
}
}
},

View File

@ -59,7 +59,12 @@ export default {
let list = [];
const member = this.$store.state.training.memberData[val];
const station = this.$store.getters['map/getDeviceByCode'](member.deviceCode);
if (station) {
const lineCode = this.$store.getters['map/lineCode'];
if ((lineCode === '02' || lineCode === '05') && station) {
this.showStation = station.code;
const showStationCode = this.stationCentralizedMap[station.code];
this.setCenter(showStationCode);
} else if (station) {
this.showStation = station.code;
const showStationCode = this.stationCentralizedMap[station.code];
nameList.forEach(item => {

View File

@ -155,11 +155,6 @@ export default {
$route() {
this.mapViewLoaded(true);
},
'$store.state.training.prdType': function (val) {
if (val) {
this.changePrdType(val);
}
},
'$store.state.map.showCentralizedStationNum': function (val) {
if (this.$store.state.map.showCentralizedStationCode) {
this.setShowStation(this.$store.state.map.showCentralizedStationCode);
@ -481,25 +476,6 @@ export default {
};
this.$store.dispatch('map/setMousemove');
},
//
changePrdType(val) {
const nameList = Object.keys(this.$store.state.map.map || {});
let list = []; let showMode = '';
nameList.forEach(item => {
if (item !== 'skinVO') {
const data = this.$store.state.map.map[item];
if (data && data.constructor === Array) {
list = [...list, ...data];
}
}
});
if (val === '01') {
showMode = '03';
} else if (val === '02') {
showMode = '02';
}
this.$jlmap.updatePrdType(list, val, showMode);
},
//
setShowMode(showMode) {
if (this.showMode !== showMode) {
@ -518,21 +494,26 @@ export default {
EventBus.$emit('select_DrawType', showMode);
},
setShowStation(stationCode, setCenter) {
const nameList = Object.keys(this.$store.state.map.map);
let list = [];
nameList.forEach(item => {
if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) {
if (item === 'trainList') {
this.$store.state.map.map[item].forEach(elem => {
elem && list.push(elem);
});
} else {
list = [...list, ...this.$store.state.map.map[item]];
const lineCode = this.$store.getters['map/lineCode'];
if (lineCode === '02' || lineCode === '05') {
!setCenter && this.setCenter(stationCode);
} else {
const nameList = Object.keys(this.$store.state.map.map);
let list = [];
nameList.forEach(item => {
if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) {
if (item === 'trainList') {
this.$store.state.map.map[item].forEach(elem => {
elem && list.push(elem);
});
} else {
list = [...list, ...this.$store.state.map.map[item]];
}
}
}
});
this.$jlmap.updateShowStation(list, stationCode);
!setCenter && this.setCenter(stationCode);
});
this.$jlmap.updateShowStation(list, stationCode);
!setCenter && this.setCenter(stationCode);
}
},
setOffset(data, num, sum, obj) {
this.$jlmap.switchScreen(data, num, sum, obj);

View File

@ -370,6 +370,7 @@ export default {
this.$store.dispatch('training/setRoles', 'DISPATCHER');
this.hideIbp();
this.drivingShow = false;
this.changePrdType('02');
this.mapViewLoadedOver && this.setShowStation('');
this.jl3dmaintainershow = false;
break;
@ -378,6 +379,7 @@ export default {
this.$store.dispatch('training/setRoles', 'STATION_SUPERVISOR');
this.$refs.menuSchema.chiShowStation = deviceCode;
this.showStation = deviceCode;
this.changePrdType('01');
this.mapViewLoadedOver && this.switchStationMode(deviceCode);
this.jl3dmaintainershow = false;
this.drivingShow = false;
@ -527,17 +529,46 @@ export default {
this.showStation = this.centralizedStationMap[stationCode];
this.setShowStation(this.showStation);
},
setShowStation(stationCode) {
const showStation = this.centralizedStationMap[stationCode];
const nameList = Object.keys(this.$store.state.map.map);
let list = [];
changePrdType(val) {
const nameList = Object.keys(this.$store.state.map.map || {});
let list = []; let showMode = '';
nameList.forEach(item => {
if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) {
list = [...list, ...this.$store.state.map.map[item]];
if (item !== 'skinVO') {
const data = this.$store.state.map.map[item];
if (data && data.constructor === Array) {
list = [...list, ...data];
}
}
});
this.$jlmap.updateShowStation(list, showStation);
this.$jlmap.setCenter(showStation);
if (val === '01') {
showMode = '03';
} else if (val === '02') {
showMode = '02';
}
this.$jlmap.updatePrdType(list, val, showMode);
},
setShowStation(stationCode) {
const showStation = this.centralizedStationMap[stationCode];
const lineCode = this.$store.getters['map/lineCode'];
if (lineCode === '02' || lineCode === '05') {
this.$jlmap.setCenter(showStation);
} else {
const nameList = Object.keys(this.$store.state.map.map);
let list = [];
nameList.forEach(item => {
if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) {
if (item === 'trainList') {
this.$store.state.map.map[item].forEach(elem => {
elem && list.push(elem);
});
} else {
list = [...list, ...this.$store.state.map.map[item]];
}
}
});
this.$jlmap.updateShowStation(list, showStation);
this.$jlmap.setCenter(showStation);
}
},
setStationList(map) {
this.stationList = [];

View File

@ -64,9 +64,9 @@ export default {
formModel: {
code: '',
name: '',
length: 0, // --
weight:1, // --
numberOfCars:1 //
length: 120, // --
weight:230, // --
numberOfCars:6//
// safeDistance: '',
// maxSafeDistance: '',
// averageVelocity: 0,