openatc-components 0.0.94 → 0.0.97

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 (124) hide show
  1. package/package/kisscomps/components/Channelization/Channelization.vue +546 -0
  2. package/package/kisscomps/components/Channelization/index.js +2 -0
  3. package/package/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +494 -0
  4. package/package/kisscomps/components/ChannelizationWithInterface/index.js +2 -0
  5. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +249 -0
  6. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -0
  7. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -0
  8. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +176 -0
  9. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -0
  10. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +48 -0
  11. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +182 -0
  12. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +222 -0
  13. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +191 -0
  14. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +78 -0
  15. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +433 -0
  16. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +195 -0
  17. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +71 -0
  18. package/package/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +940 -0
  19. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +109 -0
  20. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +563 -0
  21. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +157 -0
  22. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.check.vue +191 -0
  23. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.syncOper.vue +331 -0
  24. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +157 -0
  25. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -0
  26. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +43 -0
  27. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -0
  28. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -0
  29. package/package/kisscomps/components/DrawChannelization/index.js +2 -0
  30. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -0
  31. package/package/kisscomps/components/KanBan/kanban.vue +1 -1
  32. package/package/kisscomps/components/MessageBox/index.vue +96 -0
  33. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +16 -0
  34. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +2 -2
  35. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +190 -0
  36. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -0
  37. package/package/kisscomps/index.js +13 -1
  38. package/package/kissui.min.js +1 -1
  39. package/package.json +13 -10
  40. package/src/api/cross.js +33 -0
  41. package/src/i18n/language/en.js +106 -3
  42. package/src/i18n/language/zh.js +106 -3
  43. package/src/icons/svg/custom-BRTlane.svg +40 -0
  44. package/src/icons/svg/custom-bicyclelane.svg +7 -0
  45. package/src/icons/svg/custom-buslane.svg +40 -0
  46. package/src/icons/svg/custom-detector.svg +12 -0
  47. package/src/icons/svg/custom-east-bottom.svg +32 -0
  48. package/src/icons/svg/custom-east-top.svg +32 -0
  49. package/src/icons/svg/custom-ewped.svg +35 -0
  50. package/src/icons/svg/custom-motorway.svg +7 -0
  51. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -0
  52. package/src/icons/svg/custom-north-left.svg +32 -0
  53. package/src/icons/svg/custom-north-right.svg +32 -0
  54. package/src/icons/svg/custom-pedcrossing.svg +7 -0
  55. package/src/icons/svg/custom-peddetector.svg +17 -0
  56. package/src/icons/svg/custom-pedeastward.svg +9 -0
  57. package/src/icons/svg/custom-pedestrian.svg +7 -0
  58. package/src/icons/svg/custom-pednorthward.svg +9 -0
  59. package/src/icons/svg/custom-pedsouthward.svg +9 -0
  60. package/src/icons/svg/custom-pedwestward.svg +9 -0
  61. package/src/icons/svg/custom-secondcrossing.svg +7 -0
  62. package/src/icons/svg/custom-sectionpedestrian.svg +7 -0
  63. package/src/icons/svg/custom-snped.svg +35 -0
  64. package/src/icons/svg/custom-south-left.svg +32 -0
  65. package/src/icons/svg/custom-south-right.svg +32 -0
  66. package/src/icons/svg/custom-straightahead.svg +7 -0
  67. package/src/icons/svg/custom-tramlane.svg +40 -0
  68. package/src/icons/svg/custom-turnaround.svg +7 -0
  69. package/src/icons/svg/custom-turnleft.svg +7 -0
  70. package/src/icons/svg/custom-turnright.svg +7 -0
  71. package/src/icons/svg/custom-vehiclebranch.svg +40 -0
  72. package/src/icons/svg/custom-vehiclemainroad.svg +41 -0
  73. package/src/icons/svg/custom-west-bottom.svg +32 -0
  74. package/src/icons/svg/custom-west-top.svg +32 -0
  75. package/src/icons/svg/custom-xlped.svg +14 -0
  76. package/src/icons/svg/custom-xpedestrian.svg +7 -0
  77. package/src/icons/svg/custom-xrped.svg +14 -0
  78. package/src/kisscomps/components/Channelization/Channelization.vue +546 -0
  79. package/src/kisscomps/components/Channelization/index.js +2 -0
  80. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +494 -0
  81. package/src/kisscomps/components/ChannelizationWithInterface/index.js +2 -0
  82. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +249 -0
  83. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -0
  84. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -0
  85. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +176 -0
  86. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -0
  87. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +48 -0
  88. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +182 -0
  89. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +222 -0
  90. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +191 -0
  91. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +78 -0
  92. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +433 -0
  93. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +195 -0
  94. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +71 -0
  95. package/src/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +940 -0
  96. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +109 -0
  97. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +563 -0
  98. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +157 -0
  99. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.check.vue +191 -0
  100. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.syncOper.vue +331 -0
  101. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +157 -0
  102. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -0
  103. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +43 -0
  104. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -0
  105. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -0
  106. package/src/kisscomps/components/DrawChannelization/index.js +2 -0
  107. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -0
  108. package/src/kisscomps/components/KanBan/kanban.vue +1 -1
  109. package/src/kisscomps/components/MessageBox/index.vue +96 -0
  110. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +16 -0
  111. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +2 -2
  112. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +190 -0
  113. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -0
  114. package/src/kisscomps/index.js +13 -1
  115. package/src/main.js +3 -0
  116. package/src/router/index.js +7 -0
  117. package/src/store/index.js +2 -2
  118. package/src/store/modules/globalParam.js +56 -16
  119. package/src/views/customchannelization.vue +49 -0
  120. package/src/views/intersection.vue +17 -9
  121. package/static/apiconfig.json +15 -0
  122. package/static/styles/channelizatioon.scss +365 -0
  123. package/static/styles/common.scss +1 -0
  124. package/static/styles/schemeconfig.scss +52 -0
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Copyright (c) 2020 kedacom
3
+ * OpenATC is licensed under Mulan PSL v2.
4
+ * You can use this software according to the terms and conditions of the Mulan PSL v2.
5
+ * You may obtain a copy of Mulan PSL v2 at:
6
+ * http://license.coscl.org.cn/MulanPSL2
7
+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
8
+ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
9
+ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10
+ * See the Mulan PSL v2 for more details.
11
+ **/
12
+ <template>
13
+ <div>
14
+ <el-dialog
15
+ center
16
+ width="424px"
17
+ :visible.sync="boxVisible"
18
+ :title="modalTitle"
19
+ :close-on-click-modal="false"
20
+ custom-class="MessageBox"
21
+ @close="oncancle"
22
+ append-to-body>
23
+ <div class="text">{{text}}</div>
24
+ <div slot="footer" class="boxFooter">
25
+ <el-button class="btn canclebtn" @click="oncancle">{{$t('openatccomponents.button.Cancel')}}</el-button>
26
+ <el-button class="btn okbtn" type="primary" @click="onok">{{$t('openatccomponents.button.OK')}}</el-button>
27
+ </div>
28
+ </el-dialog>
29
+ </div>
30
+ </template>
31
+ <script>
32
+ export default {
33
+ name: 'message-box',
34
+ data () {
35
+ return {
36
+ boxVisible: this.visible,
37
+ modalTitle: this.$t('openatccomponents.common.tipsmodaltitle')
38
+ }
39
+ },
40
+ watch: {
41
+ visible: function (val) {
42
+ this.boxVisible = val
43
+ },
44
+ title: function (val) {
45
+ this.modalTitle = val
46
+ }
47
+ },
48
+ props: {
49
+ visible: {
50
+ type: Boolean,
51
+ default: false
52
+ },
53
+ title: {
54
+ type: String,
55
+ default: '提示'
56
+ },
57
+ text: {
58
+ type: String,
59
+ default: ''
60
+ }
61
+ },
62
+ methods: {
63
+ onok () {
64
+ this.$emit('ok')
65
+ },
66
+ oncancle () {
67
+ this.$emit('cancle')
68
+ }
69
+ },
70
+ mounted () {
71
+ },
72
+ beforeUpdate () {
73
+ this.modalTitle = this.$t('openatccomponents.common.tipsmodaltitle')
74
+ }
75
+ }
76
+ </script>
77
+ <style>
78
+ .MessageBox .el-dialog__body {
79
+ text-align: center;
80
+ }
81
+ .MessageBox .el-dialog__title {
82
+ font-size: 16px;
83
+ }
84
+ .MessageBox .text {
85
+ font-size: 14px;
86
+ }
87
+ .MessageBox .boxFooter .btn {
88
+ font-size: 14px;
89
+ width: 64px;
90
+ height: 34px;
91
+ padding: 2px 10px;
92
+ }
93
+ .MessageBox .el-dialog__footer {
94
+ padding: 10px 20px 20px;
95
+ }
96
+ </style>
@@ -69,6 +69,12 @@
69
69
  @closePhaseBack="closePhaseBack"
