openatc-components 0.4.60 → 0.4.61

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 (450) hide show
  1. package/.babelrc +18 -18
  2. package/.editorconfig +9 -9
  3. package/.eslintignore +5 -5
  4. package/.eslintrc.js +31 -31
  5. package/.postcssrc.js +10 -10
  6. package/README.md +30 -30
  7. package/build/build.js +41 -41
  8. package/build/check-versions.js +54 -54
  9. package/build/package.config.js +58 -58
  10. package/build/package.dev.config.js +107 -107
  11. package/build/package.prod.config.js +160 -160
  12. package/build/utils.js +101 -101
  13. package/build/vue-loader.conf.js +22 -22
  14. package/build/webpack.base.conf.js +120 -120
  15. package/build/webpack.dev.conf.js +95 -95
  16. package/build/webpack.prod.conf.js +149 -149
  17. package/config/dev.env.js +8 -8
  18. package/config/index.js +94 -94
  19. package/config/prod.env.js +5 -5
  20. package/config/test.env.js +7 -7
  21. package/index.html +12 -12
  22. package/package/kisscomps/components/BoardCard/BoardCard.vue +133 -133
  23. package/package/kisscomps/components/ChannelRealtimeIntersection/ChannelRealtimeIntersection.vue +123 -123
  24. package/package/kisscomps/components/Channelization/Channelization.vue +585 -585
  25. package/package/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  26. package/package/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  27. package/package/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  28. package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +456 -456
  29. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  30. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  31. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  32. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  33. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  34. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  35. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  36. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  37. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  38. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  39. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  40. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  41. package/package/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  42. package/package/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  43. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  44. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  45. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  46. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  47. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  48. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  49. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  50. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  51. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  52. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  53. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  54. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  55. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  56. package/package/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +1022 -1022
  57. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  58. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  59. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  60. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +172 -172
  61. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  62. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  63. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  64. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  65. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  66. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  67. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  68. package/package/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +162 -162
  69. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  70. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  71. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  72. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  73. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  74. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  75. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  76. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  77. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1302 -1302
  78. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  79. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  90. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  91. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  92. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  93. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  94. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +1598 -1554
  95. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +197 -197
  96. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +196 -196
  97. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  98. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  99. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  100. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/effectPos.json +115 -115
  101. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +115 -115
  102. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  103. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  104. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +219 -219
  105. package/package/kisscomps/components/IntersectionMap/crossDirection/utils.js +91 -91
  106. package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +220 -220
  107. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  108. package/package/kisscomps/components/KanBan/kanban.vue +231 -231
  109. package/package/kisscomps/components/MessageBox/index.vue +96 -96
  110. package/package/kisscomps/components/OverLap/OverLap.vue +237 -237
  111. package/package/kisscomps/components/OverviewComponent/index.vue +853 -853
  112. package/package/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  113. package/package/kisscomps/components/PatternStatus/PatternStatus.vue +1843 -1843
  114. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  115. package/package/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  116. package/package/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  117. package/package/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  118. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  119. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  120. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  121. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  122. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  123. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  124. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  125. package/package/kisscomps/components/PhasePedSelect/index.vue +206 -206
  126. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +1027 -1027
  127. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  128. package/package/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  129. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  130. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  131. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  132. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  133. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +470 -470
  134. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +871 -871
  135. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  136. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  137. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  138. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  139. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1293 -1293
  140. package/package/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  141. package/package/kisscomps/components/SelectCrossPhase/index.vue +418 -418
  142. package/package/kisscomps/components/SelectCrossPhase/utils.js +142 -142
  143. package/package/kisscomps/components/StageBord/StageBord.vue +303 -303
  144. package/package/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  145. package/package/kisscomps/components/StageOptimize/index.js +2 -2
  146. package/package/kisscomps/components/StageOptimize/index.vue +310 -0
  147. package/package/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  148. package/package/kisscomps/components/Stages/index.vue +307 -307
  149. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  150. package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +1041 -1041
  151. package/package/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  152. package/package/kisscomps/components/XiaoKanban/index.vue +122 -122
  153. package/package/kisscomps/components/overView/index.vue +676 -676
  154. package/package/kisscomps/components/patternConfig/index.vue +802 -802
  155. package/package/kisscomps/components/patternConfig/pattern/patternTable.vue +599 -599
  156. package/package/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  157. package/package/kisscomps/components/patternConfig/planContent.vue +604 -604
  158. package/package/kisscomps/components/patternConfig/planMenu.vue +329 -329
  159. package/package/kisscomps/components/patternConfig/utils.js +152 -152
  160. package/package/kisscomps/components/patternList/patternList.vue +606 -606
  161. package/package/kisscomps/index.js +131 -131
  162. package/package/kissui.min.js +1 -1
  163. package/package/static/img/CrossRoadsSvg.66a6236.svg +529 -0
  164. package/package.json +126 -126
  165. package/src/App.vue +24 -24
  166. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  167. package/src/EdgeMgr/controller/crossDiagramMgr.js +125 -125
  168. package/src/api/authapi.js +31 -31
  169. package/src/api/config.js +21 -21
  170. package/src/api/control.js +110 -110
  171. package/src/api/cross.js +62 -56
  172. package/src/api/device.js +135 -135
  173. package/src/api/fault.js +66 -66
  174. package/src/api/index.js +24 -24
  175. package/src/api/login.js +46 -46
  176. package/src/api/optimize.js +72 -72
  177. package/src/api/param.js +165 -165
  178. package/src/api/passwdAssest.js +101 -101
  179. package/src/api/permission.js +33 -33
  180. package/src/api/route.js +171 -171
  181. package/src/api/template.js +27 -27
  182. package/src/assets/font/LICENSE.txt +202 -202
  183. package/src/assets/font/font.css +6 -6
  184. package/src/i18n/index.js +26 -26
  185. package/src/i18n/language/en.js +1474 -1474
  186. package/src/i18n/language/index.js +25 -25
  187. package/src/i18n/language/zh.js +1474 -1474
  188. package/src/icons/demo_index.html +8445 -8445
  189. package/src/icons/iconfont.css +1451 -1451
  190. package/src/icons/iconfont.json +2522 -2522
  191. package/src/icons/index.js +20 -20
  192. package/src/icons/svg/azimuthlocking.svg +26 -26
  193. package/src/icons/svg/bendi.svg +110 -110
  194. package/src/icons/svg/bujin.svg +36 -36
  195. package/src/icons/svg/connectBlue.svg +7 -7
  196. package/src/icons/svg/currentvolume.svg +0 -0
  197. package/src/icons/svg/custom-BRTlane.svg +40 -40
  198. package/src/icons/svg/custom-buslane.svg +40 -40
  199. package/src/icons/svg/custom-detector.svg +12 -12
  200. package/src/icons/svg/custom-east-bottom.svg +32 -32
  201. package/src/icons/svg/custom-east-top.svg +32 -32
  202. package/src/icons/svg/custom-ewped.svg +35 -35
  203. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -40
  204. package/src/icons/svg/custom-north-left.svg +32 -32
  205. package/src/icons/svg/custom-north-right.svg +32 -32
  206. package/src/icons/svg/custom-peddetector.svg +17 -17
  207. package/src/icons/svg/custom-snped.svg +35 -35
  208. package/src/icons/svg/custom-south-left.svg +32 -32
  209. package/src/icons/svg/custom-south-right.svg +32 -32
  210. package/src/icons/svg/custom-tramlane.svg +40 -40
  211. package/src/icons/svg/custom-vehiclebranch.svg +40 -40
  212. package/src/icons/svg/custom-vehiclemainroad.svg +41 -41
  213. package/src/icons/svg/custom-west-bottom.svg +32 -32
  214. package/src/icons/svg/custom-west-top.svg +32 -32
  215. package/src/icons/svg/custom-xlped.svg +14 -14
  216. package/src/icons/svg/custom-xrped.svg +14 -14
  217. package/src/icons/svg/cutRed.svg +7 -7
  218. package/src/icons/svg/cycle.svg +0 -0
  219. package/src/icons/svg/dingzhouqi.svg +34 -34
  220. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  221. package/src/icons/svg/guandeng.svg +81 -81
  222. package/src/icons/svg/huangshan.svg +71 -71
  223. package/src/icons/svg/maincontrol.svg +0 -0
  224. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  225. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  226. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  227. package/src/icons/svg/model.svg +0 -0
  228. package/src/icons/svg/phasediff.svg +0 -0
  229. package/src/icons/svg/prioritycontrol.svg +21 -21
  230. package/src/icons/svg/quanhong.svg +86 -86
  231. package/src/icons/svg/shanghe.svg +11 -11
  232. package/src/icons/svg/shoudong.svg +103 -103
  233. package/src/icons/svg/tentativeplan.svg +28 -28
  234. package/src/icons/svg/time.svg +0 -0
  235. package/src/icons/svg/wuxianlan.svg +46 -46
  236. package/src/icons/svg/xiala.svg +11 -11
  237. package/src/icons/svg/xingrenguojie.svg +33 -33
  238. package/src/icons/svg/xitong.svg +89 -89
  239. package/src/icons/svg/youxian.svg +41 -41
  240. package/src/icons/svg/zizhukongzhi.svg +43 -43
  241. package/src/kisscomps/components/BoardCard/BoardCard.vue +133 -133
  242. package/src/kisscomps/components/ChannelRealtimeIntersection/ChannelRealtimeIntersection.vue +123 -123
  243. package/src/kisscomps/components/Channelization/Channelization.vue +585 -585
  244. package/src/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  245. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  246. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  247. package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +456 -456
  248. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  249. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  250. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  251. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  252. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  253. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  254. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  255. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  256. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  257. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  258. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  259. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  260. package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  261. package/src/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  262. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  263. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  264. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  265. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  266. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  267. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  268. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  269. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  270. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  271. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  272. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  273. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  274. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  275. package/src/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +1022 -1022
  276. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  277. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  278. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  279. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +172 -172
  280. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  281. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  282. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  283. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  284. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  285. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  286. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  287. package/src/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +162 -162
  288. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  289. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  290. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  291. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  292. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  293. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  294. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  295. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  296. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1302 -1302
  297. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  298. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  299. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  300. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  301. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  302. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  303. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  304. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  305. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  306. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  307. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  308. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  309. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  310. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  311. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  312. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  313. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +1598 -1554
  314. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +197 -197
  315. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +196 -196
  316. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  317. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  318. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  319. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/effectPos.json +115 -115
  320. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +115 -115
  321. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  322. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  323. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +219 -219
  324. package/src/kisscomps/components/IntersectionMap/crossDirection/utils.js +91 -91
  325. package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +220 -220
  326. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  327. package/src/kisscomps/components/KanBan/kanban.vue +231 -231
  328. package/src/kisscomps/components/MessageBox/index.vue +96 -96
  329. package/src/kisscomps/components/OverLap/OverLap.vue +237 -237
  330. package/src/kisscomps/components/OverviewComponent/index.vue +853 -853
  331. package/src/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  332. package/src/kisscomps/components/PatternStatus/PatternStatus.vue +1843 -1843
  333. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  334. package/src/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  335. package/src/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  336. package/src/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  337. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  338. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  339. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  340. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  341. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  342. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  343. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  344. package/src/kisscomps/components/PhasePedSelect/index.vue +206 -206
  345. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +1027 -1027
  346. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  347. package/src/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  348. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  349. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  350. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  351. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  352. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +470 -470
  353. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +871 -871
  354. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  355. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  356. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  357. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  358. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1293 -1293
  359. package/src/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  360. package/src/kisscomps/components/SelectCrossPhase/index.vue +418 -418
  361. package/src/kisscomps/components/SelectCrossPhase/utils.js +142 -142
  362. package/src/kisscomps/components/StageBord/StageBord.vue +303 -303
  363. package/src/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  364. package/src/kisscomps/components/StageOptimize/index.js +2 -2
  365. package/src/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  366. package/src/kisscomps/components/Stages/index.vue +307 -307
  367. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  368. package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +1041 -1041
  369. package/src/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  370. package/src/kisscomps/components/XiaoKanban/index.vue +122 -122
  371. package/src/kisscomps/components/overView/index.vue +676 -676
  372. package/src/kisscomps/components/patternConfig/index.vue +802 -802
  373. package/src/kisscomps/components/patternConfig/pattern/patternTable.vue +599 -599
  374. package/src/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  375. package/src/kisscomps/components/patternConfig/planContent.vue +604 -604
  376. package/src/kisscomps/components/patternConfig/planMenu.vue +329 -329
  377. package/src/kisscomps/components/patternConfig/utils.js +152 -152
  378. package/src/kisscomps/components/patternList/patternList.vue +606 -606
  379. package/src/kisscomps/index.js +131 -131
  380. package/src/lib/publicjs/ArryListUtil.js +38 -38
  381. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  382. package/src/lib/publicjs/KissApi.js +158 -158
  383. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  384. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  385. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  386. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  387. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  388. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  389. package/src/lib/publicjs/basecomponents.js +65 -65
  390. package/src/lib/publicjs/localStorage.js +112 -112
  391. package/src/lib/publicjs/objdeepcopy.js +32 -32
  392. package/src/lib/publicjs/pageScroll.js +30 -30
  393. package/src/lib/publicjs/passwdAssest.js +101 -101
  394. package/src/lib/publicjs/styleclassfactory.js +32 -32
  395. package/src/main.js +51 -51
  396. package/src/router/index.js +63 -63
  397. package/src/store/index.js +26 -26
  398. package/src/store/modules/globalParam.js +67 -67
  399. package/src/utils/ControlFormat.js +68 -68
  400. package/src/utils/RingDataModel.js +335 -335
  401. package/src/utils/auth.js +199 -199
  402. package/src/utils/conflct.js +268 -268
  403. package/src/utils/conflictList.js +87 -87
  404. package/src/utils/dateFormat.js +41 -41
  405. package/src/utils/errorcode.js +231 -231
  406. package/src/utils/fault.js +196 -196
  407. package/src/utils/faultcode.js +225 -225
  408. package/src/utils/index.js +69 -69
  409. package/src/utils/pedphasedesc.js +119 -119
  410. package/src/utils/phaseList.js +203 -203
  411. package/src/utils/phasedesc.js +144 -144
  412. package/src/utils/responseMessage.js +21 -21
  413. package/src/utils/validate.js +43 -43
  414. package/src/views/customchannelization.vue +49 -49
  415. package/src/views/home.1.vue +479 -479
  416. package/src/views/home.vue +93 -93
  417. package/src/views/intersection.vue +527 -527
  418. package/src/views/intersection2.vue +328 -328
  419. package/src/views/overView.vue +63 -63
  420. package/src/views/patternConfig.vue +14792 -14792
  421. package/src/views/schemeconfig.vue +205 -205
  422. package/static/apiconfig.json +471 -466
  423. package/static/img/CrossRoadsSvg.svg +529 -0
  424. package/static/styles/channelizatioon.scss +433 -433
  425. package/static/styles/common.scss +30 -30
  426. package/static/styles/commonkanban.scss +168 -168
  427. package/static/styles/dark/index.scss +2 -2
  428. package/static/styles/dark/theme/element-dark.scss +44 -44
  429. package/static/styles/index.scss +84 -84
  430. package/static/styles/intersection.scss +180 -180
  431. package/static/styles/light/index.scss +2 -2
  432. package/static/styles/light/theme/element-light.scss +44 -44
  433. package/static/styles/overview.scss +146 -146
  434. package/static/styles/patternConfig.scss +56 -56
  435. package/static/styles/phasePedSelect.scss +71 -71
  436. package/static/styles/schemeconfig.scss +558 -558
  437. package/static/styles/stages.scss +57 -57
  438. package/static/styles/uiComponents.scss +57 -57
  439. package/static/styles/xiaokanban.scss +61 -61
  440. package/static/token.json +2 -2
  441. package/test/e2e/custom-assertions/elementCount.js +27 -27
  442. package/test/e2e/nightwatch.conf.js +46 -46
  443. package/test/e2e/runner.js +48 -48
  444. package/test/e2e/specs/test.js +19 -19
  445. package/test/unit/.eslintrc +7 -7
  446. package/test/unit/jest.conf.js +30 -30
  447. package/test/unit/setup.js +3 -3
  448. package/test/unit/specs/HelloWorld.spec.js +11 -11
  449. package/package/kissui.js +0 -216608
  450. package/pnpm-lock.yaml +0 -16362
