Merge remote-tracking branch 'origin/test'
This commit is contained in:
commit
01d3c25c4f
@ -19,4 +19,3 @@ VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
|
||||
# Detail: https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/babel-preset-app/index.js
|
||||
|
||||
VUE_CLI_BABEL_TRANSPILE_MODULES = true
|
||||
VUE_APP_SOURCE_MAP = true
|
||||
|
@ -5,4 +5,3 @@ NODE_ENV = 'production'
|
||||
VUE_APP_BASE_API = 'https://api.joylink.club/jlcloud'
|
||||
VUE_APP_VOICE_API = 'https://oss.joylink.club/oss/joylink'
|
||||
VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
|
||||
VUE_APP_SOURCE_MAP = false
|
||||
|
@ -5,4 +5,3 @@ NODE_ENV = 'test'
|
||||
VUE_APP_BASE_API = 'https://test.joylink.club/jlcloud'
|
||||
VUE_APP_VOICE_API = 'https://oss.joylink.club/oss/joylink'
|
||||
VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
|
||||
VUE_APP_SOURCE_MAP = false
|
||||
|
@ -92,19 +92,25 @@ export function StationStandList() {
|
||||
// console.log(jlmap3ddata);
|
||||
let jlmapstationdata = jlmapdata.stationList;
|
||||
let jlmapstanddata = jlmapdata.stationStandList;
|
||||
//
|
||||
// console.log(jlmapstationdata);
|
||||
//
|
||||
// console.log(standsdata);
|
||||
// console.log(jlmapstationdata);
|
||||
for(let i=0;i<jlmapstationdata.length;i++){
|
||||
if(jlmapstationdata[i].visible == false || jlmapstationdata[i].depot == true){
|
||||
jlmapstationdata.splice(i,1);
|
||||
i--;
|
||||
}else{
|
||||
// console.log(jlmapstationdata[i]);
|
||||
// console.log(standsdata[i]);
|
||||
standsdata[i].code = jlmapstationdata[i].code;
|
||||
standsdata[i].name = jlmapstationdata[i].name;
|
||||
}
|
||||
}
|
||||
console.log(otherStation);
|
||||
// console.log(otherStation);
|
||||
// console.log(standsdata);
|
||||
console.log(assetloader.modellist);
|
||||
// console.log(assetloader.modellist);
|
||||
let stations = jlmap3ddata.stationstandlist.list;
|
||||
let num;
|
||||
let num2;
|
||||
@ -150,6 +156,7 @@ export function StationStandList() {
|
||||
section : jlmapstanddata[j].standTrackCode,
|
||||
inside : jlmapstanddata[j].inside,
|
||||
};
|
||||
|
||||
stands.push(changestand);
|
||||
}
|
||||
}
|
||||
|
@ -71,7 +71,6 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
let standsdata = JSON.parse(netdata.stands);
|
||||
let psddata = data.psdList;
|
||||
|
||||
if(standsdata[0].inside == undefined){
|
||||
for(let i=0;i<standsdata.length;i++){
|
||||
for(let j=0;j<mapdata.stationStandList.length;j++){
|
||||
if(standsdata[i].code == mapdata.stationStandList[j].stationCode){
|
||||
@ -80,7 +79,7 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,0,JSON.parse(netdata.assets).others);
|
||||
|
||||
|
@ -66,17 +66,16 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
|
||||
let signaldata = JSON.parse(netdata.signals);
|
||||
let standsdata = JSON.parse(netdata.stands);
|
||||
let psddata = mapdata.psdList;
|
||||
console.log(mapdata);
|
||||
if(standsdata[0].inside == undefined){
|
||||
|
||||
for(let i=0;i<standsdata.length;i++){
|
||||
for(let j=0;j<mapdata.stationStandList.length;j++){
|
||||
if(standsdata[i].code == mapdata.stationStandList[j].stationCode){
|
||||
|
||||
standsdata[i].inside = mapdata.stationStandList[j].inside;
|
||||
j = mapdata.stationStandList.length;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,1.3,JSON.parse(netdata.assets).others);
|
||||
// assetloader.setmodellistnew(netdata.assets);
|
||||
|
||||
|
@ -204,7 +204,6 @@ export function StationStandListN() {
|
||||
|
||||
let newstationstand = new StationStandModel(standsdata[i]);
|
||||
|
||||
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.type = "station";
|
||||
@ -372,7 +371,7 @@ export function StationStandListN() {
|
||||
let textmaterial = new THREE.MeshBasicMaterial( { side: THREE.DoubleSide,map:textt ,transparent: true} );
|
||||
let textplane = new THREE.Mesh( textgeometry, textmaterial );
|
||||
textplane.name = standsdata[i].code;
|
||||
console.log("sss");
|
||||
|
||||
textplane.position.y = 70;
|
||||
textplane.rotation.x = Math.PI/2;
|
||||
textplane.position.z = 80;
|
||||
|
@ -418,11 +418,16 @@ class Jlmap {
|
||||
});
|
||||
}
|
||||
}
|
||||
updatePrdType(val, list) {
|
||||
updatePrdType(list, val, showMode) {
|
||||
this.showConfig.prdType = val;
|
||||
this.showConfig.showMode = showMode;
|
||||
(list || []).forEach(item => {
|
||||
this.hookHandle(item, this.showConfig);
|
||||
this.$painter.update(item);
|
||||
const code = item.code;
|
||||
const type = item._type;
|
||||
const oDevice = this.mapDevice[code] || deviceFactory(type, item, this.showConfig);
|
||||
this.hookHandle(oDevice, this.showConfig);
|
||||
this.$painter.update(oDevice);
|
||||
this.$painter.updateShowMode(oDevice);
|
||||
});
|
||||
}
|
||||
update(list) {
|
||||
|
@ -1,5 +1,4 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import Polygon from 'zrender/src/graphic/shape/Polygon';
|
||||
|
||||
export default class Arrow extends Group {
|
||||
@ -12,14 +11,10 @@ export default class Arrow extends Group {
|
||||
this.model = model;
|
||||
// this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, model.showConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -7,7 +7,6 @@ import Text from 'zrender/src/graphic/Text';
|
||||
import Rect from 'zrender/src/graphic/shape/Rect';
|
||||
import EMouse from './EMouse';
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class AutoTurnBack extends Group {
|
||||
constructor(model, style) {
|
||||
@ -19,15 +18,11 @@ export default class AutoTurnBack extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, style.AutoTurnBack.visibleConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -6,7 +6,6 @@ import Arc from 'zrender/src/graphic/shape/Arc';
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
import EMouse from './EMouse';
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class AutomacticRoute extends Group {
|
||||
constructor(model, style) {
|
||||
@ -18,15 +17,11 @@ export default class AutomacticRoute extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (style.AutomaticRoute || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -6,7 +6,6 @@ import Arc from 'zrender/src/graphic/shape/Arc';
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
import EMouse from './EMouse';
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class AxleReset extends Group {
|
||||
constructor(model, style) {
|
||||
@ -18,15 +17,11 @@ export default class AxleReset extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (style.AxleReset || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -1,6 +1,5 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import Polygon from 'zrender/src/graphic/shape/Polygon';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
|
||||
export default class DirectionRod extends Group {
|
||||
@ -13,15 +12,11 @@ export default class DirectionRod extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (style.DirectionRod || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
create() {
|
||||
const model = this.model;
|
||||
const style = this.style;
|
||||
|
@ -3,7 +3,6 @@
|
||||
*/
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import Rect from 'zrender/src/graphic/shape/Rect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class FloodGate extends Group {
|
||||
constructor(model, style) {
|
||||
@ -16,15 +15,11 @@ export default class FloodGate extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (style.FloodGate || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
this.floodGate = new Rect({
|
||||
|
@ -6,7 +6,6 @@ import Arc from 'zrender/src/graphic/shape/Arc';
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
import EMouse from './EMouse';
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class GuideLock extends Group {
|
||||
constructor(model, style) {
|
||||
@ -18,15 +17,11 @@ export default class GuideLock extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (style.GuideLock || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -1,5 +1,4 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import Polyline from 'zrender/src/graphic/shape/Polyline';
|
||||
|
||||
export default class Line2 extends Group {
|
||||
@ -12,14 +11,10 @@ export default class Line2 extends Group {
|
||||
this.model = model;
|
||||
this.style = style.Line;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, model.showConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -1,6 +1,5 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import Rect from 'zrender/src/graphic/shape/Rect';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class OutFrame extends Group {
|
||||
constructor(model, style) {
|
||||
@ -12,14 +11,10 @@ export default class OutFrame extends Group {
|
||||
this.zlevel = model.zlevel;
|
||||
this.isShowShape = true;
|
||||
this.z = 0;
|
||||
if (isShowThePrdType(model.prdType, model.showConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -1,5 +1,4 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
// import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import ETextName from '../element/ETextName'; // 名称文字 (共有)
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
|
||||
|
@ -2,7 +2,6 @@ import Polyline from 'zrender/src/graphic/shape/Polyline';
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import JTriangle from '../../utils/JTriangle';
|
||||
import ESeparator from './ESeparator';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
|
||||
export default class Line2 extends Group {
|
||||
constructor(model, style) {
|
||||
@ -14,15 +13,11 @@ export default class Line2 extends Group {
|
||||
this.model = model;
|
||||
this.style = style;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, model.showConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createTerminal();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -1,7 +1,6 @@
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import EControl from '../element/EControl';
|
||||
import EMouse from './EMouse';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import deviceType from '../../constant/deviceType';
|
||||
import ELampFilament from './ELampFilament';
|
||||
import EControlSwitch from './EControlSwitch';
|
||||
@ -23,16 +22,12 @@ export default class SaidLamp extends Group {
|
||||
this.deviceStyle = style[model._type];
|
||||
if (this.deviceStyle) {
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, (this.deviceStyle || {}).displayCondition) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.createMouseEvent();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
const model = this.model;
|
||||
|
@ -12,7 +12,6 @@ import Group from 'zrender/src/container/Group';
|
||||
import EHighlight from '../element/EHighlight';
|
||||
import EVirtualSignal from './EVirtualSignal';
|
||||
import ELowButton from './ELowButton';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import Rect from 'zrender/src/graphic/shape/Rect';
|
||||
import Polygon from 'zrender/src/graphic/shape/Polygon';
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
@ -49,9 +48,7 @@ class Signal extends Group {
|
||||
this.createMouseEvent();
|
||||
this.checkIsDrawMap();
|
||||
this.transformRotation(this);
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
this.setState(model);
|
||||
// this.checkIsDrawMap();
|
||||
}
|
||||
@ -737,7 +734,6 @@ class Signal extends Group {
|
||||
this.recover();
|
||||
|
||||
/** 信号机进路按钮显示 */
|
||||
if (isShowThePrdType(model.prdType, '03') && this.style.Signal.lowButton.display) {
|
||||
/** 终端信号机按钮 */
|
||||
if (model.isRouteActive) {
|
||||
this.setLowButtonActive();
|
||||
@ -745,7 +741,6 @@ class Signal extends Group {
|
||||
this.setLowButtonRecover();
|
||||
}
|
||||
model.isRouteSignal && this.setLowButtonShow();
|
||||
}
|
||||
|
||||
/** 设置灯的颜色 */
|
||||
model.redOpen && !model.yellowOpen && !model.greenOpen && this.close(model.logicLight); // 信号关闭
|
||||
|
@ -461,11 +461,27 @@ export default class Station extends Group {
|
||||
|
||||
getShapeTipPoint(opts) {
|
||||
let rect;
|
||||
if (opts.subDeviceType === 'button') {
|
||||
switch(opts.subDeviceType) {
|
||||
case 'button':
|
||||
rect = this.centerControlButton.getArcBoundingRect();
|
||||
} else {
|
||||
break;
|
||||
case 'center':
|
||||
rect = this.centerControl.getArcBoundingRect();
|
||||
break;
|
||||
case 'substation':
|
||||
rect = this.substationControl.getArcBoundingRect();
|
||||
break;
|
||||
case 'emergency':
|
||||
rect = this.emergencyControl.getArcBoundingRect()
|
||||
break;
|
||||
case 'interconnected':
|
||||
rect = this.interconnectedControl.getArcBoundingRect()
|
||||
break;
|
||||
default:
|
||||
rect = this.stationText.getBoundingRect();
|
||||
break;
|
||||
}
|
||||
|
||||
return {
|
||||
x: rect.x + rect.width,
|
||||
y: rect.y
|
||||
|
@ -36,7 +36,6 @@ import EDownDetainLamp from './functionButton/EDownDetainLamp';
|
||||
import ETrainSetButton from './ETrainSetButton';
|
||||
import EStationPlatform from './EStationPlatform';
|
||||
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import {traverseLineElements, traverseStatusElements} from '../utils/ShapeStatusCovert';
|
||||
|
||||
class StationStand extends Group {
|
||||
@ -99,10 +98,8 @@ class StationStand extends Group {
|
||||
'downDetainLamp':EDownDetainLamp
|
||||
};
|
||||
// 遍历后端返回的状态控制的绘图
|
||||
if (model.previewOrMapDraw || isShowThePrdType(model.prdType, style.StationStand.common.functionButtonShow)) {
|
||||
traverseStatusElements(statusElementList, model, style, this);
|
||||
}
|
||||
}
|
||||
|
||||
createMouseEvent() {
|
||||
const path = window.location.href;
|
||||
|
@ -1,6 +1,5 @@
|
||||
import Text from 'zrender/src/graphic/Text';
|
||||
import Group from 'zrender/src/container/Group';
|
||||
import {isShowThePrdType} from '../../utils/handlePath';
|
||||
import BoundingRect from 'zrender/src/core/BoundingRect';
|
||||
import Vue from 'vue';
|
||||
|
||||
@ -15,14 +14,10 @@ export default class Text2 extends Group {
|
||||
this.style = style;
|
||||
this.z = 6;
|
||||
this.isShowShape = true;
|
||||
if (isShowThePrdType(model.prdType, model.showConditions) || model.previewOrMapDraw) {
|
||||
this.create();
|
||||
this.setState(model);
|
||||
}
|
||||
if (model.previewOrMapDraw) {
|
||||
this.setShowMode();
|
||||
}
|
||||
}
|
||||
|
||||
create() {
|
||||
var model = this.model;
|
||||
|
@ -185,7 +185,8 @@
|
||||
<el-input-number
|
||||
:id="domIdStopTime"
|
||||
v-model="trainStopTime"
|
||||
:min="0"
|
||||
:min="15"
|
||||
:max="300"
|
||||
:step="1"
|
||||
size="mini"
|
||||
:controls="false"
|
||||
@ -275,7 +276,7 @@ export default {
|
||||
tripNumber: '',
|
||||
effective: '01',
|
||||
trainRunlevel: 2,
|
||||
trainStopTime: 0,
|
||||
trainStopTime: 30,
|
||||
disabledTime: true
|
||||
};
|
||||
},
|
||||
@ -429,7 +430,7 @@ export default {
|
||||
this.dialogShow = false;
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
this.operation = '';
|
||||
this.trainStopTime = 0;
|
||||
this.trainStopTime = 30;
|
||||
},
|
||||
choose(upDown) { // 取消扣车 请求code码
|
||||
const operate = {
|
||||
|
@ -156,7 +156,7 @@ export default {
|
||||
// }
|
||||
// }
|
||||
this.modelData = {
|
||||
stopTime: selected.parkingTime == 0 ? '自动' : `${selected.parkingTime} 秒`,
|
||||
stopTime: selected.parkingTime < 0 ? '自动' : `${selected.parkingTime} 秒`,
|
||||
runLevel: this.runLevelList[selected.runLevelTime],
|
||||
detainCar: selected.stationHoldTrain || selected.centerHoldTrain ? '已设置' : '无扣车',
|
||||
jumpStop: selected.allSkip || selected.assignSkip ? '已设置' : '无跳停'
|
||||
|
@ -393,9 +393,11 @@ export default {
|
||||
if (model._type === 'StationStand' && subType === 'StopJumpLamp') {
|
||||
operate.cmdType = CMD.Stand.CMD_STAND_SET_JUMP_STOP;
|
||||
operate.param = {standCode: model.code, trainGroupNumber: ''};
|
||||
operate.code = model.code;
|
||||
} else if (model._type === 'StationStand' && subType === 'CancelStopJumpLamp') {
|
||||
operate.cmdType = CMD.Stand.CMD_STAND_CANCEL_JUMP_STOP;
|
||||
operate.param = {standCode: model.code, trainGroupNumber: ''};
|
||||
operate.code = model.code;
|
||||
} else if (model._type === 'AutoTurnBack' ) {
|
||||
operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_AUTO_TURN_BACK;
|
||||
operate.param = {cycleCode: model.cycleCode};
|
||||
@ -408,14 +410,17 @@ export default {
|
||||
case 'substation':
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL;
|
||||
operate.param = {stationCodes: [model.code]};
|
||||
operate.code = model.code;
|
||||
break;
|
||||
case 'center':
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL;
|
||||
operate.param = {stationCodes: [model.code]};
|
||||
operate.code = model.code;
|
||||
break;
|
||||
case 'emergency':
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL;
|
||||
operate.param = {stationCodes: [model.code]};
|
||||
operate.code = model.code;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -690,7 +695,7 @@ export default {
|
||||
}
|
||||
} else {
|
||||
this.clearOperate();
|
||||
this.$messageBox('请先切换到站控或紧急站控');
|
||||
// this.$messageBox('请先切换到站控或紧急站控');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -49,11 +49,6 @@ export default {
|
||||
menu: [],
|
||||
menuNormal: {
|
||||
Local: [
|
||||
{
|
||||
label: '区故解',
|
||||
handler: this.fault,
|
||||
cmdType: CMD.Section.CMD_SECTION_FAULT_UNLOCK
|
||||
}
|
||||
],
|
||||
Center: [
|
||||
{
|
||||
|
@ -11,6 +11,49 @@
|
||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
||||
export default {
|
||||
list: [
|
||||
// 控制模式
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL.value,
|
||||
skinCode: '04',
|
||||
trainingName: '请求站控({2})',
|
||||
trainingRemark: '请求站控功能',
|
||||
trainingType: 'ControlConvertMenu',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【站控】', codeType:'STATION', subType:'substation' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL.value,
|
||||
skinCode: '04',
|
||||
trainingName: '请求紧急站控({2})',
|
||||
trainingRemark: '请求紧急站控功能',
|
||||
trainingType: 'ControlConvertMenu',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【紧急站控】', codeType:'STATION', subType:'emergency' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL.value,
|
||||
skinCode: '04',
|
||||
trainingName: '请求中控({2})',
|
||||
trainingRemark: '请求请求中控功能',
|
||||
trainingType: 'ControlConvertMenu',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【中控】', codeType:'STATION', subType:'center' }
|
||||
]
|
||||
},
|
||||
// 信号机列表
|
||||
{
|
||||
maxDuration: 15,
|
||||
@ -75,6 +118,21 @@ export default {
|
||||
{ deviceType: '04', orderNum: 4, operateCode: '3080', tip: '鼠标左键点击【{5}】', codeType:'END_SIGNAL' }
|
||||
]
|
||||
},
|
||||
// {
|
||||
// maxDuration: 15,
|
||||
// minDuration: 8,
|
||||
// operateType: CMD.Signal.CMD_STATION_SET_MASTER_GUIDE_LOCK.value,
|
||||
// skinCode: '04',
|
||||
// trainingName: '引导总锁({3})',
|
||||
// trainingRemark: '进路办理引导总锁',
|
||||
// trainingType: 'Signal',
|
||||
// productTypes: ['01'],
|
||||
// stepVOList: [
|
||||
// { deviceType: '04', orderNum: 1, operateCode: '1190', tip: '鼠标左键点击【引导总锁】' },
|
||||
// { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' },
|
||||
// { deviceType: '04', orderNum: 3, operateCode: '1190', tip: '鼠标左键点击【{5}】', codeType:'GUIDELOCK' }
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
@ -577,6 +635,20 @@ export default {
|
||||
trainingName: '设置跳停({10}-{12}站台)',
|
||||
trainingRemark: '设置跳停功能',
|
||||
trainingType: 'Stand',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】'},
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【跳停】', codeType:'STAND', subType:'StopJumpLamp' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: CMD.Stand.CMD_STAND_SET_JUMP_STOP.value,
|
||||
skinCode: '04',
|
||||
trainingName: '设置跳停({10}-{12}站台)',
|
||||
trainingRemark: '设置跳停功能',
|
||||
trainingType: 'Stand',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '502', tip: '鼠标右键菜单选择【跳停】' },
|
||||
@ -591,6 +663,20 @@ export default {
|
||||
trainingName: '取消跳停({10}-{12}站台)',
|
||||
trainingRemark: '设置取消跳停功能',
|
||||
trainingType: 'Stand',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】'},
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【取消跳停】', codeType:'STAND', subType:'CancelStopJumpLamp' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: CMD.Stand.CMD_STAND_CANCEL_JUMP_STOP.value,
|
||||
skinCode: '04',
|
||||
trainingName: '取消跳停({10}-{12}站台)',
|
||||
trainingRemark: '设置取消跳停功能',
|
||||
trainingType: 'Stand',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '503', tip: '鼠标右键菜单选择【取消跳停】' },
|
||||
@ -694,12 +780,12 @@ export default {
|
||||
minDuration: 5,
|
||||
operateType: CMD.Stand.CMD_STAND_VIEW_STATUS.value,
|
||||
skinCode: '04',
|
||||
trainingName: '属性({10}-{12}站台)',
|
||||
trainingName: '显示站台信息({10}-{12}站台)',
|
||||
trainingRemark: '查询站台状态功能',
|
||||
trainingType: 'Stand',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '507', tip: '鼠标右键菜单选择【属性】' },
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '507', tip: '鼠标右键菜单选择【显示站台信息】' },
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '0012', tip: '鼠标左键点击【退出】按钮' }
|
||||
]
|
||||
}
|
||||
|
@ -207,16 +207,16 @@ export default {
|
||||
// 下行时,此站不是最后一站
|
||||
if (index != 0) {
|
||||
station = this.$store.getters['map/getDeviceByCode'](this.stationList[index - 1].code);
|
||||
stationStand = this.stationStandList.find(stand => stand.stationCode === station.code && !stand.right);
|
||||
stationStand = this.stationStandList.find(stand => stand.stationCode === station.code && !stand.right) || {};
|
||||
}
|
||||
} else {
|
||||
// 上行时,此站不是最后一站
|
||||
if (index != this.stationList.length - 1) {
|
||||
station = this.$store.getters['map/getDeviceByCode'](this.stationList[index + 1].code);
|
||||
stationStand = this.stationStandList.find(stand => stand.stationCode === station.code && stand.right);
|
||||
stationStand = this.stationStandList.find(stand => stand.stationCode === station.code && stand.right) || {};
|
||||
}
|
||||
}
|
||||
this.tempData.push({ name: `${stationStand.name}(${station.name})`, level: selected.runLevelTime ? this.getLevelByTime(selected.runLevelTime) : '0', time: selected.runLevelTime ? selected.runLevelTime : 0, check: selected.runLevelTimeForever });
|
||||
this.tempData.push({ name: stationStand ? `${stationStand.name}(${station.name})` : '无', level: selected.runLevelTime ? this.getLevelByTime(selected.runLevelTime) : '0', time: selected.runLevelTime ? selected.runLevelTime : 0, check: selected.runLevelTimeForever });
|
||||
},
|
||||
doShow(operate, selected) {
|
||||
this.selected = selected;
|
||||
|
@ -38,7 +38,8 @@
|
||||
v-model="time"
|
||||
:disabled="disabledInput"
|
||||
controls-position="right"
|
||||
:min="0"
|
||||
:min="15"
|
||||
:max="300"
|
||||
size="mini"
|
||||
style="width: 130px; padding-left:30px;display: block; float: left; margin-top: 15px;"
|
||||
@change="changeInputTime"
|
||||
|
@ -110,6 +110,7 @@ export default {
|
||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
||||
},
|
||||
domIdConfirm() {
|
||||
if (this.popClass == 'chengdou-03__systerm') {
|
||||
if (this.operation == OperationEvent.Switch.fault.menu.operation) {
|
||||
return OperationEvent.Switch.fault.confirm.domId;
|
||||
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
|
||||
@ -117,6 +118,7 @@ export default {
|
||||
} else if (this.operation == OperationEvent.Switch.block.menu.operation) {
|
||||
return OperationEvent.Switch.block.confirm.domId;
|
||||
}
|
||||
}
|
||||
return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : '';
|
||||
},
|
||||
title() {
|
||||
|
@ -272,6 +272,8 @@ export default {
|
||||
|
||||
.foshan-01__systerm .el-dialog .el-table .el-table__empty-text {
|
||||
top: 15px !important;
|
||||
line-height: normal;
|
||||
max-width:60%;
|
||||
}
|
||||
|
||||
.foshan-01__systerm .el-dialog .current-row>td {
|
||||
|
@ -105,18 +105,21 @@ export default {
|
||||
commit() {
|
||||
const operate = {
|
||||
send: true,
|
||||
operation: this.operation,
|
||||
over: true
|
||||
};
|
||||
|
||||
if (this.operation == OperationEvent.StationControl.requestCentralControl.menu.operation) {
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL;
|
||||
operate.operation = OperationEvent.StationControl.requestCentralControl.confirm.operation
|
||||
} else if (this.operation == OperationEvent.StationControl.requestStationControl.menu.operation) {
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL;
|
||||
operate.operation = OperationEvent.StationControl.requestStationControl.confirm.operation
|
||||
} else if (this.operation == OperationEvent.StationControl.emergencyStationControl.menu.operation) {
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL;
|
||||
operate.operation = OperationEvent.StationControl.emergencyStationControl.confirm.operation
|
||||
} else if (this.operation == OperationEvent.StationControl.forcedStationControl.menu.operation) {
|
||||
operate.cmdType = CMD.ControlConvertMenu.CMD_CM_FORCE_STATION_CONTROL;
|
||||
operate.operation = OperationEvent.StationControl.forcedStationControl.confirm.operation
|
||||
}
|
||||
this.doClose();
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {
|
||||
|
@ -15,9 +15,8 @@
|
||||
<el-form ref="form" :model="formModel" :rules="rules">
|
||||
|
||||
<el-row style="margin-bottom: 20px">
|
||||
<el-form-item prop="stationCode">
|
||||
<el-form-item :id="domIdChooseStation" prop="stationCode">
|
||||
<el-select
|
||||
:id="domIdChooseStation"
|
||||
v-model="formModel.stationCode"
|
||||
filterable
|
||||
placeholder="请选择"
|
||||
@ -199,7 +198,8 @@ export default {
|
||||
operation: OperationEvent.Command.order.choose1.operation,
|
||||
param: {
|
||||
stationCodes: [this.formModel.stationCode]
|
||||
}
|
||||
},
|
||||
val: this.formModel.stationCode
|
||||
};
|
||||
|
||||
// if (this.stationType === 'Center') {
|
||||
@ -216,7 +216,7 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
handleChooseChangeControl() {
|
||||
handleChooseChangeControl(val) {
|
||||
const operate = {
|
||||
operation: OperationEvent.Command.order.choose.operation
|
||||
};
|
||||
|
@ -33,6 +33,42 @@
|
||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
||||
export default {
|
||||
list: [
|
||||
// {
|
||||
// maxDuration: 15,
|
||||
// minDuration: 8,
|
||||
// operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL.value,
|
||||
// skinCode: '02',
|
||||
// trainingName: '系统/站遥控({1})',
|
||||
// trainingRemark: '控制模式转换,中控转站控',
|
||||
// trainingType: 'ControlConvertMenu',
|
||||
// productTypes: ['01'],
|
||||
// stepVOList: [
|
||||
// { deviceType: 'bar', orderNum: 1, operateCode: '002', tip: '鼠标左键点击顶部菜单栏【系统】' },
|
||||
// { deviceType: 'bar', orderNum: 2, operateCode: '2999', tip: '鼠标左键点击【站遥控】' },
|
||||
// { deviceType: '05', orderNum: 3, operateCode: '0071', tip: '鼠标左键选择所需要转换的集中站【{1}】', val: '{2}' },
|
||||
// { deviceType: '05', orderNum: 4, operateCode: '007', tip: '鼠标左键选择【站控】'},
|
||||
// { deviceType: '05', orderNum: 5, operateCode: '202', tip: '鼠标左键点击【设置】按钮' },
|
||||
// { deviceType: '05', orderNum: 6, operateCode: '2023', tip: '鼠标左键点击【确认】按钮' },
|
||||
// ]
|
||||
// },
|
||||
// {
|
||||
// maxDuration: 15,
|
||||
// minDuration: 8,
|
||||
// operateType: CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL.value,
|
||||
// skinCode: '02',
|
||||
// trainingName: '系统/站遥控({1})',
|
||||
// trainingRemark: '控制模式转换,中控转紧急站控',
|
||||
// trainingType: 'ControlConvertMenu',
|
||||
// productTypes: ['01'],
|
||||
// stepVOList: [
|
||||
// { deviceType: 'bar', orderNum: 1, operateCode: '002', tip: '鼠标左键点击顶部菜单栏【系统】' },
|
||||
// { deviceType: 'bar', orderNum: 2, operateCode: '2999', tip: '鼠标左键点击【站遥控】' },
|
||||
// { deviceType: '05', orderNum: 3, operateCode: '0071', tip: '鼠标左键选择所需要转换的集中站【{1}】', val: '{2}' },
|
||||
// { deviceType: '05', orderNum: 4, operateCode: '007', tip: '鼠标左键选择【紧急站控】'},
|
||||
// { deviceType: '05', orderNum: 5, operateCode: '201', tip: '鼠标左键点击【设置】按钮' },
|
||||
// { deviceType: '05', orderNum: 6, operateCode: '2013', tip: '鼠标左键点击【确认】按钮' },
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
@ -86,7 +122,7 @@ export default {
|
||||
productTypes: ['02'], // 产品类型 01 现地 02 行调
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '502', tip: '鼠标右键菜单选择【设置跳停】' },
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '5024', tip: '鼠标左键点击' },
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '5024', tip: '鼠标左键点击 指定列车{12}跳停' },
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '5022', tip: '请选择001号车', val: '001' },
|
||||
{ deviceType: '06', orderNum: 4, operateCode: '502', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
@ -153,13 +189,13 @@ export default {
|
||||
operateType:CMD.Stand.CMD_STAND_SET_PARK_TIME.value,
|
||||
skinCode: '08',
|
||||
trainingName: '设置停站时间({10}-{12} 站台)',
|
||||
trainingRemark: '停站时间控制(人工, 40秒, 一直有效)',
|
||||
trainingRemark: '停站时间控制(人工, 20秒, 一直有效)',
|
||||
trainingType:'Stand',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '509', tip: '鼠标右键菜单选择【设置停站时间】' },
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '5092', tip: '鼠标左键点击,选择【全人工】', val: '02' },
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【40】', val: '40' },
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【20】', val: '20' },
|
||||
{ deviceType: '06', orderNum: 4, operateCode: '509', tip: '鼠标左键点击【确认】按钮' }
|
||||
]
|
||||
},
|
||||
@ -169,13 +205,13 @@ export default {
|
||||
operateType:CMD.Stand.CMD_STAND_SET_PARK_TIME.value,
|
||||
skinCode: '08',
|
||||
trainingName: '设置停站时间({10}-{12} 站台)',
|
||||
trainingRemark: '停站时间控制(人工, 40秒, 一次有效)',
|
||||
trainingRemark: '停站时间控制(人工, 20秒, 一次有效)',
|
||||
trainingType:'Stand',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '06', orderNum: 1, operateCode: '509', tip: '鼠标右键菜单选择【设置停站时间】' },
|
||||
{ deviceType: '06', orderNum: 2, operateCode: '5092', tip: '鼠标左键点击,选择【全人工】', val: '02' },
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【40】', val: '20' },
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【20】', val: '20' },
|
||||
{ deviceType: '06', orderNum: 4, operateCode: '5093', tip: '鼠标左键点击,选择【一次有效】', val: 'false' },
|
||||
{ deviceType: '06', orderNum: 5, operateCode: '509', tip: '鼠标左键点击【确认】按钮' }
|
||||
]
|
||||
@ -264,7 +300,7 @@ export default {
|
||||
trainingName: '设置临时限速({8}{9} 区段)',
|
||||
trainingRemark: '设置临时限速功能(限速值:15)',
|
||||
trainingType: 'Section',
|
||||
productTypes: ['02'],
|
||||
productTypes: ['01', '02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '03', orderNum: 1, operateCode: '407', tip: '鼠标右键菜单选择【设置临时限速】' },
|
||||
{ deviceType: '03', orderNum: 2, operateCode: '4076', tip: '鼠标左键选择【限速值15】', val: '15' },
|
||||
@ -275,7 +311,34 @@ export default {
|
||||
{ deviceType: '03', orderNum: 7, operateCode: '001', tip: '鼠标左键点击【关闭】按钮' }
|
||||
]
|
||||
},
|
||||
|
||||
// {
|
||||
// maxDuration: 15,
|
||||
// minDuration: 8,
|
||||
// operateType:CMD.Section.CMD_SECTION_SET_LIMIT_SPEED.value,
|
||||
// skinCode: '08',
|
||||
// trainingName: '全线取消限速({8}{9} 区段)',
|
||||
// trainingRemark: '设置全线取消限速',
|
||||
// trainingType: 'Section',
|
||||
// productTypes: ['01', '02'],
|
||||
// stepVOList: [
|
||||
// { deviceType: '03', orderNum: 1, operateCode: '408', tip: '鼠标右键菜单选择【设置全线取消限速】' },
|
||||
// { deviceType: '03', orderNum: 4, operateCode: '4082', tip: '鼠标左键点击【确定】按钮' },
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType:CMD.Section.CMD_SECTION_ACTIVE.value,
|
||||
skinCode: '08',
|
||||
trainingName: '区段激活({8}{9} 区段)',
|
||||
trainingRemark: '区段激活功能',
|
||||
trainingType:'Section',
|
||||
productTypes: ['01', '02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '03', orderNum: 1, operateCode: '406', tip: '鼠标右键菜单选择【区段激活】' },
|
||||
{ deviceType: '03', orderNum: 2, operateCode: '406', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
@ -461,7 +524,7 @@ export default {
|
||||
trainingType:'Signal',
|
||||
productTypes: ['01', '02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【排列进路】' },
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【进路选排】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3011', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' },
|
||||
{ deviceType: '04', orderNum: 3, operateCode: '301', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
@ -476,7 +539,7 @@ export default {
|
||||
trainingType:'Signal',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '303', tip: '鼠标右键菜单选择【取消进路】' },
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '303', tip: '鼠标右键菜单选择【进路取消】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '303', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
},
|
||||
@ -607,6 +670,34 @@ export default {
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '312', tip: '鼠标右键菜单选择【取消联锁自动触发】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '312', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType:CMD.Signal.CMD_SIGNAL_BLOCK.value,
|
||||
skinCode: '08',
|
||||
trainingName: '按钮封闭({5}) 信号机',
|
||||
trainingRemark: '按钮封闭功能',
|
||||
trainingType:'Signal',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3060', tip: '鼠标左键点击【道岔封闭】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '306', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType:CMD.Signal.CMD_SIGNAL_UNBLOCK.value,
|
||||
skinCode: '08',
|
||||
trainingName: '按钮解封({5}) 信号机',
|
||||
trainingRemark: '按钮解封功能',
|
||||
trainingType:'Signal',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3070', tip: '鼠标左键点击【按钮解封】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '307', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL' }
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
|
@ -34,7 +34,8 @@
|
||||
v-model="time"
|
||||
:disabled="disabledInput"
|
||||
controls-position="right"
|
||||
:min="0"
|
||||
:min="15"
|
||||
:max="300"
|
||||
size="mini"
|
||||
style="width: 125px; padding-left:25px"
|
||||
@change="inputTime"
|
||||
@ -87,7 +88,7 @@ export default {
|
||||
return {
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
time: 0,
|
||||
time: 15,
|
||||
control: '01',
|
||||
direction: '01',
|
||||
effective: false,
|
||||
|
@ -203,6 +203,18 @@
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<div v-if="rightClickDialogVisible" style="position: fixed;z-index: 2;background-color: rgba(44,170,170,0.5);" :style="{top: menuPosition.y + 'px', left:menuPosition.x + 'px'}">
|
||||
<el-row style="text-align: center; width: 500px;">
|
||||
<template v-for="(item, index) in centralizedStationList">
|
||||
<div :key="index" class="nav-border-row row-width-box flex-row">
|
||||
<div v-if="item.name && (item.disabled || !item.cmdType)" :id="item.operate.domId" class="fake-button-disabled">{{ item.name }}</div>
|
||||
<div v-else-if="item.name && item.securityCommand" :id="item.operate.domId" :class="[stationContorl.controlMode != item.mode || item.mode == 'None'? 'fake-button-active': 'fake-button-disabled']" @click="clickCommand(item, index)">{{ item.name }}</div>
|
||||
<div v-else-if="item.name && !item.securityCommand" :id="item.operate.domId" :class="[stationContorl.controlMode != item.mode || item.mode == 'None'? 'fake-button': 'fake-button-disabled', (stationContorl.controlMode != item.mode || item.mode == 'None') && item.next && paramIndex == index ? 'active': '']" @click="clickCommand(item, index)">{{ item.name }}</div>
|
||||
<div v-else class="fake-button-grayk" />
|
||||
</div>
|
||||
</template>
|
||||
</el-row>
|
||||
</div>
|
||||
<notice-info ref="noticeInfo" pop-class="haerbin-01__systerm" />
|
||||
</div>
|
||||
</template>
|
||||
@ -270,10 +282,15 @@ export default {
|
||||
tipList: [],
|
||||
modeMatch: false,
|
||||
stationDialogVisible:false,
|
||||
rightClickDialogVisible: false,
|
||||
isAllowCommand:true,
|
||||
allowDetain:true,
|
||||
allowCancle:true,
|
||||
allowJump:true
|
||||
allowJump:true,
|
||||
State2SimulationMap: {
|
||||
'01': 'Local', // 现地工作站
|
||||
'02': 'Center' // 中心调度工作站
|
||||
}
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -282,12 +299,6 @@ export default {
|
||||
'stationList',
|
||||
'routeData'
|
||||
]),
|
||||
State2SimulationMap() {
|
||||
return {
|
||||
'01': 'Local', // 现地工作站
|
||||
'02': 'Center' // 中心调度工作站
|
||||
};
|
||||
},
|
||||
commandId() {
|
||||
return OperationEvent.Command.commandHaerbin.confirm.domId;
|
||||
},
|
||||
@ -311,90 +322,14 @@ export default {
|
||||
},
|
||||
stationContorl() {
|
||||
return this.getStationControl(this.selected || {}) || this.getStationControl({_type: 'Station', code: this.$store.state.map.showCentralizedStationCode}) || {};
|
||||
},
|
||||
menuPosition() {
|
||||
return this.$store.state.menuOperation.menuPosition;
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'$store.state.menuOperation.setMenuChangeCount': function (val) {
|
||||
if (this.selected._type) {
|
||||
const type = this.State2SimulationMap[this.$store.state.training.prdType];
|
||||
this.modeMatch = true;
|
||||
if (this.stationContorl.controlMode != type) {
|
||||
this.modeMatch = false;
|
||||
if (this.$store.state.training.prdType == '02' && this.selected._type == 'Station') {
|
||||
this.selectedObj = this.selected;
|
||||
if (this.selectedObj._type) {
|
||||
this.canCommand = true;
|
||||
const step = {
|
||||
operation: 'click',
|
||||
code: this.selectedObj.code,
|
||||
subType:this.$store.state.menuOperation.subType
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.centralizedStationList = new Array(15).fill({});
|
||||
this.centralizedStationList[0] = { name: '接收控制', cmdType: CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL, operate: OperationEvent.StationControl.requestStationControl.menu, disabledName: 'controlMode', mode: 'Center' };
|
||||
this.pushTempData([this.selectedObj]);
|
||||
this.param = { stationCode: this.selectedObj.code };
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.centralizedStationList = new Array(15).fill({});
|
||||
}
|
||||
}
|
||||
|
||||
this.pushTempData([]); // 清空执行栏
|
||||
this.selectedObj = this.selected;
|
||||
if (this.selectedObj._type) {
|
||||
if (this.selectedObj._type == 'Section' && (this.selectedObj.type == '03' || this.selectedObj.type == '04')) { // 道岔区段 道岔计轴区段 都是道岔操作
|
||||
this.selectedObj = this.selectedObj.switch;
|
||||
}
|
||||
this.canCommand = true;
|
||||
const step = {
|
||||
operation: 'click',
|
||||
code: this.selectedObj.code,
|
||||
subType:this.$store.state.menuOperation.subType
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
switch (this.selectedObj._type) {
|
||||
case 'Switch':
|
||||
this.handleSwicthMenu();
|
||||
break;
|
||||
case 'Signal':
|
||||
if (this.oldClickObj && this.oldClickObj.code != this.selectedObj.code) {
|
||||
this.checkSignal();
|
||||
} else {
|
||||
this.handleSingalMenu();
|
||||
}
|
||||
break;
|
||||
case 'Section':
|
||||
if (this.trainOperationShow) {
|
||||
this.handleTrainParam();
|
||||
} else {
|
||||
this.handleSectionMenu();
|
||||
}
|
||||
break;
|
||||
case 'Station':
|
||||
this.handleStationMenu();
|
||||
this.deviceHighLight(this.oldDevice, false);
|
||||
this.deviceHighLight(this.selectedObj, true);
|
||||
this.oldDevice = this.selectedObj;
|
||||
break;
|
||||
// case 'StationStand':
|
||||
// if (this.$store.state.menuOperation.subType == 'trainSetButton') {
|
||||
// this.handleStandMenu();
|
||||
// }
|
||||
// break;
|
||||
}
|
||||
}
|
||||
}).catch((error) => {
|
||||
console.error(error);
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
}
|
||||
},
|
||||
'$store.state.training.prdType': function (val) {
|
||||
this.trainOperationShow = false;
|
||||
@ -407,35 +342,37 @@ export default {
|
||||
}
|
||||
},
|
||||
'selected': function (val) {
|
||||
this.initMenus();
|
||||
if (val.code && val._event == MouseEvent.Left) {
|
||||
this.initMenus();// 初始化菜单数据
|
||||
this.pushTempData([]); // 清空执行栏
|
||||
this.selectedObj = this.selected;
|
||||
this.rightClickDialogVisible = false;
|
||||
if (this.selectedObj._type && (val._event == MouseEvent.Left || (val._event == MouseEvent.Right || this.$store.state.training.prdType === '01'))) {
|
||||
const type = this.State2SimulationMap[this.$store.state.training.prdType];
|
||||
this.modeMatch = this.stationContorl.controlMode == type;
|
||||
// 道岔区段 道岔计轴区段 都是道岔操作
|
||||
if (this.selectedObj._type == 'Section' && (this.selectedObj.type == '03' || this.selectedObj.type == '04')) {
|
||||
this.selectedObj = this.selectedObj.switch;
|
||||
}
|
||||
this.canCommand = true;
|
||||
const step = {
|
||||
operation: 'click',
|
||||
code: this.selectedObj.code,
|
||||
subType:this.$store.state.menuOperation.subType
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
|
||||
if (valid) { this.handleDeviceMenu(); }
|
||||
}).catch((error) => {
|
||||
console.error(error);
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
if (val._type != 'Psd' && val._type != 'StationStand') {
|
||||
this.dialogVisible = !this.isLocal;
|
||||
}
|
||||
if (val._type == 'StationStand' && this.$store.state.menuOperation.subType == 'trainSetButton') {
|
||||
if (!(this.selectedObj.assignSkip || this.selectedObj.allSkip || this.selectedObj.centerHoldTrain || this.selectedObj.stationHoldTrain)) {
|
||||
this.allowCancle = false;
|
||||
this.handleIbpShow();
|
||||
} else {
|
||||
if (this.selectedObj.assignSkip || this.selectedObj.allSkip) {
|
||||
this.allowJump = false;
|
||||
this.allowCancle = true;
|
||||
this.allowDetain = false;
|
||||
}
|
||||
if (this.selectedObj.centerHoldTrain || this.selectedObj.stationHoldTrain) {
|
||||
this.allowDetain = false;
|
||||
this.allowCancle = true;
|
||||
this.allowJump = false;
|
||||
}
|
||||
}
|
||||
|
||||
this.stationDialogVisible = true;
|
||||
}
|
||||
} else if (!val.code) {
|
||||
this.dialogVisible = false;
|
||||
if (this.$store.state.training.mode != TrainingMode.TEACH) {
|
||||
this.handleBasicMenu();
|
||||
}
|
||||
}
|
||||
},
|
||||
'$store.state.map.showCentralizedStationCode': function(val) {
|
||||
if (!this.oldSelected) {
|
||||
@ -476,6 +413,53 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
handleDeviceMenu() {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
switch (this.selectedObj._type) {
|
||||
case 'Switch':
|
||||
this.handleSwicthMenu();
|
||||
break;
|
||||
case 'Signal':
|
||||
if (this.oldClickObj && this.oldClickObj.code != this.selectedObj.code) {
|
||||
this.checkSignal();
|
||||
} else {
|
||||
this.handleSingalMenu();
|
||||
}
|
||||
break;
|
||||
case 'Section':
|
||||
if (this.trainOperationShow) {
|
||||
this.handleTrainParam();
|
||||
} else {
|
||||
this.handleSectionMenu();
|
||||
}
|
||||
break;
|
||||
case 'Station':
|
||||
this.handleStationMenu();
|
||||
this.deviceHighLight(this.oldDevice, false);
|
||||
this.deviceHighLight(this.selectedObj, true);
|
||||
this.oldDevice = this.selectedObj;
|
||||
break;
|
||||
}
|
||||
},
|
||||
handleIbpShow() {
|
||||
if (this.selectedObj._type == 'StationStand' && this.$store.state.menuOperation.subType == 'trainSetButton') {
|
||||
if (!(this.selectedObj.assignSkip || this.selectedObj.allSkip || this.selectedObj.centerHoldTrain || this.selectedObj.stationHoldTrain)) {
|
||||
this.allowCancle = false;
|
||||
} else {
|
||||
if (this.selectedObj.assignSkip || this.selectedObj.allSkip) {
|
||||
this.allowJump = false;
|
||||
this.allowCancle = true;
|
||||
this.allowDetain = false;
|
||||
}
|
||||
if (this.selectedObj.centerHoldTrain || this.selectedObj.stationHoldTrain) {
|
||||
this.allowDetain = false;
|
||||
this.allowCancle = true;
|
||||
this.allowJump = false;
|
||||
}
|
||||
}
|
||||
this.stationDialogVisible = true;
|
||||
}
|
||||
},
|
||||
getStationControl(selected) {
|
||||
let control;
|
||||
if (selected._type == 'StationStand') {
|
||||
@ -632,8 +616,13 @@ export default {
|
||||
this.centralizedStationList = new Array(15).fill({});
|
||||
this.routeParamList.forEach((swicth, index) => {
|
||||
this.centralizedStationList[index] = swicth;
|
||||
if (swicth.disabledCb && this.selectedObj) {
|
||||
swicth.disabled = swicth.disabledCb(this.selectedObj);
|
||||
}
|
||||
});
|
||||
|
||||
if (this.selectedObj._event === MouseEvent.Right) {
|
||||
this.rightClickDialogVisible = true;
|
||||
}
|
||||
this.pushTempData(this.selectRouteList);
|
||||
this.param = {
|
||||
routeCode: this.route.code
|
||||
@ -702,7 +691,6 @@ export default {
|
||||
this.operate == OperationEvent.Switch.setSpeed.menuButton.operation) {
|
||||
this.canCommand = true;
|
||||
}
|
||||
// this.param.speedLimitValue = this.speedLimitValue;
|
||||
this.centralizedStationList = new Array(15).fill({ name: '' });
|
||||
[65, 55, 45, 35, 25, 0].forEach((el, i) => {
|
||||
this.centralizedStationList[i] = {
|
||||
@ -717,6 +705,7 @@ export default {
|
||||
}
|
||||
},
|
||||
clickCommand(row, index) {
|
||||
this.rightClickDialogVisible = false;
|
||||
this.paramIndex = row.next ? index : -1;
|
||||
if (row.next) {
|
||||
this.pushTempData([row]);
|
||||
@ -817,6 +806,9 @@ export default {
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
},
|
||||
handleRightClickClose() {
|
||||
this.rightClickDialogVisible = false;
|
||||
},
|
||||
cancle() {
|
||||
if (this.$store.state.training.mode != TrainingMode.TEACH) {
|
||||
clearTimeout(this.timer);
|
||||
@ -867,14 +859,7 @@ export default {
|
||||
}
|
||||
});
|
||||
}
|
||||
// this.trainModel = this.selectedObj; physicalCode
|
||||
// this.formModelTripNum = this.trainModel.destinationCode + this.trainModel.serviceNumber + this.trainModel.tripNumber;
|
||||
// this.formModelSectionName = this.trainModel.sectionModel.name;
|
||||
// this.formModelNewTrip = '';
|
||||
},
|
||||
// setSpeedLimitValue(val) {
|
||||
// this.speedLimitValue = val;
|
||||
// },
|
||||
pushTempData(list) {
|
||||
this.tempData = [];
|
||||
list.forEach(el => {
|
||||
@ -986,14 +971,6 @@ export default {
|
||||
{ name: '' },
|
||||
{ name: '' },
|
||||
{ name: '关闭索引', cmdType: '', operate: OperationEvent.StationControl.requestCentralControl.menu, disabledCb: (selectedObj) => ['None'].includes(selectedObj.controlMode) }
|
||||
|
||||
// { name: '自排全开', cmdType: CMD.Station.CMD_STATION_OPEN_AUTO_SETTING, operate: OperationEvent.Station.atsAutoControlALL.menu },
|
||||
// { name: '自排全关', cmdType: CMD.Station.CMD_STATION_CLOSE_AUTO_SETTING, operate: OperationEvent.Station.humanControlALL.menu },
|
||||
// { name: '释放指令', cmdType: '', operate: OperationEvent.Station.humanControlALL.menu },
|
||||
// { name: '重启令解', cmdType: CMD.Station.CMD_STATION_RESTART, operate:OperationEvent.Station.stationRestart.menuButton, securityCommand: true},
|
||||
// { name: '追踪全开', cmdType: CMD.Station.CMD_STATION_SET_CI_AUTO_TRIGGER, operate: OperationEvent.Station.setAutoTrigger.menu },
|
||||
// { name: '追踪全关', cmdType: CMD.Station.CMD_STATION_CANCEL_CI_AUTO_TRIGGER, operate: OperationEvent.Station.cancelAutoTrigger.menu },
|
||||
// { name: '关区信号', cmdType: CMD.Station.CMD_STATION_CIAREA_CLOSE_ALLSIGNAL, operate: OperationEvent.Station.ciAreaCloseAllSignal.menu },
|
||||
] : [
|
||||
{ name: '' },
|
||||
{ name: '' },
|
||||
@ -1011,7 +988,6 @@ export default {
|
||||
{ name: '' },
|
||||
{ name: '' }
|
||||
];
|
||||
|
||||
this.sectionParamList = this.selected && this.selected.type == '05' ? [
|
||||
{ name: '岔芯设限', cmdType: CMD.Section.CMD_SECTION_SET_LIMIT_SPEED, operate: OperationEvent.Section.setSpeed.menuButton, securityCommand: true, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '岔芯消限', cmdType: CMD.Section.CMD_SECTION_CANCEL_LIMIT_SPEED, operate: OperationEvent.Section.cancelSpeed.menuButton, securityCommand: true, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
@ -1042,9 +1018,6 @@ export default {
|
||||
{ name: '封锁道岔', cmdType: CMD.Switch.CMD_SWITCH_BLOCK, operate: OperationEvent.Switch.block.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '解封道岔', cmdType: CMD.Switch.CMD_SWITCH_UNBLOCK, operate: OperationEvent.Switch.unblock.menuButton, securityCommand: true, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '强行消限', cmdType: CMD.Switch.CMD_SWITCH_CANCEL_LIMIT_SPEED, operate: OperationEvent.Switch.cancelSpeed.menuButton, securityCommand: true, disabledCb: (selectedObj) => !this.modeMatch }
|
||||
|
||||
// { name: '转换定位', cmdType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION, operate: OperationEvent.Switch.locate.menuButton, disabledName: 'normalPosition', disabledCb: (selectedObj) => !this.modeMatch },
|
||||
// { name: '转换反位', cmdType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION, operate: OperationEvent.Switch.reverse.menuButton, disabledName: 'reversePosition', disabledCb: (selectedObj) => !this.modeMatch },
|
||||
];
|
||||
this.signalParamList = this.$store.state.training.prdType === '01' ? [
|
||||
{ name: '关闭信号', cmdType: CMD.Signal.CMD_SIGNAL_CLOSE_SIGNAL, operate: OperationEvent.Signal.signalClose.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
@ -1078,8 +1051,6 @@ export default {
|
||||
{ name: '车队单关', cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO, operate: OperationEvent.Signal.reopenSignal.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '设置保护', cmdType: '', operate: OperationEvent.Signal.reopenSignal.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '未评限区', cmdType: '', operate: OperationEvent.Signal.reopenSignal.menuButton, securityCommand: true, disabledCb: (selectedObj) => !this.modeMatch }
|
||||
|
||||
// { name: '重复开放', cmdType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL, operate: OperationEvent.Signal.reopenSignal.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
];
|
||||
this.stationParamList = this.$store.state.training.prdType === '01' ? [
|
||||
{ name: '关站信号', cmdType: CMD.Station.CMD_STATION_CLOSE_ALLSIGNAL, operate: OperationEvent.Station.closeAllSignal.menu, disabledCb: (selectedObj) => !['Local'].includes(selectedObj.controlMode) || !this.modeMatch }
|
||||
@ -1088,33 +1059,6 @@ export default {
|
||||
{ name: '接收控制', cmdType: CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL, operate: OperationEvent.StationControl.requestStationControl.menu, disabledCb: (selectedObj) => ['Center'].includes(selectedObj.controlMode) },
|
||||
{ name: '交出控制', cmdType: CMD.ControlConvertMenu.CMD_CM_SURRENDER_CONTROL, operate: OperationEvent.StationControl.requestCentralControl.menu, disabledCb: (selectedObj) => ['Local', 'None'].includes(selectedObj.controlMode) }
|
||||
];
|
||||
// [
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '强行站控', cmdType: CMD.ControlConvertMenu.CMD_CM_FORCE_STATION_CONTROL, operate: OperationEvent.StationControl.forcedStationControl.menu, securityCommand: true },
|
||||
// { name: '接收控制', cmdType: CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL, operate: OperationEvent.StationControl.requestStationControl.menu },
|
||||
// { name: '交出控制', cmdType: CMD.ControlConvertMenu.CMD_CM_SURRENDER_CONTROL, operate: OperationEvent.StationControl.requestCentralControl.menu },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '' },
|
||||
// { name: '关闭索引', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu },
|
||||
// { name: '追踪全开', cmdType: CMD.Station.CMD_STATION_SET_CI_AUTO_TRIGGER, operate: OperationEvent.Station.setAutoTrigger.menuButton },
|
||||
// { name: '追踪全关', cmdType: CMD.Station.CMD_STATION_CANCEL_CI_AUTO_TRIGGER, operate: OperationEvent.Station.cancelAutoTrigger.menuButton },
|
||||
// { name: '自排全开', cmdType: CMD.Station.CMD_STATION_OPEN_AUTO_SETTING, operate: OperationEvent.Station.atsAutoControlALL.menuButton },
|
||||
// { name: '自排全关', cmdType: CMD.Station.CMD_STATION_CLOSE_AUTO_SETTING, operate: OperationEvent.Station.humanControlALL.menuButton }
|
||||
// ];
|
||||
// this.standParamList = this.$store.state.training.prdType === '01' ? [] : [
|
||||
// { name: '扣车', cmdType: CMD.Stand.CMD_STAND_SET_HOLD_TRAIN, operate: OperationEvent.StationStand.setDetainTrain.menuButton, show: false },
|
||||
// { name: '取消扣车', cmdType: CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN, operate: OperationEvent.StationStand.cancelDetainTrain.menuButton, show: false },
|
||||
// { name: '越站', cmdType: CMD.Stand.CMD_STAND_SET_JUMP_STOP, operate: OperationEvent.StationStand.setJumpStop.menuButton, show: false },
|
||||
// { name: '取消越站', cmdType: CMD.Stand.CMD_STAND_CANCEL_JUMP_STOP, operate: OperationEvent.StationStand.cancelJumpStop.menuButton, show: false }
|
||||
// ];
|
||||
this.routeParamList = [
|
||||
{ name: '排列进路', cmdType: CMD.Signal.CMD_SIGNAL_SET_ROUTE, operate: OperationEvent.Signal.arrangementRoute.menuButton, disabledCb: (selectedObj) => !this.modeMatch },
|
||||
{ name: '取消进路', cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE, operate: OperationEvent.Signal.cancelTrainRoute.menuButton, disabledCb: (selectedObj) => !this.modeMatch }
|
||||
|
@ -276,7 +276,7 @@ export default {
|
||||
if (this.selected.type == '02' || this.selected.type == '03') {
|
||||
sectionCode = this.selected.parentCode;
|
||||
}
|
||||
commitOperate(menuOperate.Section.cancelSpeed, {sectionCode:sectionCode}).then(({valid, operate})=>{
|
||||
commitOperate(menuOperate.Section.cancelSpeed, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
|
||||
if (valid) {
|
||||
this.$refs.speedLimitControl.doShow(operate, this.selected);
|
||||
}
|
||||
|
@ -304,20 +304,20 @@ export default {
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: 'Section_Set_Limit_Speed',
|
||||
operateType: 'Section_Cancel_Limit_Speed',
|
||||
skinCode: '06',
|
||||
trainingName: '设置临时限速({8}{9})',
|
||||
trainingRemark: '设置临时限速功能-取消临时限速(限速值:不限速)',
|
||||
trainingName: '取消临时限速({8}{9})',
|
||||
trainingRemark: '取消临时限速功能',
|
||||
trainingType: 'Section',
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '03', orderNum: 1, operateCode: '407', tip: '鼠标右键菜单选择【设置临时限速】' },
|
||||
{ deviceType: '03', orderNum: 2, operateCode: '4076', tip: '鼠标左键选择【限速值: 不限速】', val: '0' },
|
||||
{ deviceType: '03', orderNum: 3, operateCode: '4071', tip: '鼠标左键点击【下达】按钮' },
|
||||
{ deviceType: '03', orderNum: 4, operateCode: '4072', tip: '鼠标左键点击【确认】按钮' },
|
||||
{ deviceType: '03', orderNum: 5, operateCode: '4073', tip: '鼠标左键点击【确认1】按钮' },
|
||||
{ deviceType: '03', orderNum: 6, operateCode: '4074', tip: '鼠标左键点击【确认2】按钮', val: '0' },
|
||||
{ deviceType: '03', orderNum: 7, operateCode: '001', tip: '鼠标左键点击【关闭】按钮' }
|
||||
{ deviceType: '03', orderNum: 1, operateCode: '408', tip: '鼠标右键菜单选择【取消临时限速】' },
|
||||
// { deviceType: '03', orderNum: 2, operateCode: '4076', tip: '鼠标左键选择【限速值: 不限速】', val: '0' },
|
||||
{ deviceType: '03', orderNum: 2, operateCode: '4081', tip: '鼠标左键点击【下达】按钮' },
|
||||
{ deviceType: '03', orderNum: 3, operateCode: '4082', tip: '鼠标左键点击【确认】按钮' },
|
||||
{ deviceType: '03', orderNum: 4, operateCode: '4083', tip: '鼠标左键点击【确认1】按钮' },
|
||||
{ deviceType: '03', orderNum: 5, operateCode: '4084', tip: '鼠标左键点击【确认2】按钮', val: '0' },
|
||||
{ deviceType: '03', orderNum: 6, operateCode: '001', tip: '鼠标左键点击【关闭】按钮' }
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -1,17 +1,8 @@
|
||||
export function getPrdType() {
|
||||
let prdType = '';
|
||||
const path = window.location.href;
|
||||
if (path.includes('?')) {
|
||||
const arr = window.location.href.split('?')[1].split('&');
|
||||
arr.forEach(elem => {
|
||||
if (elem.split('=')[0] === 'prdType') {
|
||||
prdType = elem.split('=')[1];
|
||||
}
|
||||
});
|
||||
}
|
||||
return prdType;
|
||||
}
|
||||
export function isShowThePrdType (prdType, showConditions) {
|
||||
const path = window.location.href;
|
||||
if (path.includes('jointTrainingNew')) {
|
||||
return true;
|
||||
}
|
||||
if (showConditions === '01' || (showConditions === '02' && prdType === '02') || (showConditions === '03' && prdType === '01')) {
|
||||
return true;
|
||||
} else if (!showConditions) {
|
||||
|
@ -217,7 +217,7 @@ export const OperationEvent = {
|
||||
},
|
||||
choose1: {
|
||||
operation: '0071',
|
||||
domId: '_Tips-Order-Choose1'
|
||||
domId: '_Tips-Order-Choose1{BOTTOM}'
|
||||
}
|
||||
},
|
||||
// 哈尔滨执行命令
|
||||
@ -2526,7 +2526,7 @@ export const OperationEvent = {
|
||||
remoteControl: {
|
||||
mbar: {
|
||||
operation: '2999',
|
||||
domId: '_Tips-Control-StationControl-Mbar'
|
||||
domId: '_Tips-Control-StationControl-Mbar{TOP}'
|
||||
}
|
||||
},
|
||||
// 封锁
|
||||
|
@ -30,8 +30,8 @@ class ValidateHandler {
|
||||
judge (operate) {
|
||||
const steps = Handler.getSteps();
|
||||
const order = Handler.getOrder();
|
||||
console.log(operate, steps);
|
||||
let valid = false;
|
||||
|
||||
if (operate.over && steps.length == 1) { // 右键菜单直接发送校验
|
||||
if (operate && steps[0] &&
|
||||
operate.code == steps[0].code &&
|
||||
|
@ -35,6 +35,7 @@ import { EventBus } from '@/scripts/event-bus';
|
||||
import { getByGroupStationList, getPassengerHistoryList } from '@/api/jmap/map';
|
||||
import { loadRunPlanData } from '@/utils/loaddata';
|
||||
import { creatSubscribe, clearSubscribe, displayTopic} from '@/utils/stomp';
|
||||
import { getSimulationInfoNew } from '@/api/simulation';
|
||||
import { getToken } from '@/utils/auth';
|
||||
export default {
|
||||
name: 'PlanSchedule',
|
||||
@ -188,9 +189,12 @@ export default {
|
||||
if (this.$route.query.group) {
|
||||
// 获取排序的车站列表
|
||||
getByGroupStationList(this.$route.query.group).then(response => {
|
||||
getSimulationInfoNew(this.$route.query.group).then(res => {
|
||||
this.$store.dispatch('runPlan/setRunPlanInfo', res.data.runPlan);
|
||||
this.$store.dispatch('runPlan/setStations', response.data).then(async() => {
|
||||
loadRunPlanData(this.$route.query.group, this.dataError);
|
||||
});
|
||||
});
|
||||
}).catch(() => {
|
||||
this.$messageBox(this.$t('display.schema.getStationListFail'));
|
||||
});
|
||||
|
@ -4,7 +4,7 @@
|
||||
<select-station v-if="isLocalStation && !isScript" ref="selectStation" :style-css="'width: 100px;'" />
|
||||
<template v-if="!dataError&& project !== 'bjd'">
|
||||
<el-button-group>
|
||||
<el-button v-if="isLocalStation" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="isLocalStation && $route.query.lineCode!='08'" 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" size="small" :disabled="viewDisabled" type="success" @click="viewRunQuest">{{ $t('display.schema.loadScript') }}</el-button>
|
||||
|
@ -240,6 +240,10 @@ export default {
|
||||
this.previewOrMapDraw = true;
|
||||
}
|
||||
const prdType = this.$store.state.training.prdType;
|
||||
let showMode = '';
|
||||
if (prdType === '01') {
|
||||
showMode = '03';
|
||||
} else if (prdType === '02') { showMode = '02'; }
|
||||
Vue.prototype.$theme = new Theme();
|
||||
Vue.prototype.$jlmap = new Jlmap({
|
||||
dom: document.getElementById(this.canvasId),
|
||||
@ -257,7 +261,7 @@ export default {
|
||||
showConfig: {
|
||||
prdType: prdType,
|
||||
previewOrMapDraw: this.previewOrMapDraw,
|
||||
showMode: '02'
|
||||
showMode: showMode
|
||||
},
|
||||
methods: {
|
||||
dataLoaded: this.handleDataLoaded,
|
||||
@ -479,7 +483,7 @@ export default {
|
||||
// 综合演练切换现地行调模式
|
||||
changePrdType(val) {
|
||||
const nameList = Object.keys(this.$store.state.map.map || {});
|
||||
let list = [];
|
||||
let list = []; let showMode = '';
|
||||
nameList.forEach(item => {
|
||||
if (item !== 'skinVO') {
|
||||
const data = this.$store.state.map.map[item];
|
||||
@ -488,7 +492,12 @@ export default {
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$jlmap.updatePrdType(val, nameList);
|
||||
if (val === '01') {
|
||||
showMode = '03';
|
||||
} else if (val === '02') {
|
||||
showMode = '02';
|
||||
}
|
||||
this.$jlmap.updatePrdType(list, val, showMode);
|
||||
},
|
||||
// 切换现地行调显示界面(绘图和预览页面下)
|
||||
setShowMode(showMode) {
|
||||
|
@ -5,9 +5,9 @@
|
||||
<!--<el-option v-for="item in stationList" :key="item.value" :label="item.name" :value="item.value" />-->
|
||||
<!--</el-select>-->
|
||||
<el-button-group>
|
||||
<el-button v-if="userRole=== 'STATION_SUPERVISOR' && !$route.query.projectDevice" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="userRole=== 'DISPATCHER' && !$route.query.projectDevice" size="small" :disabled="!hasBigScreen" @click="goBigScreen">大屏</el-button>
|
||||
<el-button v-if="userRole==='DISPATCHER' && !$route.query.projectDevice" size="small" @click="goIscs">ISCS</el-button>
|
||||
<el-button v-if="userRole=== 'STATION_SUPERVISOR' && !$route.query.projectDevice && $route.query.lineCode!='08'" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="userRole=== 'DISPATCHER' && !$route.query.projectDevice && hasBigScreen" size="small" @click="goBigScreen">大屏</el-button>
|
||||
<el-button v-if="userRole==='DISPATCHER' && !$route.query.projectDevice && iscsShow" size="small" @click="goIscs">ISCS</el-button>
|
||||
<el-button v-if="running && !dataError && $route.query.type !== 'ILW'" size="small" :disabled="viewDisabled" @click="viewRunPlan">{{ $t('joinTraining.runGraphPreview') }}</el-button>
|
||||
<template v-if="isAdmin">
|
||||
<el-button v-if="!running && !dataError && $route.query.type !== 'ILW'" size="small" type="warning" @click="loadRunPlan">
|
||||
@ -97,7 +97,8 @@ export default {
|
||||
userId: '',
|
||||
faultMode: false,
|
||||
directiveMode: false,
|
||||
firstLoad: true
|
||||
firstLoad: true,
|
||||
iscsShow:false
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -155,6 +156,15 @@ export default {
|
||||
this.changeDirectiveMode();
|
||||
}
|
||||
});
|
||||
queryHasIscs({mapId: this.$route.query.mapId}).then(resp => {
|
||||
if (resp.data) {
|
||||
this.iscsShow = true;
|
||||
} else {
|
||||
this.iscsShow = false;
|
||||
}
|
||||
}).catch(() => {
|
||||
this.$message.error('查询ISCS数据异常');
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
loadRunData(opt) {
|
||||
@ -234,8 +244,6 @@ export default {
|
||||
window.open(routeData.href, '_blank', 'noopener noreferrer');
|
||||
},
|
||||
goIscs() {
|
||||
queryHasIscs({mapId: this.$route.query.mapId}).then(resp => {
|
||||
if (resp.data) {
|
||||
const routeData = this.$router.resolve({
|
||||
path:`/displayIscs/system`,
|
||||
query:{
|
||||
@ -246,12 +254,6 @@ export default {
|
||||
}
|
||||
});
|
||||
window.open(routeData.href, '_blank', 'noopener noreferrer');
|
||||
} else {
|
||||
this.$messageBox('该地图线路暂无ISCS数据!');
|
||||
}
|
||||
}).catch(() => {
|
||||
this.$message.error('查询ISCS数据异常');
|
||||
});
|
||||
},
|
||||
// 点击ibp预览
|
||||
goIbp() {
|
||||
|
@ -81,7 +81,6 @@ export default {
|
||||
device = this.$store.getters['map/getDeviceByCode'](section.relSwitchCode);
|
||||
}
|
||||
}
|
||||
|
||||
// 过滤道岔相关区段变成道岔model
|
||||
if (device._type == 'Section' && device.type == '03') {
|
||||
device = this.$store.getters['map/getDeviceByCode'](device.switch.code);
|
||||
@ -105,7 +104,7 @@ export default {
|
||||
this.selected = { ...device, _event: MouseEvent.Left };
|
||||
this.$store.dispatch('menuOperation/setSelected', {device: device, subType: em.subType});
|
||||
this.$store.dispatch('menuOperation/setLeftClickCount');
|
||||
if (this.$route.query.lineCode == '07' || this.$route.query.lineCode == '14') {
|
||||
if (this.$route.query.lineCode == '07') {
|
||||
this.$store.dispatch('menuOperation/setMenuChange', {device: device, subType: em.subType});
|
||||
}
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
|
@ -52,7 +52,7 @@ export default {
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.loading = true;
|
||||
aKeyGeneratingLesson([this.mapId]).then(resp => {
|
||||
aKeyGeneratingLesson([this.form.mapId]).then(resp => {
|
||||
this.$message.success('生成课程、试卷成功!');
|
||||
this.loading = false;
|
||||
this.dialogVisible = false;
|
||||
|
@ -77,9 +77,52 @@ export default {
|
||||
height: 800,
|
||||
roadData: [],
|
||||
focus: false,
|
||||
booleanList: ['upRight', 'lockFirst', 'switchSingleHandle', 'switchNRTurnChain', 'switchSingleLockChain', 'switchLossChain', 'signalForceCancelRoute', 'initSingleLockSwitch', 'ctcOverlapOnlyTurnBackStationLock', 'guideNeedRouteSettingFirst', 'signalOpenAfterParking', 'standHoldCloseLogicLight', 'atsAutoHandleManualFrontTurnBack', 'doNotSetRouteWhenSectionOccupied', 'routeSettingNoFail', 'signalBlockRouteSettable'],
|
||||
booleanList: [
|
||||
'upRight',
|
||||
'lockFirst',
|
||||
'switchSingleHandle',
|
||||
'switchNRTurnChain',
|
||||
'switchSingleLockChain',
|
||||
'switchLossChain',
|
||||
'signalForceCancelRoute',
|
||||
'initSingleLockSwitch',
|
||||
'ctcOverlapOnlyTurnBackStationLock',
|
||||
'guideNeedRouteSettingFirst',
|
||||
'signalOpenAfterParking',
|
||||
'standHoldCloseLogicLight',
|
||||
'atsAutoHandleManualFrontTurnBack',
|
||||
'doNotSetRouteWhenSectionOccupied',
|
||||
'routeSettingNoFail',
|
||||
'signalBlockRouteSettable',
|
||||
'cancelAtsControlOfAllRoutesWhenCancelRoute',
|
||||
'signalHumanControlBeforeSetAtsControlOrCIAutoTrigger'
|
||||
],
|
||||
selectList: ['runMode'],
|
||||
generalConfig: ['lockFirst', 'switchSingleHandle', 'upRight', 'switchNRTurnChain', 'switchSingleLockChain', 'switchLossChain', 'signalForceCancelRoute', 'runMode', 'initSingleLockSwitch', 'ctcOverlapOnlyTurnBackStationLock', 'noParkingSM', 'parkingSM', 'rmAtpSpeed', 'urmAtpSpeed', 'guideNeedRouteSettingFirst', 'signalOpenAfterParking', 'standHoldCloseLogicLight', 'atsAutoHandleManualFrontTurnBack', 'doNotSetRouteWhenSectionOccupied', 'routeSettingNoFail', 'signalBlockRouteSettable'],
|
||||
generalConfig: [
|
||||
'lockFirst',
|
||||
'switchSingleHandle',
|
||||
'upRight',
|
||||
'switchNRTurnChain',
|
||||
'switchSingleLockChain',
|
||||
'switchLossChain',
|
||||
'signalForceCancelRoute',
|
||||
'runMode',
|
||||
'initSingleLockSwitch',
|
||||
'ctcOverlapOnlyTurnBackStationLock',
|
||||
'noParkingSM',
|
||||
'parkingSM',
|
||||
'rmAtpSpeed',
|
||||
'urmAtpSpeed',
|
||||
'guideNeedRouteSettingFirst',
|
||||
'signalOpenAfterParking',
|
||||
'standHoldCloseLogicLight',
|
||||
'atsAutoHandleManualFrontTurnBack',
|
||||
'doNotSetRouteWhenSectionOccupied',
|
||||
'routeSettingNoFail',
|
||||
'signalBlockRouteSettable',
|
||||
'cancelAtsControlOfAllRoutesWhenCancelRoute',
|
||||
'signalHumanControlBeforeSetAtsControlOrCIAutoTrigger'
|
||||
],
|
||||
rangeList: ['noParkingSM', 'parkingSM'],
|
||||
speedList: ['rmAtpSpeed', 'urmAtpSpeed'],
|
||||
numberList: [],
|
||||
@ -107,7 +150,9 @@ export default {
|
||||
atsAutoHandleManualFrontTurnBack:'ATS是否自动处理人工设置的站前折返自动更新车次',
|
||||
doNotSetRouteWhenSectionOccupied: '当进路的区段占用时不排列进路',
|
||||
routeSettingNoFail:'进路办理不失败',
|
||||
signalBlockRouteSettable:'信号封锁下进路是否可以办理'
|
||||
signalBlockRouteSettable:'信号封锁下进路是否可以办理',
|
||||
cancelAtsControlOfAllRoutesWhenCancelRoute: '当取消进路/人解进路时,将该进路始端信号机下所有进路设为自排关',
|
||||
signalHumanControlBeforeSetAtsControlOrCIAutoTrigger: '在设置自排开或自动触发之前,信号机需处于人工控状态'
|
||||
}
|
||||
};
|
||||
},
|
||||
|
@ -19,6 +19,7 @@ let outputDir = '';
|
||||
outputDir = process.env.VUE_APP_PRO == 'local' || process.env.VUE_APP_PRO == 'ntyl' ? 'dist' : 'dist/cbtc';
|
||||
})();
|
||||
|
||||
|
||||
// All configuration item explanations can be find in https://cli.vuejs.org/config/
|
||||
module.exports = {
|
||||
/**
|
||||
@ -142,7 +143,7 @@ module.exports = {
|
||||
config
|
||||
// https://webpack.js.org/configuration/devtool/#development
|
||||
.when(process.env.NODE_ENV === 'development',
|
||||
config => config.devtool('cheap-source-map')
|
||||
config => config.devtool('eval-source-map')
|
||||
);
|
||||
|
||||
config
|
||||
|
Loading…
Reference in New Issue
Block a user