70
70
  @closePhaseControl="closePhaseControl"
71
71
  />
72
+ <priorityControl
73
+ v-if="specialPage === 'prioritycontrol'"
74
+ :phaseList="phaseList"
75
+ @closePhaseBack="closePhaseBack"
76
+ @closePhaseControl="closePhaseControl"
77
+ />
72
78
  </div>
73
79
  </transition>
74
80
 
@@ -110,6 +116,7 @@ import ManualControlModal from './manualControlModal'
110
116
  import ClosePhaseControlModal from './closePhaselControlModal'
111
117
  import LockingPhaseControlModal from './lockingPhaselControlModal'
112
118
  import TentativePlanControlModal from './tentativeplancontrolmodal'
119
+ import priorityControl from './priorityControl'
113
120
  // import { getFaultMesZh, getFaultMesEn } from '../../utils/faultcode.js'
114
121
  import { getMessageByCode } from '../../../utils/responseMessage'
115
122
  import { GetAllFaultRange } from '../../../api/fault'
@@ -125,6 +132,7 @@ export default {
125
132
  ManualControlModal,
126
133
  ClosePhaseControlModal,
127
134
  LockingPhaseControlModal,
135
+ priorityControl,
128
136
  TentativePlanControlModal
129
137
  },
130
138
  props: {
@@ -292,6 +300,9 @@ export default {
292
300
  }, {
293
301
  id: 100,
294
302
  iconClass: 'tentativeplan'
303
+ }, {
304
+ id: 24,
305
+ iconClass: 'tentativeplan'
295
306
  }],
