From 5740b863b36f4931fce3fb6db6e29e0290bc438b Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 18 Dec 2020 09:17:18 +0800 Subject: [PATCH 1/7] =?UTF-8?q?text=E3=80=81line=E3=80=81outFrame=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=8F=82=E6=95=B0&=E6=8A=A5=E9=94=99=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/permission.js | 3 ++- src/views/messageBoard/create.vue | 8 ++++++-- .../newMap/newMapdraft/mapoperate/line.vue | 15 ++++++++++++--- .../newMapdraft/mapoperate/outFrameControl.vue | 17 +++++++++++++---- .../newMap/newMapdraft/mapoperate/text.vue | 15 ++++++++++++--- src/views/publish/examRule/index.vue | 15 +++++++-------- 6 files changed, 52 insertions(+), 21 deletions(-) diff --git a/src/permission.js b/src/permission.js index d430cdcde..118472c2e 100644 --- a/src/permission.js +++ b/src/permission.js @@ -29,7 +29,8 @@ function getRouteInfo(to) { if (whiteList.includes(toRoutePath)) { // 登陆页面清空 token removeToken(); } - loginPath = loginInfo[current_session] ? loginInfo[current_session].loginPath : whiteList[0]; + const localLogin = process.env.VUE_APP_PRO == 'local' || process.env.VUE_APP_PRO == 'ntyl'; + loginPath = loginInfo[current_session] && !localLogin ? loginInfo[current_session].loginPath : whiteList[0]; if (to.query.projectDevice && to.query.type) { loginPath = `${loginPath}&projectDevice=${to.query.projectDevice}&type=${to.query.type}`; } diff --git a/src/views/messageBoard/create.vue b/src/views/messageBoard/create.vue index f8df89f1d..bb1d34390 100644 --- a/src/views/messageBoard/create.vue +++ b/src/views/messageBoard/create.vue @@ -70,8 +70,12 @@ export default { createPost(this.form).then(resp => { this.$emit('reloadTable'); this.handleClose(); - }).catch(() => { - this.$message.error('创建留言板失败!'); + }).catch((error) => { + if (error.code == '10012') { + this.$message.error('本项目下的留言板已存在,请勿重复创建!'); + } else { + this.$message.error('创建留言板失败!'); + } this.handleClose(); }); } diff --git a/src/views/newMap/newMapdraft/mapoperate/line.vue b/src/views/newMap/newMapdraft/mapoperate/line.vue index afc02f4ae..031088d89 100644 --- a/src/views/newMap/newMapdraft/mapoperate/line.vue +++ b/src/views/newMap/newMapdraft/mapoperate/line.vue @@ -51,13 +51,15 @@ export default { activeName: 'first', lazy: true, LineTypeList: [], + centralizedStationList: [], editModel: { code: '', type: '', width: 1, lineColor: '', showConditions: '01', - points: [] + points: [], + stationCode: '' }, addModel: { type: '', @@ -110,7 +112,8 @@ export default { { prop: 'lineColor', label: this.$t('map.lineColor'), type: 'color' }, { prop: 'width', label: this.$t('map.lineWidth'), type: 'number', min: 1, placeholder: 'px' }, { prop: 'showConditions', label: this.$t('map.showConditions'), type: 'radio', optionLabel: 'label', optionValue:'value', radioList: this.showConditionsList}, - { prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '100px', isHidden: !this.isPointsShow, addPoint: this.addPoint, delPoint: this.delPoint } + { prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '100px', isHidden: !this.isPointsShow, addPoint: this.addPoint, delPoint: this.delPoint }, + { prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList } ] }, map: { @@ -153,14 +156,20 @@ export default { clearDeviceSelect() { this.$emit('deviceSelect', ''); }, + handleInit() { + if (this.stationList && this.stationList.length) { + this.centralizedStationList = this.stationList.filter(station=> station.centralized); + } + }, deviceChange(code) { this.$emit('setCenter', code); this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code)); }, deviceSelect(selected) { + this.handleInit(); if (selected && selected._type.toUpperCase() === 'Line'.toUpperCase()) { this.$refs.form && this.$refs.form.resetFields(); - this.$refs.make && this.$refs.make.resetFields(); + this.$refs.dataform && this.$refs.dataform.resetFields(); this.activeName = 'first'; this.editModel = deepAssign(this.editModel, selected); } diff --git a/src/views/newMap/newMapdraft/mapoperate/outFrameControl.vue b/src/views/newMap/newMapdraft/mapoperate/outFrameControl.vue index 739e1cc88..6d217ade9 100644 --- a/src/views/newMap/newMapdraft/mapoperate/outFrameControl.vue +++ b/src/views/newMap/newMapdraft/mapoperate/outFrameControl.vue @@ -51,6 +51,7 @@ export default { activeName: 'first', lazy: true, LineTypeList: [], + centralizedStationList: [], editModel: { code: '', width: 1, @@ -59,7 +60,8 @@ export default { position: { x: 0, y: 0 - } + }, + stationCode: '' }, addModel: { code: '', @@ -86,7 +88,8 @@ export default { }, computed: { ...mapGetters('map', [ - 'outerFrameList' + 'outerFrameList', + 'stationList' ]), showConditionsList() { const showConditionsList = ConstConfig.ConstSelect.showConditionsList; @@ -108,7 +111,8 @@ export default { { prop: 'position', label: '坐标:', type: 'coordinate', width: '140px', children: [ { prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '20px' }, { prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '20px' } - ] } + ] }, + { prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList } ] } } @@ -125,12 +129,17 @@ export default { }); }, methods: { + handleInit() { + if (this.stationList && this.stationList.length) { + this.centralizedStationList = this.stationList.filter(station=> station.centralized); + } + }, deviceChange(code) { this.$emit('setCenter', code); this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code)); }, deviceSelect(selected) { - + this.handleInit(); this.$refs.createForm && this.$refs.createForm.resetFields(); if (selected && selected._type.toUpperCase() === 'OutFrame'.toUpperCase()) { this.activeName = 'first'; diff --git a/src/views/newMap/newMapdraft/mapoperate/text.vue b/src/views/newMap/newMapdraft/mapoperate/text.vue index d3314afcc..f74da1c1f 100644 --- a/src/views/newMap/newMapdraft/mapoperate/text.vue +++ b/src/views/newMap/newMapdraft/mapoperate/text.vue @@ -61,7 +61,8 @@ export default { position: { x: 0, y: 0 - } + }, + stationCode: '' }, addModel: { prepend: 'H', @@ -72,6 +73,7 @@ export default { y: 0 } }, + centralizedStationList: [], // 设备集中站列表 rules: { code: [ { required: true, message: this.$t('rules.selectText'), trigger: 'blur' } @@ -125,7 +127,8 @@ export default { { prop: 'position', label: this.$t('map.textPoints'), type: 'coordinate', width: '120px', children: [ { prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px', disabled: false }, { prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px', disabled: false } - ] } + ] }, + { prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList } ] }, map: { @@ -158,13 +161,19 @@ export default { } }, methods: { + handleInit() { + if (this.stationList && this.stationList.length) { + this.centralizedStationList = this.stationList.filter(station=> station.centralized); + } + }, deviceChange(code) { this.$emit('setCenter', code); this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code)); }, deviceSelect(selected) { + this.handleInit(); this.$refs.form && this.$refs.form.resetFields(); - this.$refs.make && this.$refs.make.resetFields(); + this.$refs.dataform && this.$refs.dataform.resetFields(); if (selected && selected._type.toUpperCase() === 'Text'.toUpperCase()) { this.activeName = 'first'; this.editModel = deepAssign(this.editModel, selected); diff --git a/src/views/publish/examRule/index.vue b/src/views/publish/examRule/index.vue index 5ea07eb6d..9bafd2d08 100644 --- a/src/views/publish/examRule/index.vue +++ b/src/views/publish/examRule/index.vue @@ -264,14 +264,13 @@ export default { message: this.$t('publish.setSuccess') }); }).catch(res => { - // if (res.code == '500009') { - // this.$message({ type: 'warning', message: this.$t('error.paperHasUseNotDel') }); - // } else if (res.code == '10005') { - // this.$message({ type: 'warning', message: '本试卷已被使用!'}); - // } else { - // this.$message({ type: 'error', message: this.$t('error.deleteException') }); - // } - this.$message({ type: 'error', message: '删除失败:' + res.message }); + if (res.code == '10004') { + this.$message({ type: 'error', message: '删除失败:试卷已被使用,无法删除!' }); + } else if (res.code == '10003') { + this.$message({ type: 'warning', message: '删除失败:无权限删除!'}); + } else { + this.$message({ type: 'error', message: this.$t('error.deleteException') }); + } }); }).catch(() => { }); }, From e534232f2d276883f86de8eba038212e1366ede0 Mon Sep 17 00:00:00 2001 From: joylink_fanyuhong <18706759286@163.com> Date: Thu, 17 Dec 2020 22:46:09 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E7=95=99=E8=A8=80=E6=9D=BF=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 0dbc19027a500748a30bfc9ef3d7d639a340d27b) --- src/views/newMap/displayNew/practiceDisplay.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/newMap/displayNew/practiceDisplay.vue b/src/views/newMap/displayNew/practiceDisplay.vue index 93ec5b503..0f34eb456 100644 --- a/src/views/newMap/displayNew/practiceDisplay.vue +++ b/src/views/newMap/displayNew/practiceDisplay.vue @@ -234,7 +234,7 @@ export default { this.group = this.$route.query.group; this.setWindowSize(); this.initLoadData(); - getPostByProjectCode(ProjectCode[this.project]).then(resp => { + getPostByProjectCode(ProjectCode[this.$route.query.project]).then(resp => { if (resp.data) { this.messageBoard = true; } From 213d14b212ff79ee61dd52993b5d3f7c340ecec9 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Fri, 18 Dec 2020 09:30:18 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=8D=97=E4=BA=AC?= =?UTF-8?q?=E4=BA=8C=E5=8F=B7=E7=BA=BF=20=E7=BA=BF=E8=B7=AF=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/deviceStyle.js | 3 +- src/jmapNew/config/skinCode/nanjing_02.js | 830 ++++++++++++++++++++++ src/jmapNew/theme/factory.js | 6 +- 3 files changed, 836 insertions(+), 3 deletions(-) create mode 100644 src/jmapNew/config/skinCode/nanjing_02.js diff --git a/src/jmapNew/config/deviceStyle.js b/src/jmapNew/config/deviceStyle.js index 0a866fe5c..22f4b8f61 100644 --- a/src/jmapNew/config/deviceStyle.js +++ b/src/jmapNew/config/deviceStyle.js @@ -11,7 +11,8 @@ const mapDeviceStyle = { '10': 'xian_01', // 西安一号线 '11': 'xian_01', // 西安三号线 '12': 'ningbo_03', // 宁波三号线 - '13': 'race_01' // 2020国赛线路 + '13': 'race_01', // 2020国赛线路 + '14':'nanjing_02' // 南京二号线 }; export function selectLineCode(code) { diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js new file mode 100644 index 000000000..ea1d37e3e --- /dev/null +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -0,0 +1,830 @@ +import defaultStyle from '../defaultStyle'; +import deviceType from '../../constant/deviceType'; + +class SkinCode extends defaultStyle { + constructor() { + super(); + this.fontFamily = '宋体'; + this[deviceType.Section] = { + elemnetType:['name', 'logicText', 'standTrackText', 'reentryTrackText', 'transferTrackText', 'line', 'lineBorder', 'sectionBlock', 'speedLimitName'], + active: { + routeColor: false // 进路触发颜色 + }, + name: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 18, // 文字离区段距离 + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + fontColor: '#FFFFFF', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle', // 文字垂直对齐方式 + approachColor: '#FFFFFF' + }, + logicText: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 6, // 文字离区段距离 + fontSize: 8, // 字体大小 + fontWeight: 'normal', // 字体粗细 + fontColor: '#FFFFFF', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle' // 文字垂直对齐方式 + }, + standTrackText: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 30, // 文字离区段距离 + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + fontColor: '#FFFFFF', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle' // 文字垂直对齐方式 + }, + reentryTrackText: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 30, // 文字离区段距离 + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + fontColor: '#FFFFFF', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle' // 文字垂直对齐方式 + }, + transferTrackText: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 28, // 文字离区段距离 + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + fontColor: '#FFFFFF', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle' // 文字垂直对齐方式 + }, + destinationText: { + z: 10, + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + distance: 10, // 文字离区段距离 + fontSize: 10, // 字体大小 + fontWeight: 'bold', // 字体粗细 + fontColor: 'yellow', // 字体颜色 + textAlign: 'center', // 水平对齐方式 + textPosition: 'inside', // 文字位置 + textVerticalAlign: 'middle' // 文字垂直对齐方式 + }, + line: { + z: 0, + width: 5, // 区段宽度 + beyondWidth: 0, // 区段宽超出宽度 + invadeColor: '#EF0C08', // 区段侵入颜色 + spareColor: '#ffff00', // 区段空闲颜色 (黄色) + communicationOccupiedColor: '#ff0000', // 区段通信车占用颜色 红色 + unCommunicationOccupiedColor: '#ff0000', // 区段非通讯车占用颜色 红色 + routeLockColor: '#00FF00', // 区段路由锁定颜色 + faultLockColor: '#9B4A0A', // 区段故障锁定颜色 + invalidColor: '#ff0000', // 计轴故障 + undefinedColor: '#0071C1', // 区段未定义颜色 + protectionLockedColor: '#FEFF00', // 保护区段锁闭(未用) + blockColor: '#000080', // 区段封锁颜色 深蓝色 + atcExcisionColor: '#A0522D', // 区段atc切除颜色 + atsExcisionColor: '#A0522D', // 区段ats切除颜色 + timeReleaseColor: '#ffff00', // 区段延时释放颜色 + protectiveLockColor: '#FFFF00', // 区段保护锁闭 + protectiveTimeReleaseColor: '#0071C1', // 区段保护延时解锁 + logicalColor: '#FFFF00', // 逻辑区段颜色 (未用) + logicalTextColor: '#FFFFFF' // 逻辑区段名称颜色 (未用) + }, + lineBorder: { // 哈尔滨点击背景 元素 + z: -1, + activeStroke: '#2EBFBF' + }, + sectionBlock: { + z: 2 + }, // 计轴 + speedLimit: { // 限速元素 + z: 2, + width: 1, // 限速线的宽短 + distance: 5, // 限速线距离区段距离 + lineColor: '#FFFF00', // 限速线颜色 + nameShow: false // 名称显示 + }, + speedLimitName: { + z: 10, + leftName: true, // 左侧限速值是否展示 + rightName: false, // 右侧限速值是否展示 + nameBackgroundIsRect: true, // 限速值背景是否为矩形 + nameBackgroundBorderWidth: 1, // 限速值背景是否边框宽度 + nameBackgroundBorderColor: '#C00808', // 限速值背景边框颜色 + limitValueDistance: 18, + kilometerFontSize: 0, // 公里标大小 + nameNumberFontSize: 11, // 限速值大小 + nameNumberColor: '#C00808', // 限速值颜色 + nameBackground: '#000', // 限速名称背景颜色 + drogueWidth: 15, // 浮标宽度 + drogueHeight: 12 // 浮标高度 + }, + separator: { + z: 3, // 分割符层级 + width: 1.2, // 分隔符宽度 + endWidth: 3.5, // 尽头分隔符宽度 + endColor: '#3F3F3F', // 尽头分隔符颜色 + color: '#3149C3', // 区段边界符颜色 + halfHeight: 5 // 区段分隔符高度的一半 + }, + trainPosition:{ + display: false // 列车实时位置显示 + } + }; + + this[deviceType.Signal] = { + distance: 10, // 设备距离区段的距离 + post: { + standardShow: true, // 灯柱显示 + standardLength: 4, // 高柱长度 + standardHeight: 5, // 灯柱高度 + standardColor: '#FF0000', // 灯柱颜色 + standardWidth: 4 // 灯柱宽度 + }, + text: { + show: true, // 信号机名称显示 + distance: 4, // 文字和灯杆的距离 + isAlignCenter: true, // 信号字体对其方式 + fontSize: 11, // 信号机名称字体大小 + fontWeight: 'bold', // 信号机名称字体粗细 + defaultColor: '#00CE00', // 信号灯字体默认色 + blockColor: '#ffffff', // 信号灯字体锁定颜色 + checkColor: '#00FF00', // 信号字体 + ArtificialRouteColor: '#FFFFFF', // ATS关自排 设定颜色 + AutoRouteColor: '#D8D800', // 联锁自动进路颜色 + nameBorderShow: false // 信号机名字边框显示 + }, + lamp: { + bgShow: true, // 是否被选中 + logicDisplayNone: true, // 逻辑点灯斜线不显示 + guidName: 'doubleAndBase', // 默认引导类型 + stopWidth: 2, // 禁止线宽度 + borderWidth: 0, // 信号灯边框线宽度 + borderColor: '#FF0000', // 信号灯边框线颜色 (虚拟信号机) + radiusR: 4, // 信号灯半径 + blockColor: '#EF0C08', // 信号灯锁闭 + grayColor: '#7F7F7F', // 信号灯灰色 + redColor: '#FF0000', // 信号灯红色 + greenColor: '#00FF00', // 信号灯绿色 + yellowColor: '#FFFF00', // 信号灯黄色 + whiteColor: '#FFFFFF', // 信号灯白色 + blueColor: '#000080' // 信号灯蓝色 + }, + route: { + direction: false, // 自动进路方向 + offset: { x: -4, y: 0 }, // 自动进路偏移量 + routeColor: '#00FF00' // 自动进路 + }, + auto: { + signalFrontTriangle: false, // 信号灯前三角展示 + direction: false, // 自动通过方向 + offset: { x: -4, y: 0 }, // 自动通过偏移量 + width: 5, // 自动宽度 + autoRoute: '#00FF00', // 自动进路 + autoTrigger: '#FFFF00', // 自动触发 + autoTriggerType:'text', // 自动触发类型 text 为哈尔滨线路的类型(只更改信号机名称的颜色) + autoRouteType:'text', // 自动进路类型 text 为哈尔滨线路的类型(只更改信号机名称的颜色) + manualControl: '#FFFF00', // 人工控制 + outConflict: '#C00808' // 出车冲突 + + }, + delay: { + direction: true, // 延时解锁方向 + offset: { x: 15, y: -10 }, // 延时解锁偏移量 + fontSize: 11, // 延迟解锁字体大小 + fontColor: '#FF0000', // 延迟解锁颜色 + fontWeight: 'bold' // 字体粗细 + }, + button: { + distance: 5, // 信号灯按钮距离区段的距离 + borderDashColor: '#FFFFFF', // 信号灯按钮边线 + buttonColor: 'darkgreen', // 信号灯按钮颜色 + buttonLightenColor: '#E4EF50' // 信号灯按钮闪烁颜色 + }, + lowButton:{ + display: false // 现地 信号机按钮 + } + }; + + // 屏蔽门 + this[deviceType.Psd] = { + // 西安一/三号线 屏蔽门 + elemnetType:['horizontal2Door'], + horizontal2Door: { // 屏蔽门 + z:0, + height: 3, // 站台屏蔽门高度 + width: 60, + distance: 8, // 站台和屏蔽门之间的距离 + defaultColor: '#fff', // 屏蔽门默认颜色 + splitDoorColor: '#F61107' // 屏蔽门切除颜色 + } + }; + + this[deviceType.StationStand] = { + // 哈尔滨一号线站台元素 站台 站台紧急关闭 扣车元素 停站时间 运行等级 跳停 + elemnetType:['gapStand', 'emergentArrow', 'detainNormal', 'level', 'jump', 'trainStop', 'trainDepart', 'trainSetButton'], + // 站台 + gapStand:{ + // 层级 + z:0, + spareColor: '#00FFFF', // 站台空闲颜色 + jumpStopColor: '#9A99FF', // 站台跳停颜色 + designatedJumpStopColor: 'lightSkyBlue', // 站台指定列车跳停颜色 + headFontSize: 11, // 站台首端字体大小 + stopColor: '#FEFE00', // 站台列车停站颜色 + textFill: '#fff' // 站台字体颜色 + }, + // 站台紧急关闭 + emergentArrow:{ + z:1, + special:false, + mergentR: 4, // 站台紧急关闭半径 + mergentN: 4, // 站台紧急关闭边数 + insideOffset: { x: -10, y: -20 }, // 内站台紧急关闭偏移量 + outsideOffset: { x: -10, y: -10}, // 外站台紧急关闭偏移量 + closeColor: '#F61107', // 站台紧急关闭颜色 + width: 4, + radiusR: 6 + }, + // 扣车元素 普通扣车 + detainNormal:{ + z:0, + position: 1, // 扣车标识在站台上显示方向 + text: 'H', // 扣车显示内容 + insideOffset: { x: 60, y: -18 }, // 内站台扣车偏移量 + outsideOffset: { x: 60, y: 25 }, // 外站台扣车偏移量 + centerTrainColor: '#F61107', // 中心扣车颜色 + andCenterTrainColor: '#F61107', // 车站+中心扣车颜色 + detainTrainTextColor: '#E4EF50', // 车站扣除文字颜色 + fontSize: 18, // 字体大小 + fontWeight: 'bolder', + textVerticalAlign: 'middle' // 车站扣车 文字垂直对齐方式 + }, + // 运行等级 + level:{ + z:1, + textFontSize: 11, // 运行等级字体大小 + position: 1, // 运行等级方向 + offset: { x: -8, y: 6 }, // 运行等级偏移量 + textColor: '#FFFFFF' // 停站等级字体颜色 + }, + // 跳停 + jump: { + z:1, + position: 1, // 停跳方向 + text: 'S', // 停跳显示内容 + offset: { x: 20, y: 21 }, + textColor: '#00FF00', // 停跳文字颜色 + fontWeight: 'bold', // 文字居中 + fontSize: 18 // 文字大小 + }, + // 列车停站 + trainStop: { // 停车标志 + z:1, + fillColor: '#FF0000', + insideOffset:{ x: 6, y: -22}, // 内站台停车标志偏移量 + outsideOffset: { x: -6, y: 22}, // 外站台停车标志偏移量 + radiusR: 4 // 标志半径 + }, + // 停车计时 + trainDepart:{ // 停车计时 + z:1, + insideOffset:{ x: 25, y: -21}, // 内站台停车计时偏移量 + outsideOffset: { x: -25, y: -11}, // 外站台停车计时偏移量 + textFill: '#00FF00', // 文字颜色 + textBorderColor: '#00FF00', // 文字边框颜色 + fontSize: 10 // 字体大小 + }, + // 站台 扣车/取消扣车,越站/取消越站 设置按钮 + trainSetButton:{ + z:1, + offset: { x: 80, y:10}, // 按钮偏移 + textFontSize: 13, // 按钮字体大小 + textColor:'#00FF00' + }, + + common: { // 通用属性 + bgShow: true, // 是否被选中 + textFontSize: 11, // 站台默认字体大小 + functionButtonShow: '03' // 功能灯按钮显示条件(01所有模式下显示 02 行调显示 03现地显示) + }, + lamp: { + radiusR: 6, // 控制灯大小 + lampColor: '#5A5D5A' // 功能按钮颜色 + }, + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + } + // reentry: {}, // 站台折返策略 + // stopTime: {}, // 停站时间 + + }; + + this[deviceType.StationCounter] = { + text: { + distance: 2, // 计数器名称和文字的距离 + fontColor: '#FFFFFF', // 计数器字体颜色 + borderColor: '#E4EF50' // 计数器边框颜色 + } + }; + + this[deviceType.StationDelayUnlock] = { + text: { + distance: 3, // 延迟解锁和设备之间的距离 + fontColor: '#FFFFFF', // 延时解锁字体颜色 + borderColor: '#FFFFFF' // 延迟解锁边框颜色 + } + }; + this[deviceType.AutoTurnBack] = { + // 是否显示 + visibleConditions: '03', + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + subtitleText: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 17 // 等于副标题距离 + }, + lamp: { + lineDash: null, // 灯的包围框 + borderShow: false, // 是否显示边框 + stroke: '#FFFFFF', // 框的颜色 + fill: 'rgba(0,0,0,0)', // 填充色 + radiusR: 6, // 控制灯大小 + controlColor: '#b5b3b3', // 控制灯颜色 (灰色) + lightUpColor: '#ffff00' // 点亮灯颜色 + }, + OutFrame: { + + } + }; + /** 引导总锁 */ + this[deviceType.GuideLock] = { + // 是否显示 + displayCondition: '03', // 显示条件 prdType + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + fill: 'rgba(0,0,0,0)', // 填充色 + radiusR: 6, // 控制灯大小 + controlColor: '#b5b3b3', // 控制灯颜色 (灰色) + lightUpColor: '#FF0000' // 点亮灯颜色 + } + }; + this[deviceType.Station] = { + // 哈尔滨一号线 车站元素 车站名称 + elemnetType:['stationText'], + stationText:{ + z:0, + fontWeight:'normal', // 字体粗细 + textPadding:[2, 6], // 字体边距 + borderColor:'', // 字体边框颜色 + textBorderWidth:1 // 字体边框宽度 + }, + + kmPostShow: true, // 公里标显示 + kilometerPosition: 'up', // 公里标朝向 + text: { + borderShow: true, // 车站包围框显示 + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 控制灯大小 + controlColor: '#FFFF00' // 控制灯颜色 + }, + turnBack: { // 按图折返 + lamp: 1, // 灯数量 + lampSpace: 60 // 灯间距 + }, + StationControl: { + disPlayNone: true, // 不显示 + text: { + distance: 2, // 灯和文字之间的距离 + fontSize: 11, // 字体大小 + fontFormat: 'consolas', // 字体格式 + fontColor: '#ffffff', // 字体颜色 + fontWeight: 'normal', // 字体粗细 + textAlign: 'middle', // 字体水平对齐 + textVerticalAlign: 'top' // 字体垂直对齐 + }, + lamp: { + count: 2, // 控制模式灯个数 + offset: { x: 0, y: 0 }, // 控制模式灯偏移量 + emergencyOffset: {x: 0, y: 0}, + radiusR: 4, // 控制模式灯的半径 + distance: 36, // 控制模式之间灯之间的距离 + grayColor: '#7F7F7F', // 控制模式灰色 + greenColor: '#00FF00', // 控制模式绿色 + redColor: '#FF0000', // 控制模式红色 + yellowColor: '#FFFF00' // 控制模式黄色 + }, + emergencyControl: { // 紧急站控 + show: false, + offset: { x: 0, y: 0 }, + text: '紧急', + arrowShow: false, + grayColor: '#7F7F7F' + }, + centerControl: { // 中控 + show: true, + offset: { x: 0, y: 0 }, + text: '中控', + buttonShow: false, + arrowShow: false, + grayColor: '#7F7F7F' + }, + substationControl: { // 站控按钮 + show: true, + offset: { x: 0, y: 0 }, + text: '站控', + arrowShow: true, + grayColor: '#7F7F7F' + }, + interconnectedControl: { // 联锁控 + show: false, + offset: { x: 0, y: 0 }, + text: '联锁控', + arrowShow: false, + grayColor: '#7F7F7F' + }, + mouseOverStyle: { // 鼠标悬浮样式 + fontSize: null, + fontFormat: 'consolas', + fontColor: '#000', + fontWeight: 'normal', + textAlign: 'middle', + textVerticalAlign: 'top' + } + } + }; + + // 供电线路 + this[deviceType.Power] = { + noElectricStrokeColor:'#808080', // 无电颜色 + defaultStrokeColor: '#F00', // 线条颜色 + extendLength: 10 // 延伸长度 + }; + // 延续保护计时 + this[deviceType.OverAp] = { + show: false + }; + + this[deviceType.Switch] = { + text: { + show: true, // 道岔名称显示 + position: 0, // 区段名称位置 1 上面 -1 下面 0 对称 + offset: { x: 0, y: 8 }, // 道岔名称与区段距离 + fontSize: 11, // 字体大小 + fontColor: '#fff', // 道岔名称颜色 + fontWeight: 'bold', // 字体粗细 + borderColor: 'red', // 道岔边框颜色 + lossColor: '#FFFFFF', // 道岔失去颜色 + locateColor: '#fff', // 道岔定位颜色 + inversionColor: '#fff', // 道岔反位颜色 + monolock: true, // 名称单锁显示包围框 + monolockLocationColor: '#fff', // 道岔单锁'定位'颜色 + monolockInversionColor: '#fff', // 道岔单锁'反位'颜色 + faultFlashing: true // 故障闪烁 + }, + sectionAction: { + flag: true, // 道岔 关联区段显示 + spareColor: '#5b5b5b' // 区段显示颜色 (灰色) + }, + core: { + splice: true, // 哈尔滨特殊显示 + length: 6 // 道岔单边长度 + }, + trapezoid: { // 直角梯形元素 + length: 16, // 默认长度 + block: true // 封锁显示 + }, + jointImg: { // 道岔 A B C D四元素属性配置 + trapezoidLength: 8, // 直角梯形元素默认长度 + trapezoidBlock: true, // 梯形封锁显示 + fork: true, // 挤岔专用(如有挤岔操作 变为true) + forKColor: 'red' // 挤岔颜色 配合挤岔专用 + }, + arcBlcok: { // 圆形封锁图形 + show: false, // 显示 + arcBorderColor: 'green', // 默认边框颜色 + locationColor: 'green', // 定位封锁颜色 + inversionColor: '#FFFF00' // 反位封锁颜色 + }, + rectLock: { // 矩形封锁框图形 + rectWidth: 18, // 矩形框 宽高 + rectBorderColor: 'red', // 矩形边框颜色 + monolock: false, // 单锁显示 + block: false // 封锁显示 + } + }; + + this[deviceType.Line] = { + lineColor: '#FFFFFF' // 线条颜色 + }; + + this[deviceType.LcControl] = { + text: { + fontSize: 10, // 灯字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 灯大小 + controlColor: '#FFFF00' // 灯颜色 + }, + mouseOverStyle: { + fontSize: 10, + fontFormat: 'consolas', + fontColor: '#FFF000', + fontWeight: 'normal', + textAlign: 'middle', + textVerticalAlign: 'top', + arcColor: '#00FFFF', + textColor: '#000000' + } + }; + + this[deviceType.ZcControl] = { + text: { + fontSize: 10, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 灯大小 + controlColor: '#00FF00' // 灯颜色 + }, + mouseOverStyle: { + fontSize: 10, + fontFormat: 'consolas', + fontColor: '#FFF000', + fontWeight: 'normal', + textAlign: 'middle', + textVerticalAlign: 'top', + arcColor: '#00FFFF', + textColor: '#000000' + } + }; + + this[deviceType.LimitControl] = { + text: { + fontSize: 10, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + radiusR: 6, // 灯大小 + controlColor: '#ECE9D8' // 灯颜色 + }, + mouseOverStyle: { + fontSize: 10, + fontFormat: 'consolas', + fontColor: '#FFF000', + fontWeight: 'normal', + textAlign: 'middle', + textVerticalAlign: 'top', + textColor: '#000000', + arcColor: '#00FFFF' + } + }; + this[deviceType.AutomaticRoute] = { + // 是否显示 + displayCondition: '03', + text: { + fontSize: 11, // 字体大小 + fontWeight: 'normal', // 字体粗细 + distance: 5 // 灯跟文字距离 + }, + lamp: { + fill: 'rgba(0,0,0,0)', // 填充色 + radiusR: 6, // 控制灯大小 + controlColor: '#b5b3b3' // 控制灯颜色 (灰色) + } + }; + this[deviceType.TrainWindow] = { + lineColor: '#4DD43F', // 车次窗颜色 + lineDash: null, // 车次窗虚线间隔 + lineWidth: 1, // 车次窗线宽 + trainWindowSmooth: 0, // 车次窗矩形圆滑程度 + show: true // 车次窗是否显示 + }; + this[deviceType.SplitStation] = { + lineLength: 15, // 箭头线长度 + lineWidth: 2, // 线宽 + height: 35, // 分隔整体高度 + strokeColor: '#00FF00', // 线颜色 + triangleFillColor: '#00FF00', // 三角填充颜色 + textFill: '#FFFFFF', // 文字颜色 + verticalDistance: 10, // 箭头三角垂直高度 + horizontalDistance: 7// 箭头三角水平高度 + }; + this[deviceType.Train] = { + trainBody: { + fontFamily: 'consolas', + trainBodyLineWidth: 2, // 车身line宽 + changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 + specialTrainType: [ + { + type: '03', + serviceNumber: 'MM', + nameFormat: 'tripNumber:serviceNumber:groupNumber' + }, + { + type: '02', + nameFormat: 'tripNumber:serviceNumber:groupNumber' + } + ], // 特殊列车类型需设置显示格式 + lrPadding: 1, // 两边间隔 + upPadding: 1, // 上边距离 + trainBodyFillColor: '#000000', // 列车车身填充颜色 + trainSidelineColor: '#FFFF00', + trainNameFormat: 'tripNumber:serviceNumber:groupNumber'// 列车显示格式 + }, + soonerOrLater: { + level: 5, + earlyColor: '#00FF00', + severeEarlyColor: '#0000FF', + lateColor: '#FF00FF', + severeLateColor: '#FF0000', + normalColor: '#DADA00' + }, + directionArrow: { + }, + hsda: { + lrPaddingHSDA: 3, // HSDA两边间隔 + upPaddingHSDA: 20, // HSDA上边距离 + trainHSDATextFontSize: 8, // 列车HDSA字号 + textHContent: '扣', // textH文本 + textSContent: '跳', // textS文本 + textDContent: '门', // textD文本 + textAContent: '警' // textA文本 + }, + trainAtrStatus: { + trainAtrStatusOffset: { x: 74, y: 8}, + r: 5 + }, + travelSigns: { + trainTravelLeftSignsOffset: { x:3, y: 3}, + trainTravelRightSignsOffset: { x: 62, y: 3} + }, + delayTime: { + trainDelayTimeOffset: { x:5, y: 14} + }, + crewNum: { + trainCrewNumOffset: { x:50, y: 25} + }, + travelNum: { + trainTravelNumOffset: { x:9, y:3} + }, + trainNumber: { + targetCodePrefix: '000', // 目的地码前缀 + defaultTargetCode: 'AAA', // 默认目的地码 + trainTargetTextAlign: 'left', // 车次号文字显示位置 + trainNumberOffset: { x: 48, y: 3 }// 目的地码偏移量 + }, + trainServer: { + serviceNumberPrefix: '000', // 服务号(表号)前缀 + defaultServiceNumber: 'BBB', // 默认服务号(表号) + trainServerOffset: { x: 33, y: 3 }, // 列车服务号偏移 + fontColor: '#00C300' + }, + trainTarget: { + tripNumberPrefix: '00', // 车次号前缀 + defaultDirectionCode: '', // 默认车次号1 + defaultTripNumber: 'CC', // 默认车次号2 + trainTargetOffset: { x: 53, y: 3 }, // 列车车次号偏移 + fontColor: '#00C300' + }, + trainTargetNumber: { + groupNumberPrefix: '000', // 车组号前缀 + defaultGroupNumber: 'EEE', // 默认车组号 + trainTargetNumberOffset: { x: 5, y: 25 }// 车组号偏移量 + }, + trainHead: { + trainHeadRectHeight: 15, // 列车车头矩形高度 + trainConntWidth: 0, // 列车竖杠的宽度 + trainHeadFillColor: '#EF0C08', // 列车车头矩形填充颜色 + directionStopType:'normal', // special 西安二号线 停车 列车方向图标不消失 normal 正常 + trainHeadHeight: 'trainBox', // 列车车头高度取决于trainBox高度 + trainHeadArrowWidth: 5, // 列车车头三角宽度 + trainHeadArrowOffsetX: 2 // 列车车头三角偏移 + }, + common: { + hasTravelSigns: true, // 是否有行进标志 + hasAtrStatus: true, // 是否有atr状态 + hasDelayTime: true, // 是否有延迟时间 + hasCrewNum: true, // 是否有乘务组号 + hasTravelNum: true, // 是否有行程号 + fixedCoordinates: true, // 列车车组号等固定坐标 + trainHeight: 40, // 列车高度 + trainHeadDistance: 2, // 列车和车头之间的间距 + trainWidth: 82, // 列车长度 + trainTextFontSize: 12, // 列车字号 + fontFamily: 'consolas', // 默认字体 族类 + haveTextHSDA: false, // 是否需创建textHSDA对象 + haveArrowText: true, // 是否需创建arrowText对象 + textOffset: 1, // 字体偏移(用以控制字体据车头的距离) + trainWidthMoreText: 2, // 计算列车长度时--列车长比text多出尺寸 + trainTip:true // 鼠标悬停列车状态信息框是否显示 + }, + trainStatusStyle: { + defaultDestinationColor: '#FFFF00', // 默认目的地状态显示颜色 + destinationStatus: [ + { status: '01', showColor: '#FFFF00' }, + { status: '02', showColor: '#00FF00' }, + { status: '03', showColor: '#3265FF' }, + { status: '04', showColor: '#FF14E9' }, + { status: '05', showColor: '#FF0000' }, + { status: '06', showColor: '#FFFFFF' }, + { status: '07', showColor: '#FFFF00' } + ], // 目的地状态 01准点 02早点 03严重早点 04晚点 05严重晚点 06头码车 07ATP切除 + destinationStatusSetText: 'trainServer', // 目的地状态设置的对应哪个text的颜色 + directionType: [ + { + type: 1, + lineLShow: false, + lineRShow: false, + arrowLShow: false, + arrowRShow: false + }, + { + type: 0, + lineLShow: false, + lineRShow: false, + arrowLShow: false, + arrowRShow: false + } + ], // 运行方向状态类型对应车头显示状态 1从左往右 0从右往左 + directionStopType: [ + { type: 1, lineLShow: false, lineRShow: false }, + { type: 0, lineLShow: false, lineRShow: false } + ], // 列车停止方向类型对应车头显示状态 1从左往右 0从右往左 + driveModeStatus: [ + { + status: 'AM', + trainLColor: '#00FF00', + trainRColor: '#00FF00' + }, + { + status: 'CM', + trainLColor: '#FFFF00', + trainRColor: '#FFFF00' + }, + { + status: 'RM', + trainLColor: '#EA700D', + trainRColor: '#EA700D' + }, + { + status: 'NRM', + trainLColor: '#A0522D', + trainRColor: '#A0522D' + } + ], // 列车运行模式对应车头颜色 ATO自动驾驶模式AM ATP监控下的人工驾驶模式CM 限制人工驾驶模式RM 非限制人工驾驶模式NRM + runControlStatus: [], // 设置运行控制状态类型 eg:{status: '01', hShow: false, sShow: false} + doorStatus: [], // 设置车门状态类型 + communicationStatus: [ + {status: 'CBTC', trainColor: '#000000'}, + {status: 'ITC', trainColor: '#C0C0C0'}, + {status: 'IL', trainColor: '#C0C0C0'} + ], // 设置通信状态 + alarmStatus: [], // 设置报警状态 eg:{status: '01', aShow: false} + serverNoType: []// 服务号状态类型 eg:{type: '01', showColor: '#FFFFFF'} + } + }; + this[deviceType.FloodGate] = {}; + this[deviceType.DirectionRod] = { + displayCondition: '01', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示) + fillColor: '#0F0', + fontColor: '#FFF', + rodLength: 90, + rodHeight: 10, + triangleLength: 25, + triangleHeight: 20, + fontSize: 14, + fontOffsetX: 45, + fontOffsetY: 24 + }; + } +} + +export default new SkinCode(); diff --git a/src/jmapNew/theme/factory.js b/src/jmapNew/theme/factory.js index 778910af7..b45c410e7 100644 --- a/src/jmapNew/theme/factory.js +++ b/src/jmapNew/theme/factory.js @@ -15,7 +15,8 @@ class Theme { '10': 'xian_01', '11': 'xian_01', '12': 'ningbo_03', - '13': 'race_01' + '13': 'race_01', + '14': 'haerbin_01' // 南京二号线菜单暂用 哈尔滨的 }; this._localShowMode = { // 现地显示模式 '01': 'all', // 成都一 全显 @@ -30,7 +31,8 @@ class Theme { '10': 'all', '11': 'all', '12': 'all', - '13':'all' + '13':'all', + '14':'all' }; } From 05945295775f491c1892630bf8037289e2cb1c7e Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Fri, 18 Dec 2020 09:35:43 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=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/views/system/configLine/edit.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/system/configLine/edit.vue b/src/views/system/configLine/edit.vue index 9b13195b2..0f89897fa 100644 --- a/src/views/system/configLine/edit.vue +++ b/src/views/system/configLine/edit.vue @@ -87,7 +87,7 @@ export default { doSave() { const self = this; this.$refs.dataform.validateForm(() => { - if (this.isAdd === 'ADD') { + if (this.isAdd) { self.create(); } else { self.update(); From 2ddc94f7aa67053d9a3e2edf7cccaefe922e009c Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 18 Dec 2020 13:10:55 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=8D=97=E4=BA=AC=E4=BA=8C=E5=8F=B7?= =?UTF-8?q?=E7=BA=BF=E7=9A=AE=E8=82=A4=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 | 3 +- src/jmapNew/config/skinCode/chengdu_01.js | 3 +- src/jmapNew/config/skinCode/chengdu_03.js | 3 +- src/jmapNew/config/skinCode/foshan_01.js | 3 +- src/jmapNew/config/skinCode/fuzhou_01.js | 3 +- src/jmapNew/config/skinCode/haerbin_01.js | 3 +- src/jmapNew/config/skinCode/nanjing_02.js | 6 +- src/jmapNew/config/skinCode/ningbo_01.js | 3 +- src/jmapNew/config/skinCode/ningbo_03.js | 3 +- src/jmapNew/config/skinCode/race_01.js | 3 +- src/jmapNew/config/skinCode/xian_01.js | 3 +- src/jmapNew/config/skinCode/xian_02.js | 3 +- src/jmapNew/shape/Signal/ESigPost.js | 69 +++++++++++++++-------- src/jmapNew/shape/Signal/index.js | 4 +- 14 files changed, 73 insertions(+), 39 deletions(-) diff --git a/src/jmapNew/config/skinCode/bejing_01.js b/src/jmapNew/config/skinCode/bejing_01.js index 5c0308133..d8e766104 100644 --- a/src/jmapNew/config/skinCode/bejing_01.js +++ b/src/jmapNew/config/skinCode/bejing_01.js @@ -133,7 +133,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#5578B6', // 灯灯柱颜色 - standardWidth: 1.5 // 灯柱宽度 + standardVerticalWidth: 1.5, // 灯柱竖杆宽度 + standardRailWidth: 1.5 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/chengdu_01.js b/src/jmapNew/config/skinCode/chengdu_01.js index 53f27194f..5d936448d 100644 --- a/src/jmapNew/config/skinCode/chengdu_01.js +++ b/src/jmapNew/config/skinCode/chengdu_01.js @@ -141,7 +141,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#C0C0C0', // 灯柱颜色 - standardWidth: 2 // 灯柱宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/chengdu_03.js b/src/jmapNew/config/skinCode/chengdu_03.js index 773aaceab..fe98b57a7 100644 --- a/src/jmapNew/config/skinCode/chengdu_03.js +++ b/src/jmapNew/config/skinCode/chengdu_03.js @@ -147,7 +147,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#FFFFFF', // 灯柱颜色 - standardWidth: 2 // 灯柱宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/foshan_01.js b/src/jmapNew/config/skinCode/foshan_01.js index 72e90c9ab..43663387c 100644 --- a/src/jmapNew/config/skinCode/foshan_01.js +++ b/src/jmapNew/config/skinCode/foshan_01.js @@ -125,7 +125,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#3149C3', // 灯珠颜色 - standardWidth: 2 // 灯珠宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/fuzhou_01.js b/src/jmapNew/config/skinCode/fuzhou_01.js index 40cc992db..66d35f5f9 100644 --- a/src/jmapNew/config/skinCode/fuzhou_01.js +++ b/src/jmapNew/config/skinCode/fuzhou_01.js @@ -125,7 +125,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#3149C3', // 灯珠颜色 - standardWidth: 2 // 灯珠宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/haerbin_01.js b/src/jmapNew/config/skinCode/haerbin_01.js index ea1d37e3e..3066e10e8 100644 --- a/src/jmapNew/config/skinCode/haerbin_01.js +++ b/src/jmapNew/config/skinCode/haerbin_01.js @@ -148,7 +148,8 @@ class SkinCode extends defaultStyle { standardLength: 4, // 高柱长度 standardHeight: 5, // 灯柱高度 standardColor: '#FF0000', // 灯柱颜色 - standardWidth: 4 // 灯柱宽度 + standardVerticalWidth: 4, // 灯柱竖杆宽度 + standardRailWidth: 4 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/nanjing_02.js b/src/jmapNew/config/skinCode/nanjing_02.js index ea1d37e3e..a0f27cbc8 100644 --- a/src/jmapNew/config/skinCode/nanjing_02.js +++ b/src/jmapNew/config/skinCode/nanjing_02.js @@ -145,10 +145,12 @@ class SkinCode extends defaultStyle { distance: 10, // 设备距离区段的距离 post: { standardShow: true, // 灯柱显示 - standardLength: 4, // 高柱长度 + standardVerticalShape: '8', // 灯柱 竖杆 8边型 + standardLength: 12, // 高柱长度 standardHeight: 5, // 灯柱高度 standardColor: '#FF0000', // 灯柱颜色 - standardWidth: 4 // 灯柱宽度 + standardVerticalWidth: 1, // 灯柱竖杆宽度 + standardRailWidth: 6 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/ningbo_01.js b/src/jmapNew/config/skinCode/ningbo_01.js index a8b58e64c..d44eedb48 100644 --- a/src/jmapNew/config/skinCode/ningbo_01.js +++ b/src/jmapNew/config/skinCode/ningbo_01.js @@ -128,7 +128,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#C0C0C0', // 灯柱颜色 - standardWidth: 2 // 灯柱宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/ningbo_03.js b/src/jmapNew/config/skinCode/ningbo_03.js index 75bb13fa9..903960e87 100644 --- a/src/jmapNew/config/skinCode/ningbo_03.js +++ b/src/jmapNew/config/skinCode/ningbo_03.js @@ -164,7 +164,8 @@ class SkinCode extends defaultStyle { standardHeight: 6, // 灯柱高度 standardColor: '#000000', // 灯柱颜色 physicColor:'#c0c0c0', // 物理点灯灯柱颜色 - standardWidth: 2 // 灯柱宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/race_01.js b/src/jmapNew/config/skinCode/race_01.js index 5c4ab8f49..7834e4f12 100644 --- a/src/jmapNew/config/skinCode/race_01.js +++ b/src/jmapNew/config/skinCode/race_01.js @@ -150,7 +150,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#969696', // 灯灯柱颜色 - standardWidth: 3 // 灯柱宽度 + standardVerticalWidth: 3, // 灯柱竖杆宽度 + standardRailWidth: 3 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/xian_01.js b/src/jmapNew/config/skinCode/xian_01.js index e3fda6713..eea50c1a4 100644 --- a/src/jmapNew/config/skinCode/xian_01.js +++ b/src/jmapNew/config/skinCode/xian_01.js @@ -133,7 +133,8 @@ class SkinCode extends defaultStyle { standardLength: 6, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#3149C3', // 灯珠颜色 - standardWidth: 2 // 灯珠宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2 // 灯柱横杆宽度 }, text: { show: true, // 信号机名称显示 diff --git a/src/jmapNew/config/skinCode/xian_02.js b/src/jmapNew/config/skinCode/xian_02.js index c5d687bb4..189ac2a4a 100644 --- a/src/jmapNew/config/skinCode/xian_02.js +++ b/src/jmapNew/config/skinCode/xian_02.js @@ -142,7 +142,8 @@ class SkinCode extends defaultStyle { standardLength: 7, // 高柱长度 standardHeight: 6, // 灯柱高度 standardColor: '#fff', // 灯柱颜色 - standardWidth: 2, // 灯柱宽度 + standardVerticalWidth: 2, // 灯柱竖杆宽度 + standardRailWidth: 2, // 灯柱横杆宽度 autoRouteColor: '#008000', // 自动进路开启灯柱颜色 shapeChange: true, // 灯柱形状改变 terminalOptional: '#CC3399' // 终端可选信号机灯柱颜色 diff --git a/src/jmapNew/shape/Signal/ESigPost.js b/src/jmapNew/shape/Signal/ESigPost.js index 5f23398c5..3f1fc12f2 100644 --- a/src/jmapNew/shape/Signal/ESigPost.js +++ b/src/jmapNew/shape/Signal/ESigPost.js @@ -12,23 +12,49 @@ class ESigPost extends Group { create() { const model = this.model; const style = this.model.style; - // 竖杆 - this.ver = new Polyline({ - _subType: 'SignalLamp', - _val: '3', - zlevel: model.zlevel, - z: model.z, - shape: { - points: [ - [model.x, model.y + style.Signal.post.standardHeight * 1.2], - [model.x, model.y - style.Signal.post.standardHeight * 1.2] - ] - }, - style: { - lineWidth: style.Signal.post.standardWidth, - stroke: style.Signal.post.standardColor - } - }); + // 基座 + let verPoints = [[model.x, model.y + style.Signal.post.standardHeight * 1.2], [model.x, model.y - style.Signal.post.standardHeight * 1.2]]; + if (style.Signal.post.standardVerticalShape && style.Signal.post.standardVerticalShape === '8') { + verPoints = [ + [model.x - model.drict * 2, model.y + style.Signal.post.standardHeight * 1.2], + [model.x - model.drict * 2, model.y - style.Signal.post.standardHeight * 1.2], + [model.x, model.y - style.Signal.post.standardHeight * 1.2], + [model.x, model.y - style.Signal.post.standardRailWidth / 2], + [model.x + model.drict * 2, model.y - style.Signal.post.standardRailWidth / 2], + [model.x + model.drict * 2, model.y + style.Signal.post.standardRailWidth / 2], + [model.x, model.y + style.Signal.post.standardRailWidth / 2], + [model.x, model.y + style.Signal.post.standardHeight * 1.2] + ]; + this.ver = new Polygon({ + _subType: 'SignalLamp', + _val: '3', + zlevel: model.zlevel, + z: model.z, + shape: { + points: verPoints + }, + style: { + lineWidth: style.Signal.post.standardVerticalWidth, + stroke: style.Signal.post.standardColor, + fill: style.Signal.post.standardColor + } + }); + } else { + this.ver = new Polyline({ + _subType: 'SignalLamp', + _val: '3', + zlevel: model.zlevel, + z: model.z, + shape: { + points: verPoints + }, + style: { + lineWidth: style.Signal.post.standardVerticalWidth, + stroke: style.Signal.post.standardColor, + fill: style.Signal.post.standardColor + } + }); + } // 横杆 this.hor = new Polyline({ zlevel: model.zlevel, @@ -41,18 +67,13 @@ class ESigPost extends Group { ] }, style: { - lineWidth: style.Signal.post.standardWidth, + lineWidth: style.Signal.post.standardRailWidth, stroke: style.Signal.post.standardColor } }); this.add(this.ver); this.add(this.hor); - - model.type === '01' ? this.hor.hide() : this.hor.show(); - if (style.Signal.post.standardShow) { - this.hor.show(); - } } setColor(color) { @@ -100,7 +121,7 @@ class ESigPost extends Group { if (style.Signal.post.standardShow) { type = '01'; } - const length = style.Signal.post.standardShow ? 4 : 0; + const length = style.Signal.post.standardShow ? style.Signal.post.standardLength : 0; if (type === '01') { return { x: model.x + model.drict * style.Signal.lamp.radiusR * 3 / 2 + model.drict * length, diff --git a/src/jmapNew/shape/Signal/index.js b/src/jmapNew/shape/Signal/index.js index 6c852fe24..7bdf700d3 100644 --- a/src/jmapNew/shape/Signal/index.js +++ b/src/jmapNew/shape/Signal/index.js @@ -180,7 +180,7 @@ class Signal extends Group { this.sigBack.hide(); } // 信号机名称 - const sigNameX = model.position.x + model.positionPoint.x - drict * (style.Signal.post.standardWidth) + model.namePosition.x; + const sigNameX = model.position.x + model.positionPoint.x - drict * (style.Signal.post.standardVerticalWidth) + model.namePosition.x; const sigNameY = model.position.y + model.positionPoint.y + posit * (style.Signal.distance + style.Section.line.width + style.Signal.lamp.radiusR * 2 + model.namePosition.y + style.Signal.text.distance); const textAlign = style.Signal.text.isAlignCenter ? 'middle' : this.model.right ? 'left' : 'right'; const textVerticalAlign = posit == 1 ? 'top' : 'bottom'; @@ -725,7 +725,7 @@ class Signal extends Group { const rect = this.sigPost.getBoundingRect().clone(); return { - x: rect.x + drict * this.style.Signal.post.standardWidth, + x: rect.x + drict * this.style.Signal.post.standardVerticalWidth, y: rect.y - offsetY }; } From 941e0a791aebe315063949e8a2c5747ac6e8e6c0 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 18 Dec 2020 13:38:13 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E7=95=99=E8=A8=80=E6=9D=BF=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scripts/ProjectConfig.js | 2 +- src/views/newMap/displayNew/demonMenu.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripts/ProjectConfig.js b/src/scripts/ProjectConfig.js index a6123e2bd..b558e9b92 100644 --- a/src/scripts/ProjectConfig.js +++ b/src/scripts/ProjectConfig.js @@ -427,7 +427,7 @@ export const ProjectIcon = { export const ProjectCode = { login: 'DEFAULT', - designlogin: 'DEFAULT', + design: 'DEFAULT', xty: 'XTY', designxty: 'XTY', gzb: 'GZB', diff --git a/src/views/newMap/displayNew/demonMenu.vue b/src/views/newMap/displayNew/demonMenu.vue index 936795ac0..b0640f918 100644 --- a/src/views/newMap/displayNew/demonMenu.vue +++ b/src/views/newMap/displayNew/demonMenu.vue @@ -277,7 +277,7 @@ export default { const routeData = this.$router.resolve({ path:'/messageBoard', query:{ - project: this.$route.query.project, + project: this.$route.query.project || getSessionStorage('project'), noPreLogout: true } }); From 31954a545d22930bba6e0bc2431bde412e517de4 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 18 Dec 2020 14:10:25 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E5=93=88=E5=B0=94=E6=BB=A8=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/haerbin_01/menus/dialog/trainControl.vue | 10 +++++----- src/jmapNew/theme/haerbin_01/menus/menuButton.vue | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/jmapNew/theme/haerbin_01/menus/dialog/trainControl.vue b/src/jmapNew/theme/haerbin_01/menus/dialog/trainControl.vue index e524d6151..a7c2c3146 100644 --- a/src/jmapNew/theme/haerbin_01/menus/dialog/trainControl.vue +++ b/src/jmapNew/theme/haerbin_01/menus/dialog/trainControl.vue @@ -29,7 +29,7 @@ @@ -52,7 +52,7 @@ @@ -157,7 +157,7 @@ export default { if (device && device.code && device.deviceType === 'TRAIN') { this.tempTableData = [device]; this.sectionCode = device.sectionModel.name; - this.tripNum = device.destinationCode + device.serviceNumber + device.tripNumber; + this.tripNum = device.destinationCode + device.serviceNumber + (device.tripNumber.substring(1)); this.groupNum = device.groupNumber; } } @@ -186,10 +186,10 @@ export default { }, commit() { this.newTripNumError = false; - if (this.newTripNum && this.newTripNum.length === 9) { + if (this.newTripNum && this.newTripNum.length === 8) { const params = { groupNumber: this.groupNum, - tripNumber: this.newTripNum.slice(6, 9), + tripNumber: '0' + this.newTripNum.slice(6, 8), serviceNumber: this.newTripNum.slice(3, 6) }; const step = { diff --git a/src/jmapNew/theme/haerbin_01/menus/menuButton.vue b/src/jmapNew/theme/haerbin_01/menus/menuButton.vue index 76129d247..556527037 100644 --- a/src/jmapNew/theme/haerbin_01/menus/menuButton.vue +++ b/src/jmapNew/theme/haerbin_01/menus/menuButton.vue @@ -794,7 +794,7 @@ export default { 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, securityCommand: true }, + { 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, securityCommand: true } ]; this.directionRodParamList = [