openatc-components 0.3.14 → 0.3.16

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 (492) hide show
  1. package/.babelrc +18 -18
  2. package/.editorconfig +9 -9
  3. package/.eslintignore +5 -5
  4. package/.eslintrc.js +29 -29
  5. package/.postcssrc.js +10 -10
  6. package/README.md +30 -30
  7. package/build/build.js +41 -41
  8. package/build/check-versions.js +54 -54
  9. package/build/package.config.js +58 -58
  10. package/build/package.dev.config.js +107 -107
  11. package/build/package.prod.config.js +160 -160
  12. package/build/utils.js +101 -101
  13. package/build/vue-loader.conf.js +22 -22
  14. package/build/webpack.base.conf.js +114 -114
  15. package/build/webpack.dev.conf.js +95 -95
  16. package/build/webpack.prod.conf.js +149 -149
  17. package/config/dev.env.js +8 -8
  18. package/config/index.js +93 -93
  19. package/config/prod.env.js +5 -5
  20. package/config/test.env.js +7 -7
  21. package/index.html +12 -12
  22. package/package/kisscomps/components/BoardCard/BoardCard.vue +112 -112
  23. package/package/kisscomps/components/BoardCard/index.js +2 -2
  24. package/package/kisscomps/components/ChannelRealtimeIntersection/ChannelRealtimeIntersection.vue +101 -101
  25. package/package/kisscomps/components/ChannelRealtimeIntersection/index.js +2 -2
  26. package/package/kisscomps/components/Channelization/Channelization.vue +584 -584
  27. package/package/kisscomps/components/Channelization/index.js +2 -2
  28. package/package/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  29. package/package/kisscomps/components/ChannelizationFlowStatistic/index.js +2 -2
  30. package/package/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  31. package/package/kisscomps/components/ChannelizationWithInterface/index.js +2 -2
  32. package/package/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  33. package/package/kisscomps/components/CommonKanban/index.js +2 -2
  34. package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +454 -454
  35. package/package/kisscomps/components/DirectionListConfiguration/index.js +2 -2
  36. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  37. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  38. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  39. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  40. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  41. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  42. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  43. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  44. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  45. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  46. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  47. package/package/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  48. package/package/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  49. package/package/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  50. package/package/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  51. package/package/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  52. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  53. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  54. package/package/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  55. package/package/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  56. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  57. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  58. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  59. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  60. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +467 -467
  61. package/package/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  62. package/package/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  63. package/package/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +1005 -1005
  64. package/package/kisscomps/components/DrawChannelization/drawsvg/index.vue +110 -110
  65. package/package/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  66. package/package/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  67. package/package/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +172 -172
  68. package/package/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  69. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  70. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  71. package/package/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  72. package/package/kisscomps/components/DrawChannelization/index.js +2 -2
  73. package/package/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  74. package/package/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  75. package/package/kisscomps/components/ExpendConfig/index.js +2 -2
  76. package/package/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  77. package/package/kisscomps/components/FaultDetailModal/index.js +2 -2
  78. package/package/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +158 -158
  79. package/package/kisscomps/components/IntersectionDirectionSelection/index.js +2 -2
  80. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  81. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  82. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  83. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  84. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  85. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  86. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  87. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  88. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1302 -1302
  89. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  90. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  91. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  92. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  93. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  94. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  95. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  96. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  97. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  98. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  99. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  100. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  101. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  102. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  103. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  104. package/package/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  105. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +1358 -1358
  106. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +197 -197
  107. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +196 -196
  108. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  109. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  110. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  111. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +115 -115
  112. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  113. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  114. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +219 -219
  115. package/package/kisscomps/components/IntersectionMap/crossDirection/utils.js +84 -84
  116. package/package/kisscomps/components/IntersectionMap/index.js +2 -2
  117. package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +211 -211
  118. package/package/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +530 -530
  119. package/package/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  120. package/package/kisscomps/components/KanBan/index.js +2 -2
  121. package/package/kisscomps/components/KanBan/kanban.vue +225 -225
  122. package/package/kisscomps/components/MessageBox/index.vue +96 -96
  123. package/package/kisscomps/components/OverLap/OverLap.vue +237 -237
  124. package/package/kisscomps/components/OverLap/index.js +2 -2
  125. package/package/kisscomps/components/PatternOptimize/PatternOptimize.vue +272 -272
  126. package/package/kisscomps/components/PatternOptimize/index.js +2 -2
  127. package/package/kisscomps/components/PatternStatus/PatternStatus.vue +1508 -1508
  128. package/package/kisscomps/components/PatternStatus/index.js +2 -2
  129. package/package/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  130. package/package/kisscomps/components/PatternWalkSvg/index.js +2 -2
  131. package/package/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  132. package/package/kisscomps/components/PhaseDirectionSelect/index.js +2 -2
  133. package/package/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  134. package/package/kisscomps/components/PhaseDirectionText/index.js +2 -2
  135. package/package/kisscomps/components/PhaseMarker/index.js +6 -6
  136. package/package/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  137. package/package/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  138. package/package/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  139. package/package/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  140. package/package/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  141. package/package/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  142. package/package/kisscomps/components/PhasePedSelect/index.js +2 -2
  143. package/package/kisscomps/components/PhasePedSelect/index.vue +206 -206
  144. package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +908 -908
  145. package/package/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +360 -360
  146. package/package/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  147. package/package/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +210 -210
  148. package/package/kisscomps/components/SchemeConfig/index.js +2 -2
  149. package/package/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +234 -234
  150. package/package/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  151. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +128 -128
  152. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +428 -426
  153. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +855 -855
  154. package/package/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +194 -194
  155. package/package/kisscomps/components/SchemeConfig/priorityControl/index.vue +211 -211
  156. package/package/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  157. package/package/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +283 -283
  158. package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1211 -1211
  159. package/package/kisscomps/components/SelectCrossPhase/index.vue +418 -418
  160. package/package/kisscomps/components/SelectCrossPhase/utils.js +142 -142
  161. package/package/kisscomps/components/StageBord/StageBord.vue +303 -303
  162. package/package/kisscomps/components/StageBord/index.js +2 -2
  163. package/package/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  164. package/package/kisscomps/components/StageStatus/index.js +2 -2
  165. package/package/kisscomps/components/Stages/index.vue +319 -319
  166. package/package/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  167. package/package/kisscomps/components/SvgIcon/index.js +2 -2
  168. package/package/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +1041 -1041
  169. package/package/kisscomps/components/XRDDirSelector/index.js +2 -2
  170. package/package/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  171. package/package/kisscomps/components/XiaoKanban/index.vue +102 -102
  172. package/package/kisscomps/components/overView/index.vue +699 -699
  173. package/package/kisscomps/components/patternConfig/index.js +2 -2
  174. package/package/kisscomps/components/patternConfig/index.vue +981 -981
  175. package/package/kisscomps/components/patternConfig/pattern/patternTable.vue +408 -408
  176. package/package/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  177. package/package/kisscomps/components/patternConfig/planContent.vue +576 -576
  178. package/package/kisscomps/components/patternConfig/planMenu.vue +329 -329
  179. package/package/kisscomps/components/patternConfig/utils.js +152 -152
  180. package/package/kisscomps/components/patternList/index.js +2 -2
  181. package/package/kisscomps/components/patternList/patternList.vue +585 -585
  182. package/package/kisscomps/index.js +125 -125
  183. package/package/kissui.min.js +1 -1
  184. package/package.json +127 -127
  185. package/src/App.vue +24 -24
  186. package/src/EdgeMgr/EdgeModelBase.js +16 -16
  187. package/src/EdgeMgr/controller/crossDiagramMgr.js +125 -125
  188. package/src/api/authapi.js +31 -31
  189. package/src/api/config.js +21 -21
  190. package/src/api/control.js +106 -106
  191. package/src/api/cross.js +53 -53
  192. package/src/api/device.js +135 -135
  193. package/src/api/fault.js +66 -66
  194. package/src/api/index.js +24 -24
  195. package/src/api/login.js +46 -46
  196. package/src/api/optimize.js +72 -72
  197. package/src/api/param.js +165 -165
  198. package/src/api/passwdAssest.js +101 -101
  199. package/src/api/route.js +171 -171
  200. package/src/api/template.js +27 -31
  201. package/src/assets/font/LICENSE.txt +202 -202
  202. package/src/assets/font/font.css +6 -6
  203. package/src/i18n/index.js +26 -26
  204. package/src/i18n/language/en.js +1446 -1446
  205. package/src/i18n/language/index.js +25 -25
  206. package/src/i18n/language/zh.js +1445 -1445
  207. package/src/icons/demo.css +539 -539
  208. package/src/icons/demo_index.html +8146 -8146
  209. package/src/icons/iconfont.css +1399 -1399
  210. package/src/icons/iconfont.json +2431 -2431
  211. package/src/icons/index.js +20 -20
  212. package/src/icons/svg/azimuthlocking.svg +26 -26
  213. package/src/icons/svg/bendi.svg +110 -110
  214. package/src/icons/svg/bujin.svg +36 -36
  215. package/src/icons/svg/connectBlue.svg +7 -7
  216. package/src/icons/svg/currentvolume.svg +0 -0
  217. package/src/icons/svg/custom-BRTlane.svg +40 -40
  218. package/src/icons/svg/custom-buslane.svg +40 -40
  219. package/src/icons/svg/custom-detector.svg +12 -12
  220. package/src/icons/svg/custom-east-bottom.svg +32 -32
  221. package/src/icons/svg/custom-east-top.svg +32 -32
  222. package/src/icons/svg/custom-ewped.svg +35 -35
  223. package/src/icons/svg/custom-nonmotorizedlane.svg +40 -40
  224. package/src/icons/svg/custom-north-left.svg +32 -32
  225. package/src/icons/svg/custom-north-right.svg +32 -32
  226. package/src/icons/svg/custom-peddetector.svg +17 -17
  227. package/src/icons/svg/custom-snped.svg +35 -35
  228. package/src/icons/svg/custom-south-left.svg +32 -32
  229. package/src/icons/svg/custom-south-right.svg +32 -32
  230. package/src/icons/svg/custom-tramlane.svg +40 -40
  231. package/src/icons/svg/custom-vehiclebranch.svg +40 -40
  232. package/src/icons/svg/custom-vehiclemainroad.svg +41 -41
  233. package/src/icons/svg/custom-west-bottom.svg +32 -32
  234. package/src/icons/svg/custom-west-top.svg +32 -32
  235. package/src/icons/svg/custom-xlped.svg +14 -14
  236. package/src/icons/svg/custom-xrped.svg +14 -14
  237. package/src/icons/svg/cutRed.svg +7 -7
  238. package/src/icons/svg/cycle.svg +0 -0
  239. package/src/icons/svg/dingzhouqi.svg +34 -34
  240. package/src/icons/svg/ganyingkongzhi.svg +30 -30
  241. package/src/icons/svg/guandeng.svg +81 -81
  242. package/src/icons/svg/huangshan.svg +71 -71
  243. package/src/icons/svg/maincontrol.svg +0 -0
  244. package/src/icons/svg/manualcontrolbackground.svg +51 -51
  245. package/src/icons/svg/manualcontrolbackground1.svg +62 -62
  246. package/src/icons/svg/manualcontrolbackgrounden.svg +62 -62
  247. package/src/icons/svg/model.svg +0 -0
  248. package/src/icons/svg/phasediff.svg +0 -0
  249. package/src/icons/svg/prioritycontrol.svg +21 -21
  250. package/src/icons/svg/quanhong.svg +86 -86
  251. package/src/icons/svg/shanghe.svg +11 -11
  252. package/src/icons/svg/shoudong.svg +103 -103
  253. package/src/icons/svg/tentativeplan.svg +28 -28
  254. package/src/icons/svg/time.svg +0 -0
  255. package/src/icons/svg/wuxianlan.svg +46 -46
  256. package/src/icons/svg/xiala.svg +11 -11
  257. package/src/icons/svg/xingrenguojie.svg +33 -33
  258. package/src/icons/svg/xitong.svg +89 -89
  259. package/src/icons/svg/youxian.svg +41 -41
  260. package/src/icons/svg/zizhukongzhi.svg +43 -43
  261. package/src/kisscomps/components/BoardCard/BoardCard.vue +112 -112
  262. package/src/kisscomps/components/BoardCard/index.js +2 -2
  263. package/src/kisscomps/components/ChannelRealtimeIntersection/ChannelRealtimeIntersection.vue +101 -101
  264. package/src/kisscomps/components/ChannelRealtimeIntersection/index.js +2 -2
  265. package/src/kisscomps/components/Channelization/Channelization.vue +584 -584
  266. package/src/kisscomps/components/Channelization/index.js +2 -2
  267. package/src/kisscomps/components/ChannelizationFlowStatistic/ChannelizationFlowStatistic.vue +360 -360
  268. package/src/kisscomps/components/ChannelizationFlowStatistic/index.js +2 -2
  269. package/src/kisscomps/components/ChannelizationWithInterface/ChannelizationWithInterface.vue +518 -518
  270. package/src/kisscomps/components/ChannelizationWithInterface/index.js +2 -2
  271. package/src/kisscomps/components/CommonKanban/CommonKanban.vue +132 -132
  272. package/src/kisscomps/components/CommonKanban/index.js +2 -2
  273. package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +454 -454
  274. package/src/kisscomps/components/DirectionListConfiguration/index.js +2 -2
  275. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-bottom.vue +41 -41
  276. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-east-top.vue +60 -60
  277. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-ewped.vue +105 -105
  278. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-left.vue +60 -60
  279. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-north-right.vue +60 -60
  280. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-snped.vue +105 -105
  281. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-left.vue +60 -60
  282. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-south-right.vue +60 -60
  283. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-bottom.vue +60 -60
  284. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-west-top.vue +60 -60
  285. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xlped.vue +30 -30
  286. package/src/kisscomps/components/DirectionListConfiguration/svg/ped-xrped.vue +30 -30
  287. package/src/kisscomps/components/DirectionListConfiguration/svg/pedSvg.vue +78 -78
  288. package/src/kisscomps/components/DrawChannelization/drawsvg/basicCoordInfo.vue +181 -181
  289. package/src/kisscomps/components/DrawChannelization/drawsvg/channelizationElements.vue +255 -255
  290. package/src/kisscomps/components/DrawChannelization/drawsvg/detectorAssociatedComponent.vue +152 -152
  291. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/TextBox.vue +91 -91
  292. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/crossMap.vue +194 -194
  293. package/src/kisscomps/components/DrawChannelization/drawsvg/drawElement/editText.vue +108 -108
  294. package/src/kisscomps/components/DrawChannelization/drawsvg/firstImportCrossmap.vue +51 -51
  295. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/countdownSvg.vue +236 -236
  296. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorChart.vue +247 -247
  297. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/detectorIconSvg.vue +210 -210
  298. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/laneIcon.vue +72 -72
  299. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/motorwayIconSvg.vue +467 -467
  300. package/src/kisscomps/components/DrawChannelization/drawsvg/iconSvg/pedroadIconSvg.vue +230 -230
  301. package/src/kisscomps/components/DrawChannelization/drawsvg/importDialog.vue +74 -74
  302. package/src/kisscomps/components/DrawChannelization/drawsvg/index.draw.vue +1005 -1005
  303. package/src/kisscomps/components/DrawChannelization/drawsvg/index.vue +110 -110
  304. package/src/kisscomps/components/DrawChannelization/drawsvg/laneEditPanel.vue +707 -707
  305. package/src/kisscomps/components/DrawChannelization/drawsvg/overlapAssociatedComponent.vue +172 -172
  306. package/src/kisscomps/components/DrawChannelization/drawsvg/phaseAssociatedComponent.vue +172 -172
  307. package/src/kisscomps/components/DrawChannelization/drawsvg/table.vue +99 -99
  308. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/loadutils.js +87 -87
  309. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phaseDataModel.js +32 -32
  310. package/src/kisscomps/components/DrawChannelization/drawsvg/utils/phasePos.json +20 -20
  311. package/src/kisscomps/components/DrawChannelization/index.js +2 -2
  312. package/src/kisscomps/components/DrawChannelization/phaseDataMgr.js +278 -278
  313. package/src/kisscomps/components/ExpendConfig/ExpendConfig.vue +118 -118
  314. package/src/kisscomps/components/ExpendConfig/index.js +2 -2
  315. package/src/kisscomps/components/FaultDetailModal/FaultDetailModal.vue +178 -178
  316. package/src/kisscomps/components/FaultDetailModal/index.js +2 -2
  317. package/src/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +158 -158
  318. package/src/kisscomps/components/IntersectionDirectionSelection/index.js +2 -2
  319. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CrossRoadsSvg.vue +629 -629
  320. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/CustomRoadsSvg.vue +46 -46
  321. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionEWSvg.vue +447 -447
  322. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/PedSectionSNSvg.vue +341 -341
  323. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampEastSvg.vue +497 -497
  324. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampNorthSvg.vue +353 -353
  325. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampSouthSvg.vue +359 -359
  326. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/RampWestSvg.vue +443 -443
  327. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkClickSvg.vue +1302 -1302
  328. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/SidewalkSvg.vue +1190 -1190
  329. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeEastRoadsSvg.vue +498 -498
  330. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeNorthRoadsSvg.vue +484 -484
  331. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeSouthRoadsSvg.vue +488 -488
  332. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/TShapeWestRoadsSvg.vue +566 -566
  333. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LCrossRoadsSvg.vue +640 -640
  334. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeEastRoadsSvg.vue +497 -497
  335. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeNorthRoadsSvg.vue +486 -486
  336. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeSouthRoadsSvg.vue +490 -490
  337. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/leftroad/LTShapeWestRoadsSvg.vue +575 -575
  338. package/src/kisscomps/components/IntersectionMap/crossDirection/baseImg/refreshSvg.vue +63 -63
  339. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/busMapSvg.vue +50 -50
  340. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/eastBusSvg.vue +167 -167
  341. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/northBusSvg.vue +168 -168
  342. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/southBusSvg.vue +168 -168
  343. package/src/kisscomps/components/IntersectionMap/crossDirection/busIcon/westBusSvg.vue +169 -169
  344. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +1358 -1358
  345. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +197 -197
  346. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +196 -196
  347. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/rampPhaseIconSvg.vue +122 -122
  348. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.json +196 -196
  349. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/busPos.left.json +196 -196
  350. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +115 -115
  351. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +115 -115
  352. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/rampPos.json +52 -52
  353. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +219 -219
  354. package/src/kisscomps/components/IntersectionMap/crossDirection/utils.js +84 -84
  355. package/src/kisscomps/components/IntersectionMap/index.js +2 -2
  356. package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +211 -211
  357. package/src/kisscomps/components/IntersectionWithInterface/IntersectionWithInterface.vue +530 -530
  358. package/src/kisscomps/components/IntersectionWithInterface/index.js +2 -2
  359. package/src/kisscomps/components/KanBan/index.js +2 -2
  360. package/src/kisscomps/components/KanBan/kanban.vue +225 -225
  361. package/src/kisscomps/components/MessageBox/index.vue +96 -96
  362. package/src/kisscomps/components/OverLap/OverLap.vue +237 -237
  363. package/src/kisscomps/components/OverLap/index.js +2 -2
  364. package/src/kisscomps/components/PatternOptimize/PatternOptimize.vue +272 -272
  365. package/src/kisscomps/components/PatternOptimize/index.js +2 -2
  366. package/src/kisscomps/components/PatternStatus/PatternStatus.vue +1508 -1508
  367. package/src/kisscomps/components/PatternStatus/index.js +2 -2
  368. package/src/kisscomps/components/PatternWalkSvg/PatternWalkSvg.vue +423 -423
  369. package/src/kisscomps/components/PatternWalkSvg/index.js +2 -2
  370. package/src/kisscomps/components/PhaseDirectionSelect/PhaseDirectionSelect.vue +126 -126
  371. package/src/kisscomps/components/PhaseDirectionSelect/index.js +2 -2
  372. package/src/kisscomps/components/PhaseDirectionText/PhaseDirectionText.vue +106 -106
  373. package/src/kisscomps/components/PhaseDirectionText/index.js +2 -2
  374. package/src/kisscomps/components/PhaseMarker/index.js +6 -6
  375. package/src/kisscomps/components/PhaseMarker/phasemarker.vue +215 -215
  376. package/src/kisscomps/components/PhaseMarker/svg/patternSvg.vue +121 -121
  377. package/src/kisscomps/components/PhaseMarker/svg/phase.vue +60 -60
  378. package/src/kisscomps/components/PhaseMarker/svg/phaseCount.vue +62 -62
  379. package/src/kisscomps/components/PhaseMarker/svg/phaseCountCycle.vue +62 -62
  380. package/src/kisscomps/components/PhaseMarker/svg/phaseSvg.vue +117 -117
  381. package/src/kisscomps/components/PhasePedSelect/index.js +2 -2
  382. package/src/kisscomps/components/PhasePedSelect/index.vue +206 -206
  383. package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +908 -908
  384. package/src/kisscomps/components/SchemeConfig/azimuthlocking/index.vue +360 -360
  385. package/src/kisscomps/components/SchemeConfig/azimuthlocking/utils.js +92 -92
  386. package/src/kisscomps/components/SchemeConfig/closePhaselControlModal/index.vue +210 -210
  387. package/src/kisscomps/components/SchemeConfig/index.js +2 -2
  388. package/src/kisscomps/components/SchemeConfig/lockingPhaselControlModal/index.vue +234 -234
  389. package/src/kisscomps/components/SchemeConfig/manualControlModal/index.vue +235 -235
  390. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/controlModelGroup.vue +128 -128
  391. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +428 -426
  392. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/index.vue +855 -855
  393. package/src/kisscomps/components/SchemeConfig/manualControlModalNew/othersIcon.vue +194 -194
  394. package/src/kisscomps/components/SchemeConfig/priorityControl/index.vue +211 -211
  395. package/src/kisscomps/components/SchemeConfig/priorityControl/utils.js +163 -163
  396. package/src/kisscomps/components/SchemeConfig/realtimeStatusModal/index.vue +283 -283
  397. package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +1211 -1211
  398. package/src/kisscomps/components/SelectCrossPhase/index.vue +418 -418
  399. package/src/kisscomps/components/SelectCrossPhase/utils.js +142 -142
  400. package/src/kisscomps/components/StageBord/StageBord.vue +303 -303
  401. package/src/kisscomps/components/StageBord/index.js +2 -2
  402. package/src/kisscomps/components/StageStatus/StageStatus.vue +341 -341
  403. package/src/kisscomps/components/StageStatus/index.js +2 -2
  404. package/src/kisscomps/components/Stages/index.vue +319 -319
  405. package/src/kisscomps/components/SvgIcon/SvgIcon.vue +53 -53
  406. package/src/kisscomps/components/SvgIcon/index.js +2 -2
  407. package/src/kisscomps/components/XRDDirSelector/XRDDirSelector.vue +1041 -1041
  408. package/src/kisscomps/components/XRDDirSelector/index.js +2 -2
  409. package/src/kisscomps/components/XiaoKanban/DirSelector.vue +356 -356
  410. package/src/kisscomps/components/XiaoKanban/index.vue +102 -102
  411. package/src/kisscomps/components/overView/index.vue +699 -699
  412. package/src/kisscomps/components/patternConfig/index.js +2 -2
  413. package/src/kisscomps/components/patternConfig/index.vue +981 -981
  414. package/src/kisscomps/components/patternConfig/pattern/patternTable.vue +408 -408
  415. package/src/kisscomps/components/patternConfig/pattern/planChart/model/coordinationModel.js +665 -665
  416. package/src/kisscomps/components/patternConfig/planContent.vue +576 -576
  417. package/src/kisscomps/components/patternConfig/planMenu.vue +329 -329
  418. package/src/kisscomps/components/patternConfig/utils.js +152 -152
  419. package/src/kisscomps/components/patternList/index.js +2 -2
  420. package/src/kisscomps/components/patternList/patternList.vue +585 -585
  421. package/src/kisscomps/index.js +125 -125
  422. package/src/lib/publicjs/ArryListUtil.js +38 -38
  423. package/src/lib/publicjs/HttpurlMgr.js +45 -45
  424. package/src/lib/publicjs/KissApi.js +158 -158
  425. package/src/lib/publicjs/KissWSSub/Heartcheck.js +128 -128
  426. package/src/lib/publicjs/KissWSSub/KissWsSub.js +91 -91
  427. package/src/lib/publicjs/KissWSSub/KissWsSubByType.js +152 -152
  428. package/src/lib/publicjs/KissWSSub/SimuWsSubByType.js +44 -44
  429. package/src/lib/publicjs/KissWSSub/Sub.js +51 -51
  430. package/src/lib/publicjs/KissWSSub/SubChannel.js +119 -119
  431. package/src/lib/publicjs/basecomponents.js +65 -65
  432. package/src/lib/publicjs/localStorage.js +112 -112
  433. package/src/lib/publicjs/objdeepcopy.js +32 -32
  434. package/src/lib/publicjs/pageScroll.js +30 -30
  435. package/src/lib/publicjs/passwdAssest.js +101 -101
  436. package/src/lib/publicjs/styleclassfactory.js +32 -32
  437. package/src/main.js +51 -51
  438. package/src/router/index.js +63 -63
  439. package/src/store/getters.js +16 -16
  440. package/src/store/index.js +26 -26
  441. package/src/store/modules/globalParam.js +67 -67
  442. package/src/utils/ControlFormat.js +68 -68
  443. package/src/utils/RingDataModel.js +258 -258
  444. package/src/utils/auth.js +199 -199
  445. package/src/utils/conflct.js +250 -250
  446. package/src/utils/conflictList.js +87 -87
  447. package/src/utils/dateFormat.js +41 -41
  448. package/src/utils/errorcode.js +227 -227
  449. package/src/utils/fault.js +196 -196
  450. package/src/utils/faultcode.js +209 -209
  451. package/src/utils/index.js +69 -69
  452. package/src/utils/pedphasedesc.js +119 -119
  453. package/src/utils/phaseList.js +203 -203
  454. package/src/utils/phasedesc.js +144 -144
  455. package/src/utils/responseMessage.js +21 -21
  456. package/src/utils/validate.js +43 -43
  457. package/src/views/customchannelization.vue +49 -49
  458. package/src/views/home.1.vue +479 -479
  459. package/src/views/home.vue +93 -93
  460. package/src/views/intersection.vue +413 -413
  461. package/src/views/intersection2.vue +328 -328
  462. package/src/views/overView.vue +41 -41
  463. package/src/views/patternConfig.vue +609 -609
  464. package/src/views/schemeconfig.vue +206 -206
  465. package/static/apiconfig.json +451 -451
  466. package/static/styles/channelizatioon.scss +433 -433
  467. package/static/styles/common.scss +30 -30
  468. package/static/styles/commonkanban.scss +168 -168
  469. package/static/styles/dark/index.scss +2 -2
  470. package/static/styles/dark/theme/element-dark.scss +44 -44
  471. package/static/styles/index.scss +84 -84
  472. package/static/styles/intersection.scss +190 -190
  473. package/static/styles/light/index.scss +2 -2
  474. package/static/styles/light/theme/element-light.scss +44 -44
  475. package/static/styles/overview.scss +146 -146
  476. package/static/styles/patternConfig.scss +56 -56
  477. package/static/styles/phasePedSelect.scss +69 -69
  478. package/static/styles/schemeconfig.scss +549 -549
  479. package/static/styles/stages.scss +57 -57
  480. package/static/styles/uiComponents.scss +57 -57
  481. package/static/styles/xiaokanban.scss +50 -50
  482. package/static/token.json +2 -2
  483. package/test/e2e/custom-assertions/elementCount.js +27 -27
  484. package/test/e2e/nightwatch.conf.js +46 -46
  485. package/test/e2e/runner.js +48 -48
  486. package/test/e2e/specs/test.js +19 -19
  487. package/test/unit/.eslintrc +7 -7
  488. package/test/unit/jest.conf.js +30 -30
  489. package/test/unit/setup.js +3 -3
  490. package/test/unit/specs/HelloWorld.spec.js +11 -11
  491. package/package/kissui.js +0 -216608
  492. package/static/styles/theme/element-dark.scss +0 -0
