openatc-components 0.5.18 → 0.5.20

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 (358) 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/svg/ped-east-bottom.vue +41 -41
  25. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  26. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  27. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  28. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  29. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  30. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  31. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  32. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  33. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  34. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  35. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  36. package/package/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  37. package/package/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  38. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  39. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  40. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  41. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  42. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  43. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  44. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  45. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  46. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  47. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  48. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  49. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  50. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  51. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  52. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  53. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  54. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  55. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  56. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  57. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  58. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  59. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  60. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  61. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  62. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  63. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  64. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  65. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  66. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  67. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  68. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  69. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  70. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  71. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  72. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  73. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  74. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  75. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  76. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  77. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  78. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  79. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  90. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  91. package/package/kisscomps/components/KanBan/kanban.vue +231 -231
  92. package/package/kisscomps/components/MessageBox/index.vue +96 -96
  93. package/package/kisscomps/components/OptimizeKanban/index.js +2 -0
  94. package/package/kisscomps/components/OptimizeKanban/index.vue +369 -0
  95. package/package/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  96. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  97. package/package/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  98. package/package/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  99. package/package/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  100. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  101. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  102. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  103. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  104. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  105. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  106. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  107. package/package/kisscomps/components/PhasePedSelect/index.vue +206 -206
  108. package/package/kisscomps/components/RcpRightPanel/index.vue +4 -0
  109. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  110. package/package/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  111. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  112. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  113. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  114. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  115. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  116. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  117. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  118. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  119. package/package/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  120. package/package/kisscomps/components/SelectGBCrossStage/index.vue +5 -0
  121. package/package/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  122. package/package/kisscomps/components/StageOptimize/index.js +2 -2
  123. package/package/kisscomps/components/StageOptimize/index.vue +310 -0
  124. package/package/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  125. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  126. package/package/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  127. package/package/kisscomps/components/XiaoKanban/index.vue +122 -122
  128. package/package/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  129. package/package/kisscomps/components/patternConfig/planContent.vue +604 -604
  130. package/package/kisscomps/components/patternConfig/planMenu.vue +329 -329
  131. package/package/kissui.min.js +1 -1
  132. package/package.json +1 -1
  133. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  134. package/src/EdgeMgr/controller/crossDiagramMgr.js +125 -125
  135. package/src/api/authapi.js +31 -31
  136. package/src/api/config.js +21 -21
  137. package/src/api/control.js +110 -110
  138. package/src/api/device.js +135 -135
  139. package/src/api/fault.js +66 -66
  140. package/src/api/index.js +24 -24
  141. package/src/api/login.js +46 -46
  142. package/src/api/optimize.js +72 -72
  143. package/src/api/passwdAssest.js +101 -101
  144. package/src/api/permission.js +33 -33
  145. package/src/api/route.js +171 -171
  146. package/src/assets/font/LICENSE.txt +202 -202
  147. package/src/assets/font/font.css +6 -6
  148. package/src/i18n/index.js +26 -26
  149. package/src/icons/index.js +20 -20
  150. package/src/icons/svg/azimuthlocking.svg +26 -26
  151. package/src/icons/svg/bendi.svg +110 -110
  152. package/src/icons/svg/bujin.svg +36 -36
  153. package/src/icons/svg/connectBlue.svg +7 -7
  154. package/src/icons/svg/currentvolume.svg +0 -0
  155. package/src/icons/svg/custom-BRTlane.svg +40 -40
  156. package/src/icons/svg/custom-buslane.svg +40 -40
  157. package/src/icons/svg/custom-detector.svg +12 -12
  158. package/src/icons/svg/custom-east-bottom.svg +32 -32
  159. package/src/icons/svg/custom-east-top.svg +32 -32
  160. package/src/icons/svg/custom-ewped.svg +35 -35
  161. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -40
  162. package/src/icons/svg/custom-north-left.svg +32 -32
  163. package/src/icons/svg/custom-north-right.svg +32 -32
  164. package/src/icons/svg/custom-peddetector.svg +17 -17
  165. package/src/icons/svg/custom-snped.svg +35 -35
  166. package/src/icons/svg/custom-south-left.svg +32 -32
  167. package/src/icons/svg/custom-south-right.svg +32 -32
  168. package/src/icons/svg/custom-tramlane.svg +40 -40
  169. package/src/icons/svg/custom-vehiclebranch.svg +40 -40
  170. package/src/icons/svg/custom-vehiclemainroad.svg +41 -41
  171. package/src/icons/svg/custom-west-bottom.svg +32 -32
  172. package/src/icons/svg/custom-west-top.svg +32 -32
  173. package/src/icons/svg/custom-xlped.svg +14 -14
  174. package/src/icons/svg/custom-xrped.svg +14 -14
  175. package/src/icons/svg/cutRed.svg +7 -7
  176. package/src/icons/svg/cycle.svg +0 -0
  177. package/src/icons/svg/dingzhouqi.svg +34 -34
  178. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  179. package/src/icons/svg/guandeng.svg +81 -81
  180. package/src/icons/svg/huangshan.svg +71 -71
  181. package/src/icons/svg/maincontrol.svg +0 -0
  182. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  183. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  184. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  185. package/src/icons/svg/model.svg +0 -0
  186. package/src/icons/svg/phasediff.svg +0 -0
  187. package/src/icons/svg/prioritycontrol.svg +21 -21
  188. package/src/icons/svg/quanhong.svg +86 -86
  189. package/src/icons/svg/shanghe.svg +11 -11
  190. package/src/icons/svg/shoudong.svg +103 -103
  191. package/src/icons/svg/tentativeplan.svg +28 -28
  192. package/src/icons/svg/time.svg +0 -0
  193. package/src/icons/svg/wuxianlan.svg +46 -46
  194. package/src/icons/svg/xiala.svg +11 -11
  195. package/src/icons/svg/xingrenguojie.svg +33 -33
  196. package/src/icons/svg/xitong.svg +89 -89
  197. package/src/icons/svg/youxian.svg +41 -41
  198. package/src/icons/svg/zizhukongzhi.svg +43 -43
  199. package/src/kisscomps/components/Channelization/Channelization.vue +585 -585
  200. package/src/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  201. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  202. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  203. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  204. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  205. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  206. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  207. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  208. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  209. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  210. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  211. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  212. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  213. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  214. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  215. package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  216. package/src/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  217. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  218. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  219. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  220. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  221. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  222. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  223. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  224. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  225. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  226. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  227. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  228. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  229. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  230. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  231. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  232. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  233. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  234. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  235. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  236. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  237. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  238. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  239. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  240. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  241. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  242. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  243. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  244. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  245. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  246. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  247. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  248. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  249. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  250. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  251. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  252. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  253. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  254. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  255. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  256. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  257. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  258. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  259. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  260. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  261. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  262. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  263. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  264. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  265. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  266. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  267. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  268. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  269. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  270. package/src/kisscomps/components/KanBan/kanban.vue +231 -231
  271. package/src/kisscomps/components/MessageBox/index.vue +96 -96
  272. package/src/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  273. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  274. package/src/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  275. package/src/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  276. package/src/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  277. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  278. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  279. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  280. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  281. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  282. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  283. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  284. package/src/kisscomps/components/PhasePedSelect/index.vue +206 -206
  285. package/src/kisscomps/components/RcpRightPanel/index.vue +4 -0
  286. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  287. package/src/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  288. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  289. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  290. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  291. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  292. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  293. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  294. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  295. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  296. package/src/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  297. package/src/kisscomps/components/SelectGBCrossStage/index.vue +5 -0
  298. package/src/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  299. package/src/kisscomps/components/StageOptimize/index.js +2 -2
  300. package/src/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  301. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  302. package/src/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  303. package/src/kisscomps/components/XiaoKanban/index.vue +122 -122
  304. package/src/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  305. package/src/kisscomps/components/patternConfig/planContent.vue +604 -604
  306. package/src/kisscomps/components/patternConfig/planMenu.vue +329 -329
  307. package/src/lib/publicjs/ArryListUtil.js +38 -38
  308. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  309. package/src/lib/publicjs/KissApi.js +158 -158
  310. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  311. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  312. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  313. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  314. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  315. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  316. package/src/lib/publicjs/basecomponents.js +65 -65
  317. package/src/lib/publicjs/localStorage.js +112 -112
  318. package/src/lib/publicjs/objdeepcopy.js +32 -32
  319. package/src/lib/publicjs/pageScroll.js +30 -30
  320. package/src/lib/publicjs/passwdAssest.js +101 -101
  321. package/src/lib/publicjs/styleclassfactory.js +32 -32
  322. package/src/node_modules/.package_versions.json +1 -0
  323. package/src/store/index.js +26 -26
  324. package/src/store/modules/globalParam.js +67 -67
  325. package/src/utils/RingDataModel.js +335 -335
  326. package/src/utils/conflictList.js +87 -87
  327. package/src/utils/dateFormat.js +41 -41
  328. package/src/utils/index.js +69 -69
  329. package/src/utils/phaseList.js +203 -203
  330. package/src/utils/validate.js +43 -43
  331. package/src/views/home.1.vue +479 -479
  332. package/src/views/home.vue +93 -93
  333. package/src/views/intersection2.vue +328 -328
  334. package/src/views/overView.vue +63 -63
  335. package/static/styles/channelizatioon.scss +433 -433
  336. package/static/styles/common.scss +30 -30
  337. package/static/styles/commonkanban.scss +168 -168
  338. package/static/styles/dark/index.scss +2 -2
  339. package/static/styles/dark/theme/element-dark.scss +44 -44
  340. package/static/styles/index.scss +84 -84
  341. package/static/styles/intersection.scss +180 -180
  342. package/static/styles/light/index.scss +2 -2
  343. package/static/styles/light/theme/element-light.scss +44 -44
  344. package/static/styles/patternConfig.scss +56 -56
  345. package/static/styles/phasePedSelect.scss +71 -71
  346. package/static/styles/stages.scss +57 -57
  347. package/static/styles/xiaokanban.scss +61 -61
  348. package/static/token.json +2 -2
  349. package/test/e2e/custom-assertions/elementCount.js +27 -27
  350. package/test/e2e/nightwatch.conf.js +46 -46
  351. package/test/e2e/runner.js +48 -48
  352. package/test/e2e/specs/test.js +19 -19
  353. package/test/unit/.eslintrc +7 -7
  354. package/test/unit/jest.conf.js +30 -30
  355. package/test/unit/setup.js +3 -3
  356. package/test/unit/specs/HelloWorld.spec.js +11 -11
  357. package/package/kissui.js +0 -216608
  358. package/pnpm-lock.yaml +0 -16362
