openatc-components 0.3.73 → 0.3.74

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 (30) hide show
  1. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +46 -145
  2. package/package/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +4 -4
  3. package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +8 -3
  4. package/package/kisscomps/components/OverviewComponent/index.js +2 -0
  5. package/package/kisscomps/components/OverviewComponent/index.vue +794 -0
  6. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +28 -18
  7. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +9 -11
  8. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +1 -1
  9. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +21 -1
  10. package/package/kisscomps/index.js +3 -1
  11. package/package/kissui.min.js +1 -1
  12. package/package.json +1 -1
  13. package/src/i18n/language/en.js +7 -0
  14. package/src/i18n/language/zh.js +7 -0
  15. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +46 -145
  16. package/src/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +4 -4
  17. package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +8 -3
  18. package/src/kisscomps/components/OverviewComponent/index.js +2 -0
  19. package/src/kisscomps/components/OverviewComponent/index.vue +794 -0
  20. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +28 -18
  21. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +9 -11
  22. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +1 -1
  23. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +21 -1
  24. package/src/kisscomps/index.js +3 -1
  25. package/src/views/overView.vue +17 -4
  26. package/static/styles/common.scss +3 -3
  27. package/static/styles/dark/theme/element-dark.scss +1 -1
  28. package/static/styles/intersection.scss +5 -15
  29. package/static/styles/light/theme/element-light.scss +1 -1
  30. package/static/styles/schemeconfig.scss +6 -3
@@ -19,6 +19,7 @@
19
19
  :leave-active-class="toPage === 1 ? 'animated fadeOutRight' : 'animated fadeOutLeft' ">
20
20
  <div class="new" style="position: absolute;width: 100%;height:100%;" v-show="(isOperation && !isClosePhase)">
21
21
  <ManualControlModalNew
22
+ v-if="resetcomponent"
22
23
  ref="ManualControlModalNew"
23
24
  :residentControlList="residentControlList"
24
25
  :specialControlList="specialControlList"
@@ -81,6 +82,7 @@
81
82
  <div v-else style="height: 100%;">
82
83
  <div class="new" style="position: absolute;width: 100%;height:100%;" v-show="(isOperation && !isClosePhase)">
83
84
  <ManualControlModalNew
85
+ v-if="resetcomponent"
84
86
  ref="ManualControlModalNew"
85
87
  :residentControlList="residentControlList"
86
88
  :specialControlList="specialControlList"
@@ -460,13 +462,17 @@ export default {
460
462
  patternAll: [],
461
463
  patternSelect: [], // 所有方案id
462
464
  specialPage: '', // 哪一个特殊控制页面
463
- nextcycleefficcontrol: [5, 6, 9, 10, 12, 19] // 下周期生效的控制方式
465
+ nextcycleefficcontrol: [5, 6, 9, 10, 12, 19], // 下周期生效的控制方式
466
+ resetcomponent: false
464
467
  }
465
468
  },
