openatc-components 0.0.88 → 0.0.91

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 (393) hide show
  1. package/.babelrc +18 -18
  2. package/.editorconfig +9 -9
  3. package/.eslintignore +5 -5
  4. package/.eslintrc.js +29 -29
  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 +114 -114
  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 +91 -91
  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 +89 -89
  23. package/package/kisscomps/components/BoardCard/index.js +2 -2
  24. package/package/kisscomps/components/Channelization/Channelization.vue +545 -0
  25. package/package/kisscomps/components/Channelization/index.js +2 -0
  26. package/package/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +498 -0
  27. package/package/kisscomps/components/ChannelizationWithInterface/index.js +2 -0
  28. package/package/kisscomps/components/CommonKanban/CommonKanban.vue +118 -118
  29. package/package/kisscomps/components/CommonKanban/index.js +2 -2
  30. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +249 -0
  31. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -0
  32. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -0
  33. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +176 -0
  34. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -0
  35. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +48 -0
  36. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +182 -0
  37. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +222 -0
  38. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +191 -0
  39. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +78 -0
  40. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +433 -0
  41. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +195 -0
  42. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +71 -0
  43. package/package/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +939 -0
  44. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +118 -0
  45. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +563 -0
  46. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +157 -0
  47. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.check.vue +191 -0
  48. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.syncOper.vue +331 -0
  49. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +157 -0
  50. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -0
  51. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +43 -0
  52. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -0
  53. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -0
  54. package/package/kisscomps/components/DrawChannelization/index.js +2 -0
  55. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -0
  56. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +114 -114
  57. package/package/kisscomps/components/ExpendConfig/index.js +2 -2
  58. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +170 -170
  59. package/package/kisscomps/components/FaultDetailModal/index.js +2 -2
  60. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +497 -497
  61. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  62. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +300 -300
  63. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +288 -288
  64. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +391 -391
  65. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +336 -336
  66. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +345 -345
  67. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +389 -389
  68. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1179 -1179
  69. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +402 -402
  70. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +361 -361
  71. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +368 -368
  72. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +475 -475
  73. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +494 -494
  74. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +401 -401
  75. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +360 -360
  76. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +367 -367
  77. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +476 -476
  78. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  79. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +912 -912
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +112 -112
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +112 -112
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +111 -111
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  90. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +99 -99
  91. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +99 -99
  92. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  93. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +99 -99
  94. package/package/kisscomps/components/IntersectionMap/crossDirection/utils.js +78 -78
  95. package/package/kisscomps/components/IntersectionMap/index.js +2 -2
  96. package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +153 -153
  97. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +518 -518
  98. package/package/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  99. package/package/kisscomps/components/KanBan/index.js +2 -2
  100. package/package/kisscomps/components/KanBan/kanban.vue +219 -219
  101. package/package/kisscomps/components/MessageBox/index.vue +96 -0
  102. package/package/kisscomps/components/OverLap/OverLap.vue +207 -207
  103. package/package/kisscomps/components/OverLap/index.js +2 -2
  104. package/package/kisscomps/components/PatternStatus/PatternStatus.vue +888 -888
  105. package/package/kisscomps/components/PatternStatus/index.js +2 -2
  106. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  107. package/package/kisscomps/components/PatternWalkSvg/index.js +2 -2
  108. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  109. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  110. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  111. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  112. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  113. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  114. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  115. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +744 -744
  116. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +195 -195
  117. package/package/kisscomps/components/SchemeConfig/index.js +2 -2
  118. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +198 -198
  119. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +219 -219
  120. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +263 -263
  121. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1384 -1384
  122. package/package/kisscomps/components/StageBord/StageBord.vue +242 -242
  123. package/package/kisscomps/components/StageBord/index.js +2 -2
  124. package/package/kisscomps/components/StageStatus/StageStatus.vue +306 -306
  125. package/package/kisscomps/components/StageStatus/index.js +2 -2
  126. package/package/kisscomps/components/Stages/index.vue +139 -139
  127. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  128. package/package/kisscomps/components/SvgIcon/index.js +2 -2
  129. package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +522 -522
  130. package/package/kisscomps/components/XRDDirSelector/index.js +2 -2
  131. package/package/kisscomps/components/overView/index.vue +676 -676
  132. package/package/kisscomps/components/patternList/index.js +2 -2
  133. package/package/kisscomps/components/patternList/patternList.vue +562 -562
  134. package/package/kisscomps/index.js +102 -92
  135. package/package/kissui.min.js +1 -1
  136. package/package.json +4 -2
  137. package/src/App.vue +24 -24
  138. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  139. package/src/EdgeMgr/controller/crossDiagramMgr.js +120 -120
  140. package/src/api/authapi.js +31 -31
  141. package/src/api/config.js +21 -21
  142. package/src/api/control.js +76 -76
  143. package/src/api/cross.js +33 -0
  144. package/src/api/fault.js +66 -66
  145. package/src/api/index.js +24 -24
  146. package/src/api/login.js +46 -46
  147. package/src/api/optimize.js +72 -72
  148. package/src/api/param.js +154 -154
  149. package/src/api/passwdAssest.js +101 -101
  150. package/src/api/template.js +27 -27
  151. package/src/i18n/index.js +26 -26
  152. package/src/i18n/language/en.js +1186 -1111
  153. package/src/i18n/language/index.js +25 -25
  154. package/src/i18n/language/zh.js +1185 -1110
  155. package/src/icons/demo.css +539 -539
  156. package/src/icons/iconfont.css +835 -835
  157. package/src/icons/iconfont.json +1444 -1444
  158. package/src/icons/index.js +20 -20
  159. package/src/icons/svg/bendi.svg +110 -110
  160. package/src/icons/svg/bujin.svg +36 -36
  161. package/src/icons/svg/connectBlue.svg +7 -7
  162. package/src/icons/svg/currentvolume.svg +0 -0
  163. package/src/icons/svg/custom-BRTlane.svg +40 -0
  164. package/src/icons/svg/custom-bicyclelane.svg +7 -0
  165. package/src/icons/svg/custom-buslane.svg +40 -0
  166. package/src/icons/svg/custom-detector.svg +12 -0
  167. package/src/icons/svg/custom-east-bottom.svg +32 -0
  168. package/src/icons/svg/custom-east-top.svg +32 -0
  169. package/src/icons/svg/custom-ewped.svg +35 -0
  170. package/src/icons/svg/custom-motorway.svg +7 -0
  171. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -0
  172. package/src/icons/svg/custom-north-left.svg +32 -0
  173. package/src/icons/svg/custom-north-right.svg +32 -0
  174. package/src/icons/svg/custom-pedcrossing.svg +7 -0
  175. package/src/icons/svg/custom-peddetector.svg +17 -0
  176. package/src/icons/svg/custom-pedeastward.svg +9 -0
  177. package/src/icons/svg/custom-pedestrian.svg +7 -0
  178. package/src/icons/svg/custom-pednorthward.svg +9 -0
  179. package/src/icons/svg/custom-pedsouthward.svg +9 -0
  180. package/src/icons/svg/custom-pedwestward.svg +9 -0
  181. package/src/icons/svg/custom-secondcrossing.svg +7 -0
  182. package/src/icons/svg/custom-sectionpedestrian.svg +7 -0
  183. package/src/icons/svg/custom-snped.svg +35 -0
  184. package/src/icons/svg/custom-south-left.svg +32 -0
  185. package/src/icons/svg/custom-south-right.svg +32 -0
  186. package/src/icons/svg/custom-straightahead.svg +7 -0
  187. package/src/icons/svg/custom-tramlane.svg +40 -0
  188. package/src/icons/svg/custom-turnaround.svg +7 -0
  189. package/src/icons/svg/custom-turnleft.svg +7 -0
  190. package/src/icons/svg/custom-turnright.svg +7 -0
  191. package/src/icons/svg/custom-vehiclebranch.svg +40 -0
  192. package/src/icons/svg/custom-vehiclemainroad.svg +41 -0
  193. package/src/icons/svg/custom-west-bottom.svg +32 -0
  194. package/src/icons/svg/custom-west-top.svg +32 -0
  195. package/src/icons/svg/custom-xlped.svg +14 -0
  196. package/src/icons/svg/custom-xpedestrian.svg +7 -0
  197. package/src/icons/svg/custom-xrped.svg +14 -0
  198. package/src/icons/svg/cutRed.svg +7 -7
  199. package/src/icons/svg/cycle.svg +0 -0
  200. package/src/icons/svg/dingzhouqi.svg +34 -34
  201. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  202. package/src/icons/svg/guandeng.svg +81 -81
  203. package/src/icons/svg/huangshan.svg +71 -71
  204. package/src/icons/svg/maincontrol.svg +0 -0
  205. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  206. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  207. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  208. package/src/icons/svg/model.svg +0 -0
  209. package/src/icons/svg/phasediff.svg +0 -0
  210. package/src/icons/svg/quanhong.svg +86 -86
  211. package/src/icons/svg/shanghe.svg +11 -11
  212. package/src/icons/svg/shoudong.svg +103 -103
  213. package/src/icons/svg/time.svg +0 -0
  214. package/src/icons/svg/wuxianlan.svg +46 -46
  215. package/src/icons/svg/xiala.svg +11 -11
  216. package/src/icons/svg/xingrenguojie.svg +33 -33
  217. package/src/icons/svg/xitong.svg +89 -89
  218. package/src/icons/svg/youxian.svg +41 -41
  219. package/src/icons/svg/zizhukongzhi.svg +43 -43
  220. package/src/kisscomps/components/BoardCard/BoardCard.vue +89 -89
  221. package/src/kisscomps/components/BoardCard/index.js +2 -2
  222. package/src/kisscomps/components/Channelization/Channelization.vue +545 -0
  223. package/src/kisscomps/components/Channelization/index.js +2 -0
  224. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +498 -0
  225. package/src/kisscomps/components/ChannelizationWithInterface/index.js +2 -0
  226. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +118 -118
  227. package/src/kisscomps/components/CommonKanban/index.js +2 -2
  228. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +249 -0
  229. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -0
  230. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -0
  231. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +176 -0
  232. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -0
  233. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +48 -0
  234. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +182 -0
  235. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +222 -0
  236. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +191 -0
  237. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +78 -0
  238. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +433 -0
  239. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +195 -0
  240. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +71 -0
  241. package/src/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +939 -0
  242. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +118 -0
  243. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +563 -0
  244. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +157 -0
  245. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.check.vue +191 -0
  246. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.syncOper.vue +331 -0
  247. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +157 -0
  248. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -0
  249. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +43 -0
  250. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -0
  251. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -0
  252. package/src/kisscomps/components/DrawChannelization/index.js +2 -0
  253. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -0
  254. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +114 -114
  255. package/src/kisscomps/components/ExpendConfig/index.js +2 -2
  256. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +170 -170
  257. package/src/kisscomps/components/FaultDetailModal/index.js +2 -2
  258. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +497 -497
  259. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  260. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +300 -300
  261. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +288 -288
  262. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +391 -391
  263. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +336 -336
  264. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +345 -345
  265. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +389 -389
  266. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1179 -1179
  267. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +402 -402
  268. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +361 -361
  269. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +368 -368
  270. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +475 -475
  271. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +494 -494
  272. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +401 -401
  273. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +360 -360
  274. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +367 -367
  275. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +476 -476
  276. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  277. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  278. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  279. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  280. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  281. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  282. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +912 -912
  283. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +112 -112
  284. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +112 -112
  285. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +111 -111
  286. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  287. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  288. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +99 -99
  289. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +99 -99
  290. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  291. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +99 -99
  292. package/src/kisscomps/components/IntersectionMap/crossDirection/utils.js +78 -78
  293. package/src/kisscomps/components/IntersectionMap/index.js +2 -2
  294. package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +153 -153
  295. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +518 -518
  296. package/src/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  297. package/src/kisscomps/components/KanBan/index.js +2 -2
  298. package/src/kisscomps/components/KanBan/kanban.vue +219 -219
  299. package/src/kisscomps/components/MessageBox/index.vue +96 -0
  300. package/src/kisscomps/components/OverLap/OverLap.vue +207 -207
  301. package/src/kisscomps/components/OverLap/index.js +2 -2
  302. package/src/kisscomps/components/PatternStatus/PatternStatus.vue +888 -888
  303. package/src/kisscomps/components/PatternStatus/index.js +2 -2
  304. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  305. package/src/kisscomps/components/PatternWalkSvg/index.js +2 -2
  306. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  307. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  308. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  309. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  310. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  311. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  312. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  313. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +744 -744
  314. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +195 -195
  315. package/src/kisscomps/components/SchemeConfig/index.js +2 -2
  316. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +198 -198
  317. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +219 -219
  318. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +263 -263
  319. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1384 -1384
  320. package/src/kisscomps/components/StageBord/StageBord.vue +242 -242
  321. package/src/kisscomps/components/StageBord/index.js +2 -2
  322. package/src/kisscomps/components/StageStatus/StageStatus.vue +306 -306
  323. package/src/kisscomps/components/StageStatus/index.js +2 -2
  324. package/src/kisscomps/components/Stages/index.vue +139 -139
  325. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  326. package/src/kisscomps/components/SvgIcon/index.js +2 -2
  327. package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +522 -522
  328. package/src/kisscomps/components/XRDDirSelector/index.js +2 -2
  329. package/src/kisscomps/components/overView/index.vue +676 -676
  330. package/src/kisscomps/components/patternList/index.js +2 -2
  331. package/src/kisscomps/components/patternList/patternList.vue +562 -562
  332. package/src/kisscomps/index.js +102 -92
  333. package/src/lib/publicjs/ArryListUtil.js +38 -38
  334. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  335. package/src/lib/publicjs/KissApi.js +158 -158
  336. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  337. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  338. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  339. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  340. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  341. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  342. package/src/lib/publicjs/basecomponents.js +65 -65
  343. package/src/lib/publicjs/localStorage.js +112 -112
  344. package/src/lib/publicjs/objdeepcopy.js +32 -32
  345. package/src/lib/publicjs/pageScroll.js +30 -30
  346. package/src/lib/publicjs/passwdAssest.js +101 -101
  347. package/src/lib/publicjs/styleclassfactory.js +32 -32
  348. package/src/main.js +50 -47
  349. package/src/router/index.js +43 -36
  350. package/src/store/getters.js +16 -16
  351. package/src/store/index.js +26 -26
  352. package/src/store/modules/globalParam.js +78 -27
  353. package/src/utils/ControlFormat.js +68 -68
  354. package/src/utils/RingDataModel.js +191 -191
  355. package/src/utils/auth.js +111 -111
  356. package/src/utils/dateFormat.js +41 -41
  357. package/src/utils/errorcode.js +224 -224
  358. package/src/utils/fault.js +195 -195
  359. package/src/utils/faultcode.js +209 -209
  360. package/src/utils/index.js +69 -69
  361. package/src/utils/pedphasedesc.js +119 -119
  362. package/src/utils/phasedesc.js +124 -124
  363. package/src/utils/responseMessage.js +21 -21
  364. package/src/utils/validate.js +43 -43
  365. package/src/views/customchannelization.vue +49 -0
  366. package/src/views/home.1.vue +479 -479
  367. package/src/views/home.vue +78 -78
  368. package/src/views/intersection.vue +282 -276
  369. package/src/views/overView.vue +41 -41
  370. package/src/views/schemeconfig.vue +154 -154
  371. package/static/apiconfig.json +351 -336
  372. package/static/styles/channelizatioon.scss +365 -0
  373. package/static/styles/common.scss +20 -19
  374. package/static/styles/commonkanban.scss +87 -87
  375. package/static/styles/dark/index.scss +2 -2
  376. package/static/styles/dark/theme/element-dark.scss +42 -42
  377. package/static/styles/index.scss +84 -84
  378. package/static/styles/intersection.scss +170 -170
  379. package/static/styles/light/index.scss +2 -2
  380. package/static/styles/light/theme/element-light.scss +42 -42
  381. package/static/styles/overview.scss +371 -371
  382. package/static/styles/schemeconfig.scss +405 -405
  383. package/static/styles/stages.scss +64 -64
  384. package/static/token.json +2 -2
  385. package/test/e2e/custom-assertions/elementCount.js +27 -27
  386. package/test/e2e/nightwatch.conf.js +46 -46
  387. package/test/e2e/runner.js +48 -48
  388. package/test/e2e/specs/test.js +19 -19
  389. package/test/unit/.eslintrc +7 -7
  390. package/test/unit/jest.conf.js +30 -30
  391. package/test/unit/setup.js +3 -3
  392. package/test/unit/specs/HelloWorld.spec.js +11 -11
  393. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +0 -429