@@ -1,576 +1,576 @@
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="planContent" v-if="!!chooseId">
14
- <div class="mask" v-if="maskVisible" @click ="clickMask"></div>
15
- <div class="btnGroup" v-show="false">
16
- <el-button class="btn" type="primary" @click="handleCreate">{{$t('openatccomponents.greenwaveoptimize.generate')}}</el-button>
17
- <div class="editbtn" :style="{zIndex: zIndexObj.editZIndex}">
18
- <el-popover placement="top-start" trigger="manual" v-model="maskVisible" width="290">
19
- <div class="tipContent">
20
- <div>
21
- <i class="iconfont icon-yindaoicon1 handicon"></i>
22
- </div>
23
- <div class="text">{{$t('openatccomponents.greenwaveoptimize.createconfig')}}</div>
24
- </div>
25
- <button slot="reference" class="btn" @click="handleEdit" ref="editbtn">{{$t('openatccomponents.greenwaveoptimize.edit')}}</button>
26
- </el-popover>
27
- </div>
28
- <el-button class="btn" type="primary" @click="Download" style="margin-left:10px;">{{$t('openatc.button.download')}}</el-button>
29
- </div>
30
- <el-tabs v-model="activeName" type="card" @tab-click="handleClick" style="border:0px solid red;height:40%;">
31
- <el-tab-pane :label="$t('openatccomponents.greenwaveoptimize.timespace')" name="first">
32
- <!-- <PlanChart ref="planchart"/> -->
33
- </el-tab-pane>
34
- </el-tabs>
35
- <el-tabs v-model="activeName2" type="card" @tab-click="handleClick" style="border:0px solid red;height:50%;">
36
- <el-tab-pane :label="$t('openatccomponents.greenwaveoptimize.pattern')" name="second">
37
- <!-- <PatternTable ref="patterntable" @onNewPatternListChange="onNewPatternListChange"/> -->
38
- </el-tab-pane>
39
- </el-tabs>
40
- <Messagebox :visible="messageboxVisible" :text="$t('openatccomponents.greenwaveoptimize.confirmdownloadpattern')" @cancle="cancle" @ok="ok"/>
41
- </div>
42
- </template>
43
-
44
- <script>
45
- import PatternTable from './pattern/patternTable'
46
- // import PlanChart from './pattern/planChart/index'
47
- import { GetRouteInfo,
48
- getAllPatternOfDevs, getAllPhaseOfDevs,
49
- // getAllPatternOfRoute, getAllPhaseOfRoute,
50
- generateRoute, updateRoutePattern, downloadRoutePattern, deleteRoutePattern } from '../../../api/route'
51
- import Messagebox from '../../components/MessageBox/index'
52
- import { getMessageByCode } from '../../../utils/responseMessage'
53
- export default {
54
- name: 'PlanContent',
55
- data () {
56
- return {
57
- chooseId: 0,
58
- timer: 0,
59
- activeName: 'first',
60
- activeName2: 'second',
61
- maskVisible: false, // 引导遮罩层是否显示
62
- configurationVisible: false, // 配置界面是否显示
63
- messageboxVisible: false, // 关闭界面二期确认弹窗是否显示
64
- addNum: 0,
65
- mock: [],
66
- agentids: [],
67
- routeData: {}, // 单个协调路线的全部信息
68
- patternList: [],
69
- phaseList: [],
70
- greenwave: []
71
- }
72
- },
73
- components: {
74
- PatternTable,
75
- // PlanChart,
76
- Messagebox
77
- },
78
- props: {
79
- schemeData: {
80
- type: Array
81
- },
82
- step: {
83
- type: Boolean
84
- },
85
- zIndexObj: {
86
- type: Object
87
- }
88
- },
89
- watch: {
90
- schemeData: {
91
- handler: function (val) {
92
- if (val && !val.length && this.step) {
93
- this.maskVisible = true
94
- // 模拟一次手动点击,触发tip显示
95
- this.$refs.editbtn.click()
96
- }
97
- },
98
- deep: true
99
- }
100
- },
101
- mounted () {
102
- },
103
- destroyed () {
104
- this.closeInterval()
105
- },
106
- methods: {
107
- init (chooseId, editableTab, agentids) {
108
- if (this.agentids.join('') !== agentids.join('')) {
109
- // reset data
110
- this.patternList = []
111
- this.phaseList = []
112
- }
113
- this.agentids = agentids
114
- this.chooseId = chooseId
115
- // this.getRouteInfo()
116
- this.routeData = editableTab
117
- this.getAllPatternOfRoute()
118
- },
119
- getPatternListFromTab (tab, list) {
120
- let res = []
121
- let devs = tab.devs
122
- for (let dev of devs) {
123
- if (!dev.patternList || dev.patternList.length === 0) {
124
- res = list
125
- return res
126
- }
127
- }
128
- let devPatternList = devs.map(item => {
129
- let pattern = {
130
- agentid: item.agentid,
131
- feature: {
132
- patternList: item.patternList
133
- }
134
- }
135
- return pattern
136
- })
137
- res = devPatternList
138
- return res
139
- },
140
- getPhaseListFromTab (tab) {
141
- let res = []
142
- return res
143
- },
144
- closeInterval () {
145
- clearInterval(this.timer)
146
- },
147
- cancle () {
148
- this.messageboxVisible = false
149
- },
150
- ok () {
151
- this.messageboxVisible = false
152
- this.handleDownload()
153
- },
154
- Download () {
155
- this.messageboxVisible = true
156
- },
157
- handleClick (tab, event) {
158
- if (tab.name === 'first') {
159
- this.refreshChart()
160
- }
161
- },
162
- refreshChart () {
163
- let patterntable = this.$refs.patterntable
164
- let newPatternList = patterntable.newPatternList
165
- for (let pattern of this.patternList) {
166
- let agentid = pattern.agentid
167
- let newPattern = newPatternList.filter(npl => npl.agentid === agentid)[0]
168
- let patternId = newPattern.patternId
169
- let currPatternList = pattern.feature.patternList
170
- let currPattern
171
- if (Array.isArray(currPatternList)) {
172
- currPattern = currPatternList.filter(cpl => cpl.id === patternId)[0]
173
- if (!currPattern) {
174
- currPattern = currPatternList[0]
175
- }
176
- } else {
177
- currPattern = currPatternList
178
- }
179
- currPattern.cycle = newPattern.cycle
180
- currPattern.offset = newPattern.offset
181
- }
182
- this.handlePlanChart()
183
- },
184
- handleEdit () {
185
- if (this.maskVisible && this.addNum <= 1) {
186
- if (this.addNum === 1) {
187
- this.maskVisible = false
188
- }
189
- this.addNum++
190
- }
191
- if (!this.maskVisible) {
192
- // 获取单个协调路线的全部信息
193
- // (弹窗取消后,应重新获取静态数据,此处采取中间变量法重新赋值,以触发watch能监听到routeData变化,给弹窗内共有变量configData重新赋值)
194
- const lastRouteData = JSON.parse(JSON.stringify(this.routeData))
195
- this.routeData = []
196
- this.routeData = lastRouteData
197
- this.configurationVisible = true
198
- }
199
- },
200
- getRouteInfo () {
201
- if (this.chooseId === 0) return
202
- GetRouteInfo(this.chooseId).then(res => {
203
- if (!res.data.success) {
204
- if (res.data.code === '4003') {
205
- let agentid = res.data.data.agentid
206
- this.$message.error(this.$t('openatccomponents.greenwaveoptimize.device') + agentid + this.$t('openatccomponents.greenwaveoptimize.notonline'))
207
- return
208
- }
209
- this.$message.error(getMessageByCode(res.data.code, this.$i18n.locale))
210
- return
211
- }
212
- this.routeData = res.data.data
213
- this.getAllPatternOfRoute() // 获取该路线的所有方案
214
- })
215
- },
216
- async handleDownload (id, routeData) {
217
- let param = {
218
- id: id,
219
- continueOnfailure: routeData.continueOnfailure,
220
- duration: routeData.duration,
221
- optPatternList: []
222
- }
223
- // check
224
- let generateData = this.getGenerateParam(routeData)
225
- for (let dev of routeData.devs) {
226
- if (!dev.feature) {
227
- let feature = generateData.devs.filter(item => item.agentid === dev.agentid)[0].feature
228
- delete feature.phase
229
- dev.feature = feature
230
- }
231
- }
232
- for (let dev of routeData.devs) {
233
- if (!dev.feature) {
234
- this.$message.warning(this.$t('openatccomponents.greenwaveoptimize.errDownloadParam'), dev.agentid)
235
- return false
236
- }
237
- }
238
- param.optPatternList = [routeData]
239
- return new Promise((resolve, reject) => {
240
- downloadRoutePattern(param).then(res => {
241
- if (!res.data.success) {
242
- let msg = getMessageByCode(res.data.code, this.$i18n.locale)
243
- if (res.data.data) {
244
- let errorCode = res.data.data.errorCode
245
- if (errorCode) {
246
- msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
247
- }
248
- }
249
- this.$message.error(msg)
250
- resolve(res)
251
- }
252
- this.$alert(this.$t('openatccomponents.greenwaveoptimize.planissuedsucc'), { type: 'success' })
253
- resolve(res)
254
- }).catch(error => {
255
- this.$message.error(error)
256
- })
257
- })
258
- },
259
- async handleDelete (param) {
260
- return new Promise((resolve, reject) => {
261
- deleteRoutePattern(param).then(res => {
262
- if (!res.data.success) {
263
- let msg = getMessageByCode(res.data.code, this.$i18n.locale)
264
- if (res.data.data) {
265
- let errorCode = res.data.data.errorCode
266
- if (errorCode) {
267
- msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
268
- }
269
- }
270
- this.$message.error(msg)
271
- resolve(false)
272
- }
273
- this.$message.success(this.$t('openatc.common.deletesuccess'))
274
- this.$parent.getAllPlan()
275
- resolve(true)
276
- }).catch(error => {
277
- this.$message.error(error)
278
- })
279
- })
280
- },
281
- async handleSave (id, routeData) {
282
- return new Promise((resolve, reject) => {
283
- let param = this.getSaveParam(id, routeData)
284
- updateRoutePattern(param).then(res => {
285
- if (!res.data.success) {
286
- let msg = getMessageByCode(res.data.code, this.$i18n.locale)
287
- if (res.data.data) {
288
- let errorCode = res.data.data.errorCode
289
- if (errorCode) {
290
- msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
291
- }
292
- }
293
- this.$message.error(msg)
294
- resolve(false)
295
- }
296
- this.$message.success(this.$t('openatc.common.savesuccess'))
297
- this.$parent.getAllPlan()
298
- resolve(true)
299
- }).catch(error => {
300
- this.$message.error(error)
301
- })
302
- })
303
- },
304
- handleSaveClick (id, routeData) {
305
- let param = this.getSaveParam(id, routeData)
306
- updateRoutePattern(param).then(res => {
307
- if (!res.data.success) {
308
- let msg = getMessageByCode(res.data.code, this.$i18n.locale)
309
- if (res.data.data) {
310
- let errorCode = res.data.data.errorCode
311
- if (errorCode) {
312
- msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
313
- }
314
- }
315
- this.$message.error(msg)
316
- return
317
- }
318
- this.$message.success(this.$t('openatc.common.savesuccess'))
319
- this.$parent.getAllPlan()
320
- })
321
- },
322
- getSaveParam (id, tabs, filter = false) {
323
- let routeData = JSON.parse(JSON.stringify(tabs))
324
- let param = {
325
- 'id': id || 0,
326
- 'optPatternList': routeData
327
- }
328
- for (let tab of routeData) {
329
- let devs = tab.devs
330
- for (let inter of devs) {
331
- let patternList = inter.patternList.map(item => {
332
- let pattern = {
333
- 'id': item.id,
334
- 'desc': item.desc,
335
- 'offset': item.offset,
336
- 'cycle': item.cycle,
337
- 'rings': item.rings
338
- }
339
- return pattern
340
- })
341
- inter.patternList = patternList
342
- // inter.id = param.id
343
- // delete inter.name
344
- // delete inter.content
345
- let dev = {
346
- 'id': inter.id,
347
- 'name': inter.name,
348
- 'isused': inter.isused,
349
- 'agentid': inter.agentid,
350
- 'nextDistance': inter.nextDistance,
351
- 'distance': inter.distance,
352
- 'type': inter.type,
353
- 'jsonparam': inter.jsonparam,
354
- 'description': inter.description,
355
- 'forwardphaseDesc': inter.forwardphaseDesc,
356
- 'backphaseDesc': inter.backphaseDesc,
357
- 'forwardphaseid': inter.forwardphaseid,
358
- 'forwardphasedirection': inter.forwardphasedirection,
359
- 'backphaseid': inter.backphaseid,
360
- 'backphasedirection': inter.backphasedirection,
361
- 'patternList': inter.patternList
362
- }
363
- inter = {...dev}
364
- }
365
- }
366
- if (filter) {
367
- param.optPatternList = param.optPatternList.map(pattern => {
368
- delete pattern.content
369
- delete pattern.date
370
- delete pattern.day
371
- delete pattern.direction
372
- delete pattern.downspeed
373
- delete pattern.keyintsid
374
- delete pattern.month
375
- delete pattern.optstrategy
376
- delete pattern.plan
377
- delete pattern.upspeed
378
- pattern.name = pattern.title
379
- // delete pattern.name
380
- // delete pattern.name
381
- delete pattern.title
382
- delete pattern.patternid
383
- pattern.devs.map(inter => {
384
- delete inter.allPatterns
385
- delete inter.currPhase
386
- delete inter.patternList
387
- delete inter.phaseList
388
- delete inter.ringCount
389
- delete inter.rings
390
- })
391
- return pattern
392
- })
393
- }
394
- return param
395
- },
396
- handleCreate (routeData) {
397
- let param = this.getGenerateParam(routeData, 1)
398
- generateRoute(param).then(res => {
399
- if (!res.data.success) {
400
- let msg = getMessageByCode(res.data.code, this.$i18n.locale)
401
- if (res.data.data) {
402
- let errorCode = res.data.data.errorCode
403
- if (errorCode) {
404
- msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
405
- }
406
- }
407
- this.$message.error(msg)
408
- return
409
- }
410
- this.$message.success(this.$t('openatccomponents.greenwaveoptimize.generatesuedsucc'))
411
- this.greenwave = res.data.data.greenwave
412
- this.patternList = res.data.data.devs
413
- for (let dev of routeData.devs) {
414
- for (let pattern of this.patternList) {
415
- if (dev.agentid === pattern.agentid) {
416
- dev.feature = pattern.feature
417
- dev.patternid = pattern.patternid
418
- }
419
- }
420
- }
421
- this.handlePlanChart()
422
- this.handlePatternTable()
423
- })
424
- },
425
- getGenerateParam (routeData, bizType = 0) { // bizType: 1 generate专用
426
- let route = JSON.parse(JSON.stringify(routeData))
427
- let param = {
428
- 'id': route.id,
429
- 'name': route.name,
430
- 'keyintsid': route.keyintsid,
431
- 'direction': route.direction,
432
- 'optstrategy': route.optstrategy,
433
- 'upspeed': route.upspeed,
434
- 'downspeed': route.downspeed,
435
- 'type': route.type ? route.type : 0,
436
- 'devs': route.devs
437
- }
438
- let devs = route.devs
439
- for (let inter of devs) {
440
- let patternList = inter.patternList.map(item => {
441
- let pattern = {
442
- 'id': item.id,
443
- 'desc': item.desc,
444
- 'offset': item.offset,
445
- 'cycle': item.cycle,
446
- 'rings': item.rings
447
- }
448
- return pattern
449
- })
450
- let phaseList = inter.phaseList.map(item => {
451
- let pattern = {
452
- 'id': item.id,
453
- 'concurrent': item.concurrent
454
- }
455
- return pattern
456
- })
457
- let feature = {
458
- patternList: patternList,
459
- phaseList: phaseList
460
- }
461
- inter.routeid = param.id
462
- inter.feature = feature
463
- delete inter.id
464
- delete inter.name
465
- }
466
- // param = route
467
- param.devs = param.devs.map((item, index) => {
468
- let dev = {
469
- 'agentid': item.agentid,
470
- 'routeid': item.routeid,
471
- 'forwardphaseid': item.forwardphaseid,
472
- 'backphaseid': item.backphaseid,
473
- 'distance': item.distance,
474
- 'width': item.width,
475
- 'sortid': item.sortid ? item.sortid : index + 1,
476
- 'patternid': item.patternid,
477
- 'feature': item.feature
478
- }
479
- if (bizType === 1) {
480
- dev.feature.patternList = dev.feature.patternList.filter(pattern => pattern.id === dev.patternid)
481
- }
482
- return dev
483
- })
484
- return param
485
- },
486
- closeDrawer (isRefresh) {
487
- this.configurationVisible = false
488
- if (isRefresh === 'refresh') {
489
- this.$emit('resetContentComponent')
490
- }
491
- },
492
- clickMask () {
493
- this.maskVisible = false
494
- },
495
- getAllPatternOfRoute () {
496
- if (this.agentids.length === 0) return
497
- getAllPatternOfDevs(this.agentids).then(res => {
498
- if (!res.data.success) {
499
- let agentid = res.data.data.agentid
500
- let commomMsg = this.$t('openatccomponents.greenwaveoptimize.device') + agentid
501
- let data = res
502
- let parrenterror = getMessageByCode(data.data.code, this.$i18n.locale)
503
- if (data.data.data) {
504
- // 子类型错误
505
- let childErrorCode = data.data.data.errorCode
506
- if (childErrorCode) {
507
- let childerror = getMessageByCode(data.data.data.errorCode, this.$i18n.locale)
508
- this.$message.error(parrenterror + ',' + childerror + ',' + commomMsg)
509
- }
510
- } else {
511
- this.$message.error(parrenterror + ',' + commomMsg)
512
- }
513
- this.$emit('ErrorOcurrred')
514
- return
515
- }
516
- this.allPatternList = res.data.data.devs
517
- let editableTab = this.routeData
518
- let patternList = this.getPatternListFromTab(editableTab, this.allPatternList)
519
- this.patternList = patternList
520
- this.getAllPhaseOfRouter() // 获取改路线的所有相位
521
- })
522
- },
523
- getAllPhaseOfRouter () {
524
- if (this.agentids.length === 0) return
525
- getAllPhaseOfDevs(this.agentids).then(res => {
526
- if (!res.data.success) {
527
- let agentid = res.data.data.agentid
528
- let commomMsg = this.$t('openatccomponents.greenwaveoptimize.device') + agentid
529
- let data = res
530
- let parrenterror = getMessageByCode(data.data.code, this.$i18n.locale)
531
- if (data.data.data) {
532
- // 子类型错误
533
- let childErrorCode = data.data.data.errorCode
534
- if (childErrorCode) {
535
- let childerror = getMessageByCode(data.data.data.errorCode, this.$i18n.locale)
536
- this.$message.error(parrenterror + ',' + childerror + ',' + commomMsg)
537
- }
538
- } else {
539
- this.$message.error(parrenterror + ',' + commomMsg)
540
- }
541
- this.$emit('ErrorOcurrred')
542
- return
543
- }
544
- this.phaseList = res.data.data.devs
545
- this.handlePatternTable()
546
- this.handlePlanChart()
547
- this.handleMaskVisible()
548
- })
549
- },
550
- handlePatternTable () {
551
- this.$emit('handlePatternTable', this.routeData, this.patternList, this.phaseList)
552
- // let patterntable = this.$refs.patterntable
553
- // patterntable.onPatternTable(this.routeData, this.patternList, this.phaseList)
554
- },
555
- handlePlanChart () {
556
- this.$emit('handlePlanChart', this.routeData, this.patternList, this.greenwave, this.allPatternList)
557
- // let planchart = this.$refs.planchart
558
- // planchart.onPlanChart(this.routeData, this.patternList, this.greenwave)
559
- },
560
- handleMaskVisible () {
561
- // 数据为空,显示蒙层
562
- if (this.patternList && !this.patternList.length && this.step) {
563
- this.maskVisible = true
564
- // 模拟一次手动点击,触发tip显示
565
- this.$refs.editbtn.click()
566
- }
567
- },
568
- onNewPatternListChange (newPatternList) {
569
- this.refreshChart()
570
- }
571
- }
572
- }
573
- </script>
574
-
575
- <style lang="scss" scoped>
576
- </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="planContent" v-if="!!chooseId">
14
+ <div class="mask" v-if="maskVisible" @click ="clickMask"></div>
15
+ <div class="btnGroup" v-show="false">
16
+ <el-button class="btn" type="primary" @click="handleCreate">{{$t('openatccomponents.greenwaveoptimize.generate')}}</el-button>
17
+ <div class="editbtn" :style="{zIndex: zIndexObj.editZIndex}">
18
+ <el-popover placement="top-start" trigger="manual" v-model="maskVisible" width="290">
19
+ <div class="tipContent">
20
+ <div>
21
+ <i class="iconfont icon-yindaoicon1 handicon"></i>
22
+ </div>
23
+ <div class="text">{{$t('openatccomponents.greenwaveoptimize.createconfig')}}</div>
24
+ </div>
25
+ <button slot="reference" class="btn" @click="handleEdit" ref="editbtn">{{$t('openatccomponents.greenwaveoptimize.edit')}}</button>
26
+ </el-popover>
27
+ </div>
28
+ <el-button class="btn" type="primary" @click="Download" style="margin-left:10px;">{{$t('openatc.button.download')}}</el-button>
29
+ </div>
30
+ <el-tabs v-model="activeName" type="card" @tab-click="handleClick" style="border:0px solid red;height:40%;">
31
+ <el-tab-pane :label="$t('openatccomponents.greenwaveoptimize.timespace')" name="first">
32
+ <!-- <PlanChart ref="planchart"/> -->
33
+ </el-tab-pane>
34
+ </el-tabs>
35
+ <el-tabs v-model="activeName2" type="card" @tab-click="handleClick" style="border:0px solid red;height:50%;">
36
+ <el-tab-pane :label="$t('openatccomponents.greenwaveoptimize.pattern')" name="second">
37
+ <!-- <PatternTable ref="patterntable" @onNewPatternListChange="onNewPatternListChange"/> -->
38
+ </el-tab-pane>
39
+ </el-tabs>
40
+ <Messagebox :visible="messageboxVisible" :text="$t('openatccomponents.greenwaveoptimize.confirmdownloadpattern')" @cancle="cancle" @ok="ok"/>
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import PatternTable from './pattern/patternTable'
46
+ // import PlanChart from './pattern/planChart/index'
47
+ import { GetRouteInfo,
48
+ getAllPatternOfDevs, getAllPhaseOfDevs,
49
+ // getAllPatternOfRoute, getAllPhaseOfRoute,
50
+ generateRoute, updateRoutePattern, downloadRoutePattern, deleteRoutePattern } from '../../../api/route'
51
+ import Messagebox from '../../components/MessageBox/index'
52
+ import { getMessageByCode } from '../../../utils/responseMessage'
53
+ export default {
54
+ name: 'PlanContent',
55
+ data () {
56
+ return {
57
+ chooseId: 0,
58
+ timer: 0,
59
+ activeName: 'first',
60
+ activeName2: 'second',
61
+ maskVisible: false, // 引导遮罩层是否显示
62
+ configurationVisible: false, // 配置界面是否显示
63
+ messageboxVisible: false, // 关闭界面二期确认弹窗是否显示
64
+ addNum: 0,
65
+ mock: [],
66
+ agentids: [],
67
+ routeData: {}, // 单个协调路线的全部信息
68
+ patternList: [],
69
+ phaseList: [],
70
+ greenwave: []
71
+ }
72
+ },
73
+ components: {
74
+ PatternTable,
75
+ // PlanChart,
76
+ Messagebox
77
+ },
78
+ props: {
79
+ schemeData: {
80
+ type: Array
81
+ },
82
+ step: {
83
+ type: Boolean
84
+ },
85
+ zIndexObj: {
86
+ type: Object
87
+ }
88
+ },
89
+ watch: {
90
+ schemeData: {
91
+ handler: function (val) {
92
+ if (val && !val.length && this.step) {
93
+ this.maskVisible = true
94
+ // 模拟一次手动点击,触发tip显示
95
+ this.$refs.editbtn.click()
96
+ }
97
+ },
98
+ deep: true
99
+ }
100
+ },
101
+ mounted () {
102
+ },
103
+ destroyed () {
104
+ this.closeInterval()
105
+ },
106
+ methods: {
107
+ init (chooseId, editableTab, agentids) {
108
+ if (this.agentids.join('') !== agentids.join('')) {
109
+ // reset data
110
+ this.patternList = []
111
+ this.phaseList = []
112
+ }
113
+ this.agentids = agentids
114
+ this.chooseId = chooseId
115
+ // this.getRouteInfo()
116
+ this.routeData = editableTab
117
+ this.getAllPatternOfRoute()
118
+ },
119
+ getPatternListFromTab (tab, list) {
120
+ let res = []
121
+ let devs = tab.devs
122
+ for (let dev of devs) {
123
+ if (!dev.patternList || dev.patternList.length === 0) {
124
+ res = list
125
+ return res
126
+ }
127
+ }
128
+ let devPatternList = devs.map(item => {
129
+ let pattern = {
130
+ agentid: item.agentid,
131
+ feature: {
132
+ patternList: item.patternList
133
+ }
134
+ }
135
+ return pattern
136
+ })
137
+ res = devPatternList
138
+ return res
139
+ },
140
+ getPhaseListFromTab (tab) {
141
+ let res = []
142
+ return res
143
+ },
144
+ closeInterval () {
145
+ clearInterval(this.timer)
146
+ },
147
+ cancle () {
148
+ this.messageboxVisible = false
149
+ },
150
+ ok () {
151
+ this.messageboxVisible = false
152
+ this.handleDownload()
153
+ },
154
+ Download () {
155
+ this.messageboxVisible = true
156
+ },
157
+ handleClick (tab, event) {
158
+ if (tab.name === 'first') {
159
+ this.refreshChart()
160
+ }
161
+ },
162
+ refreshChart () {
163
+ let patterntable = this.$refs.patterntable
164
+ let newPatternList = patterntable.newPatternList
165
+ for (let pattern of this.patternList) {
166
+ let agentid = pattern.agentid
167
+ let newPattern = newPatternList.filter(npl => npl.agentid === agentid)[0]
168
+ let patternId = newPattern.patternId
169
+ let currPatternList = pattern.feature.patternList
170
+ let currPattern
171
+ if (Array.isArray(currPatternList)) {
172
+ currPattern = currPatternList.filter(cpl => cpl.id === patternId)[0]
173
+ if (!currPattern) {
174
+ currPattern = currPatternList[0]
175
+ }
176
+ } else {
177
+ currPattern = currPatternList
178
+ }
179
+ currPattern.cycle = newPattern.cycle
180
+ currPattern.offset = newPattern.offset
181
+ }
182
+ this.handlePlanChart()
183
+ },
184
+ handleEdit () {
185
+ if (this.maskVisible && this.addNum <= 1) {
186
+ if (this.addNum === 1) {
187
+ this.maskVisible = false
188
+ }
189
+ this.addNum++
190
+ }
191
+ if (!this.maskVisible) {
192
+ // 获取单个协调路线的全部信息
193
+ // (弹窗取消后,应重新获取静态数据,此处采取中间变量法重新赋值,以触发watch能监听到routeData变化,给弹窗内共有变量configData重新赋值)
194
+ const lastRouteData = JSON.parse(JSON.stringify(this.routeData))
195
+ this.routeData = []
196
+ this.routeData = lastRouteData
197
+ this.configurationVisible = true
198
+ }
199
+ },
200
+ getRouteInfo () {
201
+ if (this.chooseId === 0) return
202
+ GetRouteInfo(this.chooseId).then(res => {
203
+ if (!res.data.success) {
204
+ if (res.data.code === '4003') {
205
+ let agentid = res.data.data.agentid
206
+ this.$message.error(this.$t('openatccomponents.greenwaveoptimize.device') + agentid + this.$t('openatccomponents.greenwaveoptimize.notonline'))
207
+ return
208
+ }
209
+ this.$message.error(getMessageByCode(res.data.code, this.$i18n.locale))
210
+ return
211
+ }
212
+ this.routeData = res.data.data
213
+ this.getAllPatternOfRoute() // 获取该路线的所有方案
214
+ })
215
+ },
216
+ async handleDownload (id, routeData) {
217
+ let param = {
218
+ id: id,
219
+ continueOnfailure: routeData.continueOnfailure,
220
+ duration: routeData.duration,
221
+ optPatternList: []
222
+ }
223
+ // check
224
+ let generateData = this.getGenerateParam(routeData)
225
+ for (let dev of routeData.devs) {
226
+ if (!dev.feature) {
227
+ let feature = generateData.devs.filter(item => item.agentid === dev.agentid)[0].feature
228
+ delete feature.phase
229
+ dev.feature = feature
230
+ }
231
+ }
232
+ for (let dev of routeData.devs) {
233
+ if (!dev.feature) {
234
+ this.$message.warning(this.$t('openatccomponents.greenwaveoptimize.errDownloadParam'), dev.agentid)
235
+ return false
236
+ }
237
+ }
238
+ param.optPatternList = [routeData]
239
+ return new Promise((resolve, reject) => {
240
+ downloadRoutePattern(param).then(res => {
241
+ if (!res.data.success) {
242
+ let msg = getMessageByCode(res.data.code, this.$i18n.locale)
243
+ if (res.data.data) {
244
+ let errorCode = res.data.data.errorCode
245
+ if (errorCode) {
246
+ msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
247
+ }
248
+ }
249
+ this.$message.error(msg)
250
+ resolve(res)
251
+ }
252
+ this.$alert(this.$t('openatccomponents.greenwaveoptimize.planissuedsucc'), { type: 'success' })
253
+ resolve(res)
254
+ }).catch(error => {
255
+ this.$message.error(error)
256
+ })
257
+ })
258
+ },
259
+ async handleDelete (param) {
260
+ return new Promise((resolve, reject) => {
261
+ deleteRoutePattern(param).then(res => {
262
+ if (!res.data.success) {
263
+ let msg = getMessageByCode(res.data.code, this.$i18n.locale)
264
+ if (res.data.data) {
265
+ let errorCode = res.data.data.errorCode
266
+ if (errorCode) {
267
+ msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
268
+ }
269
+ }
270
+ this.$message.error(msg)
271
+ resolve(false)
272
+ }
273
+ this.$message.success(this.$t('openatc.common.deletesuccess'))
274
+ this.$parent.getAllPlan()
275
+ resolve(true)
276
+ }).catch(error => {
277
+ this.$message.error(error)
278
+ })
279
+ })
280
+ },
281
+ async handleSave (id, routeData) {
282
+ return new Promise((resolve, reject) => {
283
+ let param = this.getSaveParam(id, routeData)
284
+ updateRoutePattern(param).then(res => {
285
+ if (!res.data.success) {
286
+ let msg = getMessageByCode(res.data.code, this.$i18n.locale)
287
+ if (res.data.data) {
288
+ let errorCode = res.data.data.errorCode
289
+ if (errorCode) {
290
+ msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
291
+ }
292
+ }
293
+ this.$message.error(msg)
294
+ resolve(false)
295
+ }
296
+ this.$message.success(this.$t('openatc.common.savesuccess'))
297
+ this.$parent.getAllPlan()
298
+ resolve(true)
299
+ }).catch(error => {
300
+ this.$message.error(error)
301
+ })
302
+ })
303
+ },
304
+ handleSaveClick (id, routeData) {
305
+ let param = this.getSaveParam(id, routeData)
306
+ updateRoutePattern(param).then(res => {
307
+ if (!res.data.success) {
308
+ let msg = getMessageByCode(res.data.code, this.$i18n.locale)
309
+ if (res.data.data) {
310
+ let errorCode = res.data.data.errorCode
311
+ if (errorCode) {
312
+ msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
313
+ }
314
+ }
315
+ this.$message.error(msg)
316
+ return
317
+ }
318
+ this.$message.success(this.$t('openatc.common.savesuccess'))
319
+ this.$parent.getAllPlan()
320
+ })
321
+ },
322
+ getSaveParam (id, tabs, filter = false) {
323
+ let routeData = JSON.parse(JSON.stringify(tabs))
324
+ let param = {
325
+ 'id': id || 0,
326
+ 'optPatternList': routeData
327
+ }
328
+ for (let tab of routeData) {
329
+ let devs = tab.devs
330
+ for (let inter of devs) {
331
+ let patternList = inter.patternList.map(item => {
332
+ let pattern = {
333
+ 'id': item.id,
334
+ 'desc': item.desc,
335
+ 'offset': item.offset,
336
+ 'cycle': item.cycle,
337
+ 'rings': item.rings
338
+ }
339
+ return pattern
340
+ })
341
+ inter.patternList = patternList
342
+ // inter.id = param.id
343
+ // delete inter.name
344
+ // delete inter.content
345
+ let dev = {
346
+ 'id': inter.id,
347
+ 'name': inter.name,
348
+ 'isused': inter.isused,
349
+ 'agentid': inter.agentid,
350
+ 'nextDistance': inter.nextDistance,
351
+ 'distance': inter.distance,
352
+ 'type': inter.type,
353
+ 'jsonparam': inter.jsonparam,
354
+ 'description': inter.description,
355
+ 'forwardphaseDesc': inter.forwardphaseDesc,
356
+ 'backphaseDesc': inter.backphaseDesc,
357
+ 'forwardphaseid': inter.forwardphaseid,
358
+ 'forwardphasedirection': inter.forwardphasedirection,
359
+ 'backphaseid': inter.backphaseid,
360
+ 'backphasedirection': inter.backphasedirection,
361
+ 'patternList': inter.patternList
362
+ }
363
+ inter = {...dev}
364
+ }
365
+ }
366
+ if (filter) {
367
+ param.optPatternList = param.optPatternList.map(pattern => {
368
+ delete pattern.content
369
+ delete pattern.date
370
+ delete pattern.day
371
+ delete pattern.direction
372
+ delete pattern.downspeed
373
+ delete pattern.keyintsid
374
+ delete pattern.month
375
+ delete pattern.optstrategy
376
+ delete pattern.plan
377
+ delete pattern.upspeed
378
+ pattern.name = pattern.title
379
+ // delete pattern.name
380
+ // delete pattern.name
381
+ delete pattern.title
382
+ delete pattern.patternid
383
+ pattern.devs.map(inter => {
384
+ delete inter.allPatterns
385
+ delete inter.currPhase
386
+ delete inter.patternList
387
+ delete inter.phaseList
388
+ delete inter.ringCount
389
+ delete inter.rings
390
+ })
391
+ return pattern
392
+ })
393
+ }
394
+ return param
395
+ },
396
+ handleCreate (routeData) {
397
+ let param = this.getGenerateParam(routeData, 1)
398
+ generateRoute(param).then(res => {
399
+ if (!res.data.success) {
400
+ let msg = getMessageByCode(res.data.code, this.$i18n.locale)
401
+ if (res.data.data) {
402
+ let errorCode = res.data.data.errorCode
403
+ if (errorCode) {
404
+ msg = msg + ' - ' + getMessageByCode(errorCode, this.$i18n.locale)
405
+ }
406
+ }
407
+ this.$message.error(msg)
408
+ return
409
+ }
410
+ this.$message.success(this.$t('openatccomponents.greenwaveoptimize.generatesuedsucc'))
411
+ this.greenwave = res.data.data.greenwave
412
+ this.patternList = res.data.data.devs
413
+ for (let dev of routeData.devs) {
414
+ for (let pattern of this.patternList) {
415
+ if (dev.agentid === pattern.agentid) {
416
+ dev.feature = pattern.feature
417
+ dev.patternid = pattern.patternid
418
+ }
419
+ }
420
+ }
421
+ this.handlePlanChart()
422
+ this.handlePatternTable()
423
+ })
424
+ },
425
+ getGenerateParam (routeData, bizType = 0) { // bizType: 1 generate专用
426
+ let route = JSON.parse(JSON.stringify(routeData))
427
+ let param = {
428
+ 'id': route.id,
429
+ 'name': route.name,
430
+ 'keyintsid': route.keyintsid,
431
+ 'direction': route.direction,
432
+ 'optstrategy': route.optstrategy,
433
+ 'upspeed': route.upspeed,
434
+ 'downspeed': route.downspeed,
435
+ 'type': route.type ? route.type : 0,
436
+ 'devs': route.devs
437
+ }
438
+ let devs = route.devs
439
+ for (let inter of devs) {
440
+ let patternList = inter.patternList.map(item => {
441
+ let pattern = {
442
+ 'id': item.id,
443
+ 'desc': item.desc,
444
+ 'offset': item.offset,
445
+ 'cycle': item.cycle,
446
+ 'rings': item.rings
447
+ }
448
+ return pattern
449
+ })
450
+ let phaseList = inter.phaseList.map(item => {
451
+ let pattern = {
452
+ 'id': item.id,
453
+ 'concurrent': item.concurrent
454
+ }
455
+ return pattern
456
+ })
457
+ let feature = {
458
+ patternList: patternList,
459
+ phaseList: phaseList
460
+ }
461
+ inter.routeid = param.id
462
+ inter.feature = feature
463
+ delete inter.id
464
+ delete inter.name
465
+ }
466
+ // param = route
467
+ param.devs = param.devs.map((item, index) => {
468
+ let dev = {
469
+ 'agentid': item.agentid,
470
+ 'routeid': item.routeid,
471
+ 'forwardphaseid': item.forwardphaseid,
472
+ 'backphaseid': item.backphaseid,
473
+ 'distance': item.distance,
474
+ 'width': item.width,
475
+ 'sortid': item.sortid ? item.sortid : index + 1,
476
+ 'patternid': item.patternid,
477
+ 'feature': item.feature
478
+ }
479
+ if (bizType === 1) {
480
+ dev.feature.patternList = dev.feature.patternList.filter(pattern => pattern.id === dev.patternid)
481
+ }
482
+ return dev
483
+ })
484
+ return param
485
+ },
486
+ closeDrawer (isRefresh) {
487
+ this.configurationVisible = false
488
+ if (isRefresh === 'refresh') {
489
+ this.$emit('resetContentComponent')
490
+ }
491
+ },
492
+ clickMask () {
493
+ this.maskVisible = false
494
+ },
495
+ getAllPatternOfRoute () {
496
+ if (this.agentids.length === 0) return
497
+ getAllPatternOfDevs(this.agentids).then(res => {
498
+ if (!res.data.success) {
499
+ let agentid = res.data.data.agentid
500
+ let commomMsg = this.$t('openatccomponents.greenwaveoptimize.device') + agentid
501
+ let data = res
502
+ let parrenterror = getMessageByCode(data.data.code, this.$i18n.locale)
503
+ if (data.data.data) {
504
+ // 子类型错误
505
+ let childErrorCode = data.data.data.errorCode
506
+ if (childErrorCode) {
507
+ let childerror = getMessageByCode(data.data.data.errorCode, this.$i18n.locale)
508
+ this.$message.error(parrenterror + ',' + childerror + ',' + commomMsg)
509
+ }
510
+ } else {
511
+ this.$message.error(parrenterror + ',' + commomMsg)
512
+ }
513
+ this.$emit('ErrorOcurrred')
514
+ return
515
+ }
516
+ this.allPatternList = res.data.data.devs
517
+ let editableTab = this.routeData
518
+ let patternList = this.getPatternListFromTab(editableTab, this.allPatternList)
519
+ this.patternList = patternList
520
+ this.getAllPhaseOfRouter() // 获取改路线的所有相位
521
+ })
522
+ },
523
+ getAllPhaseOfRouter () {
524
+ if (this.agentids.length === 0) return
525
+ getAllPhaseOfDevs(this.agentids).then(res => {
526
+ if (!res.data.success) {
527
+ let agentid = res.data.data.agentid
528
+ let commomMsg = this.$t('openatccomponents.greenwaveoptimize.device') + agentid
529
+ let data = res
530
+ let parrenterror = getMessageByCode(data.data.code, this.$i18n.locale)
531
+ if (data.data.data) {
532
+ // 子类型错误
533
+ let childErrorCode = data.data.data.errorCode
534
+ if (childErrorCode) {
535
+ let childerror = getMessageByCode(data.data.data.errorCode, this.$i18n.locale)
536
+ this.$message.error(parrenterror + ',' + childerror + ',' + commomMsg)
537
+ }
538
+ } else {
539
+ this.$message.error(parrenterror + ',' + commomMsg)
540
+ }
541
+ this.$emit('ErrorOcurrred')
542
+ return
543
+ }
544
+ this.phaseList = res.data.data.devs
545
+ this.handlePatternTable()
546
+ this.handlePlanChart()
547
+ this.handleMaskVisible()
548
+ })
549
+ },
550
+ handlePatternTable () {
551
+ this.$emit('handlePatternTable', this.routeData, this.patternList, this.phaseList)
552
+ // let patterntable = this.$refs.patterntable
553
+ // patterntable.onPatternTable(this.routeData, this.patternList, this.phaseList)
554
+ },
555
+ handlePlanChart () {
556
+ this.$emit('handlePlanChart', this.routeData, this.patternList, this.greenwave, this.allPatternList)
557
+ // let planchart = this.$refs.planchart
558
+ // planchart.onPlanChart(this.routeData, this.patternList, this.greenwave)
559
+ },
560
+ handleMaskVisible () {
561
+ // 数据为空,显示蒙层
562
+ if (this.patternList && !this.patternList.length && this.step) {
563
+ this.maskVisible = true
564
+ // 模拟一次手动点击,触发tip显示
565
+ this.$refs.editbtn.click()
566
+ }
567
+ },
568
+ onNewPatternListChange (newPatternList) {
569
+ this.refreshChart()
570
+ }
571
+ }
572
+ }
573
+ </script>
574
+
575
+ <style lang="scss" scoped>
576
+ </style>