466
469
  watch: {
467
470
  agentId: {
468
- handler: function (val) {
469
- this.getIntersectionInfo(val)
471
+ handler: function (val1, val2) {
472
+ if (val1 !== val2) {
473
+ this.resetComponent()
474
+ }
475
+ this.getIntersectionInfo(val1)
470
476
  },
471
477
  // 深度观察监听
472
478
  deep: true
@@ -503,19 +509,29 @@ export default {
503
509
  this.setHost(this.reqUrl)
504
510
  this.PhaseDataModel = new PhaseDataModel(this.roadDirection)
505
511
  this.CrossDiagramMgr = new CrossDiagramMgr()
506
- this.getIntersectionInfo(this.agentId)
507
512
  },
508
513
  async mounted () {
509
- if (this.realtimeStatusModalvisible === false) {
510
- this.changeStatus()
511
- }
512
- this.setPropsToken(this.Token)
513
- this.hiddenPartControl()
514
- // await this.getPhase()
515
- this.getFault()
516
- this.initData()
514
+ this.resetcomponent = true
515
+ this.init()
517
516
  },
518
517
  methods: {
518
+ resetComponent () {
519
+ this.resetcomponent = false
520
+ this.$nextTick(() => {
521
+ this.resetcomponent = true
522
+ this.init()
523
+ })
524
+ },
525
+ init () {
526
+ this.getIntersectionInfo(this.agentId)
527
+ if (this.realtimeStatusModalvisible === false) {
528
+ this.changeStatus()
529
+ }
530
+ this.setPropsToken(this.Token)
531
+ // await this.getPhase()
532
+ this.getFault()
533
+ this.initData()
534
+ },
519
535
  setHost (host) {
520
536
  // 获取组件外传入的token,便于独立组件调用接口
521
537
  if (host && host !== '') {
@@ -942,12 +958,6 @@ export default {
942
958
  if (token && token !== '') {
943
959
  setToken(token)
944
960
  }
945
- },
946
- hiddenPartControl () {
947
- // 保存的面板,不显示方位锁定的功能
948
- if (this.isShowImplement === false) {
949
- this.residentControlList = this.residentControlList.filter(item => item.id !== 25)
950
- }
951
961
  }
952
962
  },
953
963
  destroyed () {
@@ -20,10 +20,10 @@
20
20
  :model="manualInfo"
21
21
  label-width="90px">
22
22
  <el-form-item
23
- :label="$t('openatccomponents.overview.greenclear')"
24
- prop="intersection">
25
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempGreenflash" size="small"></el-input-number>
26
- </el-form-item>
23
+ :label="$t('openatccomponents.overview.duration')"
24
+ prop="count">
25
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="small"></el-input-number>
26
+ </el-form-item>
27
27
 
28
28
  <el-form-item
29
29
  :label="$t('openatccomponents.overview.yellowflash')"
@@ -44,13 +44,11 @@
44
44
  label-position="left"
45
45
  :model="manualInfo"
46
46
  label-width="90px">
47
-
48
- <el-form-item
49
- :label="$t('openatccomponents.overview.duration')"
50
- prop="count">
51
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="small"></el-input-number>
52
- </el-form-item>
53
-
47
+ <el-form-item
48
+ :label="$t('openatccomponents.overview.greenclear')"
49
+ prop="intersection">
50
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempGreenflash" size="small"></el-input-number>
51
+ </el-form-item>
54
52
  <el-form-item
55
53
  :label="$t('openatccomponents.overview.allred')"
56
54
  prop="intersection">
@@ -62,7 +62,7 @@
62
62
  @toAutoControl="toAutoControl" />
63
63
 
64
64
  <AzimuthLocking
65
- v-if="preselecttype === '方向锁定' && isShowImplement"
65
+ v-if="preselecttype === '方向锁定'"
66
66
  :realtimeStatusModalvisible="realtimeStatusModalvisible"
67
67
  :phaseList="phaseList"
68
68
  :patternStatus="statusData"
@@ -160,7 +160,8 @@
160
160
  <div class="cross-content">
161
161
  <div class="cross-name">{{$t('openatccomponents.overview.currentstage')}}:</div>
162
162
  <div>
163
- <Stages :crossStatusData="crossStatusData"
163
+ <Stages v-if="resetcomponent"
164
+ :crossStatusData="crossStatusData"
164
165
  :phaseList="phaseList"
165
166
  @onSelectStages="onSelectStages"></Stages>
166
167
  </div>
@@ -260,8 +261,27 @@ export default {
260
261
  }
261
262
 
262
263
  },
264
+ watch: {
265
+ agentId: {
266
+ handler: function (val1, val2) {
267
+ this.$nextTick(() => {
268
+ setTimeout(() => {
269
+ if (val1 !== val2) {
270
+ this.resetcomponent = false
271
+ this.$nextTick(() => {
272
+ this.resetcomponent = true
273
+ })
274
+ }
275
+ }, 100)
276
+ })
277
+ },
278
+ // 深度观察监听
279
+ deep: true
280
+ }
281
+ },
263
282
  data () {
264
283
  return {
284
+ resetcomponent: true
265
285
  }
266
286
  },
267
287
  methods: {
@@ -32,6 +32,7 @@ import XiaoKanBan from './components/XiaoKanBan/index.vue'
32
32
  import DirectionListConfiguration from './components/DirectionListConfiguration/index.js'
33
33
  import IntersectionDirectionSelection from './components/IntersectionDirectionSelection/index.js'
34
34
  import PhaseLegend from './components/PhaseLegend/index.js'
35
+ import OverviewComponent from './components/OverviewComponent/index.js'
35
36
  import { setToken, setHost, setIsCheckPermission, setUserRoles, setPermissions } from '../utils/auth.js'
36
37
  import componentsGlobalParam from '../store/modules/globalParam'
37
38
 
@@ -73,7 +74,8 @@ const components = {
73
74
  PhaseDirectionSelect,
74
75
  DirectionListConfiguration,
75
76
  IntersectionDirectionSelection,
76
- PhaseLegend
77
+ PhaseLegend,
78
+ OverviewComponent
77
79
  }
78
80
 
79
81
  const language = {
@@ -1,13 +1,15 @@
1
1
  <template>
2
2
  <div id="test1">
3
- <overview
3
+ <!-- <overview
4
4
  :AgentId="agentId"
5
5
  :reqUrl="reqUrl"
6
6
  :modeName="modeName"
7
7
  :controlName="controlName"
8
8
  :isShowState="isShowState"
9
9
  :isShowMode="isShowMode"
10
- :Token="Token"></overview>
10
+ :Token="Token"></overview> -->
11
+ <el-button @click="handleChangeOverview">切换overview组件</el-button>
12
+ <overview-component :AgentId="agentId" />
11
13
  </div>
12
14
  </template>
13
15
 
@@ -19,12 +21,23 @@ export default {
19
21
  isShowMode: true,
20
22
  modeName: '交警遥控',
21
23
  controlName: '步进',
22
- agentId: 'jmlxhl',
23
- Token: 'eyJraWQiOiIxNzA4OTA5NDk2ODcxIiwidHlwIjoiSldUIiwiYWxnIjoiSFMyNTYifQ.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTcwODk1MjY5NiwiaWF0IjoxNzA4OTA5NDk2fQ.FI0gzBQFLyQsj95LG56lVZxb6WYlr2-datNsyv6fF-I',
24
+ agentId: '13013',
25
+ agentid1: 'gjnlahql',
26
+ agentid2: '13013',
27
+ sum: 0,
28
+ Token: 'eyJraWQiOiIxNzI5ODIxNjcyNTQ3IiwidHlwIjoiSldUIiwiYWxnIjoiSFMyNTYifQ.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTcyOTgyNTI3MiwiaWF0IjoxNzI5ODE4MDcyfQ._C-0Cf3CQYx3tpGPAF-973Km8ekzJhAm4XwpNKFgSfk',
24
29
  reqUrl: 'http://192.168.13.103:10003/openatc'
25
30
  }
26
31
  },
27
32
  methods: {
33
+ handleChangeOverview () {
34
+ if (this.sum % 2 === 0) {
35
+ this.agentId = this.agentid1
36
+ } else {
37
+ this.agentId = this.agentid2
38
+ }
39
+ this.sum++
40
+ }
28
41
  },
29
42
  watch: {
30
43
  },
@@ -11,12 +11,12 @@
11
11
 
12
12
  // 全局滚动条样式
13
13
  ::-webkit-scrollbar {
14
- width: 12PX;
15
- height: 12PX;
14
+ width: 6PX;
15
+ height: 6PX;
16
16
  }
17
17
  ::-webkit-scrollbar-thumb {
18
18
  // 滚动条的滑块
19
- border-radius: 4px;
19
+ border-radius: 3PX;
20
20
  background: rgba(144, 147, 153, 0.3);
21
21
  }
22
22
  ::-webkit-scrollbar-corner{
@@ -34,7 +34,7 @@ $--button-danger-font-color: #FFFFFF;
34
34
  $--button-success-font-color: #FFFFFF;
35
35
  $--radio-button-checked-font-color: #FFFFFF;
36
36
  $--radio-font-color: $--color-text-secondary;
37
- $--tag-info-color: $--color-text-placeholder;
37
+ $--tag-info-color: #FFFFFF;
38
38
  $--tooltip-color: $--color-white;
39
39
  $--checkbox-font-color: $--color-text-secondary;
40
40
 
@@ -38,9 +38,6 @@
38
38
  zoom: 0.9;
39
39
 
40
40
  }
41
- .centerText .text {
42
- font-size: 14px;
43
- }
44
41
  }
45
42
  /*当屏幕小于等于1440px的屏幕样式*/
46
43
  @media only screen and (max-width: 1440px){
@@ -49,9 +46,6 @@
49
46
  zoom: 0.8;
50
47
 
51
48
  }
52
- .centerText .text {
53
- font-size: 18px;
54
- }
55
49
  }
56
50
  /*当屏幕小于等于1280px的屏幕样式*/
57
51
  @media only screen and (max-width: 1280px){
@@ -59,9 +53,6 @@
59
53
  // transform: scale(0.65);
60
54
  zoom: 0.65;
61
55
  }
62
- .centerText .text {
63
- font-size: 20px;
64
- }
65
56
  }
66
57
  /*当屏幕小于等于960px的屏幕样式*/
67
58
  @media only screen and (max-width: 960px){
@@ -69,9 +60,6 @@
69
60
  // transform: scale(0.5);
70
61
  zoom: 0.5;
71
62
  }
72
- .centerText .text {
73
- font-size: 14px;
74
- }
75
63
  }
76
64
  /*当屏幕小于等于720px的屏幕样式*/
77
65
  @media only screen and (max-width: 720px){
@@ -79,9 +67,6 @@
79
67
  // transform: scale(0.45);
80
68
  zoom: 0.45;
81
69
  }
82
- .centerText .text {
83
- font-size: 14px;
84
- }
85
70
  }
86
71
  // 小屏幕打开首页适配样式
87
72
  .minifont {
@@ -188,4 +173,9 @@
188
173
  color: $--color-text-primary;
189
174
  font-size:30PX;
190
175
  }
176
+ .centerText {
177
+ .text {
178
+ font-size: 18PX;
179
+ }
180
+ }
191
181
  }
