openatc-components 0.2.73 → 0.2.75

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.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openatc-components",
3
- "version": "0.2.73",
3
+ "version": "0.2.75",
4
4
  "description": "A Vue.js project",
5
5
  "author": "openatc developer",
6
6
  "private": false,
@@ -114,8 +114,6 @@ const en = {
114
114
  'maxFlow': 'The average lane flow is too large. Is it further optimized?',
115
115
  'typecycle-opt': 'Cycle Opt',
116
116
  'signalIP': 'Signal IP',
117
- 'stagecountdown': 'Stage Countdown',
118
- 'stageduration': 'Stage Duration',
119
117
  'currentphase': 'Current phase',
120
118
  'directionnull': 'Please select the import direction',
121
119
  'faultinfo': 'Fault Information',
@@ -114,8 +114,6 @@ const zh = {
114
114
  'protocoltype': '协议类型',
115
115
  'signalID': '路口ID',
116
116
  'signalIP': '信号机IP',
117
- 'stagecountdown': '阶段倒计时',
118
- 'stageduration': '阶段时长',
119
117
  'faultinfo': '故障信息',
120
118
  'platform': '平台类型',
121
119
  'online': '在线',
@@ -32,14 +32,11 @@
32
32
  <div class="right-dir-road" v-if="roadDir === 'right'">
33
33
  <div class="centerText" v-if="crossType !== 'Customroads' && isHasPhase">
34
34
  <!-- 相位倒计时 -->
35
- <div class="phaseCountdown" v-show="isShowInterval" v-if="isLoaded && isHasPhase && isHasCountdown" :class="{'countdownBg': isLoaded}">
35
+ <div class="phaseCountdown" v-show="isShowInterval" v-if="isLoaded && isHasPhase" :class="{'countdownBg': isLoaded}">
36
36
  <div v-for="curPhase in phaseCountdownList" :key="curPhase.id" :style="{color: curPhase.phaseCountdownColor}">
37
- <div v-if="curPhase.phaseCountdown !== undefined && curPhase.phaseCountdown !== -1" style="overflow: hidden;margin-bottom: 4px;">
38
- <span style="float: left;width: 33px;height: 33px;position: relative;border: 1px solid rgba(255, 255, 255, 0.1);margin-right: 7px;">
39
- <xdr-dir-selector :Data="xdrData" :Datas="xdrpedData" Width="42px" Height="42px" Widths="42px" Heights="42px" :showlist="curPhase.showlist" :roadDirection="roadDirection"></xdr-dir-selector>
40
- </span>
41
- <span style="float: left;color: #fff;margin-right: 10px;width: 30px;">P{{curPhase.id}}:</span>
42
- <span style="float: left;font-size: 20px;">{{curPhase.phaseCountdown}}</span>
37
+ <div v-if="curPhase.phaseCountdown !== -1">
38
+ <span style="float: left;font-size: 20px;color: #fff;width: 70px;">{{$t('openatccomponents.overview.phase')}}{{curPhase.id}}:</span>
39
+ <span style="float: left;">{{curPhase.phaseCountdown}}</span>
43
40
  </div>
44
41
  </div>
45
42
  </div>
@@ -378,16 +375,7 @@ export default {
378
375
  comdirePhaseData: [], // 对比相同方向车道相位数据后,被删减的唯一direction的数组
379
376
  comdireOverlapPhaseData: [], // 对比相同方向车道跟随相位数据后,被删减的唯一direction的数组
380
377
  busPhaseData: [], // 公交相位数据
381
- comdireBusPhaseData: [], // 对比相同方向公交车道数据后,被删减的唯一direction的数组
382
- phaseDirMap: new Map(),
383
- xdrData: {
384
- left: '5px',
385
- top: '4px'
386
- },
387
- xdrpedData: {
388
- left: '1px',
389
- top: '1px'
390
- }
378
+ comdireBusPhaseData: [] // 对比相同方向公交车道数据后,被删减的唯一direction的数组
391
379
  }
392
380
  },
393
381
  methods: {
@@ -639,7 +627,6 @@ export default {
639
627
  getCurPhaseCountdown () {
640
628
  // 获取当前相位倒计时颜色
641
629
  this.phaseCountdownList = []
642
- this.isHasCountdown = false
643
630
  this.curPhase.forEach(curP => {
644
631
  this.phaseStatusList.forEach(phaseInfo => {
645
632
  if (phaseInfo.id === curP) {
@@ -647,35 +634,11 @@ export default {
647
634
  countdownObj.id = phaseInfo.id
648
635
  countdownObj.phaseCountdown = phaseInfo.countdown
649
636
  countdownObj.phaseCountdownColor = this.ColorMap.get(phaseInfo.type)
650
- let curphasedir = this.phaseDirMap.get(phaseInfo.id)
651
- if (curphasedir !== undefined) {
652
- countdownObj.showlist = curphasedir.direction.map(dir => {
653
- return {
654
- id: dir,
655
- peddirection: this.getshowped(curphasedir.peddirection),
656
- color: '#fff'
657
- }
658
- })
659
- } else {
660
- countdownObj.showlist = []
661
- }
662
-
663
637
  this.phaseCountdownList.push(countdownObj)
664
- if (phaseInfo.countdown !== undefined && phaseInfo.countdown !== -1) {
665
- this.isHasCountdown = true
666
- }
667
638
  }
668
639
  })
669
640
  })
670
641
  },
671
- getshowped (peddirection) {
672
- let peddirarr = peddirection.map(peddir => ({
673
- id: peddir,
674
- name: this.PhaseDataModel.getSidePos(peddir).name,
675
- color: 'rgba(255, 255, 255, 0.4)'
676
- }))
677
- return peddirarr
678
- },
679
642
  getIntersectionInfo () {
680
643
  // 获取路口信息
681
644
  const agentid = this.agentId || '0'
@@ -707,7 +670,6 @@ export default {
707
670
  return
708
671
  }
709
672
  this.crossInfo = res.data.data.param
710
- this.crossInfo.phaseList.forEach(cross => this.phaseDirMap.set(cross.id, {direction: cross.direction, peddirection: cross.peddirection}))
711
673
  if (this.mainType === '100' || this.mainType === '101' || this.mainType === '104') {
712
674
  // 城市道路加载车道相位坐标和人行道坐标
713
675
  this.getPhasePos()
@@ -1224,8 +1186,8 @@ export default {
1224
1186
  /* padding-left: 16px; */
1225
1187
  }
1226
1188
  .phaseCountdown {
1227
- line-height: 32PX;
1228
- font-size: 14px;
1189
+ line-height: 40px;
1190
+ font-size: 30px;
1229
1191
  font-weight: normal;
1230
1192
  font-stretch: normal;
1231
1193
  letter-spacing: 0px;
@@ -1234,16 +1196,14 @@ export default {
1234
1196
  margin: 0 auto;
1235
1197
  }
1236
1198
  .countdownBg {
1237
- border-radius: 10PX;
1199
+ border-radius: 10px;
1238
1200
  background-color: rgba(94, 90, 90, 0.8);
1239
- padding-left: 16PX;
1240
- padding-top: 10PX;
1241
- padding-bottom: 10PX;
1201
+ padding-left: 16px;
1242
1202
  }
1243
1203
  .centerText .text {
1244
1204
  display: inline-block;
1245
1205
  color: #299BCC;
1246
- margin-top: 20PX;
1206
+ margin-top: 20px;
1247
1207
  }
1248
1208
 
1249
1209
  .baseImg {
@@ -48,7 +48,7 @@
48
48
  <div class="divider" :style="{'left':item, 'height':barrierHeight}"></div>
49
49
  </div>
50
50
  </div>
51
- <div v-show="(cycle && cycle>0 && this.isControl) || (newCycle && newCycle>0 && this.isControl)">
51
+ <div v-show="(this.controlData && cycle && cycle>0 && this.isControl) || (this.controlData && newCycle && newCycle>0 && this.isControl)">
52
52
  <div class="curTimeDiv" :style="{'left':paddingLeft }">{{ timeNumDevide }}</div>
53
53
  <div class="curTimeLine" :style="{'left':paddingLeft, 'height':barrierHeight}"></div>
54
54
  </div>
@@ -84,6 +84,15 @@
84
84
  <div class="first-1" :style="{'width':list.yellowWidth,'height':'34px','background':'#f9dc6a'}"></div>
85
85
  <div class="first-1" :style="{'width':list.redWidth,'height':'34px','background':'#f27979'}"></div>
86
86
  </div>
87
+ <div>
88
+ <div class="curTimeDiv" :style="{ left: paddingLefts }">
89
+ {{ timeNumDevides }}
90
+ </div>
91
+ <div
92
+ class="curTimeLine"
93
+ :style="{ left: paddingLefts, height: '56px' }"
94
+ ></div>
95
+ </div>
87
96
  </div>
88
97
  <!-- </div> -->
89
98
  </div>
@@ -103,6 +112,7 @@ export default {
103
112
  data () {
104
113
  return {
105
114
  barrierHeight: '',
115
+ stageCycle: '',
106
116
  barrierList: [],
107
117
  newCycle: this.cycles,
108
118
  patternIds: this.patternId,
@@ -177,6 +187,19 @@ export default {
177
187
  }
178
188
  },
179
189
  computed: {
190
+ paddingLefts () {
191
+ let res = '0%'
192
+ let curPercent = this.curtime / this.stageCycle
193
+ if (curPercent >= 1) {
194
+ curPercent = 1
195
+ }
196
+ res = curPercent * 100 + '%'
197
+ return res
198
+ },
199
+ timeNumDevides () {
200
+ let res = this.curtime
201
+ return res
202
+ },
180
203
  paddingLeft () {
181
204
  let res = '0%'
182
205
  if (this.contrloCycle > 0) {
@@ -417,6 +440,7 @@ export default {
417
440
  let stageMaxCyle = stageCycleList.reduce((a, b) => {
418
441
  return a + b
419
442
  }, 0)
443
+ this.stageCycle = stageMaxCyle
420
444
  this.stageLists = this.localPatternList[i].stagesList.map(item => {
421
445
  return {
422
446
  ...item,
@@ -49,14 +49,6 @@
49
49
  <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.platform')}}:</div>
50
50
  <div style="margin-left: 85px;" class="cross-value">{{platform}}</div>
51
51
  </div>
52
- <div class="cross-content" v-if="controlData.current_stagecd !== undefined">
53
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stagecountdown')}}:</div>
54
- <div style="margin-left: 85px;" class="cross-value">{{controlData.current_stagecd}}</div>
55
- </div>
56
- <div class="cross-content" v-if="controlData.stages_len">
57
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stageduration')}}:</div>
58
- <div style="margin-left: 85px;" class="cross-value">{{controlData.stages_len + ''}}</div>
59
- </div>
60
52
  <div class="cross-content">
61
53
  <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.faultinfo')}}:</div>
62
54
  <div style="margin-left: 85px;" v-if="curFaultList.length">