openatc-components 0.5.11 → 0.5.13

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 (361) 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/SidewalkClickSvg.vue +17 -1
  70. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  71. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  72. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  73. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  74. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  75. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  76. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  77. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  78. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  79. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +61 -2
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +29 -2
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  90. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  91. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  92. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  93. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  94. package/package/kisscomps/components/KanBan/kanban.vue +231 -231
  95. package/package/kisscomps/components/MessageBox/index.vue +96 -96
  96. package/package/kisscomps/components/OverviewComponent/index.vue +2 -0
  97. package/package/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  98. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  99. package/package/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  100. package/package/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  101. package/package/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  102. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  103. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  104. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  105. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  106. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  107. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  108. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  109. package/package/kisscomps/components/PhasePedSelect/index.vue +206 -206
  110. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  111. package/package/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  112. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  113. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  114. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  115. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  116. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  117. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  118. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  119. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  120. package/package/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  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/StageStatus/StageStatus.vue +341 -341
  124. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  125. package/package/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  126. package/package/kisscomps/components/XiaoKanban/index.vue +122 -122
  127. package/package/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  128. package/package/kisscomps/components/patternConfig/planContent.vue +604 -604
  129. package/package/kisscomps/components/patternConfig/planMenu.vue +329 -329
  130. package/package/kissui.min.js +1 -1
  131. package/package.json +1 -1
  132. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  133. package/src/EdgeMgr/controller/crossDiagramMgr.js +125 -125
  134. package/src/api/authapi.js +31 -31
  135. package/src/api/config.js +21 -21
  136. package/src/api/control.js +110 -110
  137. package/src/api/device.js +135 -135
  138. package/src/api/fault.js +66 -66
  139. package/src/api/index.js +24 -24
  140. package/src/api/login.js +46 -46
  141. package/src/api/optimize.js +72 -72
  142. package/src/api/param.js +165 -165
  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/i18n/language/en.js +2 -1
  150. package/src/i18n/language/zh.js +2 -1
  151. package/src/icons/index.js +20 -20
  152. package/src/icons/svg/azimuthlocking.svg +26 -26
  153. package/src/icons/svg/bendi.svg +110 -110
  154. package/src/icons/svg/bujin.svg +36 -36
  155. package/src/icons/svg/connectBlue.svg +7 -7
  156. package/src/icons/svg/currentvolume.svg +0 -0
  157. package/src/icons/svg/custom-BRTlane.svg +40 -40
  158. package/src/icons/svg/custom-buslane.svg +40 -40
  159. package/src/icons/svg/custom-detector.svg +12 -12
  160. package/src/icons/svg/custom-east-bottom.svg +32 -32
  161. package/src/icons/svg/custom-east-top.svg +32 -32
  162. package/src/icons/svg/custom-ewped.svg +35 -35
  163. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -40
  164. package/src/icons/svg/custom-north-left.svg +32 -32
  165. package/src/icons/svg/custom-north-right.svg +32 -32
  166. package/src/icons/svg/custom-peddetector.svg +17 -17
  167. package/src/icons/svg/custom-snped.svg +35 -35
  168. package/src/icons/svg/custom-south-left.svg +32 -32
  169. package/src/icons/svg/custom-south-right.svg +32 -32
  170. package/src/icons/svg/custom-tramlane.svg +40 -40
  171. package/src/icons/svg/custom-vehiclebranch.svg +40 -40
  172. package/src/icons/svg/custom-vehiclemainroad.svg +41 -41
  173. package/src/icons/svg/custom-west-bottom.svg +32 -32
  174. package/src/icons/svg/custom-west-top.svg +32 -32
  175. package/src/icons/svg/custom-xlped.svg +14 -14
  176. package/src/icons/svg/custom-xrped.svg +14 -14
  177. package/src/icons/svg/cutRed.svg +7 -7
  178. package/src/icons/svg/cycle.svg +0 -0
  179. package/src/icons/svg/dingzhouqi.svg +34 -34
  180. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  181. package/src/icons/svg/guandeng.svg +81 -81
  182. package/src/icons/svg/huangshan.svg +71 -71
  183. package/src/icons/svg/maincontrol.svg +0 -0
  184. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  185. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  186. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  187. package/src/icons/svg/model.svg +0 -0
  188. package/src/icons/svg/phasediff.svg +0 -0
  189. package/src/icons/svg/prioritycontrol.svg +21 -21
  190. package/src/icons/svg/quanhong.svg +86 -86
  191. package/src/icons/svg/shanghe.svg +11 -11
  192. package/src/icons/svg/shoudong.svg +103 -103
  193. package/src/icons/svg/tentativeplan.svg +28 -28
  194. package/src/icons/svg/time.svg +0 -0
  195. package/src/icons/svg/wuxianlan.svg +46 -46
  196. package/src/icons/svg/xiala.svg +11 -11
  197. package/src/icons/svg/xingrenguojie.svg +33 -33
  198. package/src/icons/svg/xitong.svg +89 -89
  199. package/src/icons/svg/youxian.svg +41 -41
  200. package/src/icons/svg/zizhukongzhi.svg +43 -43
  201. package/src/kisscomps/components/Channelization/Channelization.vue +585 -585
  202. package/src/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  203. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  204. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  205. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  206. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  207. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  208. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  209. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  210. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  211. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  212. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  213. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  214. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  215. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  216. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  217. package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  218. package/src/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  219. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  220. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  221. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  222. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  223. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  224. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  225. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  226. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  227. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  228. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  229. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +368 -368
  230. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  231. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  232. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +144 -144
  233. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  234. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  235. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  236. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  237. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  238. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  239. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  240. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  241. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  242. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  243. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  244. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  245. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  246. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  247. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  248. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  249. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  250. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +17 -1
  251. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  252. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  253. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  254. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  255. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  256. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  257. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  258. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  259. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  260. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  261. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  262. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  263. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  264. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  265. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  266. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  267. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +61 -2
  268. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +29 -2
  269. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  270. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  271. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  272. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  273. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  274. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +534 -534
  275. package/src/kisscomps/components/KanBan/kanban.vue +231 -231
  276. package/src/kisscomps/components/MessageBox/index.vue +96 -96
  277. package/src/kisscomps/components/OverviewComponent/index.vue +2 -0
  278. package/src/kisscomps/components/PatternOptimize/PatternOptimize.vue +329 -329
  279. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  280. package/src/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  281. package/src/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  282. package/src/kisscomps/components/PhaseLegend/PhaseLegend.vue +286 -286
  283. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  284. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  285. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  286. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  287. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  288. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  289. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  290. package/src/kisscomps/components/PhasePedSelect/index.vue +206 -206
  291. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +365 -365
  292. package/src/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  293. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +214 -214
  294. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +235 -235
  295. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  296. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +131 -131
  297. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +151 -151
  298. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +215 -215
  299. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  300. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +308 -308
  301. package/src/kisscomps/components/SchemeConfig/utils/thirdPartypermission.js +95 -95
  302. package/src/kisscomps/components/StageOptimize/StageOptimize.vue +367 -367
  303. package/src/kisscomps/components/StageOptimize/index.js +2 -2
  304. package/src/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  305. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  306. package/src/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  307. package/src/kisscomps/components/XiaoKanban/index.vue +122 -122
  308. package/src/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  309. package/src/kisscomps/components/patternConfig/planContent.vue +604 -604
  310. package/src/kisscomps/components/patternConfig/planMenu.vue +329 -329
  311. package/src/lib/publicjs/ArryListUtil.js +38 -38
  312. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  313. package/src/lib/publicjs/KissApi.js +158 -158
  314. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  315. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  316. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  317. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  318. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  319. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  320. package/src/lib/publicjs/basecomponents.js +65 -65
  321. package/src/lib/publicjs/localStorage.js +112 -112
  322. package/src/lib/publicjs/objdeepcopy.js +32 -32
  323. package/src/lib/publicjs/pageScroll.js +30 -30
  324. package/src/lib/publicjs/passwdAssest.js +101 -101
  325. package/src/lib/publicjs/styleclassfactory.js +32 -32
  326. package/src/store/index.js +26 -26
  327. package/src/store/modules/globalParam.js +67 -67
  328. package/src/utils/RingDataModel.js +335 -335
  329. package/src/utils/conflictList.js +87 -87
  330. package/src/utils/dateFormat.js +41 -41
  331. package/src/utils/index.js +69 -69
  332. package/src/utils/phaseList.js +203 -203
  333. package/src/utils/validate.js +43 -43
  334. package/src/views/home.1.vue +479 -479
  335. package/src/views/home.vue +93 -93
  336. package/src/views/intersection2.vue +328 -328
  337. package/src/views/overView.vue +63 -63
  338. package/static/styles/channelizatioon.scss +433 -433
  339. package/static/styles/common.scss +30 -30
  340. package/static/styles/commonkanban.scss +168 -168
  341. package/static/styles/dark/index.scss +2 -2
  342. package/static/styles/dark/theme/element-dark.scss +44 -44
  343. package/static/styles/index.scss +84 -84
  344. package/static/styles/intersection.scss +180 -180
  345. package/static/styles/light/index.scss +2 -2
  346. package/static/styles/light/theme/element-light.scss +44 -44
  347. package/static/styles/patternConfig.scss +56 -56
  348. package/static/styles/phasePedSelect.scss +71 -71
  349. package/static/styles/stages.scss +57 -57
  350. package/static/styles/xiaokanban.scss +61 -61
  351. package/static/token.json +2 -2
  352. package/test/e2e/custom-assertions/elementCount.js +27 -27
  353. package/test/e2e/nightwatch.conf.js +46 -46
  354. package/test/e2e/runner.js +48 -48
  355. package/test/e2e/specs/test.js +19 -19
  356. package/test/unit/.eslintrc +7 -7
  357. package/test/unit/jest.conf.js +30 -30
  358. package/test/unit/setup.js +3 -3
  359. package/test/unit/specs/HelloWorld.spec.js +11 -11
  360. package/package/kissui.js +0 -216608
  361. package/pnpm-lock.yaml +0 -16362