@@ -1,306 +1,306 @@
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 class="main-statgestatus">
14
- <div class="stage-line" v-show="numList.length>0"></div>
15
- <div v-for="(item, index) in numList" :key="index + '1'">
16
- <div class="stage-verticalline" :style="{'margin-left':item}"></div>
17
- </div>
18
- <div v-for="(item, index) in narr" :key="index + '2'">
19
- <div class="stage-text" :style="{'left':item}"><span class="stage-span">S{{index + 1}}</span></div>
20
- </div>
21
- </div>
22
- </template>
23
- <script>
24
-
25
- export default {
26
- name: 'stage-status',
27
- components: {},
28
- data () {
29
- return {
30
- // stageList: [],
31
- numList: [],
32
- stateList: [],
33
- narr: [],
34
- max: '',
35
- stageStatusList: []
36
- // stageLineStatus: false
37
- }
38
- },
39
- props: {
40
- patternStatusList: {
41
- type: Array
42
- },
43
- contrloType: {
44
- type: String
45
- },
46
- localPatternList: {
47
- type: Array
48
- },
49
- controlData: {
50
- type: Object
51
- }
52
- },
53
- watch: {
54
- controlData: {
55
- handler: function (val, oldVal) {
56
- // this.handleStages() // 计算屏障高度
57
- if (this.contrloType === 'stage') {
58
- this.getStageLine()
59
- } else {
60
- this.getPhaseId(this.controlData)
61
- }
62
- },
63
- // 深度观察监听
64
- deep: true
65
- },
66
- patternStatusList: {
67
- handler: function (val, oldVal) {
68
- // this.handleStages() // 计算屏障高度
69
- this.getPhaseId(this.patternStatusList)
70
- },
71
- // 深度观察监听
72
- deep: true
73
- }
74
- },
75
- created () {
76
- if (this.patternStatusList && this.patternStatusList.length > 1) {
77
- this.getPhaseId(this.patternStatusList)
78
- }
79
- if (this.localPatternList) {
80
- this.getStageLine()
81
- }
82
- if (this.controlData) {
83
- // this.stageLineStatus = true
84
- this.getPhaseId(this.controlData)
85
- }
86
- },
87
- mounted () {
88
- },
89
- beforeUpdate () {
90
- if (this.patternStatusList && this.patternStatusList.length > 1) {
91
- this.getPhaseId(this.patternStatusList)
92
- } else if (this.patternStatusList && this.patternStatusList.length === 1) {
93
- this.handleStages()
94
- }
95
- },
96
- methods: {
97
- getStageLine () {
98
- if (this.localPatternList.length === 0) return
99
- for (let i = 0; i < this.localPatternList.length; i++) {
100
- if (this.controlData.patternid === this.localPatternList[i].id) {
101
- if (!this.localPatternList[i].stagesList) return
102
- let stageCycleList = this.localPatternList[i].stagesList.map(item => {
103
- return item.stageSplit ? item.stageSplit : 0
104
- })
105
- let stageMaxCyle = stageCycleList.reduce((a, b) => {
106
- return a + b
107
- }, 0)
108
- this.addList(stageCycleList, stageMaxCyle)
109
- this.stageLists = this.localPatternList[i].stagesList.map(item => {
110
- return {
111
- ...item,
112
- greenWidth: (item.green / stageMaxCyle * 100).toFixed(3) + '%',
113
- yellowWidth: (item.yellow / stageMaxCyle * 100).toFixed(3) + '%',
114
- redWidth: (item.red / stageMaxCyle * 100).toFixed(3) + '%'
115
- }
116
- })
117
- }
118
- }
119
- },
120
- addList (baseArr, maxCycle) {
121
- this.narr = []
122
- // this.stageLineStatus = true
123
- let setArr = []
124
- let currNum = 0
125
- baseArr.forEach((item, index) => {
126
- if (index === 0) {
127
- setArr.push(baseArr[index])
128
- } else {
129
- if (currNum) {
130
- currNum = baseArr[index] + currNum
131
- } else {
132
- currNum = baseArr[index] + baseArr[index - 1]
133
- }
134
- setArr.push(currNum)
135
- }
136
- })
137
- this.numList = setArr.map(item => {
138
- return (item / maxCycle * 100).toFixed(3) + '%'
139
- })
140
- this.numList.unshift(0)
141
- for (let i = this.numList.length - 1; i >= 1; i--) {
142
- this.narr.push((Number.parseFloat(this.numList[i]) - Number.parseFloat(this.numList[i - 1])) / 2 + Number.parseFloat(this.numList[i - 1]) - 1 + '%')
143
- }
144
- this.narr = JSON.parse(JSON.stringify(this.narr.reverse()))
145
- },
146
- getControl (newList) { // 总揽实时数据
147
- let currentIds = ''
148
- let lastCurrentIds = ''
149
- this.stateList = [0]
150
- this.narr = []
151
- for (let j = 0; j <= this.max; j++) { // 指针长度
152
- for (let i = 0; i < newList.length; i++) { // 环列表
153
- let ring = newList[i]// 每个环对象
154
- let sum = 0
155
- for (let n = 0; n < ring.length; n++) { // 相位累计长度
156
- if (ring[n].mode !== 7) {
157
- if (this.controlData) {
158
- sum = sum + ring[n].split
159
- } else {
160
- sum = sum + ring[n].value
161
- }
162
- if (j < sum) {
163
- let phaseId = ring[n].id
164
- currentIds = currentIds + '-' + phaseId
165
- break
166
- }
167
- }
168
- }
169
- }
170
- if (lastCurrentIds !== currentIds && lastCurrentIds !== '') { // 当前相位id和上一个相比不同说明相位变化了
171
- this.stateList.push(j)// 阶段累计长度的集合
172
- }
173
- lastCurrentIds = currentIds
174
- currentIds = ''
175
- this.numList = this.stateList.map(item => {
176
- return (item / this.max * 100).toFixed(3) + '%'
177
- })
178
- }
179
- },
180
- getPhaseId (rings) { // 画阶段方法
181
- rings = JSON.parse(JSON.stringify(rings))
182
- if (rings.length === 0) {
183
- // this.stageLineStatus = false
184
- return
185
- }
186
- // this.stageLineStatus = true
187
- if (this.controlData) {
188
- if (!rings.rings) return
189
- let mapAdd = rings.phase.map(item => {
190
- return {
191
- id: item.id,
192
- split: item.split
193
- }
194
- })
195
- let newRings = rings.rings.map(j => {
196
- return j.sequence
197
- })
198
- let newList = newRings.map(item => {
199
- let ret = []
200
- item.map(i => {
201
- const find = mapAdd.find(j => j.id === i)
202
- if (find) {
203
- ret.push(find)
204
- }
205
- })
206
- return ret
207
- })
208
- let mapAdds = newList.map(item => {
209
- return item.map(val => {
210
- return val.split
211
- })
212
- })
213
- let maxCycle = mapAdds.length > 0 ? mapAdds.map(item => {
214
- return item.length > 0 ? item.reduce((a, b) => {
215
- return a + b
216
- }) : 0
217
- }) : 0
218
- this.max = Math.max(...maxCycle)// 每个环的周期最大值
219
- this.getControl(newList)
220
- } else {
221
- let mapAdd = rings.map(item => {
222
- return item.map(val => {
223
- return val.value
224
- })
225
- })
226
- let maxCycle = mapAdd.length > 0 ? mapAdd.map(item => {
227
- return item.length > 0 ? item.reduce((a, b) => {
228
- return a + b
229
- }) : 0
230
- }) : 0
231
- this.max = Math.max(...maxCycle)// 每个环的周期最大值
232
- this.getControl(rings)
233
- }
234
- for (let i = this.numList.length - 1; i >= 1; i--) {
235
- this.narr.push((Number.parseFloat(this.numList[i]) - Number.parseFloat(this.numList[i - 1])) / 2 + Number.parseFloat(this.numList[i - 1]) - 1 + '%')
236
- }
237
- this.narr = JSON.parse(JSON.stringify(this.narr.reverse()))
238
- },
239
- handleStages () {
240
- this.numList = [0]
241
- this.narr = []
242
- if (this.patternStatusList.length === 0) {
243
- // this.stageLineStatus = false
244
- return
245
- }
246
- // this.stageLineStatus = true
247
- let firstPatternStatusList = this.patternStatusList[0]
248
- let stageLength = 0
249
- let stageStatusLength = 0
250
- for (let i = 0; i < firstPatternStatusList.length; i++) {
251
- let tempLength = Number.parseFloat(firstPatternStatusList[i].greenWidth) + Number.parseFloat(firstPatternStatusList[i].redWidth) + Number.parseFloat(firstPatternStatusList[i].yellowWidth)
252
- stageStatusLength = stageLength + tempLength / 2 - 1
253
- stageLength = stageLength + tempLength
254
- this.numList.push(stageLength + '%')
255
- this.narr.push(stageStatusLength + '%')
256
- }
257
- }
258
- },
259
- computed: {
260
- }
261
- }
262
- </script>
263
- <style lang="scss" scoped>
264
- .main-statgestatus {
265
- position: relative;
266
- margin-bottom: 30px;
267
- }
268
- .stage-line {
269
- position: relative;
270
- top: 7px;
271
- width: 100%;
272
- height: 1px;
273
- background-color: #FFFFFF;
274
- z-index:1;
275
- }
276
- .stage-verticalline {
277
- position: absolute;
278
- float: left;
279
- width: 1px;
280
- height: 14px;
281
- background-color: #FFFFFF;
282
- z-index:2;
283
- }
284
- .stage-text {
285
- position: absolute;
286
- float: left;
287
- width: 25px;
288
- text-align: center;
289
- background-color: #202940;
290
- z-index:3;
291
- }
292
- .stage-span {
293
- // position: relative;
294
- bottom: 3px;
295
- left: 5px;
296
- width: 15px;
297
- height: 14px;
298
- font-size: 14px;
299
- font-weight: normal;
300
- font-stretch: normal;
301
- line-height: 20px;
302
- letter-spacing: 0px;
303
- background-color: #202940;
304
- color: #FFFFFF;
305
- }
306
- </style>
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 class="main-statgestatus">
14
+ <div class="stage-line" v-show="numList.length>0"></div>
15
+ <div v-for="(item, index) in numList" :key="index + '1'">
16
+ <div class="stage-verticalline" :style="{'margin-left':item}"></div>
17
+ </div>
18
+ <div v-for="(item, index) in narr" :key="index + '2'">
19
+ <div class="stage-text" :style="{'left':item}"><span class="stage-span">S{{index + 1}}</span></div>
20
+ </div>
21
+ </div>
22
+ </template>
23
+ <script>
24
+
25
+ export default {
26
+ name: 'stage-status',
27
+ components: {},
28
+ data () {
29
+ return {
30
+ // stageList: [],
31
+ numList: [],
32
+ stateList: [],
33
+ narr: [],
34
+ max: '',
35
+ stageStatusList: []
36
+ // stageLineStatus: false
37
+ }
38
+ },
39
+ props: {
40
+ patternStatusList: {
41
+ type: Array
42
+ },
43
+ contrloType: {
44
+ type: String
45
+ },
46
+ localPatternList: {
47
+ type: Array
48
+ },
49
+ controlData: {
50
+ type: Object
51
+ }
52
+ },
53
+ watch: {
54
+ controlData: {
55
+ handler: function (val, oldVal) {
56
+ // this.handleStages() // 计算屏障高度
57
+ if (this.contrloType === 'stage') {
58
+ this.getStageLine()
59
+ } else {
60
+ this.getPhaseId(this.controlData)
61
+ }
62
+ },
63
+ // 深度观察监听
64
+ deep: true
65
+ },
66
+ patternStatusList: {
67
+ handler: function (val, oldVal) {
68
+ // this.handleStages() // 计算屏障高度
69
+ this.getPhaseId(this.patternStatusList)
70
+ },
71
+ // 深度观察监听
72
+ deep: true
73
+ }
74
+ },
75
+ created () {
76
+ if (this.patternStatusList && this.patternStatusList.length > 1) {
77
+ this.getPhaseId(this.patternStatusList)
78
+ }
79
+ if (this.localPatternList) {
80
+ this.getStageLine()
81
+ }
82
+ if (this.controlData) {
83
+ // this.stageLineStatus = true
84
+ this.getPhaseId(this.controlData)
85
+ }
86
+ },
87
+ mounted () {
88
+ },
89
+ beforeUpdate () {
90
+ if (this.patternStatusList && this.patternStatusList.length > 1) {
91
+ this.getPhaseId(this.patternStatusList)
92
+ } else if (this.patternStatusList && this.patternStatusList.length === 1) {
93
+ this.handleStages()
94
+ }
95
+ },
96
+ methods: {
97
+ getStageLine () {
98
+ if (this.localPatternList.length === 0) return
99
+ for (let i = 0; i < this.localPatternList.length; i++) {
100
+ if (this.controlData.patternid === this.localPatternList[i].id) {
101
+ if (!this.localPatternList[i].stagesList) return
102
+ let stageCycleList = this.localPatternList[i].stagesList.map(item => {
103
+ return item.stageSplit ? item.stageSplit : 0
104
+ })
105
+ let stageMaxCyle = stageCycleList.reduce((a, b) => {
106
+ return a + b
107
+ }, 0)
108
+ this.addList(stageCycleList, stageMaxCyle)
109
+ this.stageLists = this.localPatternList[i].stagesList.map(item => {
110
+ return {
111
+ ...item,
112
+ greenWidth: (item.green / stageMaxCyle * 100).toFixed(3) + '%',
113
+ yellowWidth: (item.yellow / stageMaxCyle * 100).toFixed(3) + '%',
114
+ redWidth: (item.red / stageMaxCyle * 100).toFixed(3) + '%'
115
+ }
116
+ })
117
+ }
118
+ }
119
+ },
120
+ addList (baseArr, maxCycle) {
121
+ this.narr = []
122
+ // this.stageLineStatus = true
123
+ let setArr = []
124
+ let currNum = 0
125
+ baseArr.forEach((item, index) => {
126
+ if (index === 0) {
127
+ setArr.push(baseArr[index])
128
+ } else {
129
+ if (currNum) {
130
+ currNum = baseArr[index] + currNum
131
+ } else {
132
+ currNum = baseArr[index] + baseArr[index - 1]
133
+ }
134
+ setArr.push(currNum)
135
+ }
136
+ })
137
+ this.numList = setArr.map(item => {
138
+ return (item / maxCycle * 100).toFixed(3) + '%'
139
+ })
140
+ this.numList.unshift(0)
141
+ for (let i = this.numList.length - 1; i >= 1; i--) {
142
+ this.narr.push((Number.parseFloat(this.numList[i]) - Number.parseFloat(this.numList[i - 1])) / 2 + Number.parseFloat(this.numList[i - 1]) - 1 + '%')
143
+ }
144
+ this.narr = JSON.parse(JSON.stringify(this.narr.reverse()))
145
+ },
146
+ getControl (newList) { // 总揽实时数据
147
+ let currentIds = ''
148
+ let lastCurrentIds = ''
149
+ this.stateList = [0]
150
+ this.narr = []
151
+ for (let j = 0; j <= this.max; j++) { // 指针长度
152
+ for (let i = 0; i < newList.length; i++) { // 环列表
153
+ let ring = newList[i]// 每个环对象
154
+ let sum = 0
155
+ for (let n = 0; n < ring.length; n++) { // 相位累计长度
156
+ if (ring[n].mode !== 7) {
157
+ if (this.controlData) {
158
+ sum = sum + ring[n].split
159
+ } else {
160
+ sum = sum + ring[n].value
161
+ }
162
+ if (j < sum) {
163
+ let phaseId = ring[n].id
164
+ currentIds = currentIds + '-' + phaseId
165
+ break
166
+ }
167
+ }
168
+ }
169
+ }
170
+ if (lastCurrentIds !== currentIds && lastCurrentIds !== '') { // 当前相位id和上一个相比不同说明相位变化了
171
+ this.stateList.push(j)// 阶段累计长度的集合
172
+ }
173
+ lastCurrentIds = currentIds
174
+ currentIds = ''
175
+ this.numList = this.stateList.map(item => {
176
+ return (item / this.max * 100).toFixed(3) + '%'
177
+ })
178
+ }
179
+ },
180
+ getPhaseId (rings) { // 画阶段方法
181
+ rings = JSON.parse(JSON.stringify(rings))
182
+ if (rings.length === 0) {
183
+ // this.stageLineStatus = false
184
+ return
185
+ }
186
+ // this.stageLineStatus = true
187
+ if (this.controlData) {
188
+ if (!rings.rings) return
189
+ let mapAdd = rings.phase.map(item => {
190
+ return {
191
+ id: item.id,
192
+ split: item.split
193
+ }
194
+ })
195
+ let newRings = rings.rings.map(j => {
196
+ return j.sequence
197
+ })
198
+ let newList = newRings.map(item => {
199
+ let ret = []
200
+ item.map(i => {
201
+ const find = mapAdd.find(j => j.id === i)
202
+ if (find) {
203
+ ret.push(find)
204
+ }
205
+ })
206
+ return ret
207
+ })
208
+ let mapAdds = newList.map(item => {
209
+ return item.map(val => {
210
+ return val.split
211
+ })
212
+ })
213
+ let maxCycle = mapAdds.length > 0 ? mapAdds.map(item => {
214
+ return item.length > 0 ? item.reduce((a, b) => {
215
+ return a + b
216
+ }) : 0
217
+ }) : 0
218
+ this.max = Math.max(...maxCycle)// 每个环的周期最大值
219
+ this.getControl(newList)
220
+ } else {
221
+ let mapAdd = rings.map(item => {
222
+ return item.map(val => {
223
+ return val.value
224
+ })
225
+ })
226
+ let maxCycle = mapAdd.length > 0 ? mapAdd.map(item => {
227
+ return item.length > 0 ? item.reduce((a, b) => {
228
+ return a + b
229
+ }) : 0
230
+ }) : 0
231
+ this.max = Math.max(...maxCycle)// 每个环的周期最大值
232
+ this.getControl(rings)
233
+ }
234
+ for (let i = this.numList.length - 1; i >= 1; i--) {
235
+ this.narr.push((Number.parseFloat(this.numList[i]) - Number.parseFloat(this.numList[i - 1])) / 2 + Number.parseFloat(this.numList[i - 1]) - 1 + '%')
236
+ }
237
+ this.narr = JSON.parse(JSON.stringify(this.narr.reverse()))
238
+ },
239
+ handleStages () {
240
+ this.numList = [0]
241
+ this.narr = []
242
+ if (this.patternStatusList.length === 0) {
243
+ // this.stageLineStatus = false
244
+ return
245
+ }
246
+ // this.stageLineStatus = true
247
+ let firstPatternStatusList = this.patternStatusList[0]
248
+ let stageLength = 0
249
+ let stageStatusLength = 0
250
+ for (let i = 0; i < firstPatternStatusList.length; i++) {
251
+ let tempLength = Number.parseFloat(firstPatternStatusList[i].greenWidth) + Number.parseFloat(firstPatternStatusList[i].redWidth) + Number.parseFloat(firstPatternStatusList[i].yellowWidth)
252
+ stageStatusLength = stageLength + tempLength / 2 - 1
253
+ stageLength = stageLength + tempLength
254
+ this.numList.push(stageLength + '%')
255
+ this.narr.push(stageStatusLength + '%')
256
+ }
257
+ }
258
+ },
259
+ computed: {
260
+ }
261
+ }
262
+ </script>
263
+ <style lang="scss" scoped>
264
+ .main-statgestatus {
265
+ position: relative;
266
+ margin-bottom: 30px;
267
+ }
268
+ .stage-line {
269
+ position: relative;
270
+ top: 7px;
271
+ width: 100%;
272
+ height: 1px;
273
+ background-color: #FFFFFF;
274
+ z-index:1;
275
+ }
276
+ .stage-verticalline {
277
+ position: absolute;
278
+ float: left;
279
+ width: 1px;
280
+ height: 14px;
281
+ background-color: #FFFFFF;
282
+ z-index:2;
283
+ }
284
+ .stage-text {
285
+ position: absolute;
286
+ float: left;
287
+ width: 25px;
288
+ text-align: center;
289
+ background-color: #202940;
290
+ z-index:3;
291
+ }
292
+ .stage-span {
293
+ // position: relative;
294
+ bottom: 3px;
295
+ left: 5px;
296
+ width: 15px;
297
+ height: 14px;
298
+ font-size: 14px;
299
+ font-weight: normal;
300
+ font-stretch: normal;
301
+ line-height: 20px;
302
+ letter-spacing: 0px;
303
+ background-color: #202940;
304
+ color: #FFFFFF;
305
+ }
306
+ </style>
@@ -1,2 +1,2 @@
1
- import StageStatus from './StageStatus.vue'
2
- export default StageStatus
1
+ import StageStatus from './StageStatus.vue'
2
+ export default StageStatus