openatc-components 0.2.37 → 0.2.38

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.
Files changed (33) hide show
  1. package/package/kisscomps/components/PatternStatus/PatternStatus.vue +7 -4
  2. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +178 -25
  3. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +72 -29
  4. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +14 -3
  5. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +17 -7
  6. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +18 -9
  7. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +1 -1
  8. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +21 -10
  9. package/package/kisscomps/components/Stages/index.vue +52 -11
  10. package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +30 -28
  11. package/package/kissui.min.js +1 -1
  12. package/package.json +1 -1
  13. package/src/i18n/language/en.js +6 -1
  14. package/src/i18n/language/zh.js +7 -2
  15. package/src/icons/svg/fangxiangsuoding.svg +1 -0
  16. package/src/icons/svg/jieduansuoding.svg +1 -0
  17. package/src/icons/svg/xiangweisuoding.svg +1 -0
  18. package/src/kisscomps/components/PatternStatus/PatternStatus.vue +7 -4
  19. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +178 -25
  20. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +72 -29
  21. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +14 -3
  22. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +17 -7
  23. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +128 -0
  24. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +426 -0
  25. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +820 -0
  26. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +194 -0
  27. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +18 -9
  28. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +1 -1
  29. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +21 -10
  30. package/src/kisscomps/components/Stages/index.vue +52 -11
  31. package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +30 -28
  32. package/static/styles/schemeconfig.scss +70 -58
  33. package/static/styles/stages.scss +1 -8
@@ -10,8 +10,8 @@
10
10
  * See the Mulan PSL v2 for more details.
11
11
  **/
12
12
  <template>
13
- <div class="manual-control-modal lockingphase-control">
14
- <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.phaselocking')}}</div>
13
+ <div class="lockingphase-control manual-control-modal">
14
+ <!-- <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.phaselocking')}}</div> -->
15
15
  <el-row>
16
16
  <el-col :span="24">
17
17
  <el-form
@@ -23,27 +23,27 @@
23
23
  <el-form-item
24
24
  :label="$t('openatccomponents.phase.greenclear') + ':'"
25
25
  prop="intersection">
26
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempGreenflash" size="mini"></el-input-number>
26
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempGreenflash" size="small"></el-input-number>
27
27
  </el-form-item>
28
28
  <el-form-item
29
29
  :label="$t('openatccomponents.overview.duration') + ':'"
30
30
  prop="count">
31
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="mini"></el-input-number>
31
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="small"></el-input-number>
32
32
  </el-form-item>
33
33
  <el-form-item
34
34
  :label="$t('openatccomponents.overview.yellowflash') + ':'"
35
35
  prop="intersection">
36
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempYellow" size="mini"></el-input-number>
36
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempYellow" size="small"></el-input-number>
37
37
  </el-form-item>
38
38
  <el-form-item
39
39
  :label="$t('openatccomponents.overview.allred') + ':'"
40
40
  prop="intersection">
41
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempRedclear" size="mini"></el-input-number>
41
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempRedclear" size="small"></el-input-number>
42
42
  </el-form-item>
43
43
  <el-form-item
44
44
  :label="$t('openatccomponents.phase.mingreen') + ':'"
45
45
  prop="count">
46
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempMingreen" size="mini"></el-input-number>
46
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempMingreen" size="small"></el-input-number>
47
47
  </el-form-item>
48
48
  </el-form>
49
49
  </el-col>
@@ -78,6 +78,7 @@
78
78
  </el-row>
79
79
  <div class="footer">
80
80
  <el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
81
+ <el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
81
82
  <el-button type="primary" @click="handleLockPhase()">{{lockPhaseBtnName}}</el-button>
82
83
  </div>
83
84
  </div>
@@ -85,6 +86,8 @@
85
86
 
86
87
  <script>
87
88
  import RingDataModel from '../../../../utils/RingDataModel.js'