@@ -1,92 +1,92 @@
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
- import store from '../../../../store/index'
13
- let images = [
14
- {
15
- id: 1,
16
- // name: 'East-Straight',
17
- name: 'openatccomponents.overview.dong',
18
- // img: require('./images/East-Straight.svg'),
19
- class: 'iconfont icon-dongzhihang'
20
- },
21
- {
22
- id: 5,
23
- // name: 'West-Straight',
24
- name: 'openatccomponents.overview.xi',
25
- // img: require('./images/West-Straight.svg'),
26
- class: 'iconfont icon-xizhihang'
27
- },
28
- {
29
- id: 13,
30
- // name: 'South-Straight',
31
- name: 'openatccomponents.overview.nan',
32
- // img: require('./images/South-Straight.svg'),
33
- class: 'iconfont icon-nanzhihang'
34
- },
35
- {
36
- id: 9,
37
- // name: 'North-Straight',
38
- name: 'openatccomponents.overview.bei',
39
- // img: require('./images/North-Straight.svg'),
40
- class: 'iconfont icon-beizhihang'
41
- },
42
- {
43
- id: 17,
44
- // name: 'South-Back',
45
- name: 'openatccomponents.overview.dongnan',
46
- // img: require('./images/South-Back.svg'),
47
- class: 'iconfont icon-dongnanzhihang'
48
- },
49
- {
50
- id: 21,
51
- // name: 'South-Back',
52
- name: 'openatccomponents.overview.xinan',
53
- // img: require('./images/South-Back.svg'),
54
- class: 'iconfont icon-xinanzhihang'
55
- },
56
- {
57
- id: 25,
58
- // name: 'South-Back',
59
- name: 'openatccomponents.overview.dongbei',
60
- // img: require('./images/South-Back.svg'),
61
- class: 'iconfont icon-dongbeizhihang'
62
- },
63
- {
64
- id: 29,
65
- // name: 'South-Back',
66
- name: 'openatccomponents.overview.xibei',
67
- // img: require('./images/South-Back.svg'),
68
- class: 'iconfont icon-xibeizhihang'
69
- }
70
- ]
71
- const getPhase = () => {
72
- if (store.getters.roadDirection === 'left') {
73
- // 左行下,掉头图标替换
74
- images.forEach((img) => {
75
- if (img.id === 4) {
76
- img.class = 'iconfont icon-dongtiaotou-yinni'
77
- }
78
- if (img.id === 8) {
79
- img.class = 'iconfont icon-xitiaotou-yinni'
80
- }
81
- if (img.id === 12) {
82
- img.class = 'iconfont icon-beitiaotou-yinni'
83
- }
84
- if (img.id === 16) {
85
- img.class = 'iconfont icon-nantiaotou-yinni'
86
- }
87
- })
88
- }
89
- return images
90
- }
91
-
92
- export {getPhase}
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
+ import store from '../../../../store/index'
13
+ let images = [
14
+ {
15
+ id: 1,
16
+ // name: 'East-Straight',
17
+ name: 'openatccomponents.overview.dong',
18
+ // img: require('./images/East-Straight.svg'),
19
+ class: 'iconfont icon-dongzhihang'
20
+ },
21
+ {
22
+ id: 5,
23
+ // name: 'West-Straight',
24
+ name: 'openatccomponents.overview.xi',
25
+ // img: require('./images/West-Straight.svg'),
26
+ class: 'iconfont icon-xizhihang'
27
+ },
28
+ {
29
+ id: 13,
30
+ // name: 'South-Straight',
31
+ name: 'openatccomponents.overview.nan',
32
+ // img: require('./images/South-Straight.svg'),
33
+ class: 'iconfont icon-nanzhihang'
34
+ },
35
+ {
36
+ id: 9,
37
+ // name: 'North-Straight',
38
+ name: 'openatccomponents.overview.bei',
39
+ // img: require('./images/North-Straight.svg'),
40
+ class: 'iconfont icon-beizhihang'
41
+ },
42
+ {
43
+ id: 17,
44
+ // name: 'South-Back',
45
+ name: 'openatccomponents.overview.dongnan',
46
+ // img: require('./images/South-Back.svg'),
47
+ class: 'iconfont icon-dongnanzhihang'
48
+ },
49
+ {
50
+ id: 21,
51
+ // name: 'South-Back',
52
+ name: 'openatccomponents.overview.xinan',
53
+ // img: require('./images/South-Back.svg'),
54
+ class: 'iconfont icon-xinanzhihang'
55
+ },
56
+ {
57
+ id: 25,
58
+ // name: 'South-Back',
59
+ name: 'openatccomponents.overview.dongbei',
60
+ // img: require('./images/South-Back.svg'),
61
+ class: 'iconfont icon-dongbeizhihang'
62
+ },
63
+ {
64
+ id: 29,
65
+ // name: 'South-Back',
66
+ name: 'openatccomponents.overview.xibei',
67
+ // img: require('./images/South-Back.svg'),
68
+ class: 'iconfont icon-xibeizhihang'
69
+ }
70
+ ]
71
+ const getPhase = () => {
72
+ if (store.getters.roadDirection === 'left') {
73
+ // 左行下,掉头图标替换
74
+ images.forEach((img) => {
75
+ if (img.id === 4) {
76
+ img.class = 'iconfont icon-dongtiaotou-yinni'
77
+ }
78
+ if (img.id === 8) {
79
+ img.class = 'iconfont icon-xitiaotou-yinni'
80
+ }
81
+ if (img.id === 12) {
82
+ img.class = 'iconfont icon-beitiaotou-yinni'
83
+ }
84
+ if (img.id === 16) {
85
+ img.class = 'iconfont icon-nantiaotou-yinni'
86
+ }
87
+ })
88
+ }
89
+ return images
90
+ }
91
+
92
+ export {getPhase}
@@ -1,214 +1,214 @@
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="manual-control-modal closephase-control manual-common-content">
14
- <!-- <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.phaseclosecontrol')}}</div> -->
15
- <el-row>
16
- <el-col :span="24">
17
- <el-form
18
- ref="manual"
19
- label-position="left"
20
- :model="manualInfo"
21
- label-width="90px">
22
- <el-form-item
23
- :label="$t('openatccomponents.overview.delay')"
24
- prop="intersection">
25
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDelay" size="small"></el-input-number>
26
- </el-form-item>
27
- <el-form-item
28
- :label="$t('openatccomponents.overview.duration')"
29
- prop="count">
30
- <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="small"></el-input-number>
31
- </el-form-item>
32
- </el-form>
33
- </el-col>
34
- </el-row>
35
- <el-row>
36
- <div class="model-label">{{$t('openatccomponents.overview.mode')}}</div>
37
- <div style="width: 100%; overflow: hidden;margin-top: 20px;">
38
- <common-kanban
39
- v-for="ring in closePhaseRings"
40
- :key="ring.num" class="closephasekanban"
41
- :list="ring.phases"
42
- :header-text="$t('openatccomponents.pattern.ring') + ring.num"
43
- :Draggable="false"
44
- :sidewalkPhaseData="sidewalkPhaseData"
45
- :roadDirection="roadDirection"
46
- @handleSort="handleSort">
47
- <template v-slot:kanbantitle>
48
- <div class="col-title" v-text="$t('openatccomponents.overview.closemode')"></div>
49
- </template>
50
- <template v-slot:kanbancontent="data">
51
- <el-select v-model="data.element.close" class="col-inner" size="small" :placeholder="$t('openatccomponents.common.select')">
52
- <el-option
53
- v-for="item in closeOption"
54
- :key="item.value"
55
- :label="$t('openatccomponents.overview.closeOption' + item.value)"
56
- :value="item.value">
57
- </el-option>
58
- </el-select>
59
- </template>
60
- </common-kanban>
61
- </div>
62
- </el-row>
63
- <div class="footer">
64
- <el-button v-if="isShowBack" @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
65
- <el-button v-if="isShowRecovery && isHasPermission('configer:manual:renew')" @click="toAutoControl()">{{$t('openatccomponents.overview.recovery')}}</el-button>
66
- <el-button v-if="isShowImplement" type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.implement')}}</el-button>
67
- <el-button v-if="!isShowImplement" type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.comfirm')}}</el-button>
68
- </div>
69
- </div>
70
- </template>
71
-
72
- <script>
73
- import { hasPermission } from '../../../../utils/auth'
74
-
75
- export default {
76
- name: 'closePhaselControl',
77
- props: {
78
- Visible: {
79
- type: Boolean
80
- },
81
- controlData: {
82
- type: Object
83
- },
84
- modelList: {
85
- type: Array
86
- },
87
- stagesList: {
88
- type: Array
89
- },
90
- currModel: {
91
- type: Number
92
- },
93
- preselectModel: {
94
- type: Number
95
- },
96
- currentStage: {
97
- type: Number
98
- },
99
- preselectStages: {
100
- type: Number
101
- },
102
- specialcontrolList: {
103
- type: Array
104
- },
105
- closePhaseRings: {
106
- type: Array
107
- },
108
- realtimeStatusModalvisible: {
109
- type: Boolean,
110
- default: true
111
- },
112
- sidewalkPhaseData: {
113
- type: Array
114
- },
115
- roadDirection: {
116
- type: String
117
- },
118
- isShowBack: {
119
- type: Boolean,
120
- default: true
121
- },
122
- isShowRecovery: {
123
- type: Boolean,
124
- default: true
125
- },
126
- isShowImplement: {
127
- type: Boolean,
128
- default: true
129
- }
130
- },
131
- data () {
132
- return {
133
- visible: this.Visible,
134
- manualInfo: {
135
- tempDelay: 0, // 控制方式手动操作的情况下的延迟时间的临时值。
136
- tempDuration: 300 // 控制方式手动操作的情况下的持续时间的临时值。
137
- },
138
- closeOption: [{
139
- value: 0
140
- }, {
141
- value: 1
142
- }, {
143
- value: 2
144
- }, {
145
- value: 3
146
- }]
147
- }
148
- },
149
- methods: {
150
- handleClose () {
151
- this.$emit('closePhaseBack')
152
- },
153
- handleManualControl () {
154
- let submitdata = {
155
- control: 23,
156
- delay: this.manualInfo.tempDelay !== undefined ? Number(this.manualInfo.tempDelay) : 0,
157
- duration: this.manualInfo.tempDuration !== undefined ? Number(this.manualInfo.tempDuration) : 0,
158
- data: {}
159
- }
160
- submitdata.data.phases = this.handleSubmitPhaseClose()
161
-
162
- this.$emit('closePhaseControl', submitdata)
163
- },
164
- handleSubmitPhaseClose (element) {
165
- let allRingsPhases = []
166
- for (let i = 0; i < this.closePhaseRings.length; i++) {
167
- let ring = this.closePhaseRings[i]
168
- let phase = ring.phases
169
- for (let j = 0; j < phase.length; j++) {
170
- let obj = {}
171
- obj.id = phase[j].id
172
- obj.close = phase[j].close
173
- allRingsPhases.push(obj)
174
- }
175
- }
176
- return allRingsPhases
177
- },
178
- handleSort (sortedlist) {
179
- // 重新排序数据
180
- let ringid = sortedlist[0].ring
181
- for (let i = 0; i < this.closePhaseRings.length; i++) {
182
- if (ringid === this.closePhaseRings[i].num) {
183
- this.closePhaseRings[i].phases = sortedlist
184
- }
185
- }
186
- },
187
- toAutoControl () {
188
- this.$emit('toAutoControl')
189
- },
190
- isHasPermission (path) {
191
- let res = hasPermission(path)
192
- return res
193
- }
194
- },
195
- mounted () {
196
- if (this.controlData.tempDelay) {
197
- this.manualInfo.tempDelay = this.controlData.delay
198
- }
199
- if (this.controlData.tempDuration) {
200
- this.manualInfo.tempDuration = this.controlData.duration
201
- }
202
- }
203
- }
204
- </script>
205
- <style lang="scss" scoped>
206
- .col-inner {
207
- width: 100%;
208
- float: left;
209
- }
210
- .col-title {
211
- width: 100%;
212
- float: left;
213
- }
214
- </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="manual-control-modal closephase-control manual-common-content">
14
+ <!-- <div class="title" style="margin-bottom: 18px;">{{$t('openatccomponents.overview.phaseclosecontrol')}}</div> -->
15
+ <el-row>
16
+ <el-col :span="24">
17
+ <el-form
18
+ ref="manual"
19
+ label-position="left"
20
+ :model="manualInfo"
21
+ label-width="90px">
22
+ <el-form-item
23
+ :label="$t('openatccomponents.overview.delay')"
24
+ prop="intersection">
25
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDelay" size="small"></el-input-number>
26
+ </el-form-item>
27
+ <el-form-item
28
+ :label="$t('openatccomponents.overview.duration')"
29
+ prop="count">
30
+ <el-input-number :min="0" :max="65535" :precision="0" :step="1" :controls="false" v-model.number="manualInfo.tempDuration" size="small"></el-input-number>
31
+ </el-form-item>
32
+ </el-form>
33
+ </el-col>
34
+ </el-row>
35
+ <el-row>
36
+ <div class="model-label">{{$t('openatccomponents.overview.mode')}}</div>
37
+ <div style="width: 100%; overflow: hidden;margin-top: 20px;">
38
+ <common-kanban
39
+ v-for="ring in closePhaseRings"
40
+ :key="ring.num" class="closephasekanban"
41
+ :list="ring.phases"
42
+ :header-text="$t('openatccomponents.pattern.ring') + ring.num"
43
+ :Draggable="false"
44
+ :sidewalkPhaseData="sidewalkPhaseData"
45
+ :roadDirection="roadDirection"
46
+ @handleSort="handleSort">
47
+ <template v-slot:kanbantitle>
48
+ <div class="col-title" v-text="$t('openatccomponents.overview.closemode')"></div>
49
+ </template>
50
+ <template v-slot:kanbancontent="data">
51
+ <el-select v-model="data.element.close" class="col-inner" size="small" :placeholder="$t('openatccomponents.common.select')">
52
+ <el-option
53
+ v-for="item in closeOption"
54
+ :key="item.value"
55
+ :label="$t('openatccomponents.overview.closeOption' + item.value)"
56
+ :value="item.value">
57
+ </el-option>
58
+ </el-select>
59
+ </template>
60
+ </common-kanban>
61
+ </div>
62
+ </el-row>
63
+ <div class="footer">
64
+ <el-button v-if="isShowBack" @click="handleClose()">{{$t('openatccomponents.button.Back')}}</el-button>
65
+ <el-button v-if="isShowRecovery && isHasPermission('configer:manual:renew')" @click="toAutoControl()">{{$t('openatccomponents.overview.recovery')}}</el-button>
66
+ <el-button v-if="isShowImplement" type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.implement')}}</el-button>
67
+ <el-button v-if="!isShowImplement" type="primary" @click="handleManualControl()">{{$t('openatccomponents.overview.comfirm')}}</el-button>
68
+ </div>
69
+ </div>
70
+ </template>
71
+
72
+ <script>
73
+ import { hasPermission } from '../../../../utils/auth'
74
+
75
+ export default {
76
+ name: 'closePhaselControl',
77
+ props: {
78
+ Visible: {
79
+ type: Boolean
80
+ },
81
+ controlData: {
82
+ type: Object
83
+ },
84
+ modelList: {
85
+ type: Array
86
+ },
87
+ stagesList: {
88
+ type: Array
89
+ },
90
+ currModel: {
91
+ type: Number
92
+ },
93
+ preselectModel: {
94
+ type: Number
95
+ },
96
+ currentStage: {
97
+ type: Number
98
+ },
99
+ preselectStages: {
100
+ type: Number
101
+ },
102
+ specialcontrolList: {
103
+ type: Array
104
+ },
105
+ closePhaseRings: {
106
+ type: Array
107
+ },
108
+ realtimeStatusModalvisible: {
109
+ type: Boolean,
110
+ default: true
111
+ },
112
+ sidewalkPhaseData: {
113
+ type: Array
114
+ },
115
+ roadDirection: {
116
+ type: String
117
+ },
118
+ isShowBack: {
119
+ type: Boolean,
120
+ default: true
121
+ },
122
+ isShowRecovery: {
123
+ type: Boolean,
124
+ default: true
125
+ },
126
+ isShowImplement: {
127
+ type: Boolean,
128
+ default: true
129
+ }
130
+ },
131
+ data () {
132
+ return {
133
+ visible: this.Visible,
134
+ manualInfo: {
135
+ tempDelay: 0, // 控制方式手动操作的情况下的延迟时间的临时值。
136
+ tempDuration: 300 // 控制方式手动操作的情况下的持续时间的临时值。
137
+ },
138
+ closeOption: [{
139
+ value: 0
140
+ }, {
141
+ value: 1
142
+ }, {
143
+ value: 2
144
+ }, {
145
+ value: 3
146
+ }]
147
+ }
148
+ },
149
+ methods: {
150
+ handleClose () {
151
+ this.$emit('closePhaseBack')
152
+ },
153
+ handleManualControl () {
154
+ let submitdata = {
155
+ control: 23,
156
+ delay: this.manualInfo.tempDelay !== undefined ? Number(this.manualInfo.tempDelay) : 0,
157
+ duration: this.manualInfo.tempDuration !== undefined ? Number(this.manualInfo.tempDuration) : 0,
158
+ data: {}
159
+ }
160
+ submitdata.data.phases = this.handleSubmitPhaseClose()
161
+
162
+ this.$emit('closePhaseControl', submitdata)
163
+ },
164
+ handleSubmitPhaseClose (element) {
165
+ let allRingsPhases = []
166
+ for (let i = 0; i < this.closePhaseRings.length; i++) {
167
+ let ring = this.closePhaseRings[i]
168
+ let phase = ring.phases
169
+ for (let j = 0; j < phase.length; j++) {
170
+ let obj = {}
171
+ obj.id = phase[j].id
172
+ obj.close = phase[j].close
173
+ allRingsPhases.push(obj)
174
+ }
175
+ }
176
+ return allRingsPhases
177
+ },
178
+ handleSort (sortedlist) {
179
+ // 重新排序数据
180
+ let ringid = sortedlist[0].ring
181
+ for (let i = 0; i < this.closePhaseRings.length; i++) {
182
+ if (ringid === this.closePhaseRings[i].num) {
183
+ this.closePhaseRings[i].phases = sortedlist
184
+ }
185
+ }
186
+ },
187
+ toAutoControl () {
188
+ this.$emit('toAutoControl')
189
+ },
190
+ isHasPermission (path) {
191
+ let res = hasPermission(path)
192
+ return res
193
+ }
194
+ },
195
+ mounted () {
196
+ if (this.controlData.tempDelay) {
197
+ this.manualInfo.tempDelay = this.controlData.delay
198
+ }
199
+ if (this.controlData.tempDuration) {
200
+ this.manualInfo.tempDuration = this.controlData.duration
201
+ }
202
+ }
203
+ }
204
+ </script>
205
+ <style lang="scss" scoped>
206
+ .col-inner {
207
+ width: 100%;
208
+ float: left;
209
+ }
210
+ .col-title {
211
+ width: 100%;
212
+ float: left;
213
+ }
214
+ </style>