@@ -34,7 +34,7 @@ $--card-background-selected: #c1e0ff;
34
34
  // $--button-success-font-color: #FFFFFF;
35
35
  // $--radio-button-checked-font-color: #FFFFFF;
36
36
  // $--radio-font-color: $--color-text-secondary;
37
- // $--tag-info-color: $--color-text-placeholder;
37
+ $--tag-info-color: #303133;
38
38
  // $--tooltip-color: $--color-white;
39
39
  // $--checkbox-font-color: $--color-text-secondary;
40
40
 
@@ -226,7 +226,7 @@
226
226
  overflow-y: auto;
227
227
  }
228
228
  .manual-common-content::-webkit-scrollbar {
229
- width: 8PX;
229
+ width: 6PX;
230
230
  }
231
231
  }
232
232
  // 手动控制弹框
@@ -498,12 +498,12 @@
498
498
  width: 85% !important;
499
499
  }
500
500
  .el-input.is-disabled .el-input__inner {
501
- text-align: center;
501
+ text-align: left;
502
502
  }
503
503
  .el-input-number {
504
504
  width: 100%;
505
505
  .el-input__inner {
506
- text-align: center;
506
+ text-align: left;
507
507
  }
508
508
  }
509
509
  .el-select {
@@ -540,6 +540,9 @@
540
540
  }
541
541
  .el-input-number {
542
542
  width: 100%;
543
+ .el-input__inner {
544
+ text-align: left;
545
+ }
543
546
  }
544
547
  .el-input-number--mini{
545
548
  width: 100%;