@@ -1,308 +1,308 @@
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="realtime-panel">
14
- <div class="cross-mess">{{$t('openatccomponents.overview.crossinfo')}}</div>
15
- <div class="cross-module">
16
- <div class="cross-content">
17
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.crossname')}}:</div>
18
- <div style="margin-left: 85px;" class="cross-value">{{agentName}}</div>
19
- </div>
20
- <!-- <div class="cross-content">
21
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.divicestate')}}:</div>
22
- <div
23
- v-show="devStatus===3"
24
- style="margin-left: 85px;"
25
- class="cross-value"
26
- >{{$t('openatccomponents.overview.connected')}}</div>
27
- <div
28
- v-show="devStatus===2"
29
- style="margin-left: 85px;"
30
- class="cross-value"
31
- >{{$t('openatccomponents.overview.offline')}}</div>
32
- <div
33
- v-show="devStatus===1"
34
- style="margin-left: 85px;"
35
- class="cross-value"
36
- >{{$t('openatccomponents.overview.onlineing')}}</div>
37
- </div> -->
38
- <!-- <div class="cross-content"><div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.protocoltype')}}:</div><div style="margin-left: 85px;" class="cross-value">{{protocol}}</div></div> -->
39
- <!-- <div class="cross-content"><div style="float: left;" class="cross-name">信号机型号:</div><div style="margin-left: 85px;" class="cross-value">XHJ-CW-GA-KSS100</div></div> -->
40
- <div class="cross-content">
41
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.signalID')}}:</div>
42
- <div style="margin-left: 85px;" class="cross-value">{{agentId}}</div>
43
- </div>
44
- <div class="cross-content">
45
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.signalIP')}}:</div>
46
- <div style="margin-left: 85px;" class="cross-value">{{ip}}</div>
47
- </div>
48
- <div class="cross-content" v-if="platform">
49
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.platform')}}:</div>
50
- <div style="margin-left: 85px;" class="cross-value">
51
- {{firm !== undefined && firm !== '' ? firm : platform}}
52
- </div>
53
- </div>
54
- <div class="cross-content" v-if="controlData.current_stagecd !== undefined">
55
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stagecountdown')}}:</div>
56
- <div style="margin-left: 85px;" class="cross-value">{{controlData.current_stagecd}}</div>
57
- </div>
58
- <div class="cross-content" v-if="controlData.stages_len">
59
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stageduration')}}:</div>
60
- <div style="margin-left: 85px;" class="cross-value">{{controlData.stages_len + ''}}</div>
61
- </div>
62
- <div class="cross-content">
63
- <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.faultinfo')}}:</div>
64
- <div style="margin-left: 85px;" v-if="curFaultList.length">
65
- <el-tag v-if="confirmedFault.length" type="success">
66
- {{$t('openatccomponents.overview.confirmed')}}
67
- <span style="margin: 0 2px;">{{confirmedFault.length}}</span>
68
- </el-tag>
69
- <el-tag v-if="untreatedFault.length">
70
- {{$t('openatccomponents.overview.untreated')}}
71
- <span style="margin: 0 2px;">{{untreatedFault.length}}</span>
72
- </el-tag>
73
- <el-tag v-if="ignoredFault.length" type="info">
74
- {{$t('openatccomponents.overview.ignored')}}
75
- <span style="margin: 0 2px;">{{ignoredFault.length}}</span>
76
- </el-tag>
77
- <span class="fault-detail-btn" @click="showFaultDetail">{{$t('openatccomponents.overview.details')}} >></span>
78
- </div>
79
- <div
80
- style="margin-left: 85px;"
81
- class="cross-value"
82
- v-if="!curFaultList.length"
83
- >{{$t('openatccomponents.overview.nofault')}}</div>
84
- </div>
85
- </div>
86
- <div class="control-bottom">
87
- <div
88
- class="cross-mess"
89
- style="float: left;margin-top: 20px;margin-bottom: 18px;"
90
- >{{$t('openatccomponents.overview.controlmode')}}</div>
91
- <el-button
92
- type="primary"
93
- style="float: right; margin-right: 20px;margin-top: 16px;font-size: 14px;"
94
- size="mini"
95
- v-if="isHasPermission('configer:manual') && isHasPermission('configer:manual:renew')"
96
- @click="changeStatus"
97
- >{{$t('openatccomponents.overview.manual')}}</el-button>
98
- <!-- <el-button type="primary" style="float: right; margin-right: 40px;" size="mini" @click="changeStatus" v-show="isOperation">{{$t('openatccomponents.overview.exitmanual')}}</el-button> -->
99
- </div>
100
- <div class="cross-module">
101
- <!-- 信号机控制状态模块 Start-->
102
- <div class="controlStatePart">
103
- <div class="bigPart">
104
- <el-row :gutter="7">
105
- <el-col :span="12">
106
- <div class="grid-content bg-base">
107
- <div class="value">{{controlData.mode}}</div>
108
- <div class="name">{{$t('openatccomponents.overview.controlmodel')}}</div>
109
- </div>
110
- </el-col>
111
- <el-col :span="12">
112
- <div class="grid-content bg-base">
113
- <div class="value">{{currModel > -1 ? $t('openatccomponents.overview.modelList' + currModel) : ''}}</div>
114
- <div class="name">{{$t('openatccomponents.overview.curModel')}}</div>
115
- </div>
116
- </el-col>
117
- </el-row>
118
- </div>
119
- <div class="smallPart">
120
- <el-row :gutter="7">
121
- <el-col :span="8" v-if="controlData.patternid !== undefined">
122
- <div class="grid-content bg-base">
123
- <div class="value">{{controlData.patternid}}</div>
124
- <div class="name">{{$t('openatccomponents.overview.controlnumber')}}</div>
125
- </div>
126
- </el-col>
127
- <el-col :span="8" v-if="responseTime !== undefined">
128
- <div class="grid-content bg-base">
129
- <div class="value">{{responseTime + ' ms'}}</div>
130
- <div class="name">{{$t('openatccomponents.overview.responseTime')}}</div>
131
- </div>
132
- </el-col>
133
- <el-col :span="8" v-if="controlData.duration !== undefined">
134
- <div class="grid-content bg-base">
135
- <div class="value">{{controlData.duration + ' s'}}</div>
136
- <div class="name">{{$t('openatccomponents.overview.duration')}}</div>
137
- </div>
138
- </el-col>
139
- <el-col :span="8" v-if="controlData.delay !== undefined">
140
- <div class="grid-content bg-base">
141
- <div class="value">{{controlData.delay}}</div>
142
- <div class="name">{{$t('openatccomponents.overview.delay')}}</div>
143
- </div>
144
- </el-col>
145
- <el-col :span="8" v-if="currentStage !== undefined">
146
- <div class="grid-content bg-base">
147
- <div class="value">{{currentStage}}</div>
148
- <div class="name">{{$t('openatccomponents.overview.curStage')}}</div>
149
- </div>
150
- </el-col>
151
- <el-col :span="8" v-if="controlData.current_phase !== undefined && controlData.current_phase.length !== 0 ">
152
- <div class="grid-content bg-base">
153
- <div class="value" v-html="controlData.current_phase.join(',')"></div>
154
- <div class="name">{{$t('openatccomponents.overview.curPhase')}}</div>
155
- </div>
156
- </el-col>
157
- </el-row>
158
- </div>
159
- </div>
160
- <!-- 信号机控制状态模块 End-->
161
-
162
- <div class="cross-content">
163
- <div class="cross-name">{{$t('openatccomponents.overview.currentstage')}}:</div>
164
- <div>
165
- <Stages v-if="resetcomponent"
166
- :crossStatusData="crossStatusData"
167
- :phaseList="phaseList"
168
- @onSelectStages="onSelectStages"></Stages>
169
- </div>
170
- </div>
171
-
172
- <div class="cross-content" v-show="closePhase && closePhase.length > 0">
173
- <div
174
- style="float: left;margin-right: 16px;"
175
- class="cross-name"
176
- >{{$t('openatccomponents.overview.phaseclose')}}:</div>
177
- <el-tag
178
- type="danger"
179
- size="small"
180
- v-for="(phase, index) in closePhase"
181
- :key="index"
182
- >{{phase.typename + $t('openatccomponents.overview.phase') + phase.id + $t('openatccomponents.overview.close')}}</el-tag>
183
- </div>
184
- </div>
185
- </div>
186
- </template>
187
-
188
- <script>
189
- import xdrdirselector from '../../XRDDirSelector/XRDDirSelector'
190
- import { hasPermission } from '../../../../utils/auth'
191
- export default {
192
- name: 'realtimestatus',
193
- components: {
194
- xdrdirselector
195
- },
196
- props: {
197
- crossStatusData: {
198
- type: Object,
199
- default: () => {}
200
- },
201
- phaseList: {
202
- type: Array,
203
- default () {
204
- return []
205
- }
206
- },
207
- Visible: {
208
- type: Boolean
209
- },
210
- controlData: {
211
- type: Object
212
- },
213
- agentName: {
214
- type: String
215
- },
216
- // devStatus: {
217
- // type: Number
218
- // },
219
- agentId: {
220
- type: String
221
- },
222
- ip: {
223
- type: String
224
- },
225
- platform: {
226
- type: String
227
- },
228
- firm: {
229
- type: String
230
- },
231
- curFaultList: {
232
- type: Array
233
- },
234
- currModel: {
235
- type: Number
236
- },
237
- responseTime: {
238
- type: Number
239
- },
240
- stagesList: {
241
- type: Array
242
- },
243
- currentStage: {
244
- type: Number
245
- },
246
- preselectStages: {
247
- type: Number
248
- },
249
- closePhase: {
250
- type: Array
251
- },
252
- sidewalkPhaseData: {
253
- type: Array
254
- },
255
- confirmedFault: {
256
- type: Array
257
- },
258
- ignoredFault: {
259
- type: Array
260
- },
261
- untreatedFault: {
262
- type: Array
263
- },
264
- roadDirection: {
265
- type: String
266
- }
267
-
268
- },
269
- watch: {
270
- agentId: {
271
- handler: function (val1, val2) {
272
- this.$nextTick(() => {
273
- setTimeout(() => {
274
- if (val1 !== val2) {
275
- this.resetcomponent = false
276
- this.$nextTick(() => {
277
- this.resetcomponent = true
278
- })
279
- }
280
- }, 100)
281
- })
282
- },
283
- // 深度观察监听
284
- deep: true
285
- }
286
- },
287
- data () {
288
- return {
289
- resetcomponent: true
290
- }
291
- },
292
- methods: {
293
- isHasPermission (path) {
294
- let res = hasPermission(path)
295
- return res
296
- },
297
- onSelectStages (val) {},
298
- changeStatus () {
299
- this.$emit('changeStatus')
300
- },
301
- showFaultDetail () {
302
- this.$emit('showFaultDetail')
303
- }
304
- }
305
- }
306
- </script>
307
- <style lang="scss" scoped>
308
- </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="realtime-panel">
14
+ <div class="cross-mess">{{$t('openatccomponents.overview.crossinfo')}}</div>
15
+ <div class="cross-module">
16
+ <div class="cross-content">
17
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.crossname')}}:</div>
18
+ <div style="margin-left: 85px;" class="cross-value">{{agentName}}</div>
19
+ </div>
20
+ <!-- <div class="cross-content">
21
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.divicestate')}}:</div>
22
+ <div
23
+ v-show="devStatus===3"
24
+ style="margin-left: 85px;"
25
+ class="cross-value"
26
+ >{{$t('openatccomponents.overview.connected')}}</div>
27
+ <div
28
+ v-show="devStatus===2"
29
+ style="margin-left: 85px;"
30
+ class="cross-value"
31
+ >{{$t('openatccomponents.overview.offline')}}</div>
32
+ <div
33
+ v-show="devStatus===1"
34
+ style="margin-left: 85px;"
35
+ class="cross-value"
36
+ >{{$t('openatccomponents.overview.onlineing')}}</div>
37
+ </div> -->
38
+ <!-- <div class="cross-content"><div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.protocoltype')}}:</div><div style="margin-left: 85px;" class="cross-value">{{protocol}}</div></div> -->
39
+ <!-- <div class="cross-content"><div style="float: left;" class="cross-name">信号机型号:</div><div style="margin-left: 85px;" class="cross-value">XHJ-CW-GA-KSS100</div></div> -->
40
+ <div class="cross-content">
41
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.signalID')}}:</div>
42
+ <div style="margin-left: 85px;" class="cross-value">{{agentId}}</div>
43
+ </div>
44
+ <div class="cross-content">
45
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.signalIP')}}:</div>
46
+ <div style="margin-left: 85px;" class="cross-value">{{ip}}</div>
47
+ </div>
48
+ <div class="cross-content" v-if="platform">
49
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.platform')}}:</div>
50
+ <div style="margin-left: 85px;" class="cross-value">
51
+ {{firm !== undefined && firm !== '' ? firm : platform}}
52
+ </div>
53
+ </div>
54
+ <div class="cross-content" v-if="controlData.current_stagecd !== undefined">
55
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stagecountdown')}}:</div>
56
+ <div style="margin-left: 85px;" class="cross-value">{{controlData.current_stagecd}}</div>
57
+ </div>
58
+ <div class="cross-content" v-if="controlData.stages_len">
59
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.stageduration')}}:</div>
60
+ <div style="margin-left: 85px;" class="cross-value">{{controlData.stages_len + ''}}</div>
61
+ </div>
62
+ <div class="cross-content">
63
+ <div style="float: left;" class="cross-name">{{$t('openatccomponents.overview.faultinfo')}}:</div>
64
+ <div style="margin-left: 85px;" v-if="curFaultList.length">
65
+ <el-tag v-if="confirmedFault.length" type="success">
66
+ {{$t('openatccomponents.overview.confirmed')}}
67
+ <span style="margin: 0 2px;">{{confirmedFault.length}}</span>
68
+ </el-tag>
69
+ <el-tag v-if="untreatedFault.length">
70
+ {{$t('openatccomponents.overview.untreated')}}
71
+ <span style="margin: 0 2px;">{{untreatedFault.length}}</span>
72
+ </el-tag>
73
+ <el-tag v-if="ignoredFault.length" type="info">
74
+ {{$t('openatccomponents.overview.ignored')}}
75
+ <span style="margin: 0 2px;">{{ignoredFault.length}}</span>
76
+ </el-tag>
77
+ <span class="fault-detail-btn" @click="showFaultDetail">{{$t('openatccomponents.overview.details')}} >></span>
78
+ </div>
79
+ <div
80
+ style="margin-left: 85px;"
81
+ class="cross-value"
82
+ v-if="!curFaultList.length"
83
+ >{{$t('openatccomponents.overview.nofault')}}</div>
84
+ </div>
85
+ </div>
86
+ <div class="control-bottom">
87
+ <div
88
+ class="cross-mess"
89
+ style="float: left;margin-top: 20px;margin-bottom: 18px;"
90
+ >{{$t('openatccomponents.overview.controlmode')}}</div>
91
+ <el-button
92
+ type="primary"
93
+ style="float: right; margin-right: 20px;margin-top: 16px;font-size: 14px;"
94
+ size="mini"
95
+ v-if="isHasPermission('configer:manual') && isHasPermission('configer:manual:renew')"
96
+ @click="changeStatus"
97
+ >{{$t('openatccomponents.overview.manual')}}</el-button>
98
+ <!-- <el-button type="primary" style="float: right; margin-right: 40px;" size="mini" @click="changeStatus" v-show="isOperation">{{$t('openatccomponents.overview.exitmanual')}}</el-button> -->
99
+ </div>
100
+ <div class="cross-module">
101
+ <!-- 信号机控制状态模块 Start-->
102
+ <div class="controlStatePart">
103
+ <div class="bigPart">
104
+ <el-row :gutter="7">
105
+ <el-col :span="12">
106
+ <div class="grid-content bg-base">
107
+ <div class="value">{{controlData.mode}}</div>
108
+ <div class="name">{{$t('openatccomponents.overview.controlmodel')}}</div>
109
+ </div>
110
+ </el-col>
111
+ <el-col :span="12">
112
+ <div class="grid-content bg-base">
113
+ <div class="value">{{currModel > -1 ? $t('openatccomponents.overview.modelList' + currModel) : ''}}</div>
114
+ <div class="name">{{$t('openatccomponents.overview.curModel')}}</div>
115
+ </div>
116
+ </el-col>
117
+ </el-row>
118
+ </div>
119
+ <div class="smallPart">
120
+ <el-row :gutter="7">
121
+ <el-col :span="8" v-if="controlData.patternid !== undefined">
122
+ <div class="grid-content bg-base">
123
+ <div class="value">{{controlData.patternid}}</div>
124
+ <div class="name">{{$t('openatccomponents.overview.controlnumber')}}</div>
125
+ </div>
126
+ </el-col>
127
+ <el-col :span="8" v-if="responseTime !== undefined">
128
+ <div class="grid-content bg-base">
129
+ <div class="value">{{responseTime + ' ms'}}</div>
130
+ <div class="name">{{$t('openatccomponents.overview.responseTime')}}</div>
131
+ </div>
132
+ </el-col>
133
+ <el-col :span="8" v-if="controlData.duration !== undefined">
134
+ <div class="grid-content bg-base">
135
+ <div class="value">{{controlData.duration + ' s'}}</div>
136
+ <div class="name">{{$t('openatccomponents.overview.duration')}}</div>
137
+ </div>
138
+ </el-col>
139
+ <el-col :span="8" v-if="controlData.delay !== undefined">
140
+ <div class="grid-content bg-base">
141
+ <div class="value">{{controlData.delay}}</div>
142
+ <div class="name">{{$t('openatccomponents.overview.delay')}}</div>
143
+ </div>
144
+ </el-col>
145
+ <el-col :span="8" v-if="currentStage !== undefined">
146
+ <div class="grid-content bg-base">
147
+ <div class="value">{{currentStage}}</div>
148
+ <div class="name">{{$t('openatccomponents.overview.curStage')}}</div>
149
+ </div>
150
+ </el-col>
151
+ <el-col :span="8" v-if="controlData.current_phase !== undefined && controlData.current_phase.length !== 0 ">
152
+ <div class="grid-content bg-base">
153
+ <div class="value" v-html="controlData.current_phase.join(',')"></div>
154
+ <div class="name">{{$t('openatccomponents.overview.curPhase')}}</div>
155
+ </div>
156
+ </el-col>
157
+ </el-row>
158
+ </div>
159
+ </div>
160
+ <!-- 信号机控制状态模块 End-->
161
+
162
+ <div class="cross-content">
163
+ <div class="cross-name">{{$t('openatccomponents.overview.currentstage')}}:</div>
164
+ <div>
165
+ <Stages v-if="resetcomponent"
166
+ :crossStatusData="crossStatusData"
167
+ :phaseList="phaseList"
168
+ @onSelectStages="onSelectStages"></Stages>
169
+ </div>
170
+ </div>
171
+
172
+ <div class="cross-content" v-show="closePhase && closePhase.length > 0">
173
+ <div
174
+ style="float: left;margin-right: 16px;"
175
+ class="cross-name"
176
+ >{{$t('openatccomponents.overview.phaseclose')}}:</div>
177
+ <el-tag
178
+ type="danger"
179
+ size="small"
180
+ v-for="(phase, index) in closePhase"
181
+ :key="index"
182
+ >{{phase.typename + $t('openatccomponents.overview.phase') + phase.id + $t('openatccomponents.overview.close')}}</el-tag>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ </template>
187
+
188
+ <script>
189
+ import xdrdirselector from '../../XRDDirSelector/XRDDirSelector'
190
+ import { hasPermission } from '../../../../utils/auth'
191
+ export default {
192
+ name: 'realtimestatus',
193
+ components: {
194
+ xdrdirselector
195
+ },
196
+ props: {
197
+ crossStatusData: {
198
+ type: Object,
199
+ default: () => {}
200
+ },
201
+ phaseList: {
202
+ type: Array,
203
+ default () {
204
+ return []
205
+ }
206
+ },
207
+ Visible: {
208
+ type: Boolean
209
+ },
210
+ controlData: {
211
+ type: Object
212
+ },
213
+ agentName: {
214
+ type: String
215
+ },
216
+ // devStatus: {
217
+ // type: Number
218
+ // },
219
+ agentId: {
220
+ type: String
221
+ },
222
+ ip: {
223
+ type: String
224
+ },
225
+ platform: {
226
+ type: String
227
+ },
228
+ firm: {
229
+ type: String
230
+ },
231
+ curFaultList: {
232
+ type: Array
233
+ },
234
+ currModel: {
235
+ type: Number
236
+ },
237
+ responseTime: {
238
+ type: Number
239
+ },
240
+ stagesList: {
241
+ type: Array
242
+ },
243
+ currentStage: {
244
+ type: Number
245
+ },
246
+ preselectStages: {
247
+ type: Number
248
+ },
249
+ closePhase: {
250
+ type: Array
251
+ },
252
+ sidewalkPhaseData: {
253
+ type: Array
254
+ },
255
+ confirmedFault: {
256
+ type: Array
257
+ },
258
+ ignoredFault: {
259
+ type: Array
260
+ },
261
+ untreatedFault: {
262
+ type: Array
263
+ },
264
+ roadDirection: {
265
+ type: String
266
+ }
267
+
268
+ },
269
+ watch: {
270
+ agentId: {
271
+ handler: function (val1, val2) {
272
+ this.$nextTick(() => {
273
+ setTimeout(() => {
274
+ if (val1 !== val2) {
275
+ this.resetcomponent = false
276
+ this.$nextTick(() => {
277
+ this.resetcomponent = true
278
+ })
279
+ }
280
+ }, 100)
281
+ })
282
+ },
283
+ // 深度观察监听
284
+ deep: true
285
+ }
286
+ },
287
+ data () {
288
+ return {
289
+ resetcomponent: true
290
+ }
291
+ },
292
+ methods: {
293
+ isHasPermission (path) {
294
+ let res = hasPermission(path)
295
+ return res
296
+ },
297
+ onSelectStages (val) {},
298
+ changeStatus () {
299
+ this.$emit('changeStatus')
300
+ },
301
+ showFaultDetail () {
302
+ this.$emit('showFaultDetail')
303
+ }
304
+ }
305
+ }
306
+ </script>
307
+ <style lang="scss" scoped>
308
+ </style>