From 69737a06f0e7ba60619eeb7331a96ad9fb6ecd83 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Fri, 15 Jan 2021 18:36:13 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=8C=BA=E6=AE=B5=20=E9=A2=9C=E8=89=B2?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/bejing_01.js | 1 - src/jmapNew/config/skinCode/chengdu_01.js | 1 - src/jmapNew/config/skinCode/chengdu_03.js | 1 - src/jmapNew/config/skinCode/foshan_01.js | 1 - src/jmapNew/config/skinCode/fuzhou_01.js | 1 - src/jmapNew/config/skinCode/haerbin_01.js | 1 - src/jmapNew/config/skinCode/nanjing_02.js | 13 ++++++++----- src/jmapNew/config/skinCode/ningbo_01.js | 1 - src/jmapNew/config/skinCode/ningbo_03.js | 1 - src/jmapNew/config/skinCode/race_01.js | 1 - src/jmapNew/config/skinCode/xian_01.js | 1 - src/jmapNew/config/skinCode/xian_02.js | 1 - 12 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/jmapNew/config/skinCode/bejing_01.js b/src/jmapNew/config/skinCode/bejing_01.js index 10941d5e3..40122e99c 100644 --- a/src/jmapNew/config/skinCode/bejing_01.js +++ b/src/jmapNew/config/skinCode/bejing_01.js @@ -96,7 +96,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#FFFFFF', // 区段路由锁定颜色 faultLockColor: '#006400', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#800080', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/chengdu_01.js b/src/jmapNew/config/skinCode/chengdu_01.js index f752f4185..a439fdc77 100644 --- a/src/jmapNew/config/skinCode/chengdu_01.js +++ b/src/jmapNew/config/skinCode/chengdu_01.js @@ -88,7 +88,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#3FFD46', // 区段进路锁定颜色 faultLockColor: '#006400', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#3FFD46', // 保护区段锁闭 blockColor: '#00FF00', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/chengdu_03.js b/src/jmapNew/config/skinCode/chengdu_03.js index b71ee8753..dc4f28df5 100644 --- a/src/jmapNew/config/skinCode/chengdu_03.js +++ b/src/jmapNew/config/skinCode/chengdu_03.js @@ -88,7 +88,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#3FFD46', // 区段进路锁定颜色 faultLockColor: '#006400', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#3FFD46', // 保护区段锁闭 blockColor: '#00FF00', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/foshan_01.js b/src/jmapNew/config/skinCode/foshan_01.js index 8a3028701..ae5e1df6e 100644 --- a/src/jmapNew/config/skinCode/foshan_01.js +++ b/src/jmapNew/config/skinCode/foshan_01.js @@ -88,7 +88,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#FFFFFF', // 区段路由锁定颜色 faultLockColor: '#00FF00', // 区段故障锁闭颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#800080', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/fuzhou_01.js b/src/jmapNew/config/skinCode/fuzhou_01.js index d395736a9..36288a20e 100644 --- a/src/jmapNew/config/skinCode/fuzhou_01.js +++ b/src/jmapNew/config/skinCode/fuzhou_01.js @@ -88,7 +88,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#FFFFFF', // 区段路由锁定颜色 faultLockColor: '#9B4A0A', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#800080', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/haerbin_01.js b/src/jmapNew/config/skinCode/haerbin_01.js index 3f942d866..6f41e0dc2 100644 --- a/src/jmapNew/config/skinCode/haerbin_01.js +++ b/src/jmapNew/config/skinCode/haerbin_01.js @@ -89,7 +89,6 @@ class SkinCode extends defaultStyle { faultLockColor: '#9B4A0A', // 区段故障锁定颜色 invalidColor: '#ff0000', // 计轴故障 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#000080', // 区段封锁颜色 深蓝色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index 51f977979..b8dea9229 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -82,22 +82,25 @@ class SkinCode extends defaultStyle { width: 5, // 区段宽度 beyondWidth: 0, // 区段宽超出宽度 invadeColor: '#EF0C08', // 区段侵入颜色 + spareColor: '#ffff00', // 区段空闲颜色 (黄色) - communicationOccupiedColor: '#ff0000', // 区段通信车占用颜色 红色 - unCommunicationOccupiedColor: '#ff0000', // 区段非通讯车占用颜色 红色 - routeLockColor: '#00FF00', // 区段路由锁定颜色 + communicationOccupiedColor: '#ff1f10', // 区段通信车占用颜色 红色 + unCommunicationOccupiedColor: '#A600A6', // 区段非通讯车占用颜色 紫色 + routeLockColor: '#00FF00', // 区段路由锁定颜色 空闲且被进路征用 + protectiveLockColor: '#9DFF6E', // 区段保护锁闭 + faultLockColor: '#9B4A0A', // 区段故障锁定颜色 + invalidColor: '#ff0000', // 计轴故障 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#0010FF', // 区段封锁颜色 深蓝色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 timeReleaseColor: '#ffff00', // 区段延时释放颜色 - protectiveLockColor: '#FFFF00', // 区段保护锁闭 protectiveTimeReleaseColor: '#0071C1', // 区段保护延时解锁 logicalColor: '#FFFF00', // 逻辑区段颜色 (未用) logicalTextColor: '#FFFFFF' // 逻辑区段名称颜色 (未用) + }, lineBorder: { // 哈尔滨点击背景 元素 z: -1, diff --git a/src/jmapNew/config/skinCode/ningbo_01.js b/src/jmapNew/config/skinCode/ningbo_01.js index 4bfc25034..5abd377af 100644 --- a/src/jmapNew/config/skinCode/ningbo_01.js +++ b/src/jmapNew/config/skinCode/ningbo_01.js @@ -88,7 +88,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#00ff00', // 区段进路锁定颜色 faultLockColor: 'white', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FFFFFF', // 保护区段锁闭 blockColor: '#d659d6', // 区段封锁颜色(淡紫色) atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/ningbo_03.js b/src/jmapNew/config/skinCode/ningbo_03.js index 3dc6468ed..338a87d3e 100644 --- a/src/jmapNew/config/skinCode/ningbo_03.js +++ b/src/jmapNew/config/skinCode/ningbo_03.js @@ -89,7 +89,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#C0C0C0', // 区段进路锁定颜色 faultLockColor: '#81007F', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FFFFFF', // 保护区段锁闭 blockColor: '#FE0000', // 区段封锁颜色(淡紫色) atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/race_01.js b/src/jmapNew/config/skinCode/race_01.js index 6afcfb219..5d9fedb1c 100644 --- a/src/jmapNew/config/skinCode/race_01.js +++ b/src/jmapNew/config/skinCode/race_01.js @@ -112,7 +112,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#FFFFFF', // 区段路由锁定颜色 faultLockColor: '#00FF00', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#800080', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/xian_01.js b/src/jmapNew/config/skinCode/xian_01.js index b9fe75947..710d19d85 100644 --- a/src/jmapNew/config/skinCode/xian_01.js +++ b/src/jmapNew/config/skinCode/xian_01.js @@ -96,7 +96,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#FFFFFF', // 区段路由锁定颜色 faultLockColor: '#9B4A0A', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) blockColor: '#800080', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 diff --git a/src/jmapNew/config/skinCode/xian_02.js b/src/jmapNew/config/skinCode/xian_02.js index 7aa0f33a0..738915a37 100644 --- a/src/jmapNew/config/skinCode/xian_02.js +++ b/src/jmapNew/config/skinCode/xian_02.js @@ -96,7 +96,6 @@ class SkinCode extends defaultStyle { routeLockColor: '#52BD5F', // 区段进路锁定颜色 faultLockColor: '#006400', // 区段故障锁定颜色 undefinedColor: '#0071C1', // 区段未定义颜色 - protectionLockedColor: '#3FFD46', // 保护区段锁闭 blockColor: '#7DC6C8', // 区段封锁颜色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 From 649691b1c3aa5e34d126e4a6f1e49adf4f6bcf24 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 15 Jan 2021 18:42:17 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E6=93=8D=E4=BD=9C=E8=A1=A8=E7=9B=98?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/nanjing_02/menus/menuButton.vue | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue index 5c289cf07..d3deb6379 100644 --- a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue +++ b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue @@ -269,8 +269,8 @@ export default { '01': 'Local', // 中心调度工作站 '02': 'Center' // 现地工作站 }; - this.modeMatch = true; if (this.selected._type) { + this.modeMatch = true; const control = this.getStationControl(this.selected); const type = State2SimulationMap[this.$store.state.training.prdType]; if (control.controlMode != type) { @@ -946,14 +946,14 @@ export default { { name: '' }, { name: '' }, { name: '' }, - { name: '强行站控', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu }, + { name: '强行站控', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu, securityCommand: true, mode: 'None' }, { name: '接收控制', cmdType: CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL, operate: OperationEvent.StationControl.requestStationControl.menu, show: false, disabledName: 'controlMode', mode: 'Center' }, { name: '交出控制', cmdType: CMD.ControlConvertMenu.CMD_CM_SURRENDER_CONTROL, operate: OperationEvent.StationControl.requestCentralControl.menu, show: false, disabledName: 'controlMode', mode: 'None' }, { name: '' }, { name: '' }, { name: '' }, { name: '' }, - { name: '关闭索引', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu } + { name: '关闭索引', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu, mode: 'None' } // { name: '关站信号', cmdType: CMD.Station.CMD_STATION_CLOSE_ALLSIGNAL, operate: OperationEvent.Station.closeAllSignal.menu, show: false } ] : [ From 63881d156c08a4d3e5ddf6a004ccdbbc374d9305 Mon Sep 17 00:00:00 2001 From: lVAL Date: Fri, 15 Jan 2021 18:52:28 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8C=87=E4=BB=A4?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/nanjing_02/menus/menuButton.vue | 1 - src/scripts/cmdPlugin/CommandEnum.js | 2 +- src/utils/baseUrl.js | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue index 0ea61e860..686cd0b04 100644 --- a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue +++ b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue @@ -956,7 +956,6 @@ export default { { name: '' }, { name: '' }, { name: '关闭索引', cmdType: '', operate: OperationEvent.StationControl.requestStationControl.menu } - // { name: '关站信号', cmdType: CMD.Station.CMD_STATION_CLOSE_ALLSIGNAL, operate: OperationEvent.Station.closeAllSignal.menu, show: false } ] : [ { name: '接收控制', cmdType: CMD.ControlConvertMenu.CMD_CM_RECEIVE_CONTROL, operate: OperationEvent.StationControl.requestStationControl.menuButton, show: false, disabledName: 'controlMode', mode: 'Center' }, diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 3dc08ce9d..07b9c61b0 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -21,7 +21,7 @@ export default { /** 故障解锁 */ CMD_SWITCH_FAULT_UNLOCK: {value:'Switch_Fault_Unlock', label: '故障解锁'}, /** 强解道岔*/ - CMD_SWITCH_FORCE_UNLOCK: {value:'', label: '强解道岔'}, + CMD_SWITCH_FORCE_UNLOCK: {value:'Switch_Force_Unlock', label: '强解道岔'}, /** 转动 */ CMD_SWITCH_TURN: {value:'Switch_Turn', label: '转动'}, /** 强扳 */ diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index 768654966..51ddbe296 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -2,9 +2,9 @@ export function getBaseUrl() { let BASE_API; if (process.env.NODE_ENV === 'development') { // BASE_API = 'https://api.joylink.club/jlcloud'; - // BASE_API = 'https://test.joylink.club/jlcloud'; + BASE_API = 'https://test.joylink.club/jlcloud'; // BASE_API = 'http://192.168.8.107:9000'; // 袁琪 - BASE_API = 'http://192.168.8.129:9000'; // 旭强 + // BASE_API = 'http://192.168.8.129:9000'; // 旭强 // BASE_API = 'http://192.168.8.119:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 // BASE_API = 'http://b29z135112.zicp.vip'; From fa412d10791f3b9c6f9df00d0c2b23852b738fba Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Mon, 18 Jan 2021 10:52:06 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E5=8D=97=E4=BA=AC=E4=BA=8C=E5=8F=B7?= =?UTF-8?q?=E7=BA=BF=20=E7=8A=B6=E6=80=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/haerbin_01.js | 3 ++- src/jmapNew/config/skinCode/nanjing_02.js | 2 +- src/jmapNew/shape/Section/index.js | 9 +++++++-- src/jmapNew/shape/Station/index.js | 6 ++++++ src/utils/baseUrl.js | 4 ++-- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/jmapNew/config/skinCode/haerbin_01.js b/src/jmapNew/config/skinCode/haerbin_01.js index 6f41e0dc2..73b0881ef 100644 --- a/src/jmapNew/config/skinCode/haerbin_01.js +++ b/src/jmapNew/config/skinCode/haerbin_01.js @@ -80,6 +80,7 @@ class SkinCode extends defaultStyle { line: { z: 0, width: 5, // 区段宽度 + routeBlockFlashing: true, // 进路锁闭区段封锁闪烁 beyondWidth: 0, // 区段宽超出宽度 invadeColor: '#EF0C08', // 区段侵入颜色 spareColor: '#ffff00', // 区段空闲颜色 (黄色) @@ -390,7 +391,7 @@ class SkinCode extends defaultStyle { borderColor:'', // 字体边框颜色 textBorderWidth:1 // 字体边框宽度 }, - + syncCentralizeStation: true, // 集中站和下辖车站控制权状态同步 kmPostShow: true, // 公里标显示 kilometerPosition: 'up', // 公里标朝向 text: { diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index b8dea9229..b7eecc54c 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -437,7 +437,7 @@ class SkinCode extends defaultStyle { borderColor:'', // 字体边框颜色 textBorderWidth:1 // 字体边框宽度 }, - + syncCentralizeStation: true, // 集中站和下辖车站控制权状态同步 kmPostShow: true, // 公里标显示 kilometerPosition: 'up', // 公里标朝向 text: { diff --git a/src/jmapNew/shape/Section/index.js b/src/jmapNew/shape/Section/index.js index ceb7c15e6..531e381af 100644 --- a/src/jmapNew/shape/Section/index.js +++ b/src/jmapNew/shape/Section/index.js @@ -89,6 +89,7 @@ export default class Section extends Group { this.line.setCrossUnBlock(); this.line.stopAnimation(true); this.sectionBlock && this.sectionBlock.hide(); // 因此特殊区段 + this.sectionBlock && this.sectionBlock.stopAnimation(); this.line.setStyle({ stroke: this.style.Section.line.spareColor, lineWidth: this.style.Section.line.width @@ -173,9 +174,13 @@ export default class Section extends Group { } /** 封锁 06*/ - block() { + block(routeLock) { if (this.sectionBlock) { this.model.type !== '03' && this.sectionBlock.show(); + routeLock && this.style.Section.line.routeBlockFlashing && this.sectionBlock.animateStyle(true, [ + { time: 500, styles: { stroke: this.style.backgroundColor } }, + { time: 1000, styles: { stroke: this.style.Section.line.blockColor } } + ]); } else { this.line && this.line.setStyle({ stroke: this.style.Section.line.blockColor, @@ -318,7 +323,7 @@ export default class Section extends Group { /** 计轴故障 */ model.invalid && this.invalid(); /** 轨道封锁 */ - model.blockade && this.block(); + model.blockade && this.block(model.routeLock); /** 非通信车占用状态 */ model.nctOccupied && this.unCommunicationOccupied(); /** 通信车占用状态 */ diff --git a/src/jmapNew/shape/Station/index.js b/src/jmapNew/shape/Station/index.js index ab350ced1..b222d549d 100644 --- a/src/jmapNew/shape/Station/index.js +++ b/src/jmapNew/shape/Station/index.js @@ -433,6 +433,12 @@ export default class Station extends Group { if (!this.isShowShape) return; this.recover(); model.controlMode && this['handle' + model.controlMode](); + if (this.style.Station.syncCentralizeStation && model.controlMode) { + model.chargeStationCodeList.forEach(item => { + const device = store.getters['map/getDeviceByCode'](item); + device && device.instance && device.instance['handle' + model.controlMode](); + }); + } if (model.tbStrategyId) { store.state.map.map.tbStrategyList.forEach(item => { if (item.stationCode == model.code) { diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index 768654966..51ddbe296 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -2,9 +2,9 @@ export function getBaseUrl() { let BASE_API; if (process.env.NODE_ENV === 'development') { // BASE_API = 'https://api.joylink.club/jlcloud'; - // BASE_API = 'https://test.joylink.club/jlcloud'; + BASE_API = 'https://test.joylink.club/jlcloud'; // BASE_API = 'http://192.168.8.107:9000'; // 袁琪 - BASE_API = 'http://192.168.8.129:9000'; // 旭强 + // BASE_API = 'http://192.168.8.129:9000'; // 旭强 // BASE_API = 'http://192.168.8.119:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 // BASE_API = 'http://b29z135112.zicp.vip'; From f60054ccad6c8d077ac5fedd58fccc2745686752 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Mon, 18 Jan 2021 11:29:03 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E7=8E=B0=E5=9C=B0=E5=88=87=E8=A1=8C?= =?UTF-8?q?=E8=B0=83=E5=90=8E=20=E8=BD=A6=E7=AB=99=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/modules/socket.js | 6 ++++++ src/views/newMap/jlmapNew/index.vue | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/store/modules/socket.js b/src/store/modules/socket.js index 23738c92f..9bd695c6b 100644 --- a/src/store/modules/socket.js +++ b/src/store/modules/socket.js @@ -369,6 +369,9 @@ const socket = { }, setIsFirst:(state, isFirst)=>{ state.isFirst = isFirst; + }, + clearSimulationRoleList: (state)=>{ + state.simulationRoleList = []; } }, @@ -440,6 +443,9 @@ const socket = { }, setIsFirst:({ commit }, isFirst) => { commit('setIsFirst', isFirst); + }, + clearSimulationRoleList:({ commit }) => { + commit('clearSimulationRoleList'); } } }; diff --git a/src/views/newMap/jlmapNew/index.vue b/src/views/newMap/jlmapNew/index.vue index 84c4a0e9f..9052adce8 100644 --- a/src/views/newMap/jlmapNew/index.vue +++ b/src/views/newMap/jlmapNew/index.vue @@ -219,6 +219,7 @@ export default { EventBus.$off('refresh'); EventBus.$off('viewLoading'); EventBus.$off('viewProgressAt'); + this.$store.dispatch('socket/clearSimulationRoleList'); this.$store.dispatch('map/mapClear'); if (this.$jlmap) { this.$jlmap.dispose(); @@ -393,7 +394,6 @@ export default { if (path.includes('/practiceDisplay')) { if (em.deviceType == 'StationStand') { runPassenger(this.$route.query.group, em.deviceCode).then(netdata => { - console.log(netdata); if (netdata.data) { const routeData = this.$router.resolve({ path:'/jlmap3d/trafficplan', @@ -413,7 +413,6 @@ export default { if (em.deviceType == 'Train') { runPassenger(this.$route.query.group, em.deviceCode).then(netdata => { - console.log(netdata); if (netdata.data) { const routeData = this.$router.resolve({ path:'/jlmap3d/traffictrain', From 5687ffc5a875f9c85d78fd74eb4e89391f1c94f4 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Jan 2021 13:37:45 +0800 Subject: [PATCH 06/16] =?UTF-8?q?=E5=8D=97=E4=BA=AC=E4=BA=8C=E5=8F=B7?= =?UTF-8?q?=E7=BA=BF=20=E5=8C=BA=E6=AE=B5=20=E8=BD=A8=E5=8C=BA=E8=AE=BE?= =?UTF-8?q?=E9=99=90=20=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/nanjing_02.js | 2 +- .../theme/nanjing_02/menus/menuButton.vue | 63 ++++++------------- 2 files changed, 19 insertions(+), 46 deletions(-) diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index b8dea9229..58133de37 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -88,12 +88,12 @@ class SkinCode extends defaultStyle { unCommunicationOccupiedColor: '#A600A6', // 区段非通讯车占用颜色 紫色 routeLockColor: '#00FF00', // 区段路由锁定颜色 空闲且被进路征用 protectiveLockColor: '#9DFF6E', // 区段保护锁闭 + blockColor: '#0010FF', // 区段封锁颜色 深蓝色 faultLockColor: '#9B4A0A', // 区段故障锁定颜色 invalidColor: '#ff0000', // 计轴故障 undefinedColor: '#0071C1', // 区段未定义颜色 - blockColor: '#0010FF', // 区段封锁颜色 深蓝色 atcExcisionColor: '#A0522D', // 区段atc切除颜色 atsExcisionColor: '#A0522D', // 区段ats切除颜色 timeReleaseColor: '#ffff00', // 区段延时释放颜色 diff --git a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue index 0ea61e860..46a173ed0 100644 --- a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue +++ b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue @@ -197,7 +197,7 @@ export default { data() { return { tempData: [], - speedList: [{label: '15km/h', value: 15}, {label: '25km/h', value:25}, {label: '45km/h', value:45}, {label: '60km/h', value: 60}], + // speedList: [{label: '15km/h', value: 15}, {label: '25km/h', value:25}, {label: '45km/h', value:45}, {label: '60km/h', value: 60}], speedLimitValue: 15, oldDevice: null, // 上一次点击元素 canCommand: true, @@ -223,7 +223,6 @@ export default { stationParamList: [], standParamList: [], routeParamList: [], - directionRodParamList: [], paramConfirm: false, secondConfirm: false, paramIndex: -1, @@ -345,9 +344,6 @@ export default { this.handleStandMenu(); } break; - case 'DirectionRod': - this.handleDirectionRodMenu(); - break; } } }).catch((error) => { @@ -522,8 +518,8 @@ export default { this.oldDevice = this.selectedObj; this.centralizedStationList = new Array(15).fill({}); - this.sectionParamList.forEach((swicth, index) => { - this.centralizedStationList[index] = swicth; + this.sectionParamList.forEach((section, index) => { + this.centralizedStationList[index] = section; }); this.pushTempData([this.selectedObj]); @@ -531,32 +527,6 @@ export default { sectionCode: this.selectedObj.code }; }, - handleDirectionRodMenu() { - this.clearAllMenuShow(); - this.deviceHighLight(this.oldDevice, false); - this.deviceHighLight(this.selectedObj, true); - this.oldDevice = this.selectedObj; - this.centralizedStationList = new Array(15).fill({}); - this.directionRodParamList.forEach((directionRod, index) => { - if (this.selectedObj.right && this.selectedObj.reversed && directionRod.name === '切换左向') { - directionRod['disabled'] = true; - } else if (!this.selectedObj.right && this.selectedObj.reversed && directionRod.name === '切换右向') { - directionRod['disabled'] = true; - } else if (this.selectedObj.right && !this.selectedObj.reversed && directionRod.name === '切换右向') { - directionRod['disabled'] = true; - } else if (!this.selectedObj.right && !this.selectedObj.reversed && directionRod.name === '切换左向') { - directionRod['disabled'] = true; - } else { - directionRod['disabled'] = false; - } - this.centralizedStationList[index] = directionRod; - }); - - this.pushTempData([this.selectedObj]); - this.param = { - code: `${this.selectedObj.startStationCode}-${this.selectedObj.endStationCode}-${this.selectedObj.right}` - }; - }, handleBasicMenu() { this.deviceHighLight(this.oldDevice, false); if (this.oldClickObj) { @@ -645,7 +615,10 @@ export default { } if (this.cmdType == CMD.Section.CMD_SECTION_SET_LIMIT_SPEED || this.cmdType == CMD.Switch.CMD_SWITCH_SET_LIMIT_SPEED) { - this.param.speedLimitValue = this.speedLimitValue; + if (this.operate == OperationEvent.Section.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] = { @@ -653,6 +626,7 @@ export default { cmdType: this.cmdType, operate: OperationEvent.StationControl.requestStationControl.menu, next: true, + param:{speedLimitValue:el}, value: el }; }); @@ -664,7 +638,6 @@ export default { if (row.next) { this.pushTempData([row]); } - const step = {}; if (this.tempData.length) { row.show = true; @@ -672,6 +645,9 @@ export default { this.cmdType = row.cmdType; this.canCommand = false; step.operation = this.operate; + if (row.param) { + this.param = row.param; + } step.param = this.param; this.$store.dispatch('training/nextNew', step).then(({ valid }) => { if (valid) { @@ -695,9 +671,9 @@ export default { if (!this.securityCommand) { step.over = true; step.cmdType = this.cmdType; - } + } - this.pushTempData([]) + this.pushTempData([]); this.$store.dispatch('training/nextNew', step).then(({ valid }) => { if (valid && this.securityCommand) { this.secondConfirm = true; @@ -771,7 +747,8 @@ export default { this.operate = ''; // 清空指令 this.cmdType = ''; this.securityCommand = ''; - this.speedLimitValue = 15; + // this.speedLimitValue = 15; + this.speedLimitValue = ''; this.secondConfirm = false; this.cr1Confrim = false; if (this.oldClickObj) { @@ -805,9 +782,9 @@ export default { // this.formModelSectionName = this.trainModel.sectionModel.name; // this.formModelNewTrip = ''; }, - setSpeedLimitValue(val) { - this.speedLimitValue = val; - }, + // setSpeedLimitValue(val) { + // this.speedLimitValue = val; + // }, pushTempData(list) { this.tempData = []; list.forEach(el => { @@ -974,10 +951,6 @@ export default { { 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.directionRodParamList = [ - { name: '切换左向', cmdType: CMD.DirectionRod.CMD_DIRECTION_CHANGE, operate: OperationEvent.StationStand.setDetainTrain.menuButton, show: false }, - { name: '切换右向', cmdType: CMD.DirectionRod.CMD_DIRECTION_CHANGE, operate: OperationEvent.StationStand.setDetainTrain.menuButton, show: false } - ]; this.routeParamList = [ { name: '排列进路', cmdType: CMD.Signal.CMD_SIGNAL_SET_ROUTE, operate: OperationEvent.Signal.arrangementRoute.menuButton, show: false }, { name: '取消进路', cmdType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE, operate: OperationEvent.Signal.cancelTrainRoute.menuButton, show: false } From 6aea2334e66fb4137f62b728f02f05f9506fa38b Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Mon, 18 Jan 2021 14:10:55 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E5=8D=97=E4=BA=AC=E4=BA=8C=E5=8F=B7?= =?UTF-8?q?=E7=BA=BF=20=E6=8E=A7=E5=88=B6=E6=A8=A1=E5=BC=8Fnone=20?= =?UTF-8?q?=E8=BD=A6=E7=AB=99=E5=AD=97=E4=BD=93=E9=97=AA=E7=83=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/haerbin_01.js | 3 ++- src/jmapNew/config/skinCode/nanjing_02.js | 7 ++++-- src/jmapNew/shape/Station/EStationText.js | 10 +++++++- src/jmapNew/shape/Station/index.js | 28 +++++++++++------------ 4 files changed, 29 insertions(+), 19 deletions(-) diff --git a/src/jmapNew/config/skinCode/haerbin_01.js b/src/jmapNew/config/skinCode/haerbin_01.js index 73b0881ef..10dea3cf8 100644 --- a/src/jmapNew/config/skinCode/haerbin_01.js +++ b/src/jmapNew/config/skinCode/haerbin_01.js @@ -389,7 +389,8 @@ class SkinCode extends defaultStyle { fontWeight:'normal', // 字体粗细 textPadding:[2, 6], // 字体边距 borderColor:'', // 字体边框颜色 - textBorderWidth:1 // 字体边框宽度 + textBorderWidth:1, // 字体边框宽度 + noneModeColor: '#FF0' // 无模式时字体颜色 }, syncCentralizeStation: true, // 集中站和下辖车站控制权状态同步 kmPostShow: true, // 公里标显示 diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index b7eecc54c..8c5e63eb3 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -428,14 +428,17 @@ class SkinCode extends defaultStyle { } }; this[deviceType.Station] = { - // 哈尔滨一号线 车站元素 车站名称 + // 车站元素 车站名称 elemnetType:['stationText'], stationText:{ z:0, fontWeight:'normal', // 字体粗细 textPadding:[2, 6], // 字体边距 borderColor:'', // 字体边框颜色 - textBorderWidth:1 // 字体边框宽度 + textBorderWidth:1, // 字体边框宽度 + noneModeFlash: true, // 无控制权模式字体闪烁 + centerModeColor: '#1fdc1f', // 中控字体颜色 + localModeColor: '#fff'// 站控字体颜色 }, syncCentralizeStation: true, // 集中站和下辖车站控制权状态同步 kmPostShow: true, // 公里标显示 diff --git a/src/jmapNew/shape/Station/EStationText.js b/src/jmapNew/shape/Station/EStationText.js index e9f2377b2..19542d1e4 100644 --- a/src/jmapNew/shape/Station/EStationText.js +++ b/src/jmapNew/shape/Station/EStationText.js @@ -5,6 +5,7 @@ class EStationText extends Group { constructor(model) { super(); this.model = model; + this.style = model.style; this.create(); } @@ -64,7 +65,14 @@ class EStationText extends Group { setState() { } - + setAnimateStyle(noneBeforeMode) { + this.stopAnimate(); + const color = noneBeforeMode === 'Center' ? this.style.Station.stationText.centerModeColor : this.style.Station.stationText.localModeColor; + this.stationName.animateStyle(true).when(500, {textFill: '#000'}).when(1000, {textFill: color}).when(1500, {textFill: '#000'}).start(); + } + stopAnimate() { + this.stationName.stopAnimation(true); + } setColor(color) { const style = this.model.style; if (style.Station.StationControl.disPlayNone) { diff --git a/src/jmapNew/shape/Station/index.js b/src/jmapNew/shape/Station/index.js index b222d549d..ac8da8e23 100644 --- a/src/jmapNew/shape/Station/index.js +++ b/src/jmapNew/shape/Station/index.js @@ -26,6 +26,7 @@ export default class Station extends Group { this.z = 40; this.model = model; this.style = style; + this.noneBeforeMode = ''; this.isShowShape = true; this.create(); this.createTurnBack(); // 创建按图折返 @@ -351,6 +352,7 @@ export default class Station extends Group { } handleCenter() { // 中控 + this.noneBeforeMode = 'Center'; this.emergencyControl && this.emergencyControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.substationControl && this.substationControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.centerControl && this.centerControl.setColor(this.style.Station.StationControl.lamp.greenColor); @@ -368,6 +370,7 @@ export default class Station extends Group { } handleLocal() { // 站控 + this.noneBeforeMode = 'Local'; this.emergencyControl && this.emergencyControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.substationControl && this.substationControl.setColor(this.style.Station.StationControl.lamp.yellowColor); this.substationControl && this.substationControl.setTextColor(this.style.Station.StationControl.lamp.yellowColor); // 文字颜色 @@ -400,22 +403,14 @@ export default class Station extends Group { } handleNone() { // 空 - // if (this.style.Station.StationControl.disPlayNone) { // 没有控制时显示 黄色 - // this.stationText && this.stationText.setStyle('textFill', '#FFFF00'); - // if (this.model.subheadDisplay) { // 副标题 - // this.subheadText && this.subheadText.setStyle('textFill', '#FFFF00'); - // } - // } - this.stationText.setColor('#FFFF00'); + if (this.style.Station.stationText.noneModeColor) { + this.stationText.setColor(this.style.Station.stationText.noneModeColor); + } + if (this.style.Station.stationText.noneModeFlash) { + this.stationText.setAnimateStyle(this.noneBeforeMode); + } } - // /** 恢复初始状态*/ - // recover() { - // const currentTypeList = this.style.Station.elemnetType; - // currentTypeList.forEach(element => { - // this[element].recover(); - // }); - // } recover() { this.emergencyControl && this.emergencyControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.emergencyControl && this.emergencyControl.setTextColor(this.style.Station.StationControl.text.fontColor); @@ -426,6 +421,7 @@ export default class Station extends Group { this.substationArrowsControl && this.substationArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.emergencyArrowsControl && this.emergencyArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor); + this.stationText && this.stationText.stopAnimate(); } // 设置状态 @@ -433,9 +429,11 @@ export default class Station extends Group { if (!this.isShowShape) return; this.recover(); model.controlMode && this['handle' + model.controlMode](); - if (this.style.Station.syncCentralizeStation && model.controlMode) { + if (this.style.Station.syncCentralizeStation && model.controlMode && model.centralized) { model.chargeStationCodeList.forEach(item => { const device = store.getters['map/getDeviceByCode'](item); + device.controlMode = model.controlMode; + device && device.instance && device.instance.recover(); device && device.instance && device.instance['handle' + model.controlMode](); }); } From d322aad5d44c6fe9058b123b317c348282a55535 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Jan 2021 15:16:00 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E5=8D=97=E4=BA=AC=E4=BA=8C=E5=8F=B7?= =?UTF-8?q?=E7=BA=BF=20=E7=AB=99=E5=8F=B0=E5=AE=89=E5=85=A8=E9=97=A8=20?= =?UTF-8?q?=E9=80=9A=E4=BF=A1=E6=AD=A3=E5=B8=B8=E5=BC=80=E5=90=AF=E7=8A=B6?= =?UTF-8?q?=E6=80=81=20=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/nanjing_02.js | 2 ++ src/jmapNew/shape/Psd/EHorizontal2Door.js | 9 ++++++++ .../shape/StationStand/safeStand/EGapStand.js | 23 +++++++++++++++++-- .../theme/nanjing_02/menus/menuButton.vue | 3 ++- 4 files changed, 34 insertions(+), 3 deletions(-) diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index 42ba15a5c..86985da35 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -261,6 +261,7 @@ class SkinCode extends defaultStyle { horizontal2Door: { // 屏蔽门 z:0, height: 3, // 站台屏蔽门高度 + special:true, // 特殊屏蔽门 width: 60, distance: 8, // 站台和屏蔽门之间的距离 defaultColor: '#fff', // 屏蔽门默认颜色 @@ -276,6 +277,7 @@ class SkinCode extends defaultStyle { // 层级 z:0, spareColor: '#00FFFF', // 站台空闲颜色 + openColor: '#00FF00', // 站台打开颜色 jumpStopColor: '#9A99FF', // 站台跳停颜色 designatedJumpStopColor: 'lightSkyBlue', // 站台指定列车跳停颜色 headFontSize: 11, // 站台首端字体大小 diff --git a/src/jmapNew/shape/Psd/EHorizontal2Door.js b/src/jmapNew/shape/Psd/EHorizontal2Door.js index a4111ae73..8998156f4 100644 --- a/src/jmapNew/shape/Psd/EHorizontal2Door.js +++ b/src/jmapNew/shape/Psd/EHorizontal2Door.js @@ -1,5 +1,6 @@ import Group from 'zrender/src/container/Group'; import Rect from 'zrender/src/graphic/shape/Rect'; +import store from '@/store/index'; class EHorizontal2Door extends Group { constructor(model) { @@ -62,10 +63,18 @@ class EHorizontal2Door extends Group { } else { if (model.screenDoorOpenStatus == 0) { // 开门 + if (style.Psd.horizontal2Door.special) { + const stationStand = store.getters['map/getDeviceByCode'](this.model.modelData.standCode); + stationStand && stationStand.instance.setState({screenDoorOpenStatus:0}); + } this.stand1.setStyle('fill', style.transparentColor); this.stand2.setStyle('fill', style.transparentColor); } else { // 关门 + if (style.Psd.horizontal2Door.special) { + const stationStand = store.getters['map/getDeviceByCode'](this.model.modelData.standCode); + stationStand && stationStand.instance.setState({screenDoorOpenStatus:1}); + } this.stand1.setStyle('fill', style.Psd.horizontal2Door.defaultColor); this.stand2.setStyle('fill', style.Psd.horizontal2Door.defaultColor); } diff --git a/src/jmapNew/shape/StationStand/safeStand/EGapStand.js b/src/jmapNew/shape/StationStand/safeStand/EGapStand.js index dd8abf41b..dcf1b128d 100644 --- a/src/jmapNew/shape/StationStand/safeStand/EGapStand.js +++ b/src/jmapNew/shape/StationStand/safeStand/EGapStand.js @@ -75,8 +75,10 @@ class EGapStand extends Group { recover() { const style = this.model.style; - this.stand1 && this.stand1.setStyle({ fill:style.StationStand.gapStand.spareColor }); - this.stand2 && this.stand2.setStyle({ fill:style.StationStand.gapStand.spareColor }); + if (!style.Psd.horizontal2Door.special) { + this.stand1 && this.stand1.setStyle({ fill:style.StationStand.gapStand.spareColor }); + this.stand2 && this.stand2.setStyle({ fill:style.StationStand.gapStand.spareColor }); + } this.standText && this.standText.setStyle({ textFill:style.StationStand.gapStand.textFill }); } setColor(color) { @@ -84,8 +86,25 @@ class EGapStand extends Group { this.stand2 && this.stand2.setStyle({ fill:color }); this.standText && this.standText.setStyle({ textFill:color }); } + setOpen() { + const style = this.model.style; + this.stand1 && this.stand1.setStyle({ fill:style.StationStand.gapStand.openColor }); + this.stand2 && this.stand2.setStyle({ fill:style.StationStand.gapStand.openColor }); + } + setClose() { + const style = this.model.style; + this.stand1 && this.stand1.setStyle({ fill:style.StationStand.gapStand.spareColor }); + this.stand2 && this.stand2.setStyle({ fill:style.StationStand.gapStand.spareColor }); + } setState(model) { // 设置灰显 + if (model.screenDoorOpenStatus != undefined) { + if (model.screenDoorOpenStatus == 0) { + this.setOpen(); + } else { + this.setClose(); + } + } model.noStatus && this.setColor('#7F7F7F'); } } diff --git a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue index d64238a2c..49641e586 100644 --- a/src/jmapNew/theme/nanjing_02/menus/menuButton.vue +++ b/src/jmapNew/theme/nanjing_02/menus/menuButton.vue @@ -615,7 +615,8 @@ export default { } if (this.cmdType == CMD.Section.CMD_SECTION_SET_LIMIT_SPEED || this.cmdType == CMD.Switch.CMD_SWITCH_SET_LIMIT_SPEED) { - if (this.operate == OperationEvent.Section.setSpeed.menuButton.operation) { + if (this.operate == OperationEvent.Section.setSpeed.menuButton.operation || + this.operate == OperationEvent.Switch.setSpeed.menuButton.operation) { this.canCommand = true; } // this.param.speedLimitValue = this.speedLimitValue; From 5f3300e889cf0afd9c931aca04d9440f115f4e67 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Mon, 18 Jan 2021 15:41:28 +0800 Subject: [PATCH 09/16] =?UTF-8?q?=E4=BF=A1=E5=8F=B7=E6=9C=BA=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=89=80=E5=B1=9E=E8=BD=A6=E7=AB=99&=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../newMapdraft/mapoperate/checkboxDraft.vue | 95 ++++++++++++++++--- .../newMapdraft/mapoperate/signal/index.vue | 1 + 2 files changed, 81 insertions(+), 15 deletions(-) diff --git a/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue b/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue index b9ff2bb1e..d5f92089e 100644 --- a/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue +++ b/src/views/newMap/newMapdraft/mapoperate/checkboxDraft.vue @@ -1,7 +1,41 @@ @@ -47,6 +67,9 @@ export default { data() { return { stationCode: '', + belongStationCode: '', + activeName: 'first', + showList: [], modelList: [ { type: 'Section', @@ -63,6 +86,13 @@ export default { name: '信号机列表', list: [] } + ], + modelSignalList: [ + { + type: 'Signal', + name: '信号机列表', + list: [] + } ] }; }, @@ -86,8 +116,16 @@ export default { // this.$emit('setCenter', code); // this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code)); // }, + handleClick() { + if (this.activeName === 'first') { + this.showList = this.modelList; + } else { + this.showList = this.modelSignalList; + } + }, deviceSelect(selected) { if (selected && selected._type.toUpperCase() == 'CheckBox'.toUpperCase()) { + this.activeName = 'first'; this.clearModelList(); let count = 0; this.seclectDeviceList.forEach(item => { @@ -99,6 +137,7 @@ export default { this.modelList[1].list.push(item); } else if (item._type == 'Signal') { this.modelList[2].list.push(item); + this.modelSignalList[0].list.push(item); } if (item.stationCode == this.seclectDeviceList[0].stationCode) { count++; @@ -109,12 +148,16 @@ export default { } else { this.stationCode = ''; } + this.belongStationCode = this.stationList[0].code; + this.showList = this.modelList; } }, clearModelList() { + this.showList = []; this.modelList.forEach(item => { item.list = []; }); + this.modelSignalList[0].list = []; }, // 删除当前选中 delList(model, list) { @@ -152,9 +195,24 @@ export default { this.stationCode = ''; } }, + handleBelongStationCode() { + if (this.belongStationCode && this.modelSignalList[0].list.length) { + const models = []; + this.modelSignalList[0].list.forEach(item => { + const Model = deepAssign({}, this.$store.getters['map/getDeviceByCode'](item.code)); + Model.belongStationCode = this.belongStationCode; + models.push(Model); + }); + this.$emit('updateMapModel', models); + this.$message.success('设置所属车站成功!'); + this.belongStationCode = ''; + } + }, clearList() { // 清空数据 this.stationCode = ''; + this.belongStationCode = ''; this.$store.commit('map/setSeclectDeviceList', []); + this.showList = []; this.modelList = [ { type: 'Section', @@ -172,6 +230,13 @@ export default { list: [] } ]; + this.modelSignalList = [ + { + type: 'Signal', + name: '信号机列表', + list: [] + } + ]; }, mouseenter(model) { if (model._type == 'Section') { diff --git a/src/views/newMap/newMapdraft/mapoperate/signal/index.vue b/src/views/newMap/newMapdraft/mapoperate/signal/index.vue index 3470f9dfd..32ab899ba 100644 --- a/src/views/newMap/newMapdraft/mapoperate/signal/index.vue +++ b/src/views/newMap/newMapdraft/mapoperate/signal/index.vue @@ -147,6 +147,7 @@ export default { item: [ { prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList }, { prop: 'interlockStationCode', label: '所属联锁站', type: 'select', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.ciStationList}, + { prop: 'belongStationCode', label: '所属车站', type: 'select', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.stationList }, { prop: 'uniqueName', label: this.$t('map.signalUniqueName'), type: 'input' }, { prop: 'sectionCode', label: this.$t('map.belongsSection'), type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.signalSectionList, hover: this.hover, buttonType: 'signalSection', buttonShowType: this.signalSectionShow }, { prop: 'sectionOffset', label: this.$t('map.signalOffset'), type: 'number', min: 0, placeholder: this.$t('tip.meter') } From 7d61451fa989b7eb2b2cfdd16b628fdaa3bac70e Mon Sep 17 00:00:00 2001 From: lVAL Date: Mon, 18 Jan 2021 15:48:05 +0800 Subject: [PATCH 10/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E5=BA=94=E7=AD=94?= =?UTF-8?q?=E5=99=A8=20=E5=88=9B=E5=BB=BA=E7=9A=84=E5=87=A0=E4=B8=AA?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=97=AE=E9=A2=98=EF=BC=8C=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E5=8D=97=E4=BA=AC=E7=BA=BF=E8=B7=AF=E4=B8=AD=E5=BF=83=E5=B7=A6?= =?UTF-8?q?=E9=94=AE=E5=BC=B9=E7=AA=97=EF=BC=8C=E5=8F=B3=E9=94=AE=E4=B8=8D?= =?UTF-8?q?=E5=BC=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 1 + .env.production | 1 + .env.staging | 1 + src/jmapNew/shape/Responder/index.js | 46 ++++++++++--------- src/scripts/ConstDic.js | 28 +++++------ .../newMap/mapsystemNew/common/index.vue | 32 ++++--------- .../mapoperate/responder/responderBatch.vue | 32 +++++++++++-- .../mapoperate/responder/responderCreate.vue | 13 ++++-- .../mapoperate/responder/responderModel.vue | 8 ++-- .../newMapdraft/mapoperate/responder/utils.js | 8 ++-- vue.config.js | 2 +- 11 files changed, 92 insertions(+), 80 deletions(-) diff --git a/.env.development b/.env.development index b387ff05b..ddb549af1 100644 --- a/.env.development +++ b/.env.development @@ -19,3 +19,4 @@ 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 diff --git a/.env.production b/.env.production index 71363ca9f..4c64df13f 100644 --- a/.env.production +++ b/.env.production @@ -5,3 +5,4 @@ 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 diff --git a/.env.staging b/.env.staging index d1042b068..9277c1c33 100644 --- a/.env.staging +++ b/.env.staging @@ -5,3 +5,4 @@ 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 diff --git a/src/jmapNew/shape/Responder/index.js b/src/jmapNew/shape/Responder/index.js index e9610921d..16d97da9e 100644 --- a/src/jmapNew/shape/Responder/index.js +++ b/src/jmapNew/shape/Responder/index.js @@ -40,16 +40,20 @@ export default class Responder extends Group { create() { const model = this.model; - const responderStyle = this.style.Responder || defaultStyle; - const distanceX = responderStyle.distance * Math.cos(model.rotate-90); - const distanceY = responderStyle.distance * Math.sin(model.rotate-90); + const responderStyle = this.style.Responder || defaultStyle; + const radian = -Math.PI / 180 * Number(model.rotate-90); + const distanceX = -responderStyle.distance * Math.cos(radian); + const distanceY = -responderStyle.distance * Math.sin(radian); const blockWidth = responderStyle.block.width || 5; const blockHeight = responderStyle.block.height || 12; const blockStyle = responderStyle.block.mapStyle[model.type] || { fill: '#fff'}; const blockX = model.position.x - blockWidth / 2 - distanceX; - const blockY = model.position.y - blockHeight / 2 - distanceY; - const textX = blockX + model.textOffset.x; - const textY = blockY + model.textOffset.y; + const blockY = model.position.y - blockHeight / 2 - distanceY; + const textRadian = -Math.PI / 180 * Number(180-model.textRotate); + const textDistanceX = model.textOffset.y * Math.sin(textRadian) + model.textOffset.x * Math.cos(textRadian); + const textDistanceY = model.textOffset.y * Math.cos(textRadian) - model.textOffset.x * Math.sin(textRadian); + const textX = blockX + textDistanceX + blockWidth; + const textY = blockY + textDistanceY; const textName = `${model.type}-${model.name}`; const textFill = responderStyle.text.textFill; const origin = [model.position.x, model.position.y]; @@ -100,29 +104,29 @@ export default class Responder extends Group { } }); - this.text = new Text({ - zlevel: this.zlevel, - z: this.z + 1, - style: { - x: textX, - y: textY, - text: textName, - fontFamily: this.style.fontFamily, - fontSize: this.style.fontSize, - textFill: textFill, - textAlign: 'right' - } - }); + this.text = this.name = new Text({ + zlevel: this.zlevel, + z: this.z + 1, + style: { + x: textX, + y: textY, + text: textName, + fontFamily: this.style.fontFamily, + fontSize: this.style.fontSize, + textFill: textFill, + textAlign: 'left' + } + }); if (model.rotate) { - const rotation = -Math.PI / 180 * Number(model.rotate); + const rotation = -Math.PI / 180 * Number(model.rotate+180); [this.block, this.delta1, this.delta2].forEach(el => { this.transformRotation(el, origin, rotation); }); } if (model.textRotate) { - const rotation = -Math.PI / 180 * Number(model.textRotate); + const rotation = -Math.PI / 180 * Number(model.textRotate+180); this.transformRotation(this.text, origin, rotation); } diff --git a/src/scripts/ConstDic.js b/src/scripts/ConstDic.js index 51c66ebd4..39a244814 100644 --- a/src/scripts/ConstDic.js +++ b/src/scripts/ConstDic.js @@ -1,12 +1,11 @@ -// /** -// * 真实设备类型 -// */ -// export const RealDeviceType = { -// Section: '区段', -// Switch: '道岔', -// Signal: '信号机', -// ScreenDoor: '屏蔽门' -// }; +/** + * 鼠标事件 + */ +export const MouseEvent = { + Left: 1, + Right: 2, + Wheel: 3 +} /** * 权限类型 */ @@ -60,14 +59,6 @@ export const OperateMode = { DIRECTIVE: '03' }; -// /** -// * 分发、转赠 -// */ -// export const OperatorModel = { -// DISTRIBUTE: '01', -// TRANSFER: '02' -// }; - /** * 菜单编号 */ @@ -128,6 +119,7 @@ export const IbpOperation = { XXYS: {operate: '09', event: 'XXYS', name: '下行钥匙'}, SXYS: {operate: '11', event: 'SXYS', name: '上行钥匙'} }; + /** * ibp状态显示条件 */ @@ -136,12 +128,14 @@ export const IbpShowCondition = { Show_Open_Screen_Door: {statusKey: 'screenDoorOpenStatus', statusValue:['02'], defaultStatus: 'close'}, Show_Close_Screen_Door: {statusKey: 'screenDoorOpenStatus', statusValue: ['01'], defaultStatus: 'open'} }; + /** 列车类型 */ export const TrainType = { PLAN: '计划车', HEAD: '头码车', MANUAL: '人工车' }; + /** 仿真成员类型 */ export const SimulationType = { DISPATCHER: '行调', diff --git a/src/views/newMap/mapsystemNew/common/index.vue b/src/views/newMap/mapsystemNew/common/index.vue index 15b76e1de..263c0d03e 100644 --- a/src/views/newMap/mapsystemNew/common/index.vue +++ b/src/views/newMap/mapsystemNew/common/index.vue @@ -8,7 +8,7 @@