openatc-components 0.1.27 → 0.1.29

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.1.27",
3
+ "version": "0.1.29",
4
4
  "description": "A Vue.js project",
5
5
  "author": "openatc developer",
6
6
  "private": false,
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="overLap" v-if="checked" :style="{'margin':this.controlData ? '20px 0 0 0' :tentative ? '0' : '0 40px 0 417px'}">
2
+ <div class="overLap" v-if="checked" :style="{'margin':this.controlData ? '20px 0 0 0' :tentative ? '0' : '0 87px 0 468px'}">
3
3
  <div class="ring-first" v-for="(list, index1) in this.overlapDatas" :key="index1">
4
4
  <div v-for="(item,index2) in list.stageLists" :key="index2" >
5
5
  <!-- {{list.peddirection}} -->
@@ -13,7 +13,7 @@
13
13
  </div>
14
14
  <div style="cursor:pointer;">
15
15
  <div class="ring-phase">
16
- <patternwalksvg :showWalk="list.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg>
16
+ <!-- <patternwalksvg :showWalk="list.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg> -->
17
17
  <xdrdirselector Width="36px" Height="34px" :showlist="item.direction"></xdrdirselector>
18
18
  </div>
19
19
  <div class="box">
@@ -38,11 +38,11 @@
38
38
  import PhaseDataModel from '../IntersectionMap/crossDirection/utils.js'
39
39
  import CrossDiagramMgr from '../../../EdgeMgr/controller/crossDiagramMgr.js'
40
40
  import xdrdirselector from '../XRDDirSelector/XRDDirSelector'
