openatc-components 0.5.16 → 0.5.18

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 (390) 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/prod.env.js +5 -5
  18. package/config/test.env.js +7 -7
  19. package/index.html +12 -12
  20. package/package/kisscomps/components/Channelization/Channelization.vue +585 -585
  21. package/package/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  22. package/package/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  23. package/package/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  24. package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +2 -2
  25. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  26. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  27. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  28. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  29. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  30. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  31. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  32. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  33. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  34. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  35. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  36. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  37. package/package/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  38. package/package/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  39. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  40. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  41. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  42. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  43. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  44. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  45. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  46. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  47. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  48. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  49. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  50. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  51. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  52. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  53. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  54. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  55. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  56. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  57. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  58. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  59. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  60. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  61. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  62. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  63. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  64. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  65. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  66. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  67. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  68. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  69. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  70. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  71. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  72. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  73. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  74. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  75. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  76. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  77. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  78. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  79. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +16 -0
  90. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  91. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  92. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +16 -0
  93. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  94. package/package/kisscomps/components/KanBan/kanban.vue +231 -231
  95. package/package/kisscomps/components/MessageBox/index.vue +96 -96
  96. package/package/kisscomps/components/OverviewComponent/index.vue +7 -33
  97. package/package/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  98. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  99. package/package/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  100. package/package/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  101. package/package/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  102. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  103. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  104. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  105. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  106. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  107. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  108. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  109. package/package/kisscomps/components/PhasePedSelect/index.vue +206 -206
  110. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +7 -30
  111. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  112. package/package/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  113. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  114. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  115. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  116. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  117. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  118. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  119. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  120. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  121. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +0 -19
  122. package/package/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  123. package/package/kisscomps/components/SelectCrossPhase/index.vue +1 -1
  124. package/package/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  125. package/package/kisscomps/components/StageOptimize/index.js +2 -2
  126. package/package/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  127. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  128. package/package/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  129. package/package/kisscomps/components/XiaoKanban/index.vue +122 -122
  130. package/package/kisscomps/components/overView/index.vue +7 -30
  131. package/package/kisscomps/components/patternConfig/index.vue +4 -12
  132. package/package/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  133. package/package/kisscomps/components/patternConfig/planContent.vue +604 -604
  134. package/package/kisscomps/components/patternConfig/planMenu.vue +329 -329
  135. package/package/kisscomps/components/patternConfig/utils.js +84 -152
  136. package/package/kisscomps/index.js +6 -2
  137. package/package/kissui.js +216608 -0
  138. package/package/kissui.min.js +1 -1
  139. package/package.json +1 -1
  140. package/pnpm-lock.yaml +16362 -0
  141. package/src/App.vue +20 -24
  142. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  143. package/src/EdgeMgr/controller/crossDiagramMgr.js +125 -125
  144. package/src/api/authapi.js +31 -31
  145. package/src/api/config.js +21 -21
  146. package/src/api/control.js +110 -110
  147. package/src/api/device.js +135 -135
  148. package/src/api/fault.js +66 -66
  149. package/src/api/index.js +24 -24
  150. package/src/api/login.js +46 -46
  151. package/src/api/optimize.js +72 -72
  152. package/src/api/passwdAssest.js +101 -101
  153. package/src/api/permission.js +33 -33
  154. package/src/api/route.js +171 -171
  155. package/src/assets/font/LICENSE.txt +202 -202
  156. package/src/assets/font/font.css +6 -6
  157. package/src/i18n/index.js +26 -26
  158. package/src/i18n/language/en.js +113 -27
  159. package/src/i18n/language/index.js +31 -25
  160. package/src/i18n/language/ru.js +1555 -0
  161. package/src/i18n/language/zh.js +113 -27
  162. package/src/icons/index.js +20 -20
  163. package/src/icons/svg/azimuthlocking.svg +26 -26
  164. package/src/icons/svg/bendi.svg +110 -110
  165. package/src/icons/svg/bujin.svg +36 -36
  166. package/src/icons/svg/connectBlue.svg +7 -7
  167. package/src/icons/svg/currentvolume.svg +0 -0
  168. package/src/icons/svg/custom-BRTlane.svg +40 -40
  169. package/src/icons/svg/custom-buslane.svg +40 -40
  170. package/src/icons/svg/custom-detector.svg +12 -12
  171. package/src/icons/svg/custom-east-bottom.svg +32 -32
  172. package/src/icons/svg/custom-east-top.svg +32 -32
  173. package/src/icons/svg/custom-ewped.svg +35 -35
  174. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -40
  175. package/src/icons/svg/custom-north-left.svg +32 -32
  176. package/src/icons/svg/custom-north-right.svg +32 -32
  177. package/src/icons/svg/custom-peddetector.svg +17 -17
  178. package/src/icons/svg/custom-snped.svg +35 -35
  179. package/src/icons/svg/custom-south-left.svg +32 -32
  180. package/src/icons/svg/custom-south-right.svg +32 -32
  181. package/src/icons/svg/custom-tramlane.svg +40 -40
  182. package/src/icons/svg/custom-vehiclebranch.svg +40 -40
  183. package/src/icons/svg/custom-vehiclemainroad.svg +41 -41
  184. package/src/icons/svg/custom-west-bottom.svg +32 -32
  185. package/src/icons/svg/custom-west-top.svg +32 -32
  186. package/src/icons/svg/custom-xlped.svg +14 -14
  187. package/src/icons/svg/custom-xrped.svg +14 -14
  188. package/src/icons/svg/cutRed.svg +7 -7
  189. package/src/icons/svg/cycle.svg +0 -0
  190. package/src/icons/svg/dingzhouqi.svg +34 -34
  191. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  192. package/src/icons/svg/guandeng.svg +81 -81
  193. package/src/icons/svg/huangshan.svg +71 -71
  194. package/src/icons/svg/maincontrol.svg +0 -0
  195. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  196. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  197. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  198. package/src/icons/svg/model.svg +0 -0
  199. package/src/icons/svg/phasediff.svg +0 -0
  200. package/src/icons/svg/prioritycontrol.svg +21 -21
  201. package/src/icons/svg/quanhong.svg +86 -86
  202. package/src/icons/svg/shanghe.svg +11 -11
  203. package/src/icons/svg/shoudong.svg +103 -103
  204. package/src/icons/svg/tentativeplan.svg +28 -28
  205. package/src/icons/svg/time.svg +0 -0
  206. package/src/icons/svg/wuxianlan.svg +46 -46
  207. package/src/icons/svg/xiala.svg +11 -11
  208. package/src/icons/svg/xingrenguojie.svg +33 -33
  209. package/src/icons/svg/xitong.svg +89 -89
  210. package/src/icons/svg/youxian.svg +41 -41
  211. package/src/icons/svg/zizhukongzhi.svg +43 -43
  212. package/src/kisscomps/components/Channelization/Channelization.vue +585 -585
  213. package/src/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  214. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  215. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  216. package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +2 -2
  217. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  218. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  219. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  220. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  221. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  222. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  223. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  224. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  225. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  226. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  227. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  228. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  229. package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  230. package/src/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  231. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  232. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  233. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  234. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  235. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  236. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  237. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  238. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  239. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  240. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  241. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  242. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  243. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  244. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  245. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  246. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  247. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  248. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  249. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  250. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  251. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  252. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  253. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  254. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  255. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  256. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  257. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  258. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  259. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  260. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  261. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  262. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  263. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  264. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  265. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  266. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  267. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  268. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  269. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  270. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  271. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  272. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  273. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  274. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  275. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  276. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  277. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  278. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  279. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  280. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  281. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +16 -0
  282. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  283. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  284. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +16 -0
  285. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  286. package/src/kisscomps/components/KanBan/kanban.vue +231 -231
  287. package/src/kisscomps/components/MessageBox/index.vue +96 -96
  288. package/src/kisscomps/components/OverviewComponent/index.vue +7 -33
  289. package/src/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  290. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  291. package/src/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  292. package/src/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  293. package/src/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  294. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  295. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  296. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  297. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  298. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  299. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  300. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  301. package/src/kisscomps/components/PhasePedSelect/index.vue +206 -206
  302. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +7 -30
  303. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  304. package/src/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  305. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  306. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  307. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  308. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  309. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  310. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  311. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  312. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  313. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +0 -19
  314. package/src/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  315. package/src/kisscomps/components/SelectCrossPhase/index.vue +1 -1
  316. package/src/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  317. package/src/kisscomps/components/StageOptimize/index.js +2 -2
  318. package/src/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  319. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  320. package/src/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  321. package/src/kisscomps/components/XiaoKanban/index.vue +122 -122
  322. package/src/kisscomps/components/overView/index.vue +7 -30
  323. package/src/kisscomps/components/patternConfig/index.vue +4 -12
  324. package/src/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  325. package/src/kisscomps/components/patternConfig/planContent.vue +604 -604
  326. package/src/kisscomps/components/patternConfig/planMenu.vue +329 -329
  327. package/src/kisscomps/components/patternConfig/utils.js +84 -152
  328. package/src/kisscomps/index.js +6 -2
  329. package/src/lib/publicjs/ArryListUtil.js +38 -38
  330. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  331. package/src/lib/publicjs/KissApi.js +158 -158
  332. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  333. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  334. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  335. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  336. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  337. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  338. package/src/lib/publicjs/basecomponents.js +65 -65
  339. package/src/lib/publicjs/localStorage.js +112 -112
  340. package/src/lib/publicjs/objdeepcopy.js +32 -32
  341. package/src/lib/publicjs/pageScroll.js +30 -30
  342. package/src/lib/publicjs/passwdAssest.js +101 -101
  343. package/src/lib/publicjs/styleclassfactory.js +32 -32
  344. package/src/store/index.js +26 -26
  345. package/src/store/modules/globalParam.js +67 -67
  346. package/src/utils/ControlFormat.js +14 -36
  347. package/src/utils/RingDataModel.js +335 -335
  348. package/src/utils/auth.js +199 -199
  349. package/src/utils/conflictList.js +87 -87
  350. package/src/utils/dateFormat.js +41 -41
  351. package/src/utils/fault.js +20 -72
  352. package/src/utils/faultcode.js +130 -182
  353. package/src/utils/index.js +69 -69
  354. package/src/utils/pedphasedesc.js +80 -105
  355. package/src/utils/phaseList.js +203 -203
  356. package/src/utils/phasedesc.js +133 -115
  357. package/src/utils/responseMessage.js +24 -21
  358. package/src/utils/validate.js +43 -43
  359. package/src/views/home.1.vue +479 -479
  360. package/src/views/home.vue +93 -93
  361. package/src/views/intersection2.vue +328 -328
  362. package/src/views/overView.vue +63 -63
  363. package/src/views/patternConfig.vue +2 -2
  364. package/src/views/schemeconfig.vue +1 -1
  365. package/static/styles/channelizatioon.scss +433 -433
  366. package/static/styles/common.scss +30 -30
  367. package/static/styles/commonkanban.scss +168 -168
  368. package/static/styles/dark/index.scss +2 -2
  369. package/static/styles/dark/theme/element-dark.scss +44 -44
  370. package/static/styles/index.scss +84 -84
  371. package/static/styles/intersection.scss +180 -180
  372. package/static/styles/light/index.scss +2 -2
  373. package/static/styles/light/theme/element-light.scss +44 -44
  374. package/static/styles/patternConfig.scss +56 -56
  375. package/static/styles/phasePedSelect.scss +71 -71
  376. package/static/styles/stages.scss +57 -57
  377. package/static/styles/xiaokanban.scss +61 -61
  378. package/static/token.json +2 -2
  379. package/test/e2e/custom-assertions/elementCount.js +27 -27
  380. package/test/e2e/nightwatch.conf.js +46 -46
  381. package/test/e2e/runner.js +48 -48
  382. package/test/e2e/specs/test.js +19 -19
  383. package/test/unit/.eslintrc +7 -7
  384. package/test/unit/jest.conf.js +30 -30
  385. package/test/unit/setup.js +3 -3
  386. package/test/unit/specs/HelloWorld.spec.js +11 -11
  387. package/package/kisscomps/components/OptimizeKanban/index.js +0 -2
  388. package/package/kisscomps/components/OptimizeKanban/index.vue +0 -369
  389. package/package/kisscomps/components/StageOptimize/index.vue +0 -310
  390. package/src/node_modules/.package_versions.json +0 -1