89
+ import { hasPermission } from '../../../../utils/auth'
90
+
88
91
  export default {
89
92
  name: 'LockPhaselControl',
90
93
  props: {
@@ -182,6 +185,13 @@ export default {
182
185
  this.closePhaseRings[i].phases = sortedlist
183
186
  }
184
187
  }
188
+ },
189
+ toAutoControl () {
190
+ this.$emit('toAutoControl')
191
+ },
192
+ isHasPermission (path) {
193
+ let res = hasPermission(path)
194
+ return res
185
195
  }
186
196
  }
187
197
  }
@@ -1,6 +1,6 @@
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
@@ -11,8 +11,8 @@
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="mini"></el-input-number>
15
- <!-- <el-input v-model="manualInfo.tempDelay" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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>
@@ -38,8 +38,8 @@
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="mini"></el-input-number>
42
- <!-- <el-input v-model="manualInfo.duration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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>
@@ -79,17 +79,19 @@
79
79
  :value="item.value">
80
80
  </el-option>
81
81
  </el-select>
82
- <!-- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
82
+ <!-- <el-input v-model="manualInfo.tempDuration" size="small" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
83
83
  </el-form-item>
84
84
  </el-form>
85
85
  </el-col>
86
86
  </el-row>
87
87
  <div class="footer" v-if="realtimeStatusModalvisible">
88
88
  <el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
89
+ <el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
89
90
  <el-button type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.implement')}}</el-button>
90
91
  </div>
91
92
  <div class="footer" v-if="!realtimeStatusModalvisible">
92
93
  <el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
94
+ <el-button type="primary" plain @click="toAutoControl()" v-if="isHasPermission('configer:manual:renew')">{{$t('openatccomponents.overview.recovery')}}</el-button>
93
95
  <el-button type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.comfirm')}}</el-button>
94
96
  </div>
95
97
  </div>
@@ -97,7 +99,7 @@
97
99
 
98
100
  <script>
99
101
  import xdrdirselector from '../../XRDDirSelector/XRDDirSelector'
100
- import { getTheme } from '../../../../utils/auth'
102
+ import { getTheme, hasPermission } from '../../../../utils/auth'
101
103
  import { getDirName } from './utils'
102
104
  export default {
103
105
  name: 'prioritycontrol',
@@ -187,6 +189,13 @@ export default {
187
189
  level: this.manualInfo.level
188
190
  }
189
191
  this.$emit('closePhaseControl', submitdata)
192
+ },
193
+ toAutoControl () {
194
+ this.$emit('toAutoControl')
195
+ },
196
+ isHasPermission (path) {
197
+ let res = hasPermission(path)
198
+ return res
190
199
  }
191
200
  }
192
201
  }
@@ -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: 40px;font-size: 14px;"
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,8 +1,8 @@
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
@@ -30,7 +30,7 @@
30
30
  >
31
31
  </el-option>
32
32
  </el-select>
33
- <!-- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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="mini"
47
+ size="small"
48
48
  ></el-input-number>
49
- <!-- <el-input v-model="manualInfo.tempDelay" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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>
@@ -69,9 +69,9 @@
69
69
  :step="1"
70
70
  :controls="false"
71
71
  v-model.number="manualInfo.offset"
72
- size="mini"
72
+ size="small"
73
73
  ></el-input-number>
74
- <!-- <el-input v-model="manualInfo.offset" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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="mini"
88
+ size="small"
89
89
  ></el-input-number>
90
- <!-- <el-input v-model="manualInfo.duration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
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:65px;display:flex;flex-direction:row;justify-content:center;align-items:end;">
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: '65px'
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>
@@ -484,6 +484,8 @@
484
484
  </template>
485
485
  <script>
486
486
  import { mapState } from 'vuex'