41
- import patternwalksvg from '../PatternWalkSvg/PatternWalkSvg'
41
+ // import patternwalksvg from '../PatternWalkSvg/PatternWalkSvg'
42
42
  export default {
43
43
  name: 'over-lap',
44
44
  components: {
45
- patternwalksvg,
45
+ // patternwalksvg,
46
46
  xdrdirselector
47
47
  },
48
48
  data () {
@@ -98,13 +98,19 @@ export default {
98
98
  methods: {
99
99
  getRoad (i) {
100
100
  let direction = []
101
- if (i) {
102
- i.map(item => {
101
+ if (i.direction && i.direction.length > 0) {
102
+ i.direction.map(item => {
103
103
  direction.push({
104
104
  id: item,
105
+ peddirection: this.getPedPhasePos(i.peddirection),
105
106
  color: '#454545'
106
107
  })
107
108
  })
109
+ } else {
110
+ direction.push({
111
+ id: '',
112
+ peddirection: this.getPedPhasePos(i.peddirection)
113
+ })
108
114
  }
109
115
  return direction
110
116
  },
@@ -142,8 +148,8 @@ export default {
142
148
  const find = findIndexs.includes(sta.key)
143
149
  return {
144
150
  ...sta,
145
- direction: this.getRoad(item.direction),
146
- peddirection: this.getPedPhasePos(item.peddirection),
151
+ direction: this.getRoad(item),
152
+ // peddirection: this.getPedPhasePos(item.peddirection),
147
153
  greenWidth: find ? (sta.split / this.cycle * 100).toFixed(3) + '%' : '0%',
148
154
  redWidth: !find ? (sta.split / this.cycle * 100).toFixed(3) + '%' : '0%'
149
155
  }
@@ -188,6 +194,7 @@ export default {
188
194
  float: left;
189
195
  // margin-left: 5px;
190
196
  height: 34px;
197
+ width: 36px;
191
198
  z-index: 999;
192
199
  background: rgba(30, 96, 12, 0.07);
193
200
  // margin-top:1px;
@@ -20,7 +20,7 @@
20
20
  <div slot="content">P{{item.id}}:{{item.split}}</div>
21
21
  <div style="cursor:pointer;">
22
22
  <div class="ring-phase">
23
- <patternwalksvg :showWalk="item.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg>
23
+ <!-- <patternwalksvg :showWalk="item.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg> -->
24
24
  <xdrdirselector Width="36px" Height="34px" :showlist="item.direction"></xdrdirselector>
25
25
  </div>
26
26
  <div class="box">
@@ -43,8 +43,10 @@
43
43
  <div class="first-1" :style="{'width':item.redWidth,'height':'34px','background':'#f27979'}"></div>
44
44
  </div>
45
45
  </div>
46
- <div v-if="showBarrier" v-for="(item, index) in barrierList" :key="index + '1'">
47
- <div class="divider" :style="{'left':item, 'height':barrierHeight}"></div>
46
+ <div v-if="showBarrier">
47
+ <div v-for="(item, index) in barrierList" :key="index + '1'">
48
+ <div class="divider" :style="{'left':item, 'height':barrierHeight}"></div>
49
+ </div>
48
50
  </div>
49
51
  <div v-show="(syncTime && cycle && cycle>0) || (syncTime && newCycle && newCycle>0)">
50
52
  <div class="curTimeDiv" :style="{'left':paddingLeft, 'background-color': '#409EFF'}">{{ timeNumDevide }}</div>
@@ -63,7 +65,7 @@
63
65
  </div>
64
66
  <div style="cursor:pointer;">
65
67
  <div class="ring-phase">
66
- <patternwalksvg :showWalk="list.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg>
68
+ <!-- <patternwalksvg :showWalk="list.peddirection" :Width="'32'" :Height="'34'"></patternwalksvg> -->
67
69
  <xdrdirselector Width="36px" Height="34px" :showlist="list.direction"></xdrdirselector>
68
70
  </div>
69
71
  <div class="box" style="line-height:28px">
@@ -83,7 +85,7 @@
83
85
  </div>
84
86
  </template>
85
87
  <script>
86
- import patternwalksvg from '../PatternWalkSvg/PatternWalkSvg'
88
+ // import patternwalksvg from '../PatternWalkSvg/PatternWalkSvg'
87
89
  import xdrdirselector from '../XRDDirSelector/XRDDirSelector'
88
90
  // import PatternWalkSvg from '../IntersectionMap/crossDirection/baseImg/PatternWalkSvg'
89
91
  import PhaseDataModel from '../IntersectionMap/crossDirection/utils.js'
@@ -91,7 +93,7 @@ import CrossDiagramMgr from '../../../EdgeMgr/controller/crossDiagramMgr.js'
91
93
  export default {
92
94
  name: 'pattern-list',
93
95
  components: {
94
- patternwalksvg,
96
+ // patternwalksvg,
95
97
  xdrdirselector
96
98
  },
97
99
  data () {
@@ -298,6 +300,7 @@ export default {
298
300
  },
299
301
  handleStageData (data) {
300
302
  if (!data) return
303
+ let peddirections = this.getPed(data)
301
304
  let stagesTemp = []
302
305
  let tempList = []
303
306
  for (let stg of data) {
@@ -309,11 +312,19 @@ export default {
309
312
  directionList.push(...currPhase.direction)
310
313
  directionList = Array.from(new Set(directionList))
311
314
  }
312
- // if (directionList.length === 0) return
313
- tempList = directionList.map(dir => ({
314
- id: dir,
315
- color: '#606266'
316
- }))
315
+ if (directionList.length === 0) {
316
+ tempList.push({
317
+ id: '',
318
+ color: '#606266',
319
+ peddirection: peddirections
320
+ })
321
+ } else {
322
+ tempList = directionList.map(dir => ({
323
+ id: dir,
324
+ color: '#606266',
325
+ peddirection: peddirections
326
+ }))
327
+ }
317
328
  stagesTemp.push(...tempList)
318
329
  }
319
330
  return stagesTemp
@@ -332,7 +343,7 @@ export default {
332
343
  this.stageLists = this.localPatternList[i].stagesList.map(item => {
333
344
  return {
334
345
  ...item,
335
- peddirection: this.getPed(item.phases ? item.phases : item.stages),
346
+ // peddirection: this.getPed(item.phases ? item.phases : item.stages),
336
347
  direction: this.handleStageData(item.phases ? item.phases : item.stages),
337
348
  greenWidth: (item.green / stageMaxCyle * 100).toFixed(3) + '%',
338
349
  yellowWidth: (item.yellow / stageMaxCyle * 100).toFixed(3) + '%',
@@ -353,7 +364,7 @@ export default {
353
364
  this.stageLists = this.stagesChange.map(item => {
354
365
  return {
355
366
  ...item,
356
- peddirection: this.getPed(item.phases ? item.phases : item.stages),
367
+ // peddirection: this.getPed(item.phases ? item.phases : item.stages),
357
368
  direction: this.handleStageData(item.phases ? item.phases : item.stages),
358
369
  greenWidth: (item.green / stageMaxCyle * 100).toFixed(3) + '%',
359
370
  yellowWidth: (item.yellow / stageMaxCyle * 100).toFixed(3) + '%',
@@ -590,20 +601,46 @@ export default {
590
601
  }
591
602
  return item.id === ring.id
592
603
  })[0]
593
- if (ring.desc) {
604
+ let peddirections = []
605
+ for (let walk of this.sidewalkPhaseData) {
606
+ for (let ped of currPhase.peddirection) {
607
+ // if (stg === walk.phaseid) {
608
+ let objs = {}
609
+ objs.name = walk.name
610
+ objs.id = walk.id
611
+ if (ped === walk.id) {
612
+ peddirections.push(objs)
613
+ peddirections = Array.from(new Set(peddirections))
614
+ }
615
+ // }
616
+ }
617
+ }
618
+ if (ring.desc && ring.desc.length > 0) {
594
619
  obj.direction = ring.desc.map(item => { // 虚相位desc为空
595
620
  return {
596
621
  id: item.id,
597
- color: '#454545'
622
+ color: '#454545',
623
+ peddirection: peddirections
598
624
  }
599
625
  })
600
626
  } else {
601
- obj.direction = currPhase.direction.map(item => {
602
- return {
603
- id: item,
604
- color: '#454545'
605
- }
606
- })
627
+ if (obj.direction && obj.direction > 0) {
628
+ obj.direction = currPhase.direction.map(item => {
629
+ return {
630
+ id: item,
631
+ color: '#454545',
632
+ peddirection: peddirections
633
+ }
634
+ })
635
+ } else {
636
+ obj.direction = [
637
+ {
638
+ id: '',
639
+ color: '#454545',
640
+ peddirection: peddirections
641
+ }
642
+ ]
643
+ }
607
644
  }
608
645
  if (ring.sum) {
609
646
  obj.split = split + ring.sum
@@ -615,22 +652,22 @@ export default {
615
652
  obj.flashgreen = (currPhase.flashgreen / (this.max ? this.max : this.newCycle) * 100).toFixed(3) + '%'
616
653
  obj.redWidth = (currPhase.redclear / (this.max ? this.max : this.newCycle) * 100).toFixed(3) + '%'
617
654
  obj.yellowWidth = (currPhase.yellow / (this.max ? this.max : this.newCycle) * 100).toFixed(3) + '%'
618
- // obj.peddirection = currPhase.peddirection
619
- let peddirections = []
620
- for (let walk of this.sidewalkPhaseData) {
621
- for (let ped of currPhase.peddirection) {
622
- // if (stg === walk.phaseid) {
623
- let objs = {}
624
- objs.name = walk.name
625
- objs.id = walk.id
626
- if (ped === walk.id) {
627
- peddirections.push(objs)
628
- peddirections = Array.from(new Set(peddirections))
629
- }
630
- // }
631
- }
632
- }
633
- obj.peddirection = peddirections
655
+ // // obj.peddirection = currPhase.peddirection
656
+ // let peddirections = []
657
+ // for (let walk of this.sidewalkPhaseData) {
658
+ // for (let ped of currPhase.peddirection) {
659
+ // // if (stg === walk.phaseid) {
660
+ // let objs = {}
661
+ // objs.name = walk.name
662
+ // objs.id = walk.id
663
+ // if (ped === walk.id) {
664
+ // peddirections.push(objs)
665
+ // peddirections = Array.from(new Set(peddirections))
666
+ // }
667
+ // // }
668
+ // }
669
+ // }
670
+ // obj.peddirection = peddirections
634
671
  // 忽略相位不显示
635
672
  let mode = ring.mode
636
673
  if (mode !== 7) { // 忽略相位不显示
@@ -904,6 +941,7 @@ export default {
904
941
  float: left;
905
942
  // margin-left: 5px;
906
943
  height: 34px;
944
+ width: 36px;
907
945
  z-index: 999;
908
946
  background: rgba(30, 96, 12, 0.2);
909
947
  // margin-top:1px;
@@ -24,11 +24,11 @@
24
24
  :Width="'55'"
25
25
  :Height="'55'" />
26
26
  </template> -->
27
- <patternwalksvg class="patternWalk"
27
+ <!-- <patternwalksvg class="patternWalk"
28
28
  :showWalk="item[0].peddirection"
29
29
  :Width="'40'"
30
- :Height="'40'" />
31
- <xdr-dir-selector Width="40PX" Height="40PX" :showlist="item"></xdr-dir-selector>
30
+ :Height="'40'" /> -->
31
+ <xdr-dir-selector Width="40PX" Height="40PX" :Data="showStyle" :showlist="item"></xdr-dir-selector>
32
32
  <div style="display:flex;flex-direction:row;justify-content:center;align-items:center;">
33
33
  <div class="current-stage-num" style="width:20%;">{{index + 1}}</div>
34
34
  <div style="width:70%;">
@@ -99,6 +99,10 @@ export default {
99
99
  },
100
100
  data () {
101
101
  return {
102
+ showStyle:{
103
+ top:'5PX',
104
+ left:'14px'
105
+ },
102
106
  presetStageIndex: -1,
103
107
  side: {key: 'pedphase1653818707546719', phaseid: 1, id: 1, name: '东人行横道'},
104
108
  // stagesList: [],