@@ -1,286 +1,286 @@
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 id="intersection-phases" class="intersection-phases" :style="PhaseStyle">
14
- <div>
15
- <div style="width: 100%; height: auto;">
16
- <div class="control-model" v-for="(item, index) in PhaseList" :key="index">
17
- <div style="position:relative;" :style="{...singleStyle, 'backgroundColor': item[0].bgcolor}" class="single-model" @click="selectLegend(index + 1)" :class="currentStage == index + 1 ? 'single-model-select' : ''">
18
- <xdr-dir-selector :Width="dirWidth" :Height="dirHeight" :Widths="dirWidths" :Heights="dirHeights" :Data="showStyle" :Datas="showStyles" :showlist="dirListSetTheme(item)"></xdr-dir-selector>
19
- <div style="display:flex;flex-direction:row;justify-content:center;align-items:end;">
20
- <div class="current-stage-num" style="width:25%;" :style="{color: themeColor, fontSize: numSize}">{{item[0].phaseid}}</div>
21
- <div style="width:70%;">
22
- <i class="iconfont icon-feijidongche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 6"></i>
23
- <i class="iconfont icon-lukouzhilu" :style="{color: themeColor2, fontSize: iconSize2}" style="font-size:16PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 1"></i>
24
- <i class="iconfont icon-BRT" :style="{color: themeColor2, fontSize: iconSize}" style="font-size:11PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 4"></i>
25
- <div style="transform:scale(0.65);margin-left:10PX">
26
- <i class="iconfont icon-xuxiangwei-xin" :style="{color: themeColor2}" style="font-size:5PX;color:#454545;" v-if="item[item.length-1].controltype === 99"></i>
27
- </div>
28
- <i class="iconfont icon-gongjiaoche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 3"></i>
29
- <i class="iconfont icon-youguidianche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 5"></i>
30
- <div v-if="presetStageIndex === index + 1" style="color:red;width:50px;position:absolute;right:0px;bottom:5px;font-size:11px;">{{presetText}}</div>
31
- </div>
32
- </div>
33
- </div>
34
- </div>
35
- </div>
36
- </div>
37
- </div>
38
- </template>
39
-
40
- <script>
41
- /* eslint-disable */
42
- import RingDataModel from '../../../utils/RingDataModel.js'
43
- import { getTheme } from '../../../utils/auth.js'
44
-
45
- export default {
46
- name: 'PhaseLegend',
47
- props: {
48
- isShowCurrentStage: {
49
- type: Boolean,
50
- default: true
51
- },
52
- crossStatusData: {
53
- type: Object,
54
- default: () => {}
55
- },
56
- phaseList: {
57
- type: Array,
58
- default: () => []
59
- },
60
- presetText: {
61
- type: String,
62
- default: '预置'
63
- },
64
- presetIndex: {
65
- type: Number,
66
- default: -1
67
- },
68
- preselectStages:{
69
- type: Number,
70
- default: -1
71
- },
72
- preselectModel:{
73
- type: Number,
74
- default: -1
75
- },
76
- presetPhaseId: {
77
- type: Number,
78
- default: -1
79
- },
80
- zoom: {
81
- type: Number,
82
- default: 1
83
- },
84
- StageWidth: { // 图的大小样式
85
- type: String,
86
- default: '70px'
87
- },
88
- StageHeight: {
89
- type: String,
90
- default: '80px'
91
- },
92
- dirWidth: {
93
- type: String,
94
- default: '75PX'
95
- },
96
- dirHeight: {
97
- type: String,
98
- default: '75PX'
99
- },
100
- dirWidths: {
101
- type: String,
102
- default: '65PX'
103
- },
104
- dirHeights: {
105
- type: String,
106
- default: '65PX'
107
- },
108
- showStyle: { // 图内部方向的位置
109
- type: Object,
110
- default: () => ({
111
- top:'7PX',
112
- left:'13px'
113
- })
114
- },
115
- showStyles: { // 图内部人行道的位置
116
- type: Object,
117
- default: () => ({
118
- top:'5PX',
119
- left:'12px'
120
- })
121
- },
122
- noClick: { // 图是否可以点击
123
- type: Boolean,
124
- default: false
125
- },
126
- showDataType: { // 图展示的数据类型:默认按阶段展示,如果传phase则按相位维度展示
127
- type: String
128
- }
129
- },
130
- data () {
131
- return {
132
- presetStageIndex: -1,
133
- side: {key: 'pedphase1653818707546719', phaseid: 1, id: 1, name: '东人行横道'},
134
- // PhaseList: [],
135
- currentStage: -1,
136
- themeColor: getTheme() === 'light' ? '#606266' : '#fff',
137
- themeColor2: getTheme() === 'light' ? '#454545' : '#fff'
138
- };
139
- },
140
- computed: {
141
- singleStyle () {
142
- return {
143
- width: this.StageWidth,
144
- height: this.StageHeight
145
- }
146
- },
147
- PhaseList () {
148
- let list = []
149
- if (this.crossStatusData && this.crossStatusData.stages && this.phaseList && this.phaseList.length > 0) {
150
- let ringDataModel = new RingDataModel(this.crossStatusData, this.phaseList)
151
- list = ringDataModel.getPhaseLegendData()
152
- if (this.isShowCurrentStage) {
153
- this.currentStage = this.crossStatusData.current_stage
154
- }
155
- }
156
- console.log(list,'list')
157
- this.clickType(list, this.currentStage)
158
- console.log(this.phaseList,'this.phaseList')
159
- return list
160
- },
161
- PhaseStyle () {
162
- return {
163
- zoom: this.zoom
164
- }
165
- },
166
- iconSize () {
167
- const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
168
- return fontsize / 75 * 11 + 'px'
169
- },
170
- iconSize2 () {
171
- const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
172
- return fontsize / 75 * 16 + 'px'
173
- },
174
- numSize () {
175
- const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
176
- const newfontsize = fontsize / 75 * 12
177
- if (newfontsize < 10) {
178
- return 10 + 'px'
179
- } else {
180
- return newfontsize + 'px'
181
- }
182
- }
183
- },
184
- watch: {
185
- preselectStages: {
186
- handler: function (val, oldVal) {
187
- if(this.preselectStages === -1 && this.preselectModel !== -1) {
188
- this.currentStage = -1
189
- }
190
- },
191
- // 深度观察监听
192
- deep: true
193
- },
194
- preselectModel: {
195
- handler: function (val, oldVal) {
196
- if(this.preselectStages === -1 && this.preselectModel !== -1) {
197
- this.currentStage = -1
198
- }
199
- },
200
- // 深度观察监听
201
- deep: true
202
- },
203
- PhaseList: {
204
- handler: function (val, oldVal) {
205
- if (this.presetPhaseId > -1) {
206
- this.presetStageIndex = this.getComputedPresetIndex()
207
- } else {
208
- this.presetStageIndex = this.presetIndex
209
- }
210
- },
211
- // 深度观察监听
212
- deep: true
213
- }
214
- },
215
- methods: {
216
- getComputedPresetIndex() {
217
- let res = -1
218
- for (let i = 0; i < this.PhaseList.length; i++) {
219
- let stage = this.PhaseList[i]
220
- for (let phase of stage) {
221
- let phaseId = phase.id
222
- if (phaseId === this.presetPhaseId) {
223
- res = i
224
- break
225
- }
226
- }
227
- if (res > -1) {
228
- res = res + 1
229
- break
230
- }
231
- }
232
- return res
233
- },
234
- selectLegend (value) {
235
- if (this.noClick) return
236
- if (this.isShowCurrentStage) {
237
- return false
238
- }
239
- this.currentStage = value
240
- this.$emit('onSelectStages', value)
241
- this.clickType(this.PhaseList, value)
242
- },
243
- resetToDefaultThemeColor (List) {
244
- for (let i = 0; i < List.length; i++) {
245
- if (List[i].length) {
246
- if (List[i][0].clicked) {
247
- delete List[i][0].clicked
248
- }
249
- List[i][0].bgcolor = getTheme() === 'light' ? '#edf6ff' : '#243d59'
250
- }
251
- }
252
- },
253
- highlightThemeColor (List, index) {
254
- for (let i = 0; i < List.length; i++) {
255
- if (i === index) {
256
- List[i][0].clicked = true
257
- List[i][0].bgcolor = getTheme() === 'light' ? '#c1e0ff' : '#0082ac'
258
- }
259
- }
260
- },
261
- clickType (stagelist, value) {
262
- this.resetToDefaultThemeColor(stagelist)
263
- this.highlightThemeColor(stagelist, value - 1)
264
- },
265
- dirListSetTheme (list) {
266
- let dirArr = []
267
- let color = getTheme() === 'light' ? '#606266' : '#F1F3F4'
268
- let pedColor = getTheme() === 'light' ? '#606266' : 'rgba(255, 255, 255, 0.6)'
269
- for (let rec of list) {
270
- let recd = {
271
- ...rec,
272
- color: color
273
- }
274
- dirArr.push(recd)
275
- for(let i=0;i<rec.peddirection.length;i++) {
276
- rec.peddirection[i].color = pedColor
277
- }
278
- }
279
- return dirArr
280
- }
281
- },
282
- mounted () {
283
- this.resetToDefaultThemeColor(this.PhaseList)
284
- }
285
- };
286
- </script>
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 id="intersection-phases" class="intersection-phases" :style="PhaseStyle">
14
+ <div>
15
+ <div style="width: 100%; height: auto;">
16
+ <div class="control-model" v-for="(item, index) in PhaseList" :key="index">
17
+ <div style="position:relative;" :style="{...singleStyle, 'backgroundColor': item[0].bgcolor}" class="single-model" @click="selectLegend(index + 1)" :class="currentStage == index + 1 ? 'single-model-select' : ''">
18
+ <xdr-dir-selector :Width="dirWidth" :Height="dirHeight" :Widths="dirWidths" :Heights="dirHeights" :Data="showStyle" :Datas="showStyles" :showlist="dirListSetTheme(item)"></xdr-dir-selector>
19
+ <div style="display:flex;flex-direction:row;justify-content:center;align-items:end;">
20
+ <div class="current-stage-num" style="width:25%;" :style="{color: themeColor, fontSize: numSize}">{{item[0].phaseid}}</div>
21
+ <div style="width:70%;">
22
+ <i class="iconfont icon-feijidongche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 6"></i>
23
+ <i class="iconfont icon-lukouzhilu" :style="{color: themeColor2, fontSize: iconSize2}" style="font-size:16PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 1"></i>
24
+ <i class="iconfont icon-BRT" :style="{color: themeColor2, fontSize: iconSize}" style="font-size:11PX;color:#454545;margin-left:10PX" v-if="item[item.length-1].controltype === 4"></i>
25
+ <div style="transform:scale(0.65);margin-left:10PX">
26
+ <i class="iconfont icon-xuxiangwei-xin" :style="{color: themeColor2}" style="font-size:5PX;color:#454545;" v-if="item[item.length-1].controltype === 99"></i>
27
+ </div>
28
+ <i class="iconfont icon-gongjiaoche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 3"></i>
29
+ <i class="iconfont icon-youguidianche" :style="{color: themeColor, fontSize: iconSize}" style="font-size:11PX;color:#606266;margin-left:10PX" v-if="item[item.length-1].controltype === 5"></i>
30
+ <div v-if="presetStageIndex === index + 1" style="color:red;width:50px;position:absolute;right:0px;bottom:5px;font-size:11px;">{{presetText}}</div>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ </div>
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </template>
39
+
40
+ <script>
41
+ /* eslint-disable */
42
+ import RingDataModel from '../../../utils/RingDataModel.js'
43
+ import { getTheme } from '../../../utils/auth.js'
44
+
45
+ export default {
46
+ name: 'PhaseLegend',
47
+ props: {
48
+ isShowCurrentStage: {
49
+ type: Boolean,
50
+ default: true
51
+ },
52
+ crossStatusData: {
53
+ type: Object,
54
+ default: () => {}
55
+ },
56
+ phaseList: {
57
+ type: Array,
58
+ default: () => []
59
+ },
60
+ presetText: {
61
+ type: String,
62
+ default: '预置'
63
+ },
64
+ presetIndex: {
65
+ type: Number,
66
+ default: -1
67
+ },
68
+ preselectStages:{
69
+ type: Number,
70
+ default: -1
71
+ },
72
+ preselectModel:{
73
+ type: Number,
74
+ default: -1
75
+ },
76
+ presetPhaseId: {
77
+ type: Number,
78
+ default: -1
79
+ },
80
+ zoom: {
81
+ type: Number,
82
+ default: 1
83
+ },
84
+ StageWidth: { // 图的大小样式
85
+ type: String,
86
+ default: '70px'
87
+ },
88
+ StageHeight: {
89
+ type: String,
90
+ default: '80px'
91
+ },
92
+ dirWidth: {
93
+ type: String,
94
+ default: '75PX'
95
+ },
96
+ dirHeight: {
97
+ type: String,
98
+ default: '75PX'
99
+ },
100
+ dirWidths: {
101
+ type: String,
102
+ default: '65PX'
103
+ },
104
+ dirHeights: {
105
+ type: String,
106
+ default: '65PX'
107
+ },
108
+ showStyle: { // 图内部方向的位置
109
+ type: Object,
110
+ default: () => ({
111
+ top:'7PX',
112
+ left:'13px'
113
+ })
114
+ },
115
+ showStyles: { // 图内部人行道的位置
116
+ type: Object,
117
+ default: () => ({
118
+ top:'5PX',
119
+ left:'12px'
120
+ })
121
+ },
122
+ noClick: { // 图是否可以点击
123
+ type: Boolean,
124
+ default: false
125
+ },
126
+ showDataType: { // 图展示的数据类型:默认按阶段展示,如果传phase则按相位维度展示
127
+ type: String
128
+ }
129
+ },
130
+ data () {
131
+ return {
132
+ presetStageIndex: -1,
133
+ side: {key: 'pedphase1653818707546719', phaseid: 1, id: 1, name: '东人行横道'},
134
+ // PhaseList: [],
135
+ currentStage: -1,
136
+ themeColor: getTheme() === 'light' ? '#606266' : '#fff',
137
+ themeColor2: getTheme() === 'light' ? '#454545' : '#fff'
138
+ };
139
+ },
140
+ computed: {
141
+ singleStyle () {
142
+ return {
143
+ width: this.StageWidth,
144
+ height: this.StageHeight
145
+ }
146
+ },
147
+ PhaseList () {
148
+ let list = []
149
+ if (this.crossStatusData && this.crossStatusData.stages && this.phaseList && this.phaseList.length > 0) {
150
+ let ringDataModel = new RingDataModel(this.crossStatusData, this.phaseList)
151
+ list = ringDataModel.getPhaseLegendData()
152
+ if (this.isShowCurrentStage) {
153
+ this.currentStage = this.crossStatusData.current_stage
154
+ }
155
+ }
156
+ console.log(list,'list')
157
+ this.clickType(list, this.currentStage)
158
+ console.log(this.phaseList,'this.phaseList')
159
+ return list
160
+ },
161
+ PhaseStyle () {
162
+ return {
163
+ zoom: this.zoom
164
+ }
165
+ },
166
+ iconSize () {
167
+ const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
168
+ return fontsize / 75 * 11 + 'px'
169
+ },
170
+ iconSize2 () {
171
+ const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
172
+ return fontsize / 75 * 16 + 'px'
173
+ },
174
+ numSize () {
175
+ const fontsize = parseInt(this.dirWidth.replace(/px$/, ""));
176
+ const newfontsize = fontsize / 75 * 12
177
+ if (newfontsize < 10) {
178
+ return 10 + 'px'
179
+ } else {
180
+ return newfontsize + 'px'
181
+ }
182
+ }
183
+ },
184
+ watch: {
185
+ preselectStages: {
186
+ handler: function (val, oldVal) {
187
+ if(this.preselectStages === -1 && this.preselectModel !== -1) {
188
+ this.currentStage = -1
189
+ }
190
+ },
191
+ // 深度观察监听
192
+ deep: true
193
+ },
194
+ preselectModel: {
195
+ handler: function (val, oldVal) {
196
+ if(this.preselectStages === -1 && this.preselectModel !== -1) {
197
+ this.currentStage = -1
198
+ }
199
+ },
200
+ // 深度观察监听
201
+ deep: true
202
+ },
203
+ PhaseList: {
204
+ handler: function (val, oldVal) {
205
+ if (this.presetPhaseId > -1) {
206
+ this.presetStageIndex = this.getComputedPresetIndex()
207
+ } else {
208
+ this.presetStageIndex = this.presetIndex
209
+ }
210
+ },
211
+ // 深度观察监听
212
+ deep: true
213
+ }
214
+ },
215
+ methods: {
216
+ getComputedPresetIndex() {
217
+ let res = -1
218
+ for (let i = 0; i < this.PhaseList.length; i++) {
219
+ let stage = this.PhaseList[i]
220
+ for (let phase of stage) {
221
+ let phaseId = phase.id
222
+ if (phaseId === this.presetPhaseId) {
223
+ res = i
224
+ break
225
+ }
226
+ }
227
+ if (res > -1) {
228
+ res = res + 1
229
+ break
230
+ }
231
+ }
232
+ return res
233
+ },
234
+ selectLegend (value) {
235
+ if (this.noClick) return
236
+ if (this.isShowCurrentStage) {
237
+ return false
238
+ }
239
+ this.currentStage = value
240
+ this.$emit('onSelectStages', value)
241
+ this.clickType(this.PhaseList, value)
242
+ },
243
+ resetToDefaultThemeColor (List) {
244
+ for (let i = 0; i < List.length; i++) {
245
+ if (List[i].length) {
246
+ if (List[i][0].clicked) {
247
+ delete List[i][0].clicked
248
+ }
249
+ List[i][0].bgcolor = getTheme() === 'light' ? '#edf6ff' : '#243d59'
250
+ }
251
+ }
252
+ },
253
+ highlightThemeColor (List, index) {
254
+ for (let i = 0; i < List.length; i++) {
255
+ if (i === index) {
256
+ List[i][0].clicked = true
257
+ List[i][0].bgcolor = getTheme() === 'light' ? '#c1e0ff' : '#0082ac'
258
+ }
259
+ }
260
+ },
261
+ clickType (stagelist, value) {
262
+ this.resetToDefaultThemeColor(stagelist)
263
+ this.highlightThemeColor(stagelist, value - 1)
264
+ },
265
+ dirListSetTheme (list) {
266
+ let dirArr = []
267
+ let color = getTheme() === 'light' ? '#606266' : '#F1F3F4'
268
+ let pedColor = getTheme() === 'light' ? '#606266' : 'rgba(255, 255, 255, 0.6)'
269
+ for (let rec of list) {
270
+ let recd = {
271
+ ...rec,
272
+ color: color
273
+ }
274
+ dirArr.push(recd)
275
+ for(let i=0;i<rec.peddirection.length;i++) {
276
+ rec.peddirection[i].color = pedColor
277
+ }
278
+ }
279
+ return dirArr
280
+ }
281
+ },
282
+ mounted () {
283
+ this.resetToDefaultThemeColor(this.PhaseList)
284
+ }
285
+ };
286
+ </script>
@@ -1,6 +1,6 @@
1
- import Vue from 'vue'
2
- import PhaseM from './phasemarker.vue'
3
-
4
- let PhaseMarker = Vue.extend(PhaseM)
5
- Vue.component('phase-marker', PhaseMarker)
6
- export default PhaseMarker
1
+ import Vue from 'vue'
2
+ import PhaseM from './phasemarker.vue'
3
+
4
+ let PhaseMarker = Vue.extend(PhaseM)
5
+ Vue.component('phase-marker', PhaseMarker)
6
+ export default PhaseMarker