296
307
  phaseRings: [],
297
308
  curFaultList: [],
@@ -620,6 +631,11 @@ export default {
620
631
  this.isClosePhase = true
621
632
  this.phaseRings = ringDataModel.initRingPhaseData()
622
633
  this.specialPage = 'tentativeplan'
634
+ } else if (id === 24) {
635
+ this.toPage = 3
636
+ this.isClosePhase = true
637
+ this.phaseRings = ringDataModel.initRingPhaseData()
638
+ this.specialPage = 'prioritycontrol'
623
639
  } else {
624
640
  this.isClosePhase = false
625
641
  this.specialPage = ''
@@ -22,12 +22,12 @@
22
22
  <el-form-item
23
23
  :label="$t('openatccomponents.overview.delay') + ':'"
24
24
  prop="intersection">
25
- <el-input v-model="manualInfo.tempDelay" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input>
25
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDelay" size="mini"></el-input-number>
26
26
  </el-form-item>
27
27
  <el-form-item
28
28
  :label="$t('openatccomponents.overview.duration') + ':'"
29
29
  prop="count">
30
- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input>
30
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="mini"></el-input-number>
31
31
  </el-form-item>
32
32
  </el-form>
33
33
  </el-col>
@@ -0,0 +1,190 @@
1
+ <template>
2
+ <div class="priority-control">
3
+ <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.prioritycontrol')}}</div>
4
+ <el-row>
5
+ <el-col :span="12">
6
+ <el-form
7
+ ref="manual"
8
+ label-position="left"
9
+ :model="manualInfo"
10
+ label-width="100px">
11
+ <el-form-item
12
+ :label="$t('openatccomponents.overview.delay') + ':'"
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> -->
16
+ </el-form-item>
17
+ <el-form-item
18
+ :label="$t('openatccomponents.overview.priorityType') + ':'"
19
+ prop="count">
20
+ <el-select v-model="manualInfo.type" class="col-inner" size="small" clearable :placeholder="$t('openatccomponents.common.select')">
21
+ <el-option
22
+ v-for="item in typeSelect"
23
+ :key="item.value"
24
+ :label="item.label"
25
+ :value="item.value">
26
+ </el-option>
27
+ </el-select>
28
+ <!-- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
29
+ </el-form-item>
30
+ </el-form>
31
+ </el-col>
32
+ <el-col :span="12">
33
+ <el-form
34
+ ref="manual"
35
+ label-position="left"
36
+ :model="manualInfo"
37
+ label-width="100px">
38
+ <el-form-item
39
+ :label="$t('openatccomponents.overview.duration') + ':'"
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> -->
43
+ </el-form-item>
44
+ <el-form-item
45
+ :label="$t('openatccomponents.overview.priorityPhase') + ':'"
46
+ prop="count">
47
+ <el-select v-model="manualInfo.phase" class="col-inner" size="small" clearable :placeholder="$t('openatccomponents.common.select')">
48
+ <el-option
49
+ v-for="(item, index) in phaseSelect"
50
+ :key="index"
51
+ :label="item.label"
52
+ :value="item.value">
53
+ <div class="single-model">
54
+ <xdrdirselector Width="40px" Height="40px" :showlist="item.item"></xdrdirselector>
55
+ <span style="float: right; color: #8492a6; font-size: 13px">{{ item.label }}</span>
56
+ </div>
57
+ </el-option>
58
+ </el-select>
59
+ <!-- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
60
+ </el-form-item>
61
+ </el-form>
62
+ </el-col>
63
+ </el-row>
64
+ <el-row>
65
+ <el-col :span="12">
66
+ <el-form
67
+ ref="manual"
68
+ label-position="left"
69
+ :model="manualInfo"
70
+ label-width="100px">
71
+ <el-form-item
72
+ :label="$t('openatccomponents.overview.level') + ':'"
73
+ prop="count">
74
+ <el-select v-model="manualInfo.level" class="col-inner" size="small" clearable :placeholder="$t('openatccomponents.common.select')">
75
+ <el-option
76
+ v-for="item in levelOption"
77
+ :key="item.value"
78
+ :label="$t('openatccomponents.overview.levelOption' + item.value)"
79
+ :value="item.value">
80
+ </el-option>
81
+ </el-select>
82
+ <!-- <el-input v-model="manualInfo.tempDuration" size="mini" :placeholder="$t('openatccomponents.common.input')"></el-input> -->
83
+ </el-form-item>
84
+ </el-form>
85
+ </el-col>
86
+ </el-row>
87
+ <div class="footer">
88
+ <el-button @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
89
+ <el-button type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.implement')}}</el-button>
90
+ </div>
91
+ </div>
92
+ </template>
93
+
94
+ <script>
95
+ import xdrdirselector from '../../XRDDirSelector/XRDDirSelector'
96
+ import { getTheme } from '../../../../utils/auth'
97
+ import { getDirName } from './utils'
98
+ export default {
99
+ name: 'prioritycontrol',
100
+ components: {
101
+ xdrdirselector
102
+ },
103
+ props: {
104
+ phaseList: {
105
+ type: Array
106
+ }
107
+ },
108
+ data () {
109
+ return {
110
+ levelOption: [{
111
+ value: 1,
112
+ label: 1
113
+ }, {
114
+ value: 2,
115
+ label: 2
116
+ }, {
117
+ value: 3,
118
+ label: 3
119
+ }, {
120
+ value: 4,
121
+ label: 4
122
+ }, {
123
+ value: 5,
124
+ label: 5
125
+ }],
126
+ typeSelect: [{
127
+ value: 0,
128
+ label: this.$t('openatccomponents.overview.typeOption0')
129
+ }, {
130
+ value: 1,
131
+ label: this.$t('openatccomponents.overview.typeOption1')
132
+ }],
133
+ phaseSelect: [],
134
+ manualInfo: {
135
+ level: 1,
136
+ phase: 1,
137
+ type: 0,
138
+ duration: 300,
139
+ delay: 0
140
+ }
141
+ }
142
+ },
143
+ created () {
144
+ this.getSelect(this.phaseList)
145
+ },
146
+ methods: {
147
+ getSelect (list) {
148
+ let color = getTheme() === 'light' ? '#1E1E1E' : '#F1F3F4'
149
+ this.phaseSelect = list.map((item, index) => {
150
+ let dirArr = []
151
+ for (let rec of item.direction) {
152
+ let recd = {
153
+ id: rec,
154
+ color: color
155
+ }
156
+ dirArr.push(recd)
157
+ }
158
+ let nameArr = getDirName(dirArr)
159
+ let name = ''
160
+ nameArr = nameArr.map(record => this.$t(record))
161
+ name = nameArr.join(',')
162
+ return {
163
+ label: name,
164
+ item: dirArr,
165
+ value: item.id
166
+ }
167
+ })
168
+ },
169
+ handleClose () {
170
+ this.$emit('closePhaseBack')
171
+ },
172
+ handleManualControl () {
173
+ let submitdata = {
174
+ control: 24,
175
+ delay: this.manualInfo.delay,
176
+ duration: this.manualInfo.duration,
177
+ type: this.manualInfo.type,
178
+ phase: this.manualInfo.phase,
179
+ level: this.manualInfo.level
180
+ }
181
+ console.log(submitdata, 'submitdata')
182
+ this.$emit('closePhaseControl', submitdata)
183
+ }
184
+ }
185
+ }
186
+ </script>
187
+
188
+ <style>
189
+
190
+ </style>
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Copyright (c) 2020 kedacom
3
+ * OpenATC is licensed under Mulan PSL v2.
4
+ * You can use this software according to the terms and conditions of the Mulan PSL v2.
5
+ * You may obtain a copy of Mulan PSL v2 at:
6
+ * http://license.coscl.org.cn/MulanPSL2
7
+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
8
+ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
9
+ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10
+ * See the Mulan PSL v2 for more details.
11
+ **/
12
+ import Edgebase from '@openatc/edgebase-front'
13
+ let images = [{
14
+ id: 1,
15
+ // name: 'East-Straight',
16
+ name: 'openatccomponents.overview.es',
17
+ // img: require('./images/East-Straight.svg'),
18
+ class: 'iconfont icon-icon-test2'
19
+ },
20
+ {
21
+ id: 2,
22
+ // name: 'East-Left',
23
+ name: 'openatccomponents.overview.el',
24
+ // img: require('./images/East-Left.svg'),
25
+ class: 'iconfont icon-icon-test4'
26
+ },
27
+ {
28
+ id: 3,
29
+ // name: 'East-Right',
30
+ name: 'openatccomponents.overview.er',
31
+ // img: require('./images/East-Right.svg'),
32
+ class: 'iconfont icon-icon-test3'
33
+ },
34
+ {
35
+ id: 4,
36
+ // name: 'East-Back',
37
+ name: 'openatccomponents.overview.eb',
38
+ // img: require('./images/East-Back.svg'),
39
+ class: 'iconfont icon-icon-test6'
40
+ },
41
+ {
42
+ id: 5,
43
+ // name: 'West-Straight',
44
+ name: 'openatccomponents.overview.ws',
45
+ // img: require('./images/West-Straight.svg'),
46
+ class: 'iconfont icon-icon-test5'
47
+ },
48
+ {
49
+ id: 6,
50
+ // name: 'West-Left',
51
+ name: 'openatccomponents.overview.wl',
52
+ // img: require('./images/West-Left.svg'),
53
+ class: 'iconfont icon-icon-test7'
54
+ },
55
+ {
56
+ id: 7,
57
+ // name: 'West-Right',
58
+ name: 'openatccomponents.overview.wr',
59
+ // img: require('./images/West-Right.svg'),
60
+ class: 'iconfont icon-icon-test9'
61
+ },
62
+ {
63
+ id: 8,
64
+ // name: 'West-Back',
65
+ name: 'openatccomponents.overview.wb',
66
+ // img: require('./images/West-Back.svg'),
67
+ class: 'iconfont icon-icon-test8'
68
+ },
69
+ {
70
+ id: 9,
71
+ // name: 'North-Straight',
72
+ name: 'openatccomponents.overview.ns',
73
+ // img: require('./images/North-Straight.svg'),
74
+ class: 'iconfont icon-icon-test10'
75
+ },
76
+ {
77
+ id: 10,
78
+ // name: 'North-Left',
79
+ name: 'openatccomponents.overview.nl',
80
+ // img: require('./images/North-Left.svg'),
81
+ class: 'iconfont icon-icon-test12'
82
+ },
83
+ {
84
+ id: 11,
85
+ // name: 'North-Right',
86
+ name: 'openatccomponents.overview.nr',
87
+ // img: require('./images/North-Right.svg'),
88
+ class: 'iconfont icon-icon-test13'
89
+ },
90
+ {
91
+ id: 12,
92
+ // name: 'North-Back',
93
+ name: 'openatccomponents.overview.nb',
94
+ // img: require('./images/North-Back.svg'),
95
+ class: 'iconfont icon-icon-test11'
96
+ },
97
+ {
98
+ id: 13,
99
+ // name: 'South-Straight',
100
+ name: 'openatccomponents.overview.ss',
101
+ // img: require('./images/South-Straight.svg'),
102
+ class: 'iconfont icon-icon-test15'
103
+ },
104
+ {
105
+ id: 14,
106
+ // name: 'South-Left',
107
+ name: 'openatccomponents.overview.sl',
108
+ // img: require('./images/South-Left.svg'),
109
+ class: 'iconfont icon-icon-test14'
110
+ },
111
+ {
112
+ id: 15,
113
+ // name: 'South-Right',
114
+ name: 'openatccomponents.overview.sr',
115
+ // img: require('./images/South-Right.svg'),
116
+ class: 'iconfont icon-icon-test'
117
+ },
118
+ {
119
+ id: 16,
120
+ // name: 'South-Back',
121
+ name: 'openatccomponents.overview.sb',
122
+ // img: require('./images/South-Back.svg'),
123
+ class: 'iconfont icon-icon-test1'
124
+ }]
125
+
126
+ const getImages = () => {
127
+ if (Edgebase.Store.getters.roadDirection === 'left') {
128
+ // 左行下,掉头图标替换
129
+ images.forEach((img) => {
130
+ if (img.id === 4) {
131
+ img.class = 'iconfont icon-dongtiaotou-yinni'
132
+ }
133
+ if (img.id === 8) {
134
+ img.class = 'iconfont icon-xitiaotou-yinni'
135
+ }
136
+ if (img.id === 12) {
137
+ img.class = 'iconfont icon-beitiaotou-yinni'
138
+ }
139
+ if (img.id === 16) {
140
+ img.class = 'iconfont icon-nantiaotou-yinni'
141
+ }
142
+ })
143
+ }
144
+ return images
145
+ }
146
+
147
+ const getDirName = (arr) => {
148
+ let res = ''
149
+ let nameArr = []
150
+ for (let item of arr) {
151
+ let id = item.id
152
+ for (let img of images) {
153
+ if (id === img.id) {
154
+ let name = img.name
155
+ nameArr.push(name)
156
+ }
157
+ }
158
+ }
159
+ res = nameArr
160
+ return res
161
+ }
162
+
163
+ export {getImages, getDirName}
@@ -4,6 +4,8 @@ import IntersectionWithInterface from './components/IntersectionWithInterface/in
4
4
  import IntersectionMap from './components/IntersectionMap/index'
5
5
  import SchemeConfig from './components/SchemeConfig/index'
6
6
  import lockingPhaselControlModal from './components/SchemeConfig/lockingPhaselControlModal/index'
7
+ import Channelization from './components/Channelization/index'
8
+ import DrawChannelization from './components/DrawChannelization/index'
7
9
  import FaultDetailModal from './components/FaultDetailModal/index'
8
10
  import CommonKanban from './components/CommonKanban/index'
9
11
  import patternList from './components/patternList/index'
@@ -19,7 +21,9 @@ import StageBord from './components/StageBord/index'
19
21
  import ExpendConfig from './components/ExpendConfig/index'
20
22
  import PatternWalkSvg from './components/PatternWalkSvg/index'
21
23
  import tentativeplancontrolmodal from './components/SchemeConfig/tentativeplancontrolmodal/index'
24
+ import priorityControl from './components/SchemeConfig/priorityControl/index'
22
25
  import { setToken, setHost } from '../utils/auth.js'
26
+ import componentsGlobalParam from '../store/modules/globalParam'
23
27
 
24
28
  import en from '../i18n/language/en'
25
29
  import zh from '../i18n/language/zh'
@@ -32,6 +36,8 @@ const components = {
32
36
  IntersectionMap,
33
37
  SchemeConfig,
34
38
  lockingPhaselControlModal,
39
+ Channelization,
40
+ DrawChannelization,
35
41
  FaultDetailModal,
36
42
  PatternStatus,
37
43
  BoardCard,
@@ -46,6 +52,7 @@ const components = {
46
52
  StageBord,
47
53
  ExpendConfig,
48
54
  PatternWalkSvg,
55
+ priorityControl,
49
56
  tentativeplancontrolmodal
50
57
  }
51
58
 
@@ -59,6 +66,10 @@ const func = {
59
66
  setToken
60
67
  }
61
68
 
69
+ const Store = {
70
+ componentsGlobalParam
71
+ }
72
+
62
73
  const requireAll = requireContext => requireContext.keys().map(requireContext)
63
74
  const install = function (Vue) {
64
75
  if (install.installed) return
@@ -86,7 +97,8 @@ const API = {
86
97
  install,
87
98
  ...components,
88
99
  language,
89
- func
100
+ func,
101
+ Store
90
102
  }
91
103
 
92
104
  export default API