487
+ import { getTheme } from '../../../utils/auth.js'
488
+
487
489
  export default {
488
490
  name: 'xdr-dir-selector',
489
491
  props: {
@@ -554,196 +556,196 @@ export default {
554
556
  id: 1,
555
557
  name: '东西路段人行横道',
556
558
  isshow: false,
557
- color: '#040000',
559
+ color: getTheme() === 'light' ? '#040000' : '#fff',
558
560
  lockColor: '#7ccc66'
559
561
  },
560
562
  {
561
563
  id: 2,
562
564
  name: '南北路段人行横道',
563
565
  isshow: false,
564
- color: '#040000',
566
+ color: getTheme() === 'light' ? '#040000' : '#fff',
565
567
  lockColor: '#7ccc66'
566
568
  },
567
569
  {
568
570
  id: 3,
569
571
  name: 'X人行横道-\\',
570
572
  isshow: false,
571
- color: '#040000',
573
+ color: getTheme() === 'light' ? '#040000' : '#fff',
572
574
  lockColor: '#7ccc66'
573
575
  },
574
576
  {
575
577
  id: 4,
576
578
  name: 'X人行横道-/',
577
579
  isshow: false,
578
- color: '#040000',
580
+ color: getTheme() === 'light' ? '#040000' : '#fff',
579
581
  lockColor: '#7ccc66'
580
582
  },
581
583
  {
582
584
  id: 5,
583
585
  name: '北人行横道',
584
586
  isshow: false,
585
- color: '#040000',
587
+ color: getTheme() === 'light' ? '#040000' : '#fff',
586
588
  lockColor: '#7ccc66'
587
589
  },
588
590
  {
589
591
  id: 6,
590
592
  name: '南人行横道',
591
593
  isshow: false,
592
- color: '#040000',
594
+ color: getTheme() === 'light' ? '#040000' : '#fff',
593
595
  lockColor: '#7ccc66'
594
596
  },
595
597
  {
596
598
  id: 7,
597
599
  name: '东人行横道',
598
600
  isshow: false,
599
- color: '#040000',
601
+ color: getTheme() === 'light' ? '#040000' : '#fff',
600
602
  lockColor: '#7ccc66'
601
603
  },
602
604
  {
603
605
  id: 8,
604
606
  name: '西人行横道',
605
607
  isshow: false,
606
- color: '#040000',
608
+ color: getTheme() === 'light' ? '#040000' : '#fff',
607
609
  lockColor: '#7ccc66'
608
610
  },
609
611
  {
610
612
  id: 9,
611
613
  name: '西人行横道-下',
612
614
  isshow: false,
613
- color: '#040000',
615
+ color: getTheme() === 'light' ? '#040000' : '#fff',
614
616
  lockColor: '#7ccc66'
615
617
  },
616
618
  {
617
619
  id: 10,
618
620
  name: '西人行横道-上',
619
621
  isshow: false,
620
- color: '#040000',
622
+ color: getTheme() === 'light' ? '#040000' : '#fff',
621
623
  lockColor: '#7ccc66'
622
624
  },
623
625
  {
624
626
  id: 11,
625
627
  name: '东人行横道-上',
626
628
  isshow: false,
627
- color: '#040000',
629
+ color: getTheme() === 'light' ? '#040000' : '#fff',
628
630
  lockColor: '#7ccc66'
629
631
  },
630
632
  {
631
633
  id: 12,
632
634
  name: '东人行横道-下',
633
635
  isshow: false,
634
- color: '#040000',
636
+ color: getTheme() === 'light' ? '#040000' : '#fff',
635
637
  lockColor: '#7ccc66'
636
638
  },
637
639
  {
638
640
  id: 13,
639
641
  name: '南人行横道-右',
640
642
  isshow: false,
641
- color: '#040000',
643
+ color: getTheme() === 'light' ? '#040000' : '#fff',
642
644
  lockColor: '#7ccc66'
643
645
  },
644
646
  {
645
647
  id: 14,
646
648
  name: '南人行横道-左',
647
649
  isshow: false,
648
- color: '#040000',
650
+ color: getTheme() === 'light' ? '#040000' : '#fff',
649
651
  lockColor: '#7ccc66'
650
652
  },
651
653
  {
652
654
  id: 15,
653
655
  name: '北人行横道-右',
654
656
  isshow: false,
655
- color: '#040000',
657
+ color: getTheme() === 'light' ? '#040000' : '#fff',
656
658
  lockColor: '#7ccc66'
657
659
  },
658
660
  {
659
661
  id: 16,
660
662
  name: '北人行横道-左',
661
663
  isshow: false,
662
- color: '#040000',
664
+ color: getTheme() === 'light' ? '#040000' : '#fff',
663
665
  lockColor: '#7ccc66'
664
666
  },
665
667
  {
666
668
  id: 17,
667
669
  name: '东南人行横道',
668
670
  isshow: false,
669
- color: '#040000',
671
+ color: getTheme() === 'light' ? '#040000' : '#fff',
670
672
  lockColor: '#7ccc66'
671
673
  },
672
674
  {
673
675
  id: 18,
674
676
  name: '西南人行横道',
675
677
  isshow: false,
676
- color: '#040000',
678
+ color: getTheme() === 'light' ? '#040000' : '#fff',
677
679
  lockColor: '#7ccc66'
678
680
  },
679
681
  {
680
682
  id: 19,
681
683
  name: '东北人行横道',
682
684
  isshow: false,
683
- color: '#040000',
685
+ color: getTheme() === 'light' ? '#040000' : '#fff',
684
686
  lockColor: '#7ccc66'
685
687
  },
686
688
  {
687
689
  id: 20,
688
690
  name: '西北人行横道',
689
691
  isshow: false,
690
- color: '#040000',
692
+ color: getTheme() === 'light' ? '#040000' : '#fff',
691
693
  lockColor: '#7ccc66'
692
694
  },
693
695
  {
694
696
  id: 21,
695
697
  name: '东南人行横道-上',
696
698
  isshow: false,
697
- color: '#040000',
699
+ color: getTheme() === 'light' ? '#040000' : '#fff',
698
700
  lockColor: '#7ccc66'
699
701
  },
700
702
  {
701
703
  id: 22,
702
704
  name: '东南人行横道-下',
703
705
  isshow: false,
704
- color: '#040000',
706
+ color: getTheme() === 'light' ? '#040000' : '#fff',
705
707
  lockColor: '#7ccc66'
706
708
  },
707
709
  {
708
710
  id: 23,
709
711
  name: '西南人行横道-上',
710
712
  isshow: false,
711
- color: '#040000',
713
+ color: getTheme() === 'light' ? '#040000' : '#fff',
712
714
  lockColor: '#7ccc66'
713
715
  },
714
716
  {
715
717
  id: 24,
716
718
  name: '西南人行横道-下',
717
719
  isshow: false,
718
- color: '#040000',
720
+ color: getTheme() === 'light' ? '#040000' : '#fff',
719
721
  lockColor: '#7ccc66'
720
722
  },
721
723
  {
722
724
  id: 25,
723
725
  name: '东北人行横道-上',
724
726
  isshow: false,
725
- color: '#040000',
727
+ color: getTheme() === 'light' ? '#040000' : '#fff',
726
728
  lockColor: '#7ccc66'
727
729
  },
728
730
  {
729
731
  id: 26,
730
732
  name: '东北人行横道-下',
731
733
  isshow: false,
732
- color: '#040000',
734
+ color: getTheme() === 'light' ? '#040000' : '#fff',
733
735
  lockColor: '#7ccc66'
734
736
  },
735
737
  {
736
738
  id: 27,
737
739
  name: '西北人行横道-上',
738
740
  isshow: false,
739
- color: '#040000',
741
+ color: getTheme() === 'light' ? '#040000' : '#fff',
740
742
  lockColor: '#7ccc66'
741
743
  },
742
744
  {
743
745
  id: 28,
744
746
  name: '西北人行横道-下',
745
747
  isshow: false,
746
- color: '#040000',
748
+ color: getTheme() === 'light' ? '#040000' : '#fff',
747
749
  lockColor: '#7ccc66'
748
750
  }
749
751
  ],