diff --git a/src/i18n/langs/en/map.js b/src/i18n/langs/en/map.js index 84e15488d..e91a62710 100644 --- a/src/i18n/langs/en/map.js +++ b/src/i18n/langs/en/map.js @@ -610,5 +610,6 @@ export default { physicalSectionName: 'Physical section name', routePhysicalSectionData: 'Route physical section data', routeSideDefenseSwitch: 'Route side defense switch', - switchID: 'Switch ID' + switchID: 'Switch ID', + lineColor: 'Line Color' }; diff --git a/src/i18n/langs/zh/map.js b/src/i18n/langs/zh/map.js index 46d0c447f..d174f9b50 100644 --- a/src/i18n/langs/zh/map.js +++ b/src/i18n/langs/zh/map.js @@ -605,5 +605,6 @@ export default { routeSideDefenseSwitch: '进路侧防道岔', switchID: '道岔ID', normalPosition: '定位', - reversePosition: '反位' + reversePosition: '反位', + lineColor: '线条颜色' }; diff --git a/src/jmapNew/config/skinCode/bejing_01.js b/src/jmapNew/config/skinCode/bejing_01.js index 32f2270cd..9c0de4449 100644 --- a/src/jmapNew/config/skinCode/bejing_01.js +++ b/src/jmapNew/config/skinCode/bejing_01.js @@ -462,7 +462,6 @@ class SkinCode extends defaultStyle { textColor: '#000000' } }; - this[deviceType.ZcControl] = { // 是否显示 visible: true, diff --git a/src/jmapNew/config/skinCode/chengdu_03.js b/src/jmapNew/config/skinCode/chengdu_03.js index e6c1843bd..880f84637 100644 --- a/src/jmapNew/config/skinCode/chengdu_03.js +++ b/src/jmapNew/config/skinCode/chengdu_03.js @@ -405,7 +405,114 @@ class SkinCode extends defaultStyle { controlColor: '#FFFF00' // 控制灯颜色 } }; - + this[deviceType.PowerSupply] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.Maintain] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.NoOneReturn] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, + fontWeight: 'normal', + distance: 5 + }, + lamp: { + radiusR: 6, + controlColor: '#FFFFFF' + } + }; + this[deviceType.AtsControl] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.ChainControl] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.IntersiteControl] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.CenterCommunication] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.LeuControl] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; + this[deviceType.LocalControl] = { + displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#00FF00' // 控制灯颜色 + } + }; this[deviceType.ZcControl] = { text: { fontSize: 11, // 字体大小 diff --git a/src/jmapNew/config/skinCode/haerbin_01.js b/src/jmapNew/config/skinCode/haerbin_01.js index d78eb4b11..652cfa49d 100644 --- a/src/jmapNew/config/skinCode/haerbin_01.js +++ b/src/jmapNew/config/skinCode/haerbin_01.js @@ -87,6 +87,7 @@ class SkinCode extends defaultStyle { textVerticalAlign: 'middle' // 文字垂直对齐方式 }, line: { + isActiveShow: true, // 哈尔滨点击元素显示 width: 5, // 区段宽度 beyondWidth: 1, // 区段宽超出宽度 invadeColor: '#EF0C08', // 区段侵入颜色 @@ -140,7 +141,7 @@ class SkinCode extends defaultStyle { standardShow: true, // 灯柱显示 standardLength: 4, // 高柱长度 standardHeight: 5, // 灯柱高度 - standardColor: '#3149C3', // 灯柱颜色 + standardColor: '#FF0000', // 灯柱颜色 standardWidth: 4 // 灯柱宽度 }, text: { @@ -150,22 +151,22 @@ class SkinCode extends defaultStyle { fontSize: 11, // 信号机名称字体大小 fontWeight: 'bold', // 信号机名称字体粗细 defaultColor: '#FFFFFF', // 信号灯字体默认色 - blockColor: '#EF0C08', // 信号灯字体锁定颜色 + blockColor: '#ffffff', // 信号灯字体锁定颜色 checkColor: '#00FF00', // 信号字体 - nameBorderShow: true // 信号机名字边框显示 + nameBorderShow: false // 信号机名字边框显示 }, lamp: { bgShow: true, // 是否被选中 logicDisplayNone: true, // 逻辑点灯斜线不显示 - guidName: 'defult', // 默认引导类型 + guidName: 'haerbin_01', // 默认引导类型 stopWidth: 2, // 禁止线宽度 - borderWidth: 1, // 信号灯边框线宽度 - borderColor: '#3149C3', // 信号灯边框线颜色 + borderWidth: 0, // 信号灯边框线宽度 + borderColor: '#FF0000', // 信号灯边框线颜色 (虚拟信号机) radiusR: 4, // 信号灯半径 blockColor: '#EF0C08', // 信号灯锁闭 grayColor: '#7F7F7F', // 信号灯灰色 redColor: '#FF0000', // 信号灯红色 - greenColor: '#00FF00', // 信号灯绿色 + greenColor: '#000080', // 信号灯绿色 yellowColor: '#FFFF00', // 信号灯黄色 whiteColor: '#FFFFFF', // 信号灯白色 blueColor: '#0070C0' // 信号灯蓝色 diff --git a/src/jmapNew/constant/deviceRender.js b/src/jmapNew/constant/deviceRender.js index be40d96b9..322979417 100644 --- a/src/jmapNew/constant/deviceRender.js +++ b/src/jmapNew/constant/deviceRender.js @@ -145,5 +145,50 @@ deviceRender[deviceType.GuideLock] = { _type: deviceType.GuideLock, zlevel: 1 }; +/** AtsControl ATS通信表示灯 */ +deviceRender[deviceType.AtsControl] = { + _type: deviceType.AtsControl, + zlevel: 1 +}; +/** CenterCommunication 中心通信表示灯 */ +deviceRender[deviceType.CenterCommunication] = { + _type: deviceType.AtsControl, + zlevel: 1 +}; +/** ChainControl 连锁主备状态表示灯 */ +deviceRender[deviceType.ChainControl] = { + _type: deviceType.ChainControl, + zlevel: 1 +}; +/** IntersiteControl 站间通信表示灯 */ +deviceRender[deviceType.IntersiteControl] = { + _type: deviceType.IntersiteControl, + zlevel: 1 +}; +/** LeuControl LEU通信表示灯 */ +deviceRender[deviceType.LeuControl] = { + _type: deviceType.LeuControl, + zlevel: 1 +}; +/** LocalControl 现地主备状态表示灯 */ +deviceRender[deviceType.LocalControl] = { + _type: deviceType.LocalControl, + zlevel: 1 +}; +/** Maintain 维护工作站表示灯 */ +deviceRender[deviceType.Maintain] = { + _type: deviceType.Maintain, + zlevel: 1 +}; +/** PowerSupply 电源状态表示灯 */ +deviceRender[deviceType.PowerSupply] = { + _type: deviceType.PowerSupply, + zlevel: 1 +}; +/** NoOneReturn 无人折返状态表示灯 */ +deviceRender[deviceType.NoOneReturn] = { + _type: deviceType.NoOneReturn, + zlevel: 1 +}; export default deviceRender; diff --git a/src/jmapNew/constant/deviceType.js b/src/jmapNew/constant/deviceType.js index 6fea5a171..0304a84a1 100644 --- a/src/jmapNew/constant/deviceType.js +++ b/src/jmapNew/constant/deviceType.js @@ -22,7 +22,16 @@ const deviceType = { Line: 'Line', Text: 'Text', CheckBox: 'CheckBox', - AutomaticRoute:'AutomaticRoute' + AutomaticRoute:'AutomaticRoute', + AtsControl: 'AtsControl', + CenterCommunication: 'CenterCommunication', + ChainControl: 'ChainControl', + IntersiteControl: 'IntersiteControl', + LeuControl: 'LeuControl', + LocalControl: 'LocalControl', + Maintain: 'Maintain', + PowerSupply: 'PowerSupply', + NoOneReturn: 'NoOneReturn' }; export default deviceType; diff --git a/src/jmapNew/constant/stateTransition.js b/src/jmapNew/constant/stateTransition.js index 665961fec..d88b91330 100644 --- a/src/jmapNew/constant/stateTransition.js +++ b/src/jmapNew/constant/stateTransition.js @@ -132,6 +132,9 @@ class Status { handleGuideLock(device) { this.statusObj = { }; } + handleResource(device) { + this.statusObj = { }; + } getStatus() { return this.statusObj; } diff --git a/src/jmapNew/shape/Line/index.js b/src/jmapNew/shape/Line/index.js index 963ba4ef1..72574809c 100644 --- a/src/jmapNew/shape/Line/index.js +++ b/src/jmapNew/shape/Line/index.js @@ -28,7 +28,7 @@ export default class Line2 extends Group { for (let i = 0; i < (model.points.length - 1); i++) { this.add(new Line({ zlevel: model.zlevel, - z: model.isLogic ? this.z : this.z + 1, + z: this.z, shape: { x1: model.points[i].x, y1: model.points[i].y, @@ -37,7 +37,7 @@ export default class Line2 extends Group { }, style: { lineWidth: model.width, - stroke: style.Line.lineColor + stroke: model.lineColor || style.Line.lineColor } })); } diff --git a/src/jmapNew/shape/SaidLamp/EMouse.js b/src/jmapNew/shape/SaidLamp/EMouse.js new file mode 100644 index 000000000..92865a4eb --- /dev/null +++ b/src/jmapNew/shape/SaidLamp/EMouse.js @@ -0,0 +1,53 @@ +import Group from 'zrender/src/container/Group'; +import Text from 'zrender/src/graphic/Text'; + +export default class EMouse extends Group { + constructor(device) { + super(); + this.device = device; + this.create(); + } + create() { + this.text = new Text({ + zlevel: this.device.zlevel, + z: this.device.z + 1, + position: [0, 0], + style: { + x: this.device.model.position.x, + y: this.device.model.position.y + this.device.deviceStyle.lamp.radiusR + this.device.deviceStyle.text.distance - 30, + fontWeight: 'normal', + fontSize: this.device.deviceStyle.mouseOverStyle.fontSize, + fontFamily: this.device.deviceStyle.mouseOverStyle.fontFamily, + text: this.device.model.name, + textFill: this.device.deviceStyle.mouseOverStyle.fontColor, + textAlign: this.device.deviceStyle.mouseOverStyle.textAlign, + textVerticalAlign: this.device.deviceStyle.mouseOverStyle.textVerticalAlign + } + }); + this.add(this.text); + this.text.hide(); + } + mouseover(e) { + if (e.target && e.target._subType == 'Text') { + this.text.show(); + } else { + this.device.control.setControlColor(this.device.deviceStyle.mouseOverStyle.arcColor); + this.device.control.setTextColor(this.device.deviceStyle.mouseOverStyle.textColor); + this.device.control.setTextBorder(true); + this.device.control.setArcBorder(true); + } + } + + mouseout(e) { + if (!this.device.model.down) { + if (e.target && e.target._subType == 'Text') { + this.text.hide(); + } else { + this.device.control.setControlColor(this.device.deviceStyle.lamp.controlColor); + this.device.control.setTextColor('#FFFFFF'); + this.device.control.setTextBorder(false); + this.device.control.setArcBorder(false); + } + } + } +} diff --git a/src/jmapNew/shape/SaidLamp/index.js b/src/jmapNew/shape/SaidLamp/index.js new file mode 100644 index 000000000..d9154cfa9 --- /dev/null +++ b/src/jmapNew/shape/SaidLamp/index.js @@ -0,0 +1,103 @@ +import Group from 'zrender/src/container/Group'; +import EControl from '../element/EControl'; +import EMouse from './EMouse'; +import {isShowThePrdType} from '../../utils/handlePath'; + +export default class AtsControl extends Group { + constructor(model, style) { + super(); + this.z = 20; + this._code = model.code; + this._type = model._type; + this.zlevel = model.zlevel; + this.model = model; + this.style = style; + this.deviceStyle = style[model._type]; + 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; + this.control = new EControl({ + zlevel: this.zlevel, + z: this.z, + arc: { + shape: { + cx: model.position.x, + cy: model.position.y, + r: this.deviceStyle.lamp.radiusR + }, + subType: 'Control', + lineWidth: 0, + fill: this.deviceStyle.lamp.controlColor + }, + text: { + position: [0, 0], + x: model.position.x, + y: model.position.y + this.deviceStyle.lamp.radiusR + this.deviceStyle.text.distance, + fontWeight: this.deviceStyle.text.fontWeight, + fontSize: this.deviceStyle.text.fontSize, + fontFamily: this.style.fontFamily, + text: model.name, + textFill: '#fff', + textAlign: 'middle', + textVerticalAlign: 'top' + }, + style: this.style + }); + + this.add(this.control); + } + + // 设置状态 + setState(model) { + if (!this.isShowShape) return; + } + + createMouseEvent() { + if (this.deviceStyle.mouseOverStyle) { + this.mouseEvent = new EMouse(this); + this.add(this.mouseEvent); + this.on('mouseout', (e) => { this.mouseEvent.mouseout(e); }); + this.on('mouseover', (e) => { this.mouseEvent.mouseover(e); }); + } + } + getShapeTipPoint() { + if (this.control) { + var distance = 2; + var rect = this.control.getBoundingRect(); + return { + x: rect.x + rect.width / 2, + y: rect.y - distance + }; + } + return null; + } + setShowMode() { + const showMode = this.model.showMode; + const showConditions = this.deviceStyle.displayCondition; + if (showConditions === '01' || showMode === showConditions) { + this.control && this.control.show(); + } else { + this.control && this.control.hide(); + } + } + setShowStation(stationCode) { + if (!stationCode || this.model.stationCode === stationCode) { + this.control && this.control.show(); + this.isShowShape = true; + this.setState(this.model); + } else { + this.control && this.control.hide(); + this.isShowShape = false; + } + } +} diff --git a/src/jmapNew/shape/Section/ELines.js b/src/jmapNew/shape/Section/ELines.js index bc26f614d..6aba140f0 100644 --- a/src/jmapNew/shape/Section/ELines.js +++ b/src/jmapNew/shape/Section/ELines.js @@ -15,6 +15,12 @@ export default class ELines extends Group { create(model) { /** 创建区段*/ if (model && model.points.length > 1) { + let stroke; + stroke = model.style.Section.line.spareColor; + if (model.style.Section.line.isActiveShow) { + stroke = '#2EBFBF'; + } + if (model.isCurve) { const shape = {}; for (let i = 1; i < (model.points.length - 1); i++) { @@ -30,12 +36,12 @@ export default class ELines extends Group { isLine: true, zlevel: this.zlevel, progressive: model.progressive, - z: this.z + 1, + z: this.z + 2, culling: true, shape: shape, style: { lineWidth: model.style.Section.line.width, - stroke: model.style.Section.line.spareColor, + stroke: stroke, fillOpacity: 0 } }); @@ -55,7 +61,7 @@ export default class ELines extends Group { }, style: { lineWidth: model.style.Section.line.width, - stroke: model.style.Section.line.spareColor + stroke: stroke } })); } diff --git a/src/jmapNew/shape/Section/EMouse.js b/src/jmapNew/shape/Section/EMouse.js index 850274745..77ae6aa67 100644 --- a/src/jmapNew/shape/Section/EMouse.js +++ b/src/jmapNew/shape/Section/EMouse.js @@ -1,7 +1,6 @@ import Group from 'zrender/src/container/Group'; import Text from 'zrender/src/graphic/Text'; import Rect from 'zrender/src/graphic/shape/Rect'; -// import Vue from 'vue'; import store from '@/store'; class EMouse extends Group { constructor(device, code) { @@ -11,6 +10,7 @@ class EMouse extends Group { this.create(); } create() { + // 名称的包围框 if (this.device.name) { const rect = this.device.name.getBoundingRect(); if (!this.device.isSwitchSection) { @@ -66,6 +66,7 @@ class EMouse extends Group { this.add(this.sectionTextShadow); this.sectionTextShadow.hide(); } + // 区段包围框 if (this.device.section) { const rect = this.device.section.getBoundingRect(); this.lineBorder = new Rect({ diff --git a/src/jmapNew/shape/Section/index.js b/src/jmapNew/shape/Section/index.js index 80819c31d..b6939449b 100644 --- a/src/jmapNew/shape/Section/index.js +++ b/src/jmapNew/shape/Section/index.js @@ -30,7 +30,6 @@ export default class Section extends Group { this.create(); this.createMouseEvent(); this.setState(model); - this.checkIsDrawMap(); } create() { @@ -52,16 +51,6 @@ export default class Section extends Group { // } } - createMouseEvent() { - // 鼠标事件 - if (this.style.Section.mouseOverStyle) { - this.mouseEvent = new EMouse(this, this.model.relSwitchCode); - this.add(this.mouseEvent); - this.on('mouseout', (e) => { this.mouseEvent.mouseout(e); }); - this.on('mouseover', (e) => { this.mouseEvent.mouseover(e); }); - } - } - /** 创建区段*/ createSection() { const model = this.model; @@ -69,7 +58,8 @@ export default class Section extends Group { // 创建区段 this.section = new ELines({ zlevel: this.zlevel, - z: model.type == '02' ? this.z + 1 : this.z, // 逻辑区段层级降低一层 + // z: model.type == '02' ? this.z + 1 : this.z, // 逻辑区段层级降低一层 + z: this.z, // 逻辑区段层级降低一层 isSwitchSection: model.switchSection, isCurve: model.curve, points: model.type == '04' ? [model.namePosition, model.namePosition] : model.points, @@ -87,6 +77,19 @@ export default class Section extends Group { this.add(this.section); this.add(this.sectionBlock); + + if (this.style.Section.line.isActiveShow) { // 哈尔滨线路点击背景色 + this.lineBorder = new ELines({ + zlevel: this.zlevel, + z: this.z - 1, // 逻辑区段层级降低一层 + isSwitchSection: model.switchSection, + isCurve: model.curve, + points: model.type == '04' ? [model.namePosition, model.namePosition] : model.points, + style: style + }); + this.add(this.lineBorder); + this.lineBorder.setStyle({ lineWidth: 0 }); + } } // 折返箭头 @@ -571,18 +574,9 @@ export default class Section extends Group { }); } - setModelTypeLevel() { // 给含有逻辑区段的 section 层级加一 - if (this.model.type == '01' && this.model.logicSectionCodeList && this.model.logicSectionCodeList.length > 0) { - this.section.setZleve(this.z + 2); - } - } - /** 设置区段恢复默认状态*/ recover() { if (this.section) { - if (this.model.type == '01') { - this.section.setZleve(this.z); - } this.section.stopAnimation(true); this.sectionBlock && this.sectionBlock.hide(); // 因此特殊区段 this.section.setStyle({ @@ -629,7 +623,6 @@ export default class Section extends Group { stroke: this.style.Section.line.communicationOccupiedColor, lineWidth: this.style.Section.line.width + this.style.Section.line.beyondWidth }); - this.setModelTypeLevel(); } } @@ -640,7 +633,6 @@ export default class Section extends Group { stroke: this.style.Section.line.unCommunicationOccupiedColor, lineWidth: this.style.Section.line.width + this.style.Section.line.beyondWidth }); - this.setModelTypeLevel(); } } @@ -651,7 +643,6 @@ export default class Section extends Group { stroke: this.style.Section.line.routeLockColor, lineWidth: this.style.Section.line.width + this.style.Section.line.beyondWidth }); - this.setModelTypeLevel(); } } @@ -671,7 +662,6 @@ export default class Section extends Group { { time: 2000, styles: { stroke: this.style.Section.line.blockColor } } ]); } - this.setModelTypeLevel(); } /** 故障锁定状态 05*/ @@ -712,7 +702,6 @@ export default class Section extends Group { stroke: this.style.Section.line.protectiveLockColor, lineWidth: this.style.Section.line.width + this.style.Section.line.beyondWidth }); - this.setModelTypeLevel(); } } @@ -762,7 +751,6 @@ export default class Section extends Group { { time: 1000, styles: { stroke: this.style.backgroundColor } }, { time: 2000, styles: { lineWidth: lineWidth } } ]); - this.setModelTypeLevel(); } } @@ -813,16 +801,9 @@ export default class Section extends Group { sectionC && sectionC.instance && sectionC.instance.setState(sectionC, true); } } - let numFlag = 0; - model.logicSectionNum.forEach(item => { - numFlag += item; - }); - if (numFlag) { - return; - } // 顺序代表优先级 /** 道岔保护区段锁闭 */ - { model.overlapLock && this.protectiveLock(); } + model.overlapLock && this.protectiveLock(); /** 空闲锁闭或者叫进路锁闭 */ model.routeLock && this.routeLock(); /** 轨道封锁 */ @@ -870,12 +851,32 @@ export default class Section extends Group { } } + createMouseEvent() { // 鼠标事件 + if (this.style.Section.mouseOverStyle) { // 只有北京线路才会有鼠标事件 + this.mouseEvent = new EMouse(this, this.model.relSwitchCode); + this.add(this.mouseEvent); + this.on('mouseout', (e) => { this.mouseEvent.mouseout(e); }); + this.on('mouseover', (e) => { this.mouseEvent.mouseover(e); }); + } + const path = window.location.href; + if (path.includes('/map/draw')) { + this.on('mouseout', () => { !this.selectedType && !this.selected && this.section && this.section.setStyle({ stroke: this.style.Section.line.spareColor }); }); + this.on('mouseover', () => { !this.selectedType && this.section && this.section.setStyle({ stroke: '#fbfbfb' }); }); + } + } + drawSelected(selected) { this.selected = selected; if (selected) { - !this.selectedType && this.section && this.section.setStyle({ stroke: '#fbfbfb' }); + if (this.style.Section.line.isActiveShow) { + this.lineBorder && this.lineBorder.setStyle({ lineWidth: this.style.Section.line.width + 3 }); + } else { + !this.selectedType && this.section && this.section.setStyle({ stroke: '#fbfbfb' }); + } } else { - !this.selectedType && this.section && this.section.setStyle({ stroke: this.style.Section.line.spareColor }); + this.lineBorder && this.lineBorder.setStyle({ lineWidth: 0 }); + // !this.selectedType && this.section && this.section.setStyle({ stroke: this.style.Section.line.spareColor }); + !this.selectedType && this.setState(this.model); } } drawBatchSelected(selected, type) { @@ -890,14 +891,6 @@ export default class Section extends Group { this.selectedType = type; } - checkIsDrawMap() { - const path = window.location.href; - if (path.includes('/map/draw')) { - this.on('mouseout', () => { !this.selectedType && !this.selected && this.section && this.section.setStyle({ stroke: this.style.Section.line.spareColor }); }); - this.on('mouseover', () => { !this.selectedType && this.section && this.section.setStyle({ stroke: '#fbfbfb' }); }); - } - } - mouseout() { this.drawSelected(false); } diff --git a/src/jmapNew/shape/Signal/ESigPost.js b/src/jmapNew/shape/Signal/ESigPost.js index 8ba53dd64..7845ef30d 100644 --- a/src/jmapNew/shape/Signal/ESigPost.js +++ b/src/jmapNew/shape/Signal/ESigPost.js @@ -11,7 +11,7 @@ class ESigPost extends Group { create() { const model = this.model; const style = this.model.style; - + // 竖杆 this.ver = new Polyline({ _subType: 'SignalLamp', _val: '3', @@ -28,7 +28,7 @@ class ESigPost extends Group { stroke: style.Signal.post.standardColor } }); - + // 横杆 this.hor = new Polyline({ zlevel: model.zlevel, z: model.z, @@ -53,6 +53,13 @@ class ESigPost extends Group { } } + setColor(color) { + if (color) { + this.ver && this.ver.setStyle({ stroke: color }); + this.hor && this.hor.setStyle({ stroke: color }); + } + } + getLampPosition(type) { const model = this.model; const style = this.model.style; diff --git a/src/jmapNew/shape/Signal/index.js b/src/jmapNew/shape/Signal/index.js index c6d74f43b..4bcbd7bdc 100644 --- a/src/jmapNew/shape/Signal/index.js +++ b/src/jmapNew/shape/Signal/index.js @@ -42,7 +42,7 @@ class Signal extends Group { const drict = this.model.right ? 1 : -1; // 朝向 左:右 const posit = this.model.positionType == '01' ? -1 : 1; // 位置 上:下 - // 信号机高柱矮柱 + // 信号机高柱矮柱 (信号机底座) this.sigPost = new ESigPost({ zlevel: this.zlevel, z: this.z, @@ -56,7 +56,7 @@ class Signal extends Group { // 信号灯 const endPoint = this.sigPost.getLampPosition(model.lampPostType); this.lamps = []; - if (style.Signal.lamp.guidName == 'ningbo_01' && this.count == 1) { + if ((style.Signal.lamp.guidName == 'ningbo_01' || style.Signal.lamp.guidName == 'haerbin_01') && this.count == 1) { this.count = 2; } for (let i = 0; i < this.count; i++) { @@ -275,7 +275,7 @@ class Signal extends Group { } /* count 1单灯 2双灯 lightType 01物理点灯 02逻辑点灯*/ - openPositive() { + openPositive() { // 正向开放 if (this.count == 2 && !this.model.lightType) { if (this.lamps[0]) { this.lamps[0].setStop(false); @@ -305,26 +305,30 @@ class Signal extends Group { this.lamps[0].setColor(this.style.Signal.lamp.greenColor); } } + this.virtualSignal && this.virtualSignal.setColor(this.style.Signal.lamp.greenColor); + if (this.style.Signal.lamp.guidName == 'haerbin_01') { // 设置底座颜色 + this.sigPost.setColor('#00FF00'); + } } /* count 1单灯 2双灯 lightType 逻辑点灯 true,物理点灯 false */ - openLateral() { + openLateral() { // 侧向开放 if (this.count == 2 && !this.model.lightType) { if (this.lamps[0]) { this.lamps[0].setStop(false); - this.lamps[0].setColor(this.style.backgroundColor); + this.lamps[0].setColor(this.style.Signal.lamp.yellowColor); } if (this.lamps[1]) { this.lamps[1].setStop(false); - this.lamps[1].setColor(this.style.Signal.lamp.yellowColor); + this.lamps[1].setColor(this.style.backgroundColor); } } else if (this.count == 2 && this.model.lightType) { if (this.lamps[0]) { this.lamps[0].setStop(true); - this.lamps[0].setColor(this.style.backgroundColor); + this.lamps[0].setColor(this.style.Signal.lamp.yellowColor); } if (this.lamps[1]) { this.lamps[1].setStop(true); - this.lamps[1].setColor(this.style.Signal.lamp.yellowColor); + this.lamps[1].setColor(this.style.backgroundColor); } } else if (this.count == 1 && !this.model.lightType) { if (this.lamps[0]) { @@ -342,6 +346,9 @@ class Signal extends Group { this.lamps[0].setColor(this.style.Signal.lamp.greenColor); } } + if (this.style.Signal.lamp.guidName == 'haerbin_01') { // 设置底座颜色 + this.sigPost.setColor('#00FF00'); + } } // 列车进路 trainRoute() { @@ -362,9 +369,12 @@ class Signal extends Group { // 引导 guid() { - if (this.style.Signal.lamp.guidName == 'ningbo_01') { + if (this.style.Signal.lamp.guidName == 'ningbo_01' || this.style.Signal.lamp.guidName == 'haerbin_01') { this.lamps[1].show(); } + if (this.style.Signal.lamp.guidName == 'haerbin_01') { // 设置底座颜色 + this.sigPost.setColor('#00FF00'); + } if (this.count == 2 && !this.model.lightType && this.style.Signal.lamp.guidName != 'chengdu_03') { // 双灯 物理点灯 允许引导信号 if (this.lamps[0]) { this.lamps[0].setStop(false); @@ -384,7 +394,9 @@ class Signal extends Group { block() { if (this.count == 1) { this.lamps[0].setColor(this.style.Signal.lamp.redColor); - // this.siglamp.setNameBorder(1) + } + if (this.style.Signal.lamp.guidName == 'haerbin_01') { // 设置底座颜色 + this.sigPost.setColor('#000080'); } this.sigName.setColor(this.style.Signal.text.blockColor); if (this.style.Signal.text.nameBorderShow) { @@ -482,6 +494,7 @@ class Signal extends Group { this.sigAuto.animationRecover(); this.sigRoute.hide(); this.sigName.setColor(this.style.Signal.text.defaultColor); + this.sigPost.setColor(this.style.Signal.post.standardColor); // 设置底座默认颜色 if (this.style.Signal.lamp.guidName == 'chengdu_03') { this.lamps[0].setStyle({ lineWidth: this.style.Signal.lamp.borderWidth }); } @@ -499,45 +512,34 @@ class Signal extends Group { } else if (!model.isRouteActive && isShowThePrdType(model.prdType, '03') && this.style.Signal.lowButton.display) { this.setLowButtonRecover(); } - /** 设置灯的颜色 */ - if (model.greenOpen) { - if (this.lamps[0]) { - this.lamps[0].setColor(this.style.Signal.lamp.greenColor); - } - if (this.lamps[1]) { - this.lamps[1].setColor(this.style.Signal.lamp.greenColor); - } - } else if (model.redOpen) { - if (this.lamps[0]) { - this.lamps[0].setColor(this.style.Signal.lamp.redColor); - } - if (this.lamps[1]) { - this.lamps[1].setColor(this.style.Signal.lamp.redColor); - } - } else if (model.yellowOpen) { - if (this.lamps[0]) { - this.lamps[0].setColor(this.style.Signal.lamp.yellowColor); - } - if (this.lamps[1]) { - this.lamps[1].setColor(this.style.Signal.lamp.yellowColor); - } - } + /** 信号机进路按钮显示 */ model.isRouteSignal && this.setLowButtonShow(); /** 信号机封锁 */ model.blockade && this.block(); - // model.linkageAutoRouteShow = 1; - /** 设置点灯类型*/ + + /** 设置灯的颜色 */ + // model.redOpen = 0; + // model.yellowOpen = 0; + // model.greenOpen = 1; + model.redOpen && model.yellowOpen && !model.greenOpen && this.guid(); // 引导信号显示 + model.redOpen && !model.yellowOpen && !model.greenOpen && this.close(); // 信号关闭 + model.greenOpen && !model.redOpen && !model.yellowOpen && this.openPositive(); // 信号正向开放 + model.yellowOpen && !model.redOpen && !model.greenOpen && this.openLateral(); // 信号侧向开放 + if (this.style.Signal.lamp.guidName == 'haerbin_01') { // 设置底座颜色 + model.yellowOpen && !model.redOpen && !model.greenOpen && this.openPositive(); // 信号侧向开放 + } + + /** 进路交人工控或自动控 */ + !model.atsControl && this.setArtificialRouteClose(); + // 联锁自动进路通过 + model.fleetMode && this.setAutoRouteOpen(); + // 设置点灯类型 必须在最后设置不能放前面 if (model.lightType) { this.logicalLight(); // 设置逻辑点灯 } else { this.physicsLight(); // 设置物理点灯 } - model.guid && this.guid(); // 引导信号显示 - /** 进路交人工控或自动控 */ - !model.atsControl && this.setArtificialRouteClose(); - // 联锁自动进路通过 - model.fleetMode && this.setAutoRouteOpen(); } getBoundingRect() { diff --git a/src/jmapNew/shape/factory.js b/src/jmapNew/shape/factory.js index f5f70d28e..d764c4b97 100644 --- a/src/jmapNew/shape/factory.js +++ b/src/jmapNew/shape/factory.js @@ -21,6 +21,7 @@ import AutoTurnBack from './Automactic/index.js'; import OutFrame from './OutFrame/index.js'; import CheckBox from './checkBox/checkBox.js'; import AutomaticRoute from './AutomacticRoute/index.js'; +import AtsControl from './SaidLamp/index.js'; /** 图库*/ const mapShape = {}; @@ -46,6 +47,15 @@ mapShape[deviceType.AxleReset] = AxleReset; mapShape[deviceType.GuideLock] = GuideLock; mapShape[deviceType.CheckBox] = CheckBox; mapShape[deviceType.AutomaticRoute] = AutomaticRoute; +mapShape[deviceType.AtsControl] = AtsControl; +mapShape[deviceType.CenterCommunication] = AtsControl; +mapShape[deviceType.ChainControl] = AtsControl; +mapShape[deviceType.IntersiteControl] = AtsControl; +mapShape[deviceType.LeuControl] = AtsControl; +mapShape[deviceType.LocalControl] = AtsControl; +mapShape[deviceType.Maintain] = AtsControl; +mapShape[deviceType.PowerSupply] = AtsControl; +mapShape[deviceType.NoOneReturn] = AtsControl; function shapefactory(device, jmap) { const type = device._type; diff --git a/src/jmapNew/theme/beijing_01/menus/menuSection.vue b/src/jmapNew/theme/beijing_01/menus/menuSection.vue index 5ceeaab81..200a9d641 100644 --- a/src/jmapNew/theme/beijing_01/menus/menuSection.vue +++ b/src/jmapNew/theme/beijing_01/menus/menuSection.vue @@ -20,6 +20,7 @@ import { DeviceMenu } from '@/scripts/ConstDic'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import MenuContextHandler from '@/scripts/cmdPlugin/MenuContextHandler'; import CMD from '@/scripts/cmdPlugin/CommandEnum'; +import {menuOperate} from './utils/menuOperate'; export default { name: 'SectionMenu', @@ -172,18 +173,8 @@ export default { // }, // 故障解锁 faultUnlock(selectType) { - const operate = { - start: true, - operation: OperationEvent.Section.fault.menu.operation, - param: { - sectionCode: selectType.code - } - }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.sectionControl.doShow(operate, this.selected); - } + this.commitOperate(menuOperate.Section.fault, selectType, [selectType.code]).then((data)=>{ + this.$refs.sectionControl.doShow(data.operate, data.selected); }); }, undeveloped() { @@ -196,104 +187,56 @@ export default { }, // 切除 split() { - const operate = { - start: true, - code: this.selected.code, - operation: OperationEvent.Section.split.menu.operation, - param: { - sectionCode: `${this.selected.code}` - } - }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.sectionControl.doShow(operate, this.selected); - } + this.commitOperate(menuOperate.Section.split, this.selected, [this.selected.code]).then((data)=>{ + this.$refs.sectionControl.doShow(data.operate, data.selected); }); }, alxeEffective() { - const operate = { - start: true, - code: this.selected.code, - operation: OperationEvent.Section.alxeEffective.menu.operation, - param: { - sectionCode: `${this.selected.code}` - } - }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.alxeEffective.doShow(operate, this.selected); - } + this.commitOperate(menuOperate.Section.alxeEffective, this.selected, [this.selected.code]).then((data)=>{ + this.$refs.alxeEffective.doShow(data.operate, data.selected); }); }, // 激活 active() { - const operate = { - start: true, - code: this.selected.code, - operation: OperationEvent.Section.active.menu.operation, - param: { - sectionCode: `${this.selected.code}` - } - }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.sectionControl.doShow(operate, this.selected); - } + this.commitOperate(menuOperate.Section.active, this.selected, [this.selected.code]).then((data)=>{ + this.$refs.sectionControl.doShow(data.operate, data.selected); }); }, // 区段计轴预复位 axlePreReset(selectType) { - const operate = { - start: true, - code: this.selected.code, - operation: OperationEvent.Section.axlePreReset.menu.operation, - param: { - sectionCode: selectType.code - } - }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.sectionControl.doShow(operate, this.selected); - // this.$refs.sectionCmdControl.doShow(operate, this.selected); - } + this.commitOperate(menuOperate.Section.axlePreReset, selectType, [selectType.code]).then((data)=>{ + this.$refs.sectionControl.doShow(data.operate, data.selected); }); }, // 区段计轴预复位 // axlePreReset() { - // const operate = { - // start: true, - // code: this.selected.code, - // operation: OperationEvent.Section.axlePreReset.menu.operation, - // param: { - // sectionCode: `${this.selected.code}` - // } - // }; - // this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - // if (valid) { - // this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - // this.$refs.sectionCmdControl.doShow(operate, this.selected); - // } + // this.commitOperate(menuOperate.Section.axlePreReset, this.selected, [this.selected.code]).then((data)=>{ + // this.$refs.sectionCmdControl.doShow(data.operate, data.selected); // }); // }, // 设置速度 setSpeed() { - const operate = { + this.commitOperate(menuOperate.Section.setSpeed, this.selected, [this.selected.code]).then((data)=>{ + this.$refs.speedLimitControl.doShow(data.operate, data.selected); + }); + }, + commitOperate(operate, selected, paramList) { + const step = { start: true, - code: this.selected.code, - operation: OperationEvent.Section.setSpeed.menu.operation, - param: { - sectionCode: `${this.selected.code}` - } + operation: operate.operation, + param:{} }; - this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { - if (valid) { - this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); - this.$refs.speedLimitControl.doShow(operate, this.selected); - } + operate.param.forEach((each, index)=>{ + step.param[each] = paramList[index]; + }); + const obj = this; + return new Promise(function(resolve, reject) { + obj.$store.dispatch('training/nextNew', step).then(({ valid }) => { + if (valid) { + obj.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); + resolve({operate:step, selected:selected}); + } + }); }); } } diff --git a/src/jmapNew/theme/beijing_01/menus/utils/menuOperate.js b/src/jmapNew/theme/beijing_01/menus/utils/menuOperate.js new file mode 100644 index 000000000..9befae7c6 --- /dev/null +++ b/src/jmapNew/theme/beijing_01/menus/utils/menuOperate.js @@ -0,0 +1,75 @@ +import Vue from 'vue'; +import store from '@/store'; +import CMD from '@/scripts/cmdPlugin/CommandEnum'; +import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; + +// 控制禁用 +export const menuOperate = { + Section:{ + active:{ + // 区段激活 + operation: OperationEvent.Section.active.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_ACTIVE + }, + alxeEffective:{ + // 确认计轴有效 + operation: OperationEvent.Section.alxeEffective.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_COMFIRMATION_AXLE + }, + split:{ + // 区段切除 + operation: OperationEvent.Section.split.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_CUT_OFF + }, + setSpeed:{ + // 设置速度 + operation: OperationEvent.Section.setSpeed.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_SET_LIMIT_SPEED + }, + axlePreReset:{ + // 区段计轴预复位 + operation: OperationEvent.Section.axlePreReset.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_AXIS_PRE_RESET + }, + fault:{ + // 区段故障解锁 + operation: OperationEvent.Section.fault.menu.operation, + param:['sectionCode'], + cmdType: CMD.Section.CMD_SECTION_FAULT_UNLOCK + } + } +}; + +// export function commitOperate(menuoperate, paramList, selected, callback) { +// return new Promise((resolve, reject) => { +// try { +// const operate = { +// start: true, +// operation: OperationEvent.Section.split.menu.operation, +// param: { +// sectionCode: `${this.selected.code}` +// } +// }; +// this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { +// if (valid) { +// this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); +// resolve(true); +// // callback({operate:operate, selected:selected}); +// // this.$refs.sectionControl.doShow(operate, this.selected); +// } +// }).catch((error) => { +// this.loading = false; +// this.doClose(); +// this.$refs.noticeInfo.doShow(operate, error.message); +// }); +// } catch (error) { +// reject(error); +// } +// }); + +// } diff --git a/src/jmapNew/theme/chengdu_01/menus/menuStationPlatform.vue b/src/jmapNew/theme/chengdu_01/menus/menuStationPlatform.vue index 3a24be1e8..10da19401 100644 --- a/src/jmapNew/theme/chengdu_01/menus/menuStationPlatform.vue +++ b/src/jmapNew/theme/chengdu_01/menus/menuStationPlatform.vue @@ -15,29 +15,29 @@
EUROPA - PLATFORM 2
-
Field Devices
-
Control Requests
-
Field Indications
+
现场设备
+
控制请求
+
现场指示
-
Platform
+
站台
- IN SERVICE
Adjust Dwell + 在服
调整停留时间
-
Not Communicating
+
无通信
-
Stopping Profile
+
停战配置文件
-
Northbound
Southbound
+
向北
向南
diff --git a/src/jmapNew/theme/chengdu_03/menus/menuButton.vue b/src/jmapNew/theme/chengdu_03/menus/menuButton.vue index aad987dfd..b55017800 100644 --- a/src/jmapNew/theme/chengdu_03/menus/menuButton.vue +++ b/src/jmapNew/theme/chengdu_03/menus/menuButton.vue @@ -184,10 +184,6 @@ export default { return CMD.Switch.CMD_SWITCH_NORMAL_POSITION; case this.Switch.reverse.button.operation: // 道岔反位 return CMD.Switch.CMD_SWITCH_REVERSE_POSITION; - case this.MixinCommand.block.button.operation: // 封锁 - return {}; - case this.MixinCommand.unblock.button.operation: // 解封 - return {}; case this.Signal.atsAutoControl.button.operation: // 自动控 return CMD.Signal.CMD_SIGNAL_OPEN_AUTO_SETTING; case this.Signal.humanControl.button.operation: // 人工控 @@ -198,7 +194,7 @@ export default { return CMD.Signal.CMD_SIGNAL_HUMAN_RELEASE_ROUTE; case this.Signal.arrangementRoute.button.operation: // 排列进路 return CMD.Signal.CMD_SIGNAL_SET_ROUTE; - case this.Signal.guide.button.operation: // 引导进路 + case this.Signal.guide.button.operation: // 办理引导 return CMD.Signal.CMD_SIGNAL_ROUTE_GUIDE; case this.Signal.reopenSignal.button.operation: return CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL; @@ -330,7 +326,9 @@ export default { operate.cmdType = CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL; operate.param = {signalCode: deviceList[0].code}; this.deviceList = []; - this.$store.dispatch('training/nextNew', newOperate).then(({ valid, response }) => {}); + this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch(() => { + this.$refs.noticeInfo.doShow(operate); + }); } } else if (deviceList.length === 2) { this.routeList.forEach(item => { @@ -338,7 +336,9 @@ export default { operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_ROUTE; operate.param = {routeCode: item.code}; this.deviceList = []; - this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}); + this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch(() => { + this.$refs.noticeInfo.doShow(operate); + }); } }); } @@ -418,6 +418,8 @@ export default { this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); this.$refs.password.doShow(operate); } + }).catch(() => { + this.$refs.noticeInfo.doShow(operate); }); } else { const operate = { @@ -433,6 +435,8 @@ export default { operate['operateNext'] = this.Command.close.password.operation; this.$refs.password.doShow(operate); } + }).catch(() => { + this.$refs.noticeInfo.doShow(operate); }); } } else if (deviceList.length === 2) { @@ -446,7 +450,9 @@ export default { if (item.startSignalCode === deviceList[0].code && item.endSignalCode === deviceList[1].code) { operate.param = {routeCode: item.code}; this.deviceList = []; - this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}); + this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch(() => { + this.$refs.noticeInfo.doShow(operate); + }); } }); } @@ -463,7 +469,8 @@ export default { operation: this.$store.state.menuOperation.buttonOperation }; if (this.routeData[route.code].settingGuide) { - operate.cmdType = CMD; + operate.cmdType = CMD.Signal.CMD_SIGNAL_CANCEL_GUIDE; + operate.param = {signalCode: model.code}; this.deviceList = []; this.$store.dispatch('training/nextNew', operate).then(({valid, response}) => {}); } else { @@ -558,7 +565,9 @@ export default { const operate = this.handelOperate(model); if (this.cmdTypeList.indexOf(model._type) >= 0) { this.deviceList = []; - this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}); + this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {}).catch(() => { + this.$refs.noticeInfo.doShow(operate); + }); } else { Handler.clear(); // 清空操作组 this.$store.dispatch('menuOperation/setButtonOperation', null); diff --git a/src/jmapNew/theme/haerbin_01/menus/menuBar.vue b/src/jmapNew/theme/haerbin_01/menus/menuBar.vue index f94446720..2ed61b32d 100644 --- a/src/jmapNew/theme/haerbin_01/menus/menuBar.vue +++ b/src/jmapNew/theme/haerbin_01/menus/menuBar.vue @@ -215,7 +215,7 @@ export default { diff --git a/src/views/newMap/newMapdraft/mapoperate/index.vue b/src/views/newMap/newMapdraft/mapoperate/index.vue index d05098b41..dc079ee2c 100644 --- a/src/views/newMap/newMapdraft/mapoperate/index.vue +++ b/src/views/newMap/newMapdraft/mapoperate/index.vue @@ -100,6 +100,14 @@ @setCenter="setCenter" /> + + +