openatc-components 0.2.37 → 0.2.39
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/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +429 -0
- package/package/kisscomps/components/PatternStatus/PatternStatus.vue +7 -4
- package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +181 -28
- package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +75 -32
- package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +15 -4
- package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +40 -17
- package/package/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +3 -3
- package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +22 -12
- package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +1 -1
- package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +23 -12
- package/package/kisscomps/components/StageBord/StageBord.vue +1 -0
- package/package/kisscomps/components/Stages/index.vue +52 -11
- package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +30 -28
- package/package/kissui.min.js +1 -1
- package/package.json +1 -1
- package/src/i18n/language/en.js +6 -1
- package/src/i18n/language/zh.js +7 -2
- package/src/icons/svg/fangxiangsuoding.svg +1 -0
- package/src/icons/svg/jieduansuoding.svg +1 -0
- package/src/icons/svg/xiangweisuoding.svg +1 -0
- package/src/kisscomps/components/PatternStatus/PatternStatus.vue +7 -4
- package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +181 -28
- package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +75 -32
- package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +15 -4
- package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +40 -17
- package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +128 -0
- package/src/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +426 -0
- package/src/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +820 -0
- package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +194 -0
- package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +22 -12
- package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +1 -1
- package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +23 -12
- package/src/kisscomps/components/StageBord/StageBord.vue +1 -0
- package/src/kisscomps/components/Stages/index.vue +52 -11
- package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +30 -28
- package/src/views/intersection.vue +1 -1
- package/src/views/overView.vue +1 -1
- package/static/styles/commonkanban.scss +1 -0
- package/static/styles/light/theme/element-light.scss +4 -4
- package/static/styles/schemeconfig.scss +91 -59
- package/static/styles/stages.scss +1 -8
- package/src/node_modules/.package_versions.json +0 -1
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
<!-- eslint-disable vue/valid-v-bind -->
|
|
2
|
+
<!-- eslint-disable no-mixed-spaces-and-tabs -->
|
|
3
|
+
<!-- eslint-disable no-tabs -->
|
|
4
|
+
/** * Copyright (c) 2020 kedacom * OpenATC is licensed under Mulan PSL v2. * You
|
|
5
|
+
can use this software according to the terms and conditions of the Mulan PSL v2.
|
|
6
|
+
* You may obtain a copy of Mulan PSL v2 at: *
|
|
7
|
+
http://license.coscl.org.cn/MulanPSL2 * THIS SOFTWARE IS PROVIDED ON AN "AS IS"
|
|
8
|
+
BASIS, WITHOUT WARRANTIES OF ANY KIND, * EITHER EXPRESS OR IMPLIED, INCLUDING
|
|
9
|
+
BUT NOT LIMITED TO NON-INFRINGEMENT, * MERCHANTABILITY OR FIT FOR A PARTICULAR
|
|
10
|
+
PURPOSE. * See the Mulan PSL v2 for more details. **/
|
|
11
|
+
<template>
|
|
12
|
+
<span class="others-icon-svg">
|
|
13
|
+
<svg
|
|
14
|
+
v-if="type === '相位关断'"
|
|
15
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
16
|
+
viewBox="0 0 45.08 24.79"
|
|
17
|
+
:width="iconWidth"
|
|
18
|
+
:height="iconHeight"
|
|
19
|
+
>
|
|
20
|
+
<g id="图层_2" data-name="图层 2">
|
|
21
|
+
<g id="图层_3" data-name="图层 3" :class="themeColor">
|
|
22
|
+
<rect class="cls-1" y="13.52" width="27.08" height="7.46" />
|
|
23
|
+
<rect class="cls-2" x="27" y="13.52" width="18.08" height="7.46" />
|
|
24
|
+
<rect class="cls-2" x="27" y="9.71" width="1.38" height="15.08" />
|
|
25
|
+
<path class="cls-3" d="M24.35.35,31,7.05Z" />
|
|
26
|
+
<path class="cls-3" d="M31,.35l-6.69,6.7Z" />
|
|
27
|
+
</g>
|
|
28
|
+
</g>
|
|
29
|
+
</svg>
|
|
30
|
+
<svg
|
|
31
|
+
v-if="type === '临时方案'"
|
|
32
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
33
|
+
viewBox="0 0 54 9"
|
|
34
|
+
:width="iconWidth"
|
|
35
|
+
:height="iconHeight"
|
|
36
|
+
>
|
|
37
|
+
<g id="图层_2" data-name="图层 2" :class="themeColor">
|
|
38
|
+
<rect
|
|
39
|
+
id="矩形_683_拷贝_3"
|
|
40
|
+
data-name="矩形 683 拷贝 3"
|
|
41
|
+
class="cls-1"
|
|
42
|
+
width="39"
|
|
43
|
+
height="9"
|
|
44
|
+
/>
|
|
45
|
+
<rect
|
|
46
|
+
id="矩形_683_拷贝_3-2"
|
|
47
|
+
data-name="矩形 683 拷贝 3"
|
|
48
|
+
class="cls-5"
|
|
49
|
+
x="39"
|
|
50
|
+
width="8"
|
|
51
|
+
height="9"
|
|
52
|
+
/>
|
|
53
|
+
<rect
|
|
54
|
+
id="矩形_686_拷贝_4"
|
|
55
|
+
data-name="矩形 686 拷贝 4"
|
|
56
|
+
class="cls-6"
|
|
57
|
+
x="37"
|
|
58
|
+
width="1"
|
|
59
|
+
height="9"
|
|
60
|
+
/>
|
|
61
|
+
<rect
|
|
62
|
+
id="矩形_686_拷贝_4-2"
|
|
63
|
+
data-name="矩形 686 拷贝 4"
|
|
64
|
+
class="cls-6"
|
|
65
|
+
x="35"
|
|
66
|
+
width="1"
|
|
67
|
+
height="9"
|
|
68
|
+
/>
|
|
69
|
+
<rect
|
|
70
|
+
id="矩形_686_拷贝_4-3"
|
|
71
|
+
data-name="矩形 686 拷贝 4"
|
|
72
|
+
class="cls-6"
|
|
73
|
+
x="33"
|
|
74
|
+
width="1"
|
|
75
|
+
height="9"
|
|
76
|
+
/>
|
|
77
|
+
<rect
|
|
78
|
+
id="矩形_686_拷贝_4-4"
|
|
79
|
+
data-name="矩形 686 拷贝 4"
|
|
80
|
+
class="cls-6"
|
|
81
|
+
x="31"
|
|
82
|
+
width="1"
|
|
83
|
+
height="9"
|
|
84
|
+
/>
|
|
85
|
+
<rect
|
|
86
|
+
id="矩形_683_拷贝_3-3"
|
|
87
|
+
data-name="矩形 683 拷贝 3"
|
|
88
|
+
class="cls-2"
|
|
89
|
+
x="46"
|
|
90
|
+
width="8"
|
|
91
|
+
height="9"
|
|
92
|
+
/>
|
|
93
|
+
</g>
|
|
94
|
+
</svg>
|
|
95
|
+
<svg
|
|
96
|
+
v-if="type === '优先控制'"
|
|
97
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
98
|
+
viewBox="0 0 54 29.12"
|
|
99
|
+
:width="iconWidth"
|
|
100
|
+
:height="iconHeight"
|
|
101
|
+
>
|
|
102
|
+
<g id="图层_2" data-name="图层 2">
|
|
103
|
+
<g id="图层_3" data-name="图层 3" :class="themeColor">
|
|
104
|
+
<rect
|
|
105
|
+
id="矩形_3708_拷贝_8"
|
|
106
|
+
data-name="矩形 3708 拷贝 8"
|
|
107
|
+
class="cls-1"
|
|
108
|
+
x="20.6"
|
|
109
|
+
y="15.81"
|
|
110
|
+
width="33.4"
|
|
111
|
+
height="9"
|
|
112
|
+
/>
|
|
113
|
+
<rect
|
|
114
|
+
id="矩形_3708_拷贝_8-2"
|
|
115
|
+
data-name="矩形 3708 拷贝 8"
|
|
116
|
+
class="cls-2"
|
|
117
|
+
y="15.81"
|
|
118
|
+
width="20.78"
|
|
119
|
+
height="9"
|
|
120
|
+
/>
|
|
121
|
+
<path
|
|
122
|
+
id="形状_3710_拷贝_4"
|
|
123
|
+
data-name="形状 3710 拷贝 4"
|
|
124
|
+
class="cls-4"
|
|
125
|
+
d="M2441.42,1012.4h1.8v17.71h-1.8V1012.4Z"
|
|
126
|
+
transform="translate(-2421.31 -1001)"
|
|
127
|
+
/>
|
|
128
|
+
<path
|
|
129
|
+
id="形状_2767_拷贝_5"
|
|
130
|
+
data-name="形状 2767 拷贝 5"
|
|
131
|
+
class="cls-4"
|
|
132
|
+
d="M2434,1007.87a1.582,1.582,0,1,0,1.39,1.57A1.491,1.491,0,0,0,2434,1007.87Zm0,2.67a1.109,1.109,0,1,1,.97-1.1A1.037,1.037,0,0,1,2434,1010.54Zm13.69-2.67a1.58,1.58,0,1,0,1.4,1.57A1.491,1.491,0,0,0,2447.69,1007.87Zm0,2.67a1.107,1.107,0,1,1,.98-1.1A1.043,1.043,0,0,1,2447.69,1010.54Zm4.59-9.55h-22.21a1.517,1.517,0,0,0-1.42,1.6v2.77l-0.65.33v3.14a0.494,0.494,0,0,0,.46.52h3.67a1.876,1.876,0,1,1,3.74,0h9.95a1.88,1.88,0,1,1,3.75,0h1.24c1.19-.32,3.23-0.87,4.19-1.11v-4.2A2.9,2.9,0,0,0,2452.28,1000.99Zm-20.84,6.96a0.571,0.571,0,0,1-.53.6h-0.82a0.572,0.572,0,0,1-.54-0.6v-5.09a0.575,0.575,0,0,1,.54-0.61h0.82a0.574,0.574,0,0,1,.53.61v5.09Zm5.69-3.41a0.381,0.381,0,0,1-.36.4h-3.96a0.38,0.38,0,0,1-.35-0.4v-1.91a0.38,0.38,0,0,1,.35-0.4h3.96a0.381,0.381,0,0,1,.36.4v1.91Zm5.38,0a0.381,0.381,0,0,1-.36.4h-3.96a0.38,0.38,0,0,1-.35-0.4v-1.91a0.38,0.38,0,0,1,.35-0.4h3.96a0.381,0.381,0,0,1,.36.4v1.91Zm5.38,0a0.38,0.38,0,0,1-.35.4h-3.96a0.381,0.381,0,0,1-.36-0.4v-1.91a0.381,0.381,0,0,1,.36-0.4h3.96a0.38,0.38,0,0,1,.35.4v1.91Zm5.38,0a0.38,0.38,0,0,1-.35.4h-3.96a0.381,0.381,0,0,1-.36-0.4v-1.91a0.381,0.381,0,0,1,.36-0.4h3.96a0.38,0.38,0,0,1,.35.4v1.91Z"
|
|
133
|
+
transform="translate(-2421.31 -1001)"
|
|
134
|
+
/>
|
|
135
|
+
</g>
|
|
136
|
+
</g>
|
|
137
|
+
</svg>
|
|
138
|
+
</span>
|
|
139
|
+
</template>
|
|
140
|
+
|
|
141
|
+
<script>
|
|
142
|
+
import { getTheme } from '../../../../utils/auth.js'
|
|
143
|
+
|
|
144
|
+
export default {
|
|
145
|
+
name: 'OthersIconSvg',
|
|
146
|
+
data () {
|
|
147
|
+
return {
|
|
148
|
+
themeColor: '',
|
|
149
|
+
iconWidth: '56',
|
|
150
|
+
iconHeight: '24'
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
components: {},
|
|
154
|
+
props: {
|
|
155
|
+
type: {
|
|
156
|
+
type: String
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
watch: {},
|
|
160
|
+
methods: {},
|
|
161
|
+
mounted () {
|
|
162
|
+
this.themeColor = getTheme() === 'dark' ? 'darkBorder' : 'lightBorder'
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
</script>
|
|
166
|
+
|
|
167
|
+
<style lang="scss" rel="stylesheet/scss" scoped>
|
|
168
|
+
.lightBorder {
|
|
169
|
+
fill: #515151;
|
|
170
|
+
}
|
|
171
|
+
.darkBorder {
|
|
172
|
+
fill: #e6f9ff;
|
|
173
|
+
}
|
|
174
|
+
.cls-1, .cls-4 {
|
|
175
|
+
fill: #7ccc66;
|
|
176
|
+
}
|
|
177
|
+
.cls-2 {
|
|
178
|
+
fill: #f27979;
|
|
179
|
+
}
|
|
180
|
+
.cls-3 {
|
|
181
|
+
fill: none;
|
|
182
|
+
stroke: #f27979;
|
|
183
|
+
stroke-miterlimit: 10;
|
|
184
|
+
}
|
|
185
|
+
.cls-4 {
|
|
186
|
+
fill-rule: evenodd;
|
|
187
|
+
}
|
|
188
|
+
.cls-5 {
|
|
189
|
+
fill: #f9dc6a;
|
|
190
|
+
}
|
|
191
|
+
.cls-6 {
|
|
192
|
+
fill: #fff;
|
|
193
|
+
}
|
|
194
|
+
</style>
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="priority-control">
|
|
3
|
-
<div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.prioritycontrol')}}</div>
|
|
3
|
+
<!-- <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.prioritycontrol')}}</div> -->
|
|
4
4
|
<el-row>
|
|
5
5
|
<el-col :span="12">
|
|
6
6
|
<el-form
|
|
7
7
|
ref="manual"
|
|
8
8
|
label-position="left"
|
|
9
9
|
:model="manualInfo"
|
|
10
|
-
label-width="
|
|
10
|
+
label-width="74px">
|
|
11
11
|
<el-form-item
|
|
12
12
|
:label="$t('openatccomponents.overview.delay') + ':'"
|
|
13
13
|
prop="intersection">
|
|
14
|
-
<el-input-number :placeholder="$t('openatccomponents.common.input')" :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.delay" size="
|
|
15
|
-
<!-- <el-input v-model="manualInfo.tempDelay" size="
|
|
14
|
+
<el-input-number :placeholder="$t('openatccomponents.common.input')" :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.delay" size="small"></el-input-number>
|
|
15
|
+
<!-- <el-input v-model="manualInfo.tempDelay" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
16
16
|
</el-form-item>
|
|
17
17
|
<el-form-item
|
|
18
18
|
:label="$t('openatccomponents.overview.priorityType') + ':'"
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
:value="item.value">
|
|
26
26
|
</el-option>
|
|
27
27
|
</el-select>
|
|
28
|
-
<!-- <el-input v-model="manualInfo.tempDuration" size="
|
|
28
|
+
<!-- <el-input v-model="manualInfo.tempDuration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
29
29
|
</el-form-item>
|
|
30
30
|
</el-form>
|
|
31
31
|
</el-col>
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
ref="manual"
|
|
35
35
|
label-position="left"
|
|
36
36
|
:model="manualInfo"
|
|
37
|
-
label-width="
|
|
37
|
+
label-width="74px">
|
|
38
38
|
<el-form-item
|
|
39
39
|
:label="$t('openatccomponents.overview.duration') + ':'"
|
|
40
40
|
prop="intersection">
|
|
41
|
-
<el-input-number :placeholder="$t('openatccomponents.common.input')" :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.duration" size="
|
|
42
|
-
<!-- <el-input v-model="manualInfo.duration" size="
|
|
41
|
+
<el-input-number :placeholder="$t('openatccomponents.common.input')" :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.duration" size="small"></el-input-number>
|
|
42
|
+
<!-- <el-input v-model="manualInfo.duration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
43
43
|
</el-form-item>
|
|
44
44
|
<el-form-item
|
|
45
45
|
:label="$t('openatccomponents.overview.priorityPhase') + ':'"
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
</div>
|
|
57
57
|
</el-option>
|
|
58
58
|
</el-select>
|
|
59
|
-
<!-- <el-input v-model="manualInfo.tempDuration" size="
|
|
59
|
+
<!-- <el-input v-model="manualInfo.tempDuration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
60
60
|
</el-form-item>
|
|
61
61
|
</el-form>
|
|
62
62
|
</el-col>
|
|
@@ -67,8 +67,9 @@
|
|
|
67
67
|
ref="manual"
|
|
68
68
|
label-position="left"
|
|
69
69
|
:model="manualInfo"
|
|
70
|
-
label-width="
|
|
70
|
+
label-width="74px">
|
|
71
71
|
<el-form-item
|
|
72
|
+
style="margin-bottom: 0;"
|
|
72
73
|
:label="$t('openatccomponents.overview.level') + ':'"
|
|
73
74
|
prop="count">
|
|
74
75
|
<el-select v-model="manualInfo.level" class="col-inner" size="small" clearable :placeholder="$t('openatccomponents.common.select')">
|
|
@@ -79,17 +80,19 @@
|
|
|
79
80
|
:value="item.value">
|
|
80
81
|
</el-option>
|
|
81
82
|
</el-select>
|
|
82
|
-
<!-- <el-input v-model="manualInfo.tempDuration" size="
|
|
83
|
+
<!-- <el-input v-model="manualInfo.tempDuration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
83
84
|
</el-form-item>
|
|
84
85
|
</el-form>
|
|
85
86
|
</el-col>
|
|
86
87
|
</el-row>
|
|
87
88
|
<div class="footer" v-if="realtimeStatusModalvisible">
|
|
88
89
|
<el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
|
|
90
|
+
<el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
|
|
89
91
|
<el-button type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.implement')}}</el-button>
|
|
90
92
|
</div>
|
|
91
93
|
<div class="footer" v-if="!realtimeStatusModalvisible">
|
|
92
94
|
<el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
|
|
95
|
+
<el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
|
|
93
96
|
<el-button type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.comfirm')}}</el-button>
|
|
94
97
|
</div>
|
|
95
98
|
</div>
|
|
@@ -97,7 +100,7 @@
|
|
|
97
100
|
|
|
98
101
|
<script>
|
|
99
102
|
import xdrdirselector from '../../XRDDirSelector/XRDDirSelector'
|
|
100
|
-
import { getTheme } from '../../../../utils/auth'
|
|
103
|
+
import { getTheme, hasPermission } from '../../../../utils/auth'
|
|
101
104
|
import { getDirName } from './utils'
|
|
102
105
|
export default {
|
|
103
106
|
name: 'prioritycontrol',
|
|
@@ -187,6 +190,13 @@ export default {
|
|
|
187
190
|
level: this.manualInfo.level
|
|
188
191
|
}
|
|
189
192
|
this.$emit('closePhaseControl', submitdata)
|
|
193
|
+
},
|
|
194
|
+
toAutoControl () {
|
|
195
|
+
this.$emit('toAutoControl')
|
|
196
|
+
},
|
|
197
|
+
isHasPermission (path) {
|
|
198
|
+
let res = hasPermission(path)
|
|
199
|
+
return res
|
|
190
200
|
}
|
|
191
201
|
}
|
|
192
202
|
}
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
>{{$t('openatccomponents.overview.controlmode')}}</div>
|
|
81
81
|
<el-button
|
|
82
82
|
type="primary"
|
|
83
|
-
style="float: right; margin-right: 20px;margin-top:
|
|
83
|
+
style="float: right; margin-right: 20px;margin-top: 16px;font-size: 14px;"
|
|
84
84
|
size="mini"
|
|
85
85
|
v-if="isHasPermission('configer:manual') && isHasPermission('configer:manual:renew')"
|
|
86
86
|
@click="changeStatus"
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="tentativeplan-control">
|
|
3
|
-
<div class="title" style="margin-bottom: 18px">
|
|
3
|
+
<!-- <div class="title" style="margin-bottom: 18px">
|
|
4
4
|
{{ $t('openatccomponents.overview.tentativeplan') }}
|
|
5
|
-
</div>
|
|
5
|
+
</div> -->
|
|
6
6
|
<el-row>
|
|
7
7
|
<el-col :span="12">
|
|
8
8
|
<el-form
|
|
9
9
|
ref="manual"
|
|
10
10
|
label-position="left"
|
|
11
11
|
:model="manualInfo"
|
|
12
|
-
label-width="
|
|
12
|
+
label-width="74px"
|
|
13
13
|
>
|
|
14
14
|
<el-form-item
|
|
15
15
|
:label="$t('openatccomponents.overview.patternid') + ':'"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
>
|
|
31
31
|
</el-option>
|
|
32
32
|
</el-select>
|
|
33
|
-
<!-- <el-input v-model="manualInfo.tempDuration" size="
|
|
33
|
+
<!-- <el-input v-model="manualInfo.tempDuration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
34
34
|
</el-form-item>
|
|
35
35
|
<el-form-item
|
|
36
36
|
:label="$t('openatccomponents.overview.delay') + ':'"
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
:step="1"
|
|
45
45
|
:controls="false"
|
|
46
46
|
v-model.number="manualInfo.tempDelay"
|
|
47
|
-
size="
|
|
47
|
+
size="small"
|
|
48
48
|
></el-input-number>
|
|
49
|
-
<!-- <el-input v-model="manualInfo.tempDelay" size="
|
|
49
|
+
<!-- <el-input v-model="manualInfo.tempDelay" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
50
50
|
</el-form-item>
|
|
51
51
|
</el-form>
|
|
52
52
|
</el-col>
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
ref="manual"
|
|
56
56
|
label-position="left"
|
|
57
57
|
:model="manualInfo"
|
|
58
|
-
label-width="
|
|
58
|
+
label-width="74px"
|
|
59
59
|
>
|
|
60
60
|
<el-form-item
|
|
61
61
|
:label="$t('openatccomponents.overview.patternoffset') + ':'"
|
|
@@ -69,9 +69,9 @@
|
|
|
69
69
|
:step="1"
|
|
70
70
|
:controls="false"
|
|
71
71
|
v-model.number="manualInfo.offset"
|
|
72
|
-
size="
|
|
72
|
+
size="small"
|
|
73
73
|
></el-input-number>
|
|
74
|
-
<!-- <el-input v-model="manualInfo.offset" size="
|
|
74
|
+
<!-- <el-input v-model="manualInfo.offset" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
75
75
|
</el-form-item>
|
|
76
76
|
<el-form-item
|
|
77
77
|
:label="$t('openatccomponents.overview.duration') + ':'"
|
|
@@ -85,9 +85,9 @@
|
|
|
85
85
|
:step="1"
|
|
86
86
|
:controls="false"
|
|
87
87
|
v-model.number="manualInfo.duration"
|
|
88
|
-
size="
|
|
88
|
+
size="small"
|
|
89
89
|
></el-input-number>
|
|
90
|
-
<!-- <el-input v-model="manualInfo.duration" size="
|
|
90
|
+
<!-- <el-input v-model="manualInfo.duration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
|
|
91
91
|
</el-form-item>
|
|
92
92
|
</el-form>
|
|
93
93
|
</el-col>
|
|
@@ -318,6 +318,7 @@
|
|
|
318
318
|
<el-button @click="handleClose()">{{
|
|
319
319
|
$t('openatccomponents.button.Back')
|
|
320
320
|
}}</el-button>
|
|
321
|
+
<el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
|
|
321
322
|
<el-button type="primary" @click="handleManualControl()">{{
|
|
322
323
|
$t('openatccomponents.overview.implement')
|
|
323
324
|
}}</el-button>
|
|
@@ -326,6 +327,7 @@
|
|
|
326
327
|
<el-button @click="handleClose()">{{
|
|
327
328
|
$t('openatccomponents.button.Back')
|
|
328
329
|
}}</el-button>
|
|
330
|
+
<el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
|
|
329
331
|
<el-button type="primary" @click="handleManualControl()">{{
|
|
330
332
|
$t('openatccomponents.overview.comfirm')
|
|
331
333
|
}}</el-button>
|
|
@@ -334,6 +336,8 @@
|
|
|
334
336
|
</template>
|
|
335
337
|
|
|
336
338
|
<script>
|
|
339
|
+
import { hasPermission } from '../../../../utils/auth'
|
|
340
|
+
|
|
337
341
|
export default {
|
|
338
342
|
name: 'tentativeplancontrol',
|
|
339
343
|
props: {
|
|
@@ -991,7 +995,7 @@ export default {
|
|
|
991
995
|
stage.map(item => {
|
|
992
996
|
for (let ring of rings) {
|
|
993
997
|
for (let ringItem of ring) {
|
|
994
|
-
if (item === ringItem.id && (ringItem.mode !== 7 && ringItem.mode !== 8)) {
|
|
998
|
+
if (item === ringItem.id && (ringItem.mode !== 7 && ringItem.mode !== 8 && ringItem.mode !== 9)) {
|
|
995
999
|
newStage.push(item)
|
|
996
1000
|
}
|
|
997
1001
|
}
|
|
@@ -1184,6 +1188,13 @@ export default {
|
|
|
1184
1188
|
if (this.patternCycleEqual) {
|
|
1185
1189
|
this.$emit('closePhaseControl', submitdata)
|
|
1186
1190
|
}
|
|
1191
|
+
},
|
|
1192
|
+
toAutoControl () {
|
|
1193
|
+
this.$emit('toAutoControl')
|
|
1194
|
+
},
|
|
1195
|
+
isHasPermission (path) {
|
|
1196
|
+
let res = hasPermission(path)
|
|
1197
|
+
return res
|
|
1187
1198
|
}
|
|
1188
1199
|
}
|
|
1189
1200
|
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<div>
|
|
16
16
|
<div style="width: 100%; height: auto;">
|
|
17
17
|
<div class="control-model" v-for="(item, index) in stagesList" :key="index">
|
|
18
|
-
<div style="position:relative;" :style="singleStyle" class="single-model" @click="selectStages(index + 1)" :class="currentStage == index + 1 ? 'single-model-select' : ''">
|
|
18
|
+
<div style="position:relative;" :style="{...singleStyle, 'backgroundColor': item[0].bgcolor}" class="single-model" @click="selectStages(index + 1)" :class="currentStage == index + 1 ? 'single-model-select' : ''">
|
|
19
19
|
<!-- <template v-for="(side, index) in item[0].sidewalkPhaseData" >
|
|
20
20
|
<PatternWalkSvg class="patternWalk"
|
|
21
21
|
v-if="item[0].peddirection.includes(side.id)"
|
|
@@ -28,18 +28,18 @@
|
|
|
28
28
|
:showWalk="item[0].peddirection"
|
|
29
29
|
:Width="'40'"
|
|
30
30
|
:Height="'40'" /> -->
|
|
31
|
-
<xdr-dir-selector Width="75PX" Height="75PX" Widths="65px" Heights="65px" :Data="showStyle" :Datas="showStyles" :showlist="item"></xdr-dir-selector>
|
|
32
|
-
<div style="height:
|
|
33
|
-
<div class="current-stage-num" style="width:20%;">{{index + 1}}</div>
|
|
31
|
+
<xdr-dir-selector Width="75PX" Height="75PX" Widths="65px" Heights="65px" :Data="showStyle" :Datas="showStyles" :showlist="dirListSetTheme(item)"></xdr-dir-selector>
|
|
32
|
+
<div style="height:80px;display:flex;flex-direction:row;justify-content:center;align-items:end;">
|
|
33
|
+
<div class="current-stage-num" style="width:20%;" :style="{color: themeColor}">{{index + 1}}</div>
|
|
34
34
|
<div style="width:70%;">
|
|
35
|
-
<i class="iconfont icon-feijidongche" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 6"></i>
|
|
36
|
-
<i class="iconfont icon-lukouzhilu" style="font-size:16PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 1"></i>
|
|
37
|
-
<i class="iconfont icon-BRT" style="font-size:11PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 4"></i>
|
|
35
|
+
<i class="iconfont icon-feijidongche" :style="{color: themeColor}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 6"></i>
|
|
36
|
+
<i class="iconfont icon-lukouzhilu" :style="{color: themeColor2}" style="font-size:16PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 1"></i>
|
|
37
|
+
<i class="iconfont icon-BRT" :style="{color: themeColor2}" style="font-size:11PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 4"></i>
|
|
38
38
|
<div style="transform:scale(0.65);margin-left:10PX">
|
|
39
|
-
<i class="iconfont icon-xuxiangwei-xin" style="font-size:5PX;color:#454545;" v-if="item[item.length-1].controltype === 99"></i>
|
|
39
|
+
<i class="iconfont icon-xuxiangwei-xin" :style="{color: themeColor2}" style="font-size:5PX;color:#454545;" v-if="item[item.length-1].controltype === 99"></i>
|
|
40
40
|
</div>
|
|
41
|
-
<i class="iconfont icon-gongjiaoche" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 3"></i>
|
|
42
|
-
<i class="iconfont icon-youguidianche" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 5"></i>
|
|
41
|
+
<i class="iconfont icon-gongjiaoche" :style="{color: themeColor}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 3"></i>
|
|
42
|
+
<i class="iconfont icon-youguidianche" :style="{color: themeColor}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 5"></i>
|
|
43
43
|
<div v-if="presetStageIndex === index + 1" style="color:red;width:50px;position:absolute;right:0px;bottom:5px;font-size:11px;">{{presetText}}</div>
|
|
44
44
|
</div>
|
|
45
45
|
</div>
|
|
@@ -54,6 +54,8 @@
|
|
|
54
54
|
/* eslint-disable */
|
|
55
55
|
import RingDataModel from '../../../utils/RingDataModel.js'
|
|
56
56
|
// import patternwalksvg from '../PatternWalkSvg/PatternWalkSvg'
|
|
57
|
+
import { getTheme } from '../../../utils/auth.js'
|
|
58
|
+
|
|
57
59
|
export default {
|
|
58
60
|
name: 'Stages',
|
|
59
61
|
components: {
|
|
@@ -102,7 +104,7 @@ export default {
|
|
|
102
104
|
},
|
|
103
105
|
StageHeight: {
|
|
104
106
|
type: String,
|
|
105
|
-
default: '
|
|
107
|
+
default: '80px'
|
|
106
108
|
}
|
|
107
109
|
},
|
|
108
110
|
data () {
|
|
@@ -119,6 +121,8 @@ export default {
|
|
|
119
121
|
side: {key: 'pedphase1653818707546719', phaseid: 1, id: 1, name: '东人行横道'},
|
|
120
122
|
// stagesList: [],
|
|
121
123
|
currentStage: -1,
|
|
124
|
+
themeColor: getTheme() === 'light' ? '#606266' : '#fff',
|
|
125
|
+
themeColor2: getTheme() === 'light' ? '#454545' : '#fff'
|
|
122
126
|
};
|
|
123
127
|
},
|
|
124
128
|
computed: {
|
|
@@ -138,6 +142,7 @@ export default {
|
|
|
138
142
|
}
|
|
139
143
|
}
|
|
140
144
|
console.log(list,'list')
|
|
145
|
+
this.clickType(list, this.currentStage)
|
|
141
146
|
console.log(this.phaseList,'this.phaseList')
|
|
142
147
|
return list
|
|
143
148
|
},
|
|
@@ -203,9 +208,45 @@ export default {
|
|
|
203
208
|
}
|
|
204
209
|
this.currentStage = value
|
|
205
210
|
this.$emit('onSelectStages', value)
|
|
211
|
+
this.clickType(this.stagesList, value)
|
|
212
|
+
},
|
|
213
|
+
resetToDefaultThemeColor (List) {
|
|
214
|
+
for (let i = 0; i < List.length; i++) {
|
|
215
|
+
if (List[i].length) {
|
|
216
|
+
if (List[i][0].clicked) {
|
|
217
|
+
delete List[i][0].clicked
|
|
218
|
+
}
|
|
219
|
+
List[i][0].bgcolor = getTheme() === 'light' ? '#edf6ff' : '#243d59'
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
highlightThemeColor (List, index) {
|
|
224
|
+
for (let i = 0; i < List.length; i++) {
|
|
225
|
+
if (i === index) {
|
|
226
|
+
List[i][0].clicked = true
|
|
227
|
+
List[i][0].bgcolor = getTheme() === 'light' ? '#c1e0ff' : '#0082ac'
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
clickType (stagelist, value) {
|
|
232
|
+
this.resetToDefaultThemeColor(stagelist)
|
|
233
|
+
this.highlightThemeColor(stagelist, value - 1)
|
|
234
|
+
},
|
|
235
|
+
dirListSetTheme (list) {
|
|
236
|
+
let dirArr = []
|
|
237
|
+
let color = getTheme() === 'light' ? '#606266' : '#F1F3F4'
|
|
238
|
+
for (let rec of list) {
|
|
239
|
+
let recd = {
|
|
240
|
+
...rec,
|
|
241
|
+
color: color
|
|
242
|
+
}
|
|
243
|
+
dirArr.push(recd)
|
|
244
|
+
}
|
|
245
|
+
return dirArr
|
|
206
246
|
}
|
|
207
247
|
},
|
|
208
248
|
mounted () {
|
|
249
|
+
this.resetToDefaultThemeColor(this.stagesList)
|
|
209
250
|
}
|
|
210
251
|
};
|
|
211
252
|
</script>
|