@@ -1,335 +1,335 @@
1
- /**
2
- * Copyright (c) 2020 kedacom
3
- * OpenATC is licensed under Mulan PSL v2.
4
- * You can use i18n 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 i18n from '../i18n/index.js'
13
- import PhaseDataModel from '../kisscomps/components/IntersectionMap/crossDirection/utils.js'
14
- import CrossDiagramMgr from '../EdgeMgr/controller/crossDiagramMgr.js'
15
- export default class RingDataModel {
16
- constructor (crossStatusData = {}, phaseList, busPhaseData = []) {
17
- this.crossStatusData = crossStatusData
18
- this.phaseList = phaseList
19
- this.busPhaseData = busPhaseData
20
- this.PhaseDataModel = new PhaseDataModel()
21
- this.CrossDiagramMgr = new CrossDiagramMgr()
22
- }
23
-
24
- initRingPhaseData () {
25
- // 环信息从单独上载相位信息里获取,以免相位锁定后,方案状态数据里没有rings,导致相位锁定控制列表无法显示
26
- let phaseRings = []
27
- let map = {}
28
- let dest = []
29
- for (let i = 0; i < this.phaseList.length; i++) {
30
- let ai = this.phaseList[i]
31
- if (!map[ai.ring]) {
32
- let addphse = this.addPhaseInfo(ai)
33
- dest.push({
34
- num: ai.ring,
35
- phases: [{...ai, ...addphse}]
36
- })
37
- map[ai.ring] = ai
38
- } else {
39
- for (var j = 0; j < dest.length; j++) {
40
- var dj = dest[j]
41
- if (dj.num === ai.ring) {
42
- let addphse = this.addPhaseInfo(ai)
43
- dj.phases.push({...ai, ...addphse})
44
- break
45
- }
46
- }
47
- }
48
- }
49
- phaseRings = JSON.parse(JSON.stringify(dest))
50
- return phaseRings
51
- }
52
-
53
- addPhaseInfo (phase) {
54
- let addphse = {}
55
- addphse.name = i18n.t('openatccomponents.overview.phase') + phase.id
56
- addphse.desc = this.getPhaseDescription(phase)
57
- // 相位锁定选项默认都按照解锁状态显示
58
- addphse.locktype = 0
59
- addphse.close = 0
60
- if (this.crossStatusData !== null && this.crossStatusData.phase) {
61
- // 如果方案状态相位有close字段,这边就需要对应close状态进相位关断控制的选项里
62
- let phaseStatus = this.crossStatusData.phase.filter(ele => ele.id === phase.id)[0]
63
- addphse = {...addphse, ...phaseStatus}
64
- }
65
- return addphse
66
- }
67
-
68
- getPhaseDescription (phaseList) {
69
- let list = []
70
- let peddirections = []
71
- let sidewalkPhaseData = this.getPedPhasePos()
72
- for (let walk of sidewalkPhaseData) {
73
- if (phaseList.peddirection) {
74
- for (let ped of phaseList.peddirection) {
75
- // if (stg === walk.phaseid) {
76
- let obj = {}
77
- obj.name = walk.name
78
- obj.id = walk.id
79
- if (ped === walk.id) {
80
- peddirections.push(obj)
81
- peddirections = Array.from(new Set(peddirections))
82
- }
83
- // }
84
- }
85
- } else {
86
- peddirections = []
87
- }
88
- }
89
- for (let id of phaseList.direction) {
90
- let obj = {}
91
- obj.id = id
92
- obj.peddirection = peddirections
93
- obj.color = '#454545'
94
- list.push(obj)
95
- }
96
- return list
97
- }
98
-
99
- getPedPhasePos () {
100
- // 行人相位信息
101
- this.sidewalkPhaseData = []
102
- this.phaseList.forEach((ele, i) => {
103
- if (ele.peddirection) {
104
- ele.peddirection.forEach((dir, index) => {
105
- // 行人相位
106
- if (this.PhaseDataModel.getSidePos(dir)) {
107
- this.sidewalkPhaseData.push({
108
- key: this.CrossDiagramMgr.getUniqueKey('pedphase'),
109
- phaseid: ele.id, // 相位id,用于对应相位状态
110
- id: dir,
111
- name: this.PhaseDataModel.getSidePos(dir).name
112
- })
113
- }
114
- })
115
- }
116
- })
117
- return this.sidewalkPhaseData
118
- }
119
-
120
- getBusPos () {
121
- // 公交相位信息
122
- this.busPhaseData = []
123
- this.phaseList.forEach((ele, i) => {
124
- if (ele.controltype) {
125
- ele.direction.forEach((dir, index) => {
126
- // 车道相位
127
- this.busPhaseData.push({
128
- // key: this.CrossDiagramMgr.getUniqueKey('busphase'),
129
- phaseid: ele.id, // 相位id,用于对应相位状态
130
- id: dir, // 接口返回的dir字段,对应前端定义的相位方向id,唯一标识
131
- name: this.PhaseDataModel.getBusPhasePos(dir).name,
132
- controltype: ele.controltype
133
- })
134
- })
135
- }
136
- })
137
- let result = []
138
- let obj = {}
139
- for (var i = 0; i < this.busPhaseData.length; i++) {
140
- if (!obj[this.busPhaseData[i].phaseid]) {
141
- result.push(this.busPhaseData[i])
142
- obj[this.busPhaseData[i].phaseid] = true
143
- }
144
- }
145
- this.busPhaseData = result
146
- return this.busPhaseData
147
- }
148
- getlockData () {
149
- let stagesTemp = []
150
- let directionList = []
151
- let sidewalkPhaseData = this.getPedPhasePos()
152
- for (let phase of this.phaseList) {
153
- let tempList = []
154
- directionList = phase.direction
155
- let peddirections = []
156
- if (directionList) {
157
- for (let walk of sidewalkPhaseData) {
158
- for (let ped of phase.peddirection) {
159
- // if (stg === walk.phaseid) {
160
- let obj = {}
161
- obj.name = walk.name
162
- obj.id = walk.id
163
- if (ped === walk.id) {
164
- peddirections.push(obj)
165
- peddirections = Array.from(new Set(peddirections))
166
- }
167
- // }
168
- }
169
- }
170
- } else {
171
- peddirections = []
172
- }
173
- tempList = directionList.map(dir => ({
174
- id: dir,
175
- color: '#606266',
176
- controltype: phase.controltype,
177
- peddirection: peddirections,
178
- sidewalkPhaseData: sidewalkPhaseData
179
- }))
180
- stagesTemp.push(tempList)
181
- }
182
- return stagesTemp
183
- }
184
- getStageData (datatype) {
185
- let data = this.crossStatusData
186
- let stagesTemp = []
187
- let busPhaseData = this.getBusPos()
188
- let sidewalkPhaseData = this.getPedPhasePos()
189
- let stages
190
- // 按阶段数据处理
191
- stages = data.stages
192
- for (let stage of stages) {
193
- let tempList = []
194
- let directionList = []
195
- let currPhaseid = ''
196
- let stageControType = 0
197
- let peddirections = []
198
- let phasetype
199
- for (let stg of stage) {
200
- let phaseMode = data.phase.filter(item => item.id === stg)
201
- phasetype = phaseMode[0].type
202
- let currPhase = this.phaseList.filter((item) => {
203
- return item.id === stg
204
- })[0]
205
- if (!currPhase) continue
206
- if (currPhase !== undefined && phaseMode[0].mode !== 1) {
207
- directionList = [...currPhase.direction, ...directionList]
208
- }
209
- if (currPhase.peddirection) {
210
- for (let walk of sidewalkPhaseData) {
211
- for (let ped of currPhase.peddirection) {
212
- // if (stg === walk.phaseid) {
213
- let obj = {}
214
- obj.name = walk.name
215
- obj.id = walk.id
216
- if (ped === walk.id) {
217
- peddirections.push(obj)
218
- peddirections = Array.from(new Set(peddirections))
219
- }
220
- // }
221
- }
222
- }
223
- } else {
224
- peddirections = []
225
- }
226
- for (let busPhase of busPhaseData) {
227
- if (stg === busPhase.phaseid) {
228
- stageControType = busPhase.controltype
229
- }
230
- }
231
- }
232
- directionList = [...new Set(directionList)]
233
- tempList = directionList.map(dir => {
234
- let temp = {
235
- id: dir,
236
- phaseid: currPhaseid,
237
- color: '#606266',
238
- controltype: stageControType,
239
- peddirection: peddirections,
240
- sidewalkPhaseData: sidewalkPhaseData,
241
- type: phasetype
242
- }
243
- return temp
244
- })
245
- if (directionList.length === 0) {
246
- tempList = [
247
- {
248
- id: -1,
249
- color: '#606266',
250
- controltype: stageControType,
251
- peddirection: peddirections,
252
- sidewalkPhaseData: sidewalkPhaseData,
253
- type: phasetype
254
- }
255
- ]
256
- }
257
- stagesTemp.push(tempList)
258
- }
259
- this.stagesList = JSON.parse(JSON.stringify(stagesTemp))
260
- return this.stagesList
261
- }
262
- getPhaseLegendData () {
263
- let data = this.crossStatusData
264
- let stagesTemp = []
265
- let busPhaseData = this.getBusPos()
266
- let sidewalkPhaseData = this.getPedPhasePos()
267
- let phaseIdList
268
- phaseIdList = data.phase.map(ele => [ele.id])
269
- for (let phase of phaseIdList) {
270
- let tempList = []
271
- let directionList = []
272
- let currPhaseid = ''
273
- let stageControType = 0
274
- let peddirections = []
275
- for (let id of phase) {
276
- let phaseMode = data.phase.filter(item => item.id === id)
277
- let currPhase = this.phaseList.filter((item) => {
278
- return item.id === id
279
- })[0]
280
- if (!currPhase) return
281
- if (currPhase !== undefined && phaseMode[0].mode !== 1) {
282
- directionList = [...currPhase.direction, ...directionList]
283
- currPhaseid = id
284
- }
285
- if (currPhase.peddirection) {
286
- for (let walk of sidewalkPhaseData) {
287
- for (let ped of currPhase.peddirection) {
288
- let obj = {}
289
- obj.name = walk.name
290
- obj.id = walk.id
291
- if (ped === walk.id) {
292
- peddirections.push(obj)
293
- peddirections = Array.from(new Set(peddirections))
294
- }
295
- }
296
- }
297
- } else {
298
- peddirections = []
299
- }
300
- for (let busPhase of busPhaseData) {
301
- if (id === busPhase.phaseid) {
302
- stageControType = busPhase.controltype
303
- }
304
- }
305
- }
306
- directionList = [...new Set(directionList)]
307
- tempList = directionList.map(dir => {
308
- let temp = {
309
- id: dir,
310
- phaseid: currPhaseid,
311
- color: '#606266',
312
- controltype: stageControType,
313
- peddirection: peddirections,
314
- sidewalkPhaseData: sidewalkPhaseData
315
- }
316
- return temp
317
- })
318
- if (directionList.length === 0) {
319
- tempList = [
320
- {
321
- id: -1,
322
- phaseid: currPhaseid,
323
- color: '#606266',
324
- controltype: stageControType,
325
- peddirection: peddirections,
326
- sidewalkPhaseData: sidewalkPhaseData
327
- }
328
- ]
329
- }
330
- stagesTemp.push(tempList)
331
- }
332
- this.List = JSON.parse(JSON.stringify(stagesTemp))
333
- return this.List
334
- }
335
- }
1
+ /**
2
+ * Copyright (c) 2020 kedacom
3
+ * OpenATC is licensed under Mulan PSL v2.
4
+ * You can use i18n 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 i18n from '../i18n/index.js'
13
+ import PhaseDataModel from '../kisscomps/components/IntersectionMap/crossDirection/utils.js'
14
+ import CrossDiagramMgr from '../EdgeMgr/controller/crossDiagramMgr.js'
15
+ export default class RingDataModel {
16
+ constructor (crossStatusData = {}, phaseList, busPhaseData = []) {
17
+ this.crossStatusData = crossStatusData
18
+ this.phaseList = phaseList
19
+ this.busPhaseData = busPhaseData
20
+ this.PhaseDataModel = new PhaseDataModel()
21
+ this.CrossDiagramMgr = new CrossDiagramMgr()
22
+ }
23
+
24
+ initRingPhaseData () {
25
+ // 环信息从单独上载相位信息里获取,以免相位锁定后,方案状态数据里没有rings,导致相位锁定控制列表无法显示
26
+ let phaseRings = []
27
+ let map = {}
28
+ let dest = []
29
+ for (let i = 0; i < this.phaseList.length; i++) {
30
+ let ai = this.phaseList[i]
31
+ if (!map[ai.ring]) {
32
+ let addphse = this.addPhaseInfo(ai)
33
+ dest.push({
34
+ num: ai.ring,
35
+ phases: [{...ai, ...addphse}]
36
+ })
37
+ map[ai.ring] = ai
38
+ } else {
39
+ for (var j = 0; j < dest.length; j++) {
40
+ var dj = dest[j]
41
+ if (dj.num === ai.ring) {
42
+ let addphse = this.addPhaseInfo(ai)
43
+ dj.phases.push({...ai, ...addphse})
44
+ break
45
+ }
46
+ }
47
+ }
48
+ }
49
+ phaseRings = JSON.parse(JSON.stringify(dest))
50
+ return phaseRings
51
+ }
52
+
53
+ addPhaseInfo (phase) {
54
+ let addphse = {}
55
+ addphse.name = i18n.t('openatccomponents.overview.phase') + phase.id
56
+ addphse.desc = this.getPhaseDescription(phase)
57
+ // 相位锁定选项默认都按照解锁状态显示
58
+ addphse.locktype = 0
59
+ addphse.close = 0
60
+ if (this.crossStatusData !== null && this.crossStatusData.phase) {
61
+ // 如果方案状态相位有close字段,这边就需要对应close状态进相位关断控制的选项里
62
+ let phaseStatus = this.crossStatusData.phase.filter(ele => ele.id === phase.id)[0]
63
+ addphse = {...addphse, ...phaseStatus}
64
+ }
65
+ return addphse
66
+ }
67
+
68
+ getPhaseDescription (phaseList) {
69
+ let list = []
70
+ let peddirections = []
71
+ let sidewalkPhaseData = this.getPedPhasePos()
72
+ for (let walk of sidewalkPhaseData) {
73
+ if (phaseList.peddirection) {
74
+ for (let ped of phaseList.peddirection) {
75
+ // if (stg === walk.phaseid) {
76
+ let obj = {}
77
+ obj.name = walk.name
78
+ obj.id = walk.id
79
+ if (ped === walk.id) {
80
+ peddirections.push(obj)
81
+ peddirections = Array.from(new Set(peddirections))
82
+ }
83
+ // }
84
+ }
85
+ } else {
86
+ peddirections = []
87
+ }
88
+ }
89
+ for (let id of phaseList.direction) {
90
+ let obj = {}
91
+ obj.id = id
92
+ obj.peddirection = peddirections
93
+ obj.color = '#454545'
94
+ list.push(obj)
95
+ }
96
+ return list
97
+ }
98
+
99
+ getPedPhasePos () {
100
+ // 行人相位信息
101
+ this.sidewalkPhaseData = []
102
+ this.phaseList.forEach((ele, i) => {
103
+ if (ele.peddirection) {
104
+ ele.peddirection.forEach((dir, index) => {
105
+ // 行人相位
106
+ if (this.PhaseDataModel.getSidePos(dir)) {
107
+ this.sidewalkPhaseData.push({
108
+ key: this.CrossDiagramMgr.getUniqueKey('pedphase'),
109
+ phaseid: ele.id, // 相位id,用于对应相位状态
110
+ id: dir,
111
+ name: this.PhaseDataModel.getSidePos(dir).name
112
+ })
113
+ }
114
+ })
115
+ }
116
+ })
117
+ return this.sidewalkPhaseData
118
+ }
119
+
120
+ getBusPos () {
121
+ // 公交相位信息
122
+ this.busPhaseData = []
123
+ this.phaseList.forEach((ele, i) => {
124
+ if (ele.controltype) {
125
+ ele.direction.forEach((dir, index) => {
126
+ // 车道相位
127
+ this.busPhaseData.push({
128
+ // key: this.CrossDiagramMgr.getUniqueKey('busphase'),
129
+ phaseid: ele.id, // 相位id,用于对应相位状态
130
+ id: dir, // 接口返回的dir字段,对应前端定义的相位方向id,唯一标识
131
+ name: this.PhaseDataModel.getBusPhasePos(dir).name,
132
+ controltype: ele.controltype
133
+ })
134
+ })
135
+ }
136
+ })
137
+ let result = []
138
+ let obj = {}
139
+ for (var i = 0; i < this.busPhaseData.length; i++) {
140
+ if (!obj[this.busPhaseData[i].phaseid]) {
141
+ result.push(this.busPhaseData[i])
142
+ obj[this.busPhaseData[i].phaseid] = true
143
+ }
144
+ }
145
+ this.busPhaseData = result
146
+ return this.busPhaseData
147
+ }
148
+ getlockData () {
149
+ let stagesTemp = []
150
+ let directionList = []
151
+ let sidewalkPhaseData = this.getPedPhasePos()
152
+ for (let phase of this.phaseList) {
153
+ let tempList = []
154
+ directionList = phase.direction
155
+ let peddirections = []
156
+ if (directionList) {
157
+ for (let walk of sidewalkPhaseData) {
158
+ for (let ped of phase.peddirection) {
159
+ // if (stg === walk.phaseid) {
160
+ let obj = {}
161
+ obj.name = walk.name
162
+ obj.id = walk.id
163
+ if (ped === walk.id) {
164
+ peddirections.push(obj)
165
+ peddirections = Array.from(new Set(peddirections))
166
+ }
167
+ // }
168
+ }
169
+ }
170
+ } else {
171
+ peddirections = []
172
+ }
173
+ tempList = directionList.map(dir => ({
174
+ id: dir,
175
+ color: '#606266',
176
+ controltype: phase.controltype,
177
+ peddirection: peddirections,
178
+ sidewalkPhaseData: sidewalkPhaseData
179
+ }))
180
+ stagesTemp.push(tempList)
181
+ }
182
+ return stagesTemp
183
+ }
184
+ getStageData (datatype) {
185
+ let data = this.crossStatusData
186
+ let stagesTemp = []
187
+ let busPhaseData = this.getBusPos()
188
+ let sidewalkPhaseData = this.getPedPhasePos()
189
+ let stages
190
+ // 按阶段数据处理
191
+ stages = data.stages
192
+ for (let stage of stages) {
193
+ let tempList = []
194
+ let directionList = []
195
+ let currPhaseid = ''
196
+ let stageControType = 0
197
+ let peddirections = []
198
+ let phasetype
199
+ for (let stg of stage) {
200
+ let phaseMode = data.phase.filter(item => item.id === stg)
201
+ phasetype = phaseMode[0].type
202
+ let currPhase = this.phaseList.filter((item) => {
203
+ return item.id === stg
204
+ })[0]
205
+ if (!currPhase) continue
206
+ if (currPhase !== undefined && phaseMode[0].mode !== 1) {
207
+ directionList = [...currPhase.direction, ...directionList]
208
+ }
209
+ if (currPhase.peddirection) {
210
+ for (let walk of sidewalkPhaseData) {
211
+ for (let ped of currPhase.peddirection) {
212
+ // if (stg === walk.phaseid) {
213
+ let obj = {}
214
+ obj.name = walk.name
215
+ obj.id = walk.id
216
+ if (ped === walk.id) {
217
+ peddirections.push(obj)
218
+ peddirections = Array.from(new Set(peddirections))
219
+ }
220
+ // }
221
+ }
222
+ }
223
+ } else {
224
+ peddirections = []
225
+ }
226
+ for (let busPhase of busPhaseData) {
227
+ if (stg === busPhase.phaseid) {
228
+ stageControType = busPhase.controltype
229
+ }
230
+ }
231
+ }
232
+ directionList = [...new Set(directionList)]
233
+ tempList = directionList.map(dir => {
234
+ let temp = {
235
+ id: dir,
236
+ phaseid: currPhaseid,
237
+ color: '#606266',
238
+ controltype: stageControType,
239
+ peddirection: peddirections,
240
+ sidewalkPhaseData: sidewalkPhaseData,
241
+ type: phasetype
242
+ }
243
+ return temp
244
+ })
245
+ if (directionList.length === 0) {
246
+ tempList = [
247
+ {
248
+ id: -1,
249
+ color: '#606266',
250
+ controltype: stageControType,
251
+ peddirection: peddirections,
252
+ sidewalkPhaseData: sidewalkPhaseData,
253
+ type: phasetype
254
+ }
255
+ ]
256
+ }
257
+ stagesTemp.push(tempList)
258
+ }
259
+ this.stagesList = JSON.parse(JSON.stringify(stagesTemp))
260
+ return this.stagesList
261
+ }
262
+ getPhaseLegendData () {
263
+ let data = this.crossStatusData
264
+ let stagesTemp = []
265
+ let busPhaseData = this.getBusPos()
266
+ let sidewalkPhaseData = this.getPedPhasePos()
267
+ let phaseIdList
268
+ phaseIdList = data.phase.map(ele => [ele.id])
269
+ for (let phase of phaseIdList) {
270
+ let tempList = []
271
+ let directionList = []
272
+ let currPhaseid = ''
273
+ let stageControType = 0
274
+ let peddirections = []
275
+ for (let id of phase) {
276
+ let phaseMode = data.phase.filter(item => item.id === id)
277
+ let currPhase = this.phaseList.filter((item) => {
278
+ return item.id === id
279
+ })[0]
280
+ if (!currPhase) return
281
+ if (currPhase !== undefined && phaseMode[0].mode !== 1) {
282
+ directionList = [...currPhase.direction, ...directionList]
283
+ currPhaseid = id
284
+ }
285
+ if (currPhase.peddirection) {
286
+ for (let walk of sidewalkPhaseData) {
287
+ for (let ped of currPhase.peddirection) {
288
+ let obj = {}
289
+ obj.name = walk.name
290
+ obj.id = walk.id
291
+ if (ped === walk.id) {
292
+ peddirections.push(obj)
293
+ peddirections = Array.from(new Set(peddirections))
294
+ }
295
+ }
296
+ }
297
+ } else {
298
+ peddirections = []
299
+ }
300
+ for (let busPhase of busPhaseData) {
301
+ if (id === busPhase.phaseid) {
302
+ stageControType = busPhase.controltype
303
+ }
304
+ }
305
+ }
306
+ directionList = [...new Set(directionList)]
307
+ tempList = directionList.map(dir => {
308
+ let temp = {
309
+ id: dir,
310
+ phaseid: currPhaseid,
311
+ color: '#606266',
312
+ controltype: stageControType,
313
+ peddirection: peddirections,
314
+ sidewalkPhaseData: sidewalkPhaseData
315
+ }
316
+ return temp
317
+ })
318
+ if (directionList.length === 0) {
319
+ tempList = [
320
+ {
321
+ id: -1,
322
+ phaseid: currPhaseid,
323
+ color: '#606266',
324
+ controltype: stageControType,
325
+ peddirection: peddirections,
326
+ sidewalkPhaseData: sidewalkPhaseData
327
+ }
328
+ ]
329
+ }
330
+ stagesTemp.push(tempList)
331
+ }
332
+ this.List = JSON.parse(JSON.stringify(stagesTemp))
333
+ return this.List
334
+ }
335
+ }