openatc-components 0.0.44-hotfix → 0.0.45

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 (298) 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/CommonKanban/CommonKanban.vue +118 -118
  25. package/package/kisscomps/components/CommonKanban/index.js +2 -2
  26. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +93 -93
  27. package/package/kisscomps/components/ExpendConfig/index.js +2 -2
  28. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +170 -170
  29. package/package/kisscomps/components/FaultDetailModal/index.js +2 -2
  30. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +497 -497
  31. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  32. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +429 -429
  33. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +300 -300
  34. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +288 -288
  35. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +391 -391
  36. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +336 -336
  37. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +345 -345
  38. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +389 -389
  39. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1179 -1179
  40. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +402 -402
  41. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +361 -361
  42. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +368 -368
  43. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +475 -475
  44. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +494 -494
  45. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +401 -401
  46. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +360 -360
  47. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +367 -367
  48. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +476 -476
  49. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  50. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  51. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  52. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  53. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  54. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  55. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +898 -898
  56. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +112 -112
  57. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +112 -112
  58. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +111 -111
  59. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  60. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  61. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +99 -99
  62. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +99 -99
  63. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  64. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +99 -99
  65. package/package/kisscomps/components/IntersectionMap/crossDirection/utils.js +78 -78
  66. package/package/kisscomps/components/IntersectionMap/index.js +2 -2
  67. package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +148 -148
  68. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +513 -513
  69. package/package/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  70. package/package/kisscomps/components/KanBan/index.js +2 -2
  71. package/package/kisscomps/components/KanBan/kanban.vue +219 -219
  72. package/package/kisscomps/components/OverLap/OverLap.vue +205 -205
  73. package/package/kisscomps/components/OverLap/index.js +2 -2
  74. package/package/kisscomps/components/PatternStatus/PatternStatus.vue +846 -846
  75. package/package/kisscomps/components/PatternStatus/index.js +2 -2
  76. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +428 -428
  77. package/package/kisscomps/components/PatternWalkSvg/index.js +2 -2
  78. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  79. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  80. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  81. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  82. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  83. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  84. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  85. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +714 -714
  86. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +195 -195
  87. package/package/kisscomps/components/SchemeConfig/index.js +2 -2
  88. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +198 -198
  89. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +198 -198
  90. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +263 -263
  91. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1412 -1412
  92. package/package/kisscomps/components/StageBord/StageBord.vue +243 -243
  93. package/package/kisscomps/components/StageBord/index.js +2 -2
  94. package/package/kisscomps/components/StageStatus/StageStatus.vue +306 -306
  95. package/package/kisscomps/components/StageStatus/index.js +2 -2
  96. package/package/kisscomps/components/Stages/index.vue +126 -120
  97. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  98. package/package/kisscomps/components/SvgIcon/index.js +2 -2
  99. package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +522 -522
  100. package/package/kisscomps/components/XRDDirSelector/index.js +2 -2
  101. package/package/kisscomps/components/overView/index.vue +656 -656
  102. package/package/kisscomps/components/patternList/index.js +2 -2
  103. package/package/kisscomps/components/patternList/patternList.vue +562 -562
  104. package/package/kisscomps/index.js +85 -85
  105. package/package/kissui.min.js +1 -1
  106. package/package.json +122 -122
  107. package/src/App.vue +24 -24
  108. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  109. package/src/EdgeMgr/controller/crossDiagramMgr.js +120 -120
  110. package/src/api/authapi.js +31 -31
  111. package/src/api/config.js +21 -21
  112. package/src/api/control.js +76 -76
  113. package/src/api/fault.js +66 -66
  114. package/src/api/index.js +24 -24
  115. package/src/api/login.js +46 -46
  116. package/src/api/optimize.js +72 -72
  117. package/src/api/param.js +154 -154
  118. package/src/api/passwdAssest.js +101 -101
  119. package/src/api/template.js +27 -27
  120. package/src/i18n/index.js +26 -26
  121. package/src/i18n/language/en.js +1111 -1111
  122. package/src/i18n/language/index.js +25 -25
  123. package/src/i18n/language/zh.js +1110 -1110
  124. package/src/icons/demo.css +539 -0
  125. package/src/icons/iconfont.css +11 -3
  126. package/src/icons/iconfont.js +1 -1
  127. package/src/icons/iconfont.json +14 -0
  128. package/src/icons/iconfont.ttf +0 -0
  129. package/src/icons/iconfont.woff +0 -0
  130. package/src/icons/iconfont.woff2 +0 -0
  131. package/src/icons/index.js +20 -20
  132. package/src/icons/svg/bendi.svg +110 -110
  133. package/src/icons/svg/bujin.svg +36 -36
  134. package/src/icons/svg/connectBlue.svg +7 -7
  135. package/src/icons/svg/currentvolume.svg +0 -0
  136. package/src/icons/svg/cutRed.svg +7 -7
  137. package/src/icons/svg/cycle.svg +0 -0
  138. package/src/icons/svg/dingzhouqi.svg +34 -34
  139. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  140. package/src/icons/svg/guandeng.svg +81 -81
  141. package/src/icons/svg/huangshan.svg +71 -71
  142. package/src/icons/svg/maincontrol.svg +0 -0
  143. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  144. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  145. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  146. package/src/icons/svg/model.svg +0 -0
  147. package/src/icons/svg/phasediff.svg +0 -0
  148. package/src/icons/svg/quanhong.svg +86 -86
  149. package/src/icons/svg/shanghe.svg +11 -11
  150. package/src/icons/svg/shoudong.svg +103 -103
  151. package/src/icons/svg/time.svg +0 -0
  152. package/src/icons/svg/wuxianlan.svg +46 -46
  153. package/src/icons/svg/xiala.svg +11 -11
  154. package/src/icons/svg/xingrenguojie.svg +33 -33
  155. package/src/icons/svg/xitong.svg +89 -89
  156. package/src/icons/svg/youxian.svg +41 -41
  157. package/src/icons/svg/zizhukongzhi.svg +43 -43
  158. package/src/kisscomps/components/BoardCard/BoardCard.vue +89 -89
  159. package/src/kisscomps/components/BoardCard/index.js +2 -2
  160. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +118 -118
  161. package/src/kisscomps/components/CommonKanban/index.js +2 -2
  162. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +93 -93
  163. package/src/kisscomps/components/ExpendConfig/index.js +2 -2
  164. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +170 -170
  165. package/src/kisscomps/components/FaultDetailModal/index.js +2 -2
  166. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +497 -497
  167. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  168. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +429 -429
  169. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +300 -300
  170. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +288 -288
  171. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +391 -391
  172. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +336 -336
  173. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +345 -345
  174. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +389 -389
  175. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1179 -1179
  176. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +402 -402
  177. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +361 -361
  178. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +368 -368
  179. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +475 -475
  180. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +494 -494
  181. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +401 -401
  182. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +360 -360
  183. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +367 -367
  184. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +476 -476
  185. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  186. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  187. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  188. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  189. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  190. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  191. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +898 -898
  192. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +112 -112
  193. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +112 -112
  194. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +111 -111
  195. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  196. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  197. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +99 -99
  198. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +99 -99
  199. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  200. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +99 -99
  201. package/src/kisscomps/components/IntersectionMap/crossDirection/utils.js +78 -78
  202. package/src/kisscomps/components/IntersectionMap/index.js +2 -2
  203. package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +148 -148
  204. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +513 -513
  205. package/src/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  206. package/src/kisscomps/components/KanBan/index.js +2 -2
  207. package/src/kisscomps/components/KanBan/kanban.vue +219 -219
  208. package/src/kisscomps/components/OverLap/OverLap.vue +205 -205
  209. package/src/kisscomps/components/OverLap/index.js +2 -2
  210. package/src/kisscomps/components/PatternStatus/PatternStatus.vue +846 -846
  211. package/src/kisscomps/components/PatternStatus/index.js +2 -2
  212. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +428 -428
  213. package/src/kisscomps/components/PatternWalkSvg/index.js +2 -2
  214. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  215. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  216. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  217. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  218. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  219. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  220. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  221. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +714 -714
  222. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +195 -195
  223. package/src/kisscomps/components/SchemeConfig/index.js +2 -2
  224. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +198 -198
  225. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +198 -198
  226. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +263 -263
  227. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1412 -1412
  228. package/src/kisscomps/components/StageBord/StageBord.vue +243 -243
  229. package/src/kisscomps/components/StageBord/index.js +2 -2
  230. package/src/kisscomps/components/StageStatus/StageStatus.vue +306 -306
  231. package/src/kisscomps/components/StageStatus/index.js +2 -2
  232. package/src/kisscomps/components/Stages/index.vue +126 -120
  233. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  234. package/src/kisscomps/components/SvgIcon/index.js +2 -2
  235. package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +522 -522
  236. package/src/kisscomps/components/XRDDirSelector/index.js +2 -2
  237. package/src/kisscomps/components/overView/index.vue +656 -656
  238. package/src/kisscomps/components/patternList/index.js +2 -2
  239. package/src/kisscomps/components/patternList/patternList.vue +562 -562
  240. package/src/kisscomps/index.js +85 -85
  241. package/src/lib/publicjs/ArryListUtil.js +38 -38
  242. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  243. package/src/lib/publicjs/KissApi.js +158 -158
  244. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  245. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  246. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  247. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  248. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  249. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  250. package/src/lib/publicjs/basecomponents.js +65 -65
  251. package/src/lib/publicjs/localStorage.js +112 -112
  252. package/src/lib/publicjs/objdeepcopy.js +32 -32
  253. package/src/lib/publicjs/pageScroll.js +30 -30
  254. package/src/lib/publicjs/passwdAssest.js +101 -101
  255. package/src/lib/publicjs/styleclassfactory.js +32 -32
  256. package/src/main.js +47 -47
  257. package/src/router/index.js +36 -36
  258. package/src/store/getters.js +16 -16
  259. package/src/store/index.js +26 -26
  260. package/src/store/modules/globalParam.js +27 -27
  261. package/src/utils/ControlFormat.js +68 -68
  262. package/src/utils/RingDataModel.js +173 -173
  263. package/src/utils/auth.js +110 -110
  264. package/src/utils/dateFormat.js +41 -41
  265. package/src/utils/errorcode.js +224 -224
  266. package/src/utils/fault.js +195 -195
  267. package/src/utils/faultcode.js +209 -209
  268. package/src/utils/index.js +69 -69
  269. package/src/utils/pedphasedesc.js +119 -119
  270. package/src/utils/phasedesc.js +124 -124
  271. package/src/utils/responseMessage.js +21 -21
  272. package/src/utils/validate.js +43 -43
  273. package/src/views/home.1.vue +479 -479
  274. package/src/views/home.vue +78 -78
  275. package/src/views/intersection.vue +276 -276
  276. package/src/views/overView.vue +33 -33
  277. package/src/views/schemeconfig.vue +154 -154
  278. package/static/apiconfig.json +336 -336
  279. package/static/styles/common.scss +19 -19
  280. package/static/styles/commonkanban.scss +87 -87
  281. package/static/styles/dark/index.scss +2 -2
  282. package/static/styles/dark/theme/element-dark.scss +42 -42
  283. package/static/styles/index.scss +84 -84
  284. package/static/styles/intersection.scss +161 -161
  285. package/static/styles/light/index.scss +2 -2
  286. package/static/styles/light/theme/element-light.scss +42 -42
  287. package/static/styles/overview.scss +371 -371
  288. package/static/styles/schemeconfig.scss +396 -396
  289. package/static/styles/stages.scss +64 -64
  290. package/static/token.json +2 -2
  291. package/test/e2e/custom-assertions/elementCount.js +27 -27
  292. package/test/e2e/nightwatch.conf.js +46 -46
  293. package/test/e2e/runner.js +48 -48
  294. package/test/e2e/specs/test.js +19 -19
  295. package/test/unit/.eslintrc +7 -7
  296. package/test/unit/jest.conf.js +30 -30
  297. package/test/unit/setup.js +3 -3
  298. package/test/unit/specs/HelloWorld.spec.js +11 -11
@@ -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: Boolean
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) {
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: Boolean
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) {
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