openatc-components 0.1.190 → 0.1.192
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +436 -0
- package/package/kisscomps/components/DirectionListConfiguration/index.js +2 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-pedeastward.vue +35 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-pednorthward.vue +30 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-pedsouthward.vue +35 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-pedwestward.vue +41 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -0
- package/package/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -0
- package/package/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +127 -0
- package/package/kisscomps/components/IntersectionDirectionSelection/index.js +2 -0
- package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +0 -1
- package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +429 -0
- package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1272 -0
- package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +239 -16
- package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +88 -14
- package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +88 -15
- package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +24 -8
- package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +24 -8
- package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +50 -2
- package/package/kisscomps/components/IntersectionMap/crossDirection/utils.js +6 -0
- package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +38 -1
- package/package/kisscomps/index.js +5 -1
- package/package/kissui.min.js +1 -1
- package/package.json +1 -1
- package/src/EdgeMgr/controller/crossDiagramMgr.js +5 -1
- package/src/icons/demo_index.html +8146 -0
- package/src/icons/iconfont.css +219 -3
- package/src/icons/iconfont.js +1 -1
- package/src/icons/iconfont.json +378 -0
- package/src/icons/iconfont.ttf +0 -0
- package/src/icons/iconfont.woff +0 -0
- package/src/icons/iconfont.woff2 +0 -0
- package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +436 -0
- package/src/kisscomps/components/DirectionListConfiguration/index.js +2 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-pedeastward.vue +35 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-pednorthward.vue +30 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-pedsouthward.vue +35 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-pedwestward.vue +41 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -0
- package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -0
- package/src/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +127 -0
- package/src/kisscomps/components/IntersectionDirectionSelection/index.js +2 -0
- package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +0 -1
- package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1272 -0
- package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +239 -16
- package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +88 -14
- package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +88 -15
- package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +24 -8
- package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +24 -8
- package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +50 -2
- package/src/kisscomps/components/IntersectionMap/crossDirection/utils.js +6 -0
- package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +38 -1
- package/src/kisscomps/index.js +5 -1
- package/src/utils/conflictList.js +87 -0
- package/src/utils/phasedesc.js +37 -17
- package/src/views/intersection.vue +61 -11
- package/src/views/overView.vue +9 -12
- package/src/views/patternConfig.vue +2 -2
- package/src/views/schemeconfig.vue +3 -3
- package/static/styles/uiComponents.scss +52 -0
- package/src/node_modules/.package_versions.json +0 -1
|
@@ -10,30 +10,37 @@
|
|
|
10
10
|
* See the Mulan PSL v2 for more details.
|
|
11
11
|
**/
|
|
12
12
|
<template>
|
|
13
|
-
<div :style="{position: 'absolute', left: Data.left, top: Data.top}">
|
|
13
|
+
<div :id="Data.key" :style="{position: 'absolute', left: Data.left, top: Data.top}">
|
|
14
14
|
<div :class="Data.id < 9 ? '' : 'hide'">
|
|
15
|
-
<svg
|
|
16
|
-
|
|
15
|
+
<svg v-if="Data.id === 4 || Data.id === 8" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.11 14.47" :width="IconLenghDiaoTou" :height="IconWdithDiaoTou">
|
|
16
|
+
<path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M4.91,11.34H8.55v3.13l7.7-4.4-7.7-4.4V8.8H4.91c-1.27,0-2.37-1.44-2.37-3.13s1.1-3.13,2.37-3.13h13.2V0H4.91C2.2,0,0,2.54,0,5.67S2.2,11.34,4.91,11.34Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
17
|
+
<path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M13.2,3.22H9.56V0L2,4.48l7.7,4.4V5.75h3.63c1.27,0,2.37,1.44,2.37,3.13S14.55,12,13.28,12H0v2.53H13.2c2.71,0,4.91-2.53,4.91-5.67S15.91,3.22,13.2,3.22Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
18
|
+
</svg>
|
|
19
|
+
<svg v-else xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 36 26" :width="IconLengh" :height="IconWdith">
|
|
17
20
|
<!-- 东相位 -->
|
|
18
21
|
<path id="东左转" :class="Data.name === '东左转' ? '' : 'invisible'" d="M11,7.1h24v-3H10.9c-3.1,0-5.7,2.6-5.8,5.7l-0.4,2.9L1,12.2l3.9,9.7l6.5-8.2l-3.7-0.5l0.5-3.3
|
|
19
22
|
C8.2,8.4,9.4,7.1,11,7.1L11,7.1z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
20
23
|
<path id="东右转" :class="Data.name === '东右转' ? '' : 'invisible'" d="M8.1,15.8l-0.4-3l3.7-0.5L4.9,4.1L1,13.8l3.7-0.5l0.4,2.9c0,3.2,2.6,5.7,5.8,5.7H35v-3H10.9
|
|
21
24
|
c-1.5,0-2.8-1.3-2.8-2.8V15.8z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
22
25
|
<polygon id="东直行" :class="Data.name === '东直行' ? '' : 'invisible'" points="35,11.5 10.1,11.5 10.1,7.8 0.9,13 10.1,18.2 10.1,14.5 35,14.5 " :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
23
|
-
<path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M19.4,17.5h4.3v3.7l9.1-5.2l-9.1-5.2v3.7h-4.3c-1.5,0-2.8-1.7-2.8-3.7s1.3-3.7,2.8-3.7H35v-3H19.4
|
|
24
|
-
c-3.2,0-5.8,3-5.8,6.7C13.6,14.5,16.2,17.5,19.4,17.5z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
26
|
+
<!-- <path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M19.4,17.5h4.3v3.7l9.1-5.2l-9.1-5.2v3.7h-4.3c-1.5,0-2.8-1.7-2.8-3.7s1.3-3.7,2.8-3.7H35v-3H19.4
|
|
27
|
+
c-3.2,0-5.8,3-5.8,6.7C13.6,14.5,16.2,17.5,19.4,17.5z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/> -->
|
|
25
28
|
<!-- 西相位 -->
|
|
26
29
|
<path id="西左转" :class="Data.name === '西左转' ? '' : 'invisible'" d="M25,18.9H1v3h24.1c3.1,0,5.7-2.6,5.8-5.7l0.4-2.9l3.7,0.5l-3.9-9.7l-6.5,8.2l3.7,0.5l-0.5,3.3
|
|
27
30
|
C27.8,17.6,26.6,18.9,25,18.9L25,18.9z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
28
31
|
<path id="西右转" :class="Data.name === '西右转' ? '' : 'invisible'" d="M27.9,10.2l0.4,3l-3.7,0.5l6.5,8.2l3.9-9.7l-3.7,0.5l-0.4-2.9c0-3.2-2.6-5.7-5.8-5.7H1v3h24.1
|
|
29
32
|
c1.5,0,2.8,1.3,2.8,2.8V10.2z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
30
33
|
<polygon id="西直行" :class="Data.name === '西直行' ? '' : 'invisible'" points="1,14.5 26,14.5 26,18.2 35.1,13 26,7.8 26,11.5 1,11.5 " :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
31
|
-
<path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M16.6,8.5h-4.3V4.7L3.3,10l9.1,5.2v-3.7h4.3c1.5,0,2.8,1.7,2.8,3.7s-1.3,3.7-2.8,3.7H1v3h15.6
|
|
32
|
-
c3.2,0,5.8-3,5.8-6.7C22.4,11.5,19.8,8.5,16.6,8.5z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
34
|
+
<!-- <path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M16.6,8.5h-4.3V4.7L3.3,10l9.1,5.2v-3.7h4.3c1.5,0,2.8,1.7,2.8,3.7s-1.3,3.7-2.8,3.7H1v3h15.6
|
|
35
|
+
c3.2,0,5.8-3,5.8-6.7C22.4,11.5,19.8,8.5,16.6,8.5z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/> -->
|
|
33
36
|
</svg>
|
|
34
37
|
</div>
|
|
35
38
|
<div :class="Data.id >= 9 ? '' : 'hide'">
|
|
36
|
-
<svg
|
|
39
|
+
<svg v-if="Data.id === 12 || Data.id === 16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.47 18.11" :width="IconWdithDiaoTou" :height="IconLenghDiaoTou">
|
|
40
|
+
<path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M3.22,4.91V8.55H0l4.4,7.7,4.4-7.7H5.67V4.91c0-1.27,1.44-2.37,3.13-2.37s3.13,1.1,3.13,2.37v13.2h2.54V4.91C14.47,2.2,11.93,0,8.8,0S3.22,2.2,3.22,4.91Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
|
|
41
|
+
<path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M11.34,13.2V9.56h3.13L10.07,2l-4.4,7.7H8.8v3.63c0,1.27-1.44,2.37-3.13,2.37s-3.13-1.1-3.13-2.37V0H0V13.2c0,2.71,2.54,4.91,5.67,4.91S11.34,15.91,11.34,13.2Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
|
|
42
|
+
</svg>
|
|
43
|
+
<svg v-else xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"
|
|
37
44
|
viewBox="0 0 26 36" style="enable-background:new 0 0 26 36;" xml:space="preserve" :width="IconWdith" :height="IconLengh">
|
|
38
45
|
<!-- 南相位 -->
|
|
39
46
|
<path id="南左转" :class="Data.name === '南左转' ? '' : 'invisible'" d="M18.9,11v24h3V10.9c0-3.1-2.6-5.7-5.7-5.8l-2.9-0.4L13.8,1L4.1,4.9l8.2,6.5l0.5-3.7l3.3,0.5
|
|
@@ -41,16 +48,16 @@
|
|
|
41
48
|
<path id="南右转" :class="Data.name === '南右转' ? '' : 'invisible'" d="M10.2,8.1l3-0.4l0.5,3.7l8.2-6.5L12.2,1l0.5,3.7L9.8,5.1c-3.2,0-5.7,2.6-5.7,5.8V35h3V10.9
|
|
42
49
|
c0-1.5,1.3-2.8,2.8-2.8H10.2z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
43
50
|
<polygon id="南直行" :class="Data.name === '南直行' ? '' : 'invisible'" points="14.5,35 14.5,10.1 18.2,10.1 13,0.9 7.8,10.1 11.5,10.1 11.5,35 " :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
44
|
-
<path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M8.5,19.4v4.3H4.7l5.2,9.1l5.2-9.1h-3.7v-4.3c0-1.5,1.7-2.8,3.7-2.8s3.7,1.3,3.7,2.8V35h3V19.4
|
|
45
|
-
c0-3.2-3-5.8-6.7-5.8C11.5,13.6,8.5,16.2,8.5,19.4z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
51
|
+
<!-- <path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M8.5,19.4v4.3H4.7l5.2,9.1l5.2-9.1h-3.7v-4.3c0-1.5,1.7-2.8,3.7-2.8s3.7,1.3,3.7,2.8V35h3V19.4
|
|
52
|
+
c0-3.2-3-5.8-6.7-5.8C11.5,13.6,8.5,16.2,8.5,19.4z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/> -->
|
|
46
53
|
<!-- 北相位 -->
|
|
47
54
|
<path id="北左转" :class="Data.name === '北左转' ? '' : 'invisible'" d="M7.1,25V1h-3v24.1c0,3.1,2.6,5.7,5.7,5.8l2.9,0.4L12.2,35l9.7-3.9l-8.2-6.5l-0.5,3.7l-3.3-0.5
|
|
48
55
|
C8.4,27.8,7.1,26.6,7.1,25L7.1,25z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
49
56
|
<path id="北右转" :class="Data.name === '北右转' ? '' : 'invisible'" d="M15.8,27.9l-3,0.4l-0.5-3.7l-8.2,6.5l9.7,3.9l-0.5-3.7l2.9-0.4c3.2,0,5.7-2.6,5.7-5.8V1h-3v24.1
|
|
50
57
|
c0,1.5-1.3,2.8-2.8,2.8H15.8z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
51
58
|
<polygon id="北直行" :class="Data.name === '北直行' ? '' : 'invisible'" points="11.5,0.9 11.5,25.9 7.8,25.9 13,35 18.2,25.9 14.5,25.9 14.5,0.9 " :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
52
|
-
<path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M17.5,16.6v-4.3h3.7L16,3.3l-5.2,9.1h3.7v4.3c0,1.5-1.7,2.8-3.7,2.8s-3.7-1.3-3.7-2.8V1h-3v15.6
|
|
53
|
-
c0,3.2,3,5.8,6.7,5.8C14.5,22.4,17.5,19.8,17.5,16.6z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
|
|
59
|
+
<!-- <path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M17.5,16.6v-4.3h3.7L16,3.3l-5.2,9.1h3.7v4.3c0,1.5-1.7,2.8-3.7,2.8s-3.7-1.3-3.7-2.8V1h-3v15.6
|
|
60
|
+
c0,3.2,3,5.8,6.7,5.8C14.5,22.4,17.5,19.8,17.5,16.6z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/> -->
|
|
54
61
|
</svg>
|
|
55
62
|
</div>
|
|
56
63
|
</div>
|
|
@@ -64,12 +71,17 @@ export default {
|
|
|
64
71
|
FlashColor: undefined,
|
|
65
72
|
GreenColor: '#77fb65',
|
|
66
73
|
YellowColor: '#f7b500',
|
|
67
|
-
lastStatus: ''
|
|
74
|
+
lastStatus: '',
|
|
75
|
+
clickedColor: '#299bcc',
|
|
76
|
+
disabledColor: '#828282'
|
|
68
77
|
}
|
|
69
78
|
},
|
|
70
79
|
watch: {
|
|
71
80
|
Data: {
|
|
72
81
|
handler: function (val) {
|
|
82
|
+
if (this.isVipRoute) {
|
|
83
|
+
this.handleStatus()
|
|
84
|
+
}
|
|
73
85
|
if (this.lastStatus === '') {
|
|
74
86
|
if (val.type === 4 || val.type === '黄闪') {
|
|
75
87
|
// 绿闪:绿-》灰-》绿 循环效果
|
|
@@ -105,12 +117,73 @@ export default {
|
|
|
105
117
|
type: String,
|
|
106
118
|
default: '22px'
|
|
107
119
|
},
|
|
120
|
+
IconLenghDiaoTou: {
|
|
121
|
+
type: String,
|
|
122
|
+
default: '18.11px'
|
|
123
|
+
},
|
|
124
|
+
IconWdithDiaoTou: {
|
|
125
|
+
type: String,
|
|
126
|
+
default: '14.47px'
|
|
127
|
+
},
|
|
108
128
|
Data: {
|
|
109
129
|
type: Object
|
|
130
|
+
},
|
|
131
|
+
clickMode: {
|
|
132
|
+
type: Boolean,
|
|
133
|
+
default: false
|
|
134
|
+
},
|
|
135
|
+
isVipRoute: {
|
|
136
|
+
type: Boolean,
|
|
137
|
+
default: false
|
|
110
138
|
}
|
|
111
139
|
},
|
|
112
|
-
methods: {
|
|
113
|
-
|
|
140
|
+
methods: {
|
|
141
|
+
handleClick (e) {
|
|
142
|
+
let clickedPath = e.target
|
|
143
|
+
// console.log(clickedPath)
|
|
144
|
+
if (clickedPath) {
|
|
145
|
+
// 在这里对找到的元素进行操作
|
|
146
|
+
if (clickedPath.getAttribute('disabled') === 'true') {
|
|
147
|
+
return
|
|
148
|
+
}
|
|
149
|
+
if (clickedPath.getAttribute('fill') === this.clickedColor) {
|
|
150
|
+
clickedPath.setAttribute('fill', '#fff')
|
|
151
|
+
this.$emit('handleClickPhaseIcon', this.Data.key, 'cancle')
|
|
152
|
+
} else {
|
|
153
|
+
clickedPath.setAttribute('fill', this.clickedColor)
|
|
154
|
+
this.$emit('handleClickPhaseIcon', this.Data.key, 'clicked')
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
handleStatus () {
|
|
159
|
+
let IconDom = document.getElementById(this.Data.key)
|
|
160
|
+
let DirDom = IconDom.querySelector(`#${this.Data.name}`)
|
|
161
|
+
if (this.Data.clicked === true) {
|
|
162
|
+
DirDom.setAttribute('fill', this.clickedColor)
|
|
163
|
+
}
|
|
164
|
+
if (this.clickMode && this.Data.disabled === true) {
|
|
165
|
+
DirDom.setAttribute('fill', this.disabledColor)
|
|
166
|
+
DirDom.setAttribute('disabled', 'true')
|
|
167
|
+
}
|
|
168
|
+
if (this.Data.disabled === undefined && this.Data.clicked === undefined) {
|
|
169
|
+
DirDom.setAttribute('fill', this.defaultColor)
|
|
170
|
+
DirDom.removeAttribute('disabled')
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
IconAddEvent () {
|
|
174
|
+
let IconDom = document.getElementById(this.Data.key)
|
|
175
|
+
let DirDom = IconDom.querySelector(`#${this.Data.name}`)
|
|
176
|
+
if (this.clickMode && DirDom.getAttribute('class') !== 'invisible') {
|
|
177
|
+
DirDom.addEventListener('click', this.handleClick)
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
mounted () {
|
|
182
|
+
if (this.isVipRoute) {
|
|
183
|
+
this.handleStatus()
|
|
184
|
+
this.IconAddEvent()
|
|
185
|
+
}
|
|
186
|
+
}
|
|
114
187
|
}
|
|
115
188
|
</script>
|
|
116
189
|
<style scoped>
|
|
@@ -2,98 +2,114 @@
|
|
|
2
2
|
"phaseList": [{
|
|
3
3
|
"id": 1,
|
|
4
4
|
"name": "东直行",
|
|
5
|
+
"ename": "East-Straight",
|
|
5
6
|
"x": "588px",
|
|
6
7
|
"y": "267px"
|
|
7
8
|
},
|
|
8
9
|
{
|
|
9
10
|
"id": 2,
|
|
10
11
|
"name": "东左转",
|
|
12
|
+
"ename": "East-Left",
|
|
11
13
|
"x": "588px",
|
|
12
14
|
"y": "297px"
|
|
13
15
|
},
|
|
14
16
|
{
|
|
15
17
|
"id": 3,
|
|
16
18
|
"name": "东右转",
|
|
19
|
+
"ename": "East-Right",
|
|
17
20
|
"x": "588px",
|
|
18
21
|
"y": "238px"
|
|
19
22
|
},
|
|
20
23
|
{
|
|
21
24
|
"id": 4,
|
|
22
25
|
"name": "东掉头",
|
|
23
|
-
"
|
|
24
|
-
"
|
|
26
|
+
"ename": "East-Back",
|
|
27
|
+
"x": "601px",
|
|
28
|
+
"y": "297.8px"
|
|
25
29
|
},
|
|
26
30
|
{
|
|
27
31
|
"id": 5,
|
|
28
32
|
"name": "西直行",
|
|
33
|
+
"ename": "West-Straight",
|
|
29
34
|
"x": "244px",
|
|
30
35
|
"y": "359px"
|
|
31
36
|
},
|
|
32
37
|
{
|
|
33
38
|
"id": 6,
|
|
34
39
|
"name": "西左转",
|
|
40
|
+
"ename": "West-Left",
|
|
35
41
|
"x": "244px",
|
|
36
42
|
"y": "329px"
|
|
37
43
|
},
|
|
38
44
|
{
|
|
39
45
|
"id": 7,
|
|
40
46
|
"name": "西右转",
|
|
47
|
+
"ename": "West-Right",
|
|
41
48
|
"x": "244px",
|
|
42
49
|
"y": "388px"
|
|
43
50
|
},
|
|
44
51
|
{
|
|
45
52
|
"id": 8,
|
|
46
53
|
"name": "西掉头",
|
|
47
|
-
"
|
|
48
|
-
"
|
|
54
|
+
"ename": "West-Back",
|
|
55
|
+
"x": "246px",
|
|
56
|
+
"y": "330.8px"
|
|
49
57
|
},
|
|
50
58
|
{
|
|
51
59
|
"id": 9,
|
|
52
60
|
"name": "北直行",
|
|
61
|
+
"ename": "North-Straight",
|
|
53
62
|
"x": "379px",
|
|
54
63
|
"y": "134px"
|
|
55
64
|
},
|
|
56
65
|
{
|
|
57
66
|
"id": 10,
|
|
58
67
|
"name": "北左转",
|
|
68
|
+
"ename": "North-Left",
|
|
59
69
|
"x": "408px",
|
|
60
70
|
"y": "134px"
|
|
61
71
|
},
|
|
62
72
|
{
|
|
63
73
|
"id": 11,
|
|
64
74
|
"name": "北右转",
|
|
75
|
+
"ename": "North-Right",
|
|
65
76
|
"x": "348px",
|
|
66
77
|
"y": "134px"
|
|
67
78
|
},
|
|
68
79
|
{
|
|
69
80
|
"id": 12,
|
|
70
81
|
"name": "北掉头",
|
|
71
|
-
"
|
|
72
|
-
"
|
|
82
|
+
"ename": "North-Back",
|
|
83
|
+
"x": "411px",
|
|
84
|
+
"y": "136px"
|
|
73
85
|
},
|
|
74
86
|
{
|
|
75
87
|
"id": 13,
|
|
76
88
|
"name": "南直行",
|
|
89
|
+
"ename": "South-Straight",
|
|
77
90
|
"x": "470px",
|
|
78
91
|
"y": "476px"
|
|
79
92
|
},
|
|
80
93
|
{
|
|
81
94
|
"id": 14,
|
|
82
95
|
"name": "南左转",
|
|
96
|
+
"ename": "South-Left",
|
|
83
97
|
"x": "440px",
|
|
84
98
|
"y": "476px"
|
|
85
99
|
},
|
|
86
100
|
{
|
|
87
101
|
"id": 15,
|
|
88
102
|
"name": "南右转",
|
|
103
|
+
"ename": "South-Right",
|
|
89
104
|
"x": "500px",
|
|
90
105
|
"y": "476px"
|
|
91
106
|
},
|
|
92
107
|
{
|
|
93
108
|
"id": 16,
|
|
94
109
|
"name": "南掉头",
|
|
95
|
-
"
|
|
96
|
-
"
|
|
110
|
+
"ename": "South-Back",
|
|
111
|
+
"x": "444px",
|
|
112
|
+
"y": "490px"
|
|
97
113
|
}
|
|
98
114
|
]
|
|
99
115
|
}
|
|
@@ -2,98 +2,114 @@
|
|
|
2
2
|
"phaseList": [{
|
|
3
3
|
"id": 1,
|
|
4
4
|
"name": "东直行",
|
|
5
|
+
"ename": "East-Straight",
|
|
5
6
|
"x": "591px",
|
|
6
7
|
"y": "359px"
|
|
7
8
|
},
|
|
8
9
|
{
|
|
9
10
|
"id": 2,
|
|
10
11
|
"name": "东左转",
|
|
12
|
+
"ename": "East-Left",
|
|
11
13
|
"x": "591px",
|
|
12
14
|
"y": "388px"
|
|
13
15
|
},
|
|
14
16
|
{
|
|
15
17
|
"id": 3,
|
|
16
18
|
"name": "东右转",
|
|
19
|
+
"ename": "East-Right",
|
|
17
20
|
"x": "591px",
|
|
18
21
|
"y": "330px"
|
|
19
22
|
},
|
|
20
23
|
{
|
|
21
24
|
"id": 4,
|
|
22
25
|
"name": "东掉头",
|
|
23
|
-
"
|
|
24
|
-
"
|
|
26
|
+
"ename": "East-Back",
|
|
27
|
+
"x": "605px",
|
|
28
|
+
"y": "331px"
|
|
25
29
|
},
|
|
26
30
|
{
|
|
27
31
|
"id": 5,
|
|
28
32
|
"name": "西直行",
|
|
33
|
+
"ename": "West-Straight",
|
|
29
34
|
"x": "246px",
|
|
30
35
|
"y": "267px"
|
|
31
36
|
},
|
|
32
37
|
{
|
|
33
38
|
"id": 6,
|
|
34
39
|
"name": "西左转",
|
|
40
|
+
"ename": "West-Left",
|
|
35
41
|
"x": "246px",
|
|
36
42
|
"y": "238px"
|
|
37
43
|
},
|
|
38
44
|
{
|
|
39
45
|
"id": 7,
|
|
40
46
|
"name": "西右转",
|
|
47
|
+
"ename": "West-Right",
|
|
41
48
|
"x": "246px",
|
|
42
49
|
"y": "297px"
|
|
43
50
|
},
|
|
44
51
|
{
|
|
45
52
|
"id": 8,
|
|
46
53
|
"name": "西掉头",
|
|
47
|
-
"
|
|
48
|
-
"
|
|
54
|
+
"ename": "West-Back",
|
|
55
|
+
"x": "248px",
|
|
56
|
+
"y": "299px"
|
|
49
57
|
},
|
|
50
58
|
{
|
|
51
59
|
"id": 9,
|
|
52
60
|
"name": "北直行",
|
|
61
|
+
"ename": "North-Straight",
|
|
53
62
|
"x": "471px",
|
|
54
63
|
"y": "135px"
|
|
55
64
|
},
|
|
56
65
|
{
|
|
57
66
|
"id": 10,
|
|
58
67
|
"name": "北左转",
|
|
68
|
+
"ename": "North-Left",
|
|
59
69
|
"x": "500px",
|
|
60
70
|
"y": "135px"
|
|
61
71
|
},
|
|
62
72
|
{
|
|
63
73
|
"id": 11,
|
|
64
74
|
"name": "北右转",
|
|
75
|
+
"ename": "North-Right",
|
|
65
76
|
"x": "442px",
|
|
66
77
|
"y": "135px"
|
|
67
78
|
},
|
|
68
79
|
{
|
|
69
80
|
"id": 12,
|
|
70
81
|
"name": "北掉头",
|
|
71
|
-
"
|
|
72
|
-
"
|
|
82
|
+
"ename": "North-Back",
|
|
83
|
+
"x": "446px",
|
|
84
|
+
"y": "138px"
|
|
73
85
|
},
|
|
74
86
|
{
|
|
75
87
|
"id": 13,
|
|
76
88
|
"name": "南直行",
|
|
89
|
+
"ename": "South-Straight",
|
|
77
90
|
"x": "379px",
|
|
78
91
|
"y": "481px"
|
|
79
92
|
},
|
|
80
93
|
{
|
|
81
94
|
"id": 14,
|
|
82
95
|
"name": "南左转",
|
|
96
|
+
"ename": "South-Left",
|
|
83
97
|
"x": "349px",
|
|
84
98
|
"y": "481px"
|
|
85
99
|
},
|
|
86
100
|
{
|
|
87
101
|
"id": 15,
|
|
88
102
|
"name": "南右转",
|
|
103
|
+
"ename": "South-Right",
|
|
89
104
|
"x": "408px",
|
|
90
105
|
"y": "481px"
|
|
91
106
|
},
|
|
92
107
|
{
|
|
93
108
|
"id": 16,
|
|
94
109
|
"name": "南掉头",
|
|
95
|
-
"
|
|
96
|
-
"
|
|
110
|
+
"ename": "South-Back",
|
|
111
|
+
"x": "411px",
|
|
112
|
+
"y": "495px"
|
|
97
113
|
}
|
|
98
114
|
]
|
|
99
115
|
}
|
|
@@ -2,96 +2,144 @@
|
|
|
2
2
|
"sideList": [{
|
|
3
3
|
"id": 1,
|
|
4
4
|
"name": "东人行横道",
|
|
5
|
+
"ename": "East-Pedestrian",
|
|
6
|
+
"desc": "东行人",
|
|
7
|
+
"svgid": "东行人",
|
|
5
8
|
"x": "310px",
|
|
6
9
|
"y": "198px"
|
|
7
10
|
},
|
|
8
11
|
{
|
|
9
12
|
"id": 2,
|
|
10
13
|
"name": "西人行横道",
|
|
14
|
+
"ename": "West-Pedestrian",
|
|
15
|
+
"desc": "西行人",
|
|
16
|
+
"svgid": "西行人",
|
|
11
17
|
"x": "310px",
|
|
12
18
|
"y": "198px"
|
|
13
19
|
},
|
|
14
20
|
{
|
|
15
21
|
"id": 3,
|
|
16
22
|
"name": "南人行横道",
|
|
23
|
+
"ename": "South-Pedestrian",
|
|
24
|
+
"desc": "南行人",
|
|
25
|
+
"svgid": "南行人",
|
|
17
26
|
"x": "310px",
|
|
18
27
|
"y": "198px"
|
|
19
28
|
},
|
|
20
29
|
{
|
|
21
30
|
"id": 4,
|
|
22
31
|
"name": "北人行横道",
|
|
32
|
+
"ename": "North-Pedestrian",
|
|
33
|
+
"desc": "北行人",
|
|
34
|
+
"svgid": "北行人",
|
|
23
35
|
"x": "310px",
|
|
24
36
|
"y": "198px"
|
|
25
37
|
},
|
|
26
38
|
{
|
|
27
39
|
"id": 5,
|
|
28
40
|
"name": "东人行横道-上",
|
|
41
|
+
"ename": "East-Top-Pedestrian",
|
|
42
|
+
"desc": "东行人上",
|
|
43
|
+
"svgid": "东行人上",
|
|
29
44
|
"x": "310px",
|
|
30
45
|
"y": "198px"
|
|
31
46
|
},
|
|
32
47
|
{
|
|
33
48
|
"id": 6,
|
|
34
49
|
"name": "东人行横道-下",
|
|
50
|
+
"ename": "East-Bottom-Pedestrian",
|
|
51
|
+
"desc": "东行人下",
|
|
52
|
+
"svgid": "东行人下",
|
|
35
53
|
"x": "310px",
|
|
36
54
|
"y": "198px"
|
|
37
55
|
},
|
|
38
56
|
{
|
|
39
57
|
"id": 7,
|
|
40
58
|
"name": "西人行横道-上",
|
|
59
|
+
"ename": "West-Top-Pedestrian",
|
|
60
|
+
"desc": "西行人上",
|
|
61
|
+
"svgid": "西行人上",
|
|
41
62
|
"x": "310px",
|
|
42
63
|
"y": "198px"
|
|
43
64
|
},
|
|
44
65
|
{
|
|
45
66
|
"id": 8,
|
|
46
67
|
"name": "西人行横道-下",
|
|
68
|
+
"ename": "West-Bottom-Pedestrian",
|
|
69
|
+
"desc": "西行人下",
|
|
70
|
+
"svgid": "西行人下",
|
|
47
71
|
"x": "310px",
|
|
48
72
|
"y": "198px"
|
|
49
73
|
},
|
|
50
74
|
{
|
|
51
75
|
"id": 9,
|
|
52
76
|
"name": "南人行横道-左",
|
|
77
|
+
"ename": "South-Left-Pedestrian",
|
|
78
|
+
"desc": "南行人左",
|
|
79
|
+
"svgid": "南行人左",
|
|
53
80
|
"x": "310px",
|
|
54
81
|
"y": "198px"
|
|
55
82
|
},
|
|
56
83
|
{
|
|
57
84
|
"id": 10,
|
|
58
85
|
"name": "南人行横道-右",
|
|
86
|
+
"ename": "South-Right-Pedestrian",
|
|
87
|
+
"desc": "南行人右",
|
|
88
|
+
"svgid": "南行人右",
|
|
59
89
|
"x": "310px",
|
|
60
90
|
"y": "198px"
|
|
61
91
|
},
|
|
62
92
|
{
|
|
63
93
|
"id": 11,
|
|
64
94
|
"name": "北人行横道-左",
|
|
95
|
+
"ename": "North-Left-Pedestrian",
|
|
96
|
+
"desc": "北行人左",
|
|
97
|
+
"svgid": "北行人左",
|
|
65
98
|
"x": "310px",
|
|
66
99
|
"y": "198px"
|
|
67
100
|
},
|
|
68
101
|
{
|
|
69
102
|
"id": 12,
|
|
70
103
|
"name": "北人行横道-右",
|
|
104
|
+
"ename": "North-Right-Pedestrian",
|
|
105
|
+
"desc": "北行人右",
|
|
106
|
+
"svgid": "北行人右",
|
|
71
107
|
"x": "310px",
|
|
72
108
|
"y": "198px"
|
|
73
109
|
},
|
|
74
110
|
{
|
|
75
111
|
"id": 13,
|
|
76
112
|
"name": "X人行横道-/",
|
|
113
|
+
"ename": "X-/-Pedestrian",
|
|
114
|
+
"desc": "/行人",
|
|
115
|
+
"svgid": "斜杠行人",
|
|
77
116
|
"x": "310px",
|
|
78
117
|
"y": "198px"
|
|
79
118
|
},
|
|
80
119
|
{
|
|
81
120
|
"id": 14,
|
|
82
121
|
"name": "X人行横道-\\",
|
|
122
|
+
"ename": "X-\\-Pedestrian",
|
|
123
|
+
"desc": "\\行人",
|
|
124
|
+
"svgid": "反斜杠行人",
|
|
83
125
|
"x": "310px",
|
|
84
126
|
"y": "198px"
|
|
85
127
|
},
|
|
86
128
|
{
|
|
87
129
|
"id": 15,
|
|
88
|
-
"name": "
|
|
130
|
+
"name": "南北路段人行横道",
|
|
131
|
+
"ename": "East-West-Pedestrian",
|
|
132
|
+
"desc": "南北路段行人",
|
|
133
|
+
"svgid": "南北路段行人",
|
|
89
134
|
"x": "310px",
|
|
90
135
|
"y": "198px"
|
|
91
136
|
},
|
|
92
137
|
{
|
|
93
138
|
"id": 16,
|
|
94
|
-
"name": "
|
|
139
|
+
"name": "东西路段人行横道",
|
|
140
|
+
"ename": "South-North-Pedestrian",
|
|
141
|
+
"desc": "东西路段行人",
|
|
142
|
+
"svgid": "东西路段行人",
|
|
95
143
|
"x": "310px",
|
|
96
144
|
"y": "198px"
|
|
97
145
|
},
|
|
@@ -34,7 +34,13 @@
|
|
|
34
34
|
:modeName="modeName"
|
|
35
35
|
:controlName="controlName"
|
|
36
36
|
:stateName="stateName"
|
|
37
|
-
:roadDirection="roadDirection"
|
|
37
|
+
:roadDirection="roadDirection"
|
|
38
|
+
:choosedDirection="choosedDirection"
|
|
39
|
+
:choosedPedDirection="choosedPedDirection"
|
|
40
|
+
:isVipRoute="isVipRoute"
|
|
41
|
+
:clickMode="clickMode"
|
|
42
|
+
:isThirdSignal="isThirdSignal"
|
|
43
|
+
@handleClickCrossIcon="handleClickCrossIcon" />
|
|
38
44
|
</div>
|
|
39
45
|
</div>
|
|
40
46
|
</template>
|
|
@@ -101,6 +107,24 @@ export default {
|
|
|
101
107
|
stateName: {
|
|
102
108
|
type: String,
|
|
103
109
|
default: ''
|
|
110
|
+
},
|
|
111
|
+
choosedDirection: {
|
|
112
|
+
type: Array
|
|
113
|
+
},
|
|
114
|
+
choosedPedDirection: {
|
|
115
|
+
type: Array
|
|
116
|
+
},
|
|
117
|
+
isVipRoute: { // 区分普通路口和VIP路口,如果是vip路口(特勤路线和分组管控),才需要获取通道和处理通道冲突,并显示已选方向
|
|
118
|
+
type: Boolean,
|
|
119
|
+
default: false
|
|
120
|
+
},
|
|
121
|
+
clickMode: { // 是否开启点击模式
|
|
122
|
+
type: Boolean,
|
|
123
|
+
default: false
|
|
124
|
+
},
|
|
125
|
+
isThirdSignal: {
|
|
126
|
+
type: Boolean,
|
|
127
|
+
default: false
|
|
104
128
|
}
|
|
105
129
|
},
|
|
106
130
|
watch: {
|
|
@@ -112,6 +136,13 @@ export default {
|
|
|
112
136
|
},
|
|
113
137
|
// 深度观察监听
|
|
114
138
|
deep: true
|
|
139
|
+
},
|
|
140
|
+
isVipRoute: {
|
|
141
|
+
handler: function (val, oldVal) {
|
|
142
|
+
if (val) {
|
|
143
|
+
this.reset = true
|
|
144
|
+
}
|
|
145
|
+
}
|
|
115
146
|
}
|
|
116
147
|
},
|
|
117
148
|
created () {
|
|
@@ -121,6 +152,9 @@ export default {
|
|
|
121
152
|
},
|
|
122
153
|
mounted () {
|
|
123
154
|
this.getParentSize()
|
|
155
|
+
if (this.isVipRoute) {
|
|
156
|
+
this.reset = true
|
|
157
|
+
}
|
|
124
158
|
},
|
|
125
159
|
updated () {
|
|
126
160
|
},
|
|
@@ -154,6 +188,9 @@ export default {
|
|
|
154
188
|
if (token && token !== '') {
|
|
155
189
|
setToken(token)
|
|
156
190
|
}
|
|
191
|
+
},
|
|
192
|
+
handleClickCrossIcon (allChoosedDir, curClickedPhase) {
|
|
193
|
+
this.$emit('handleClickCrossIcon', allChoosedDir, curClickedPhase)
|
|
157
194
|
}
|
|
158
195
|
},
|
|
159
196
|
destroyed () {
|
package/src/kisscomps/index.js
CHANGED
|
@@ -28,6 +28,8 @@ import PhaseDirectionText from './components/PhaseDirectionText/index'
|
|
|
28
28
|
import PhaseDirectionSelect from './components/PhaseDirectionSelect/index'
|
|
29
29
|
import patternConfig from './components/patternConfig/index.vue'
|
|
30
30
|
import XiaoKanBan from './components/XiaoKanBan/index.vue'
|
|
31
|
+
import DirectionListConfiguration from './components/DirectionListConfiguration/index.js'
|
|
32
|
+
import IntersectionDirectionSelection from './components/IntersectionDirectionSelection/index.js'
|
|
31
33
|
import { setToken, setHost, setIsCheckPermission, setUserRoles, setPermissions } from '../utils/auth.js'
|
|
32
34
|
import componentsGlobalParam from '../store/modules/globalParam'
|
|
33
35
|
|
|
@@ -65,7 +67,9 @@ const components = {
|
|
|
65
67
|
PhaseDirectionText,
|
|
66
68
|
patternConfig,
|
|
67
69
|
XiaoKanBan,
|
|
68
|
-
PhaseDirectionSelect
|
|
70
|
+
PhaseDirectionSelect,
|
|
71
|
+
DirectionListConfiguration,
|
|
72
|
+
IntersectionDirectionSelection
|
|
69
73
|
}
|
|
70
74
|
|
|
71
75
|
const language = {
|