@kengic/vue 0.30.1-beta.96 → 0.31.0

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 (873) hide show
  1. package/CHANGELOG.md +470 -0
  2. package/README.md +10 -0
  3. package/bin/bin.mjs +9 -24
  4. package/bin/postinstall.mjs +24 -4
  5. package/dist/aim-outlined.8d38a0f9.mjs +8 -0
  6. package/dist/align-left-outlined.579b01c6.mjs +8 -0
  7. package/dist/audit-outlined.4555f723.mjs +8 -0
  8. package/dist/bubble-loading.cd2fe007.mjs +8 -0
  9. package/dist/bulb-outlined.a5bf22d8.mjs +8 -0
  10. package/dist/card-text-outline.6e053122.mjs +8 -0
  11. package/dist/caret-down-outlined.c0564a3f.mjs +8 -0
  12. package/dist/caret-left-outlined.35b1d7d1.mjs +8 -0
  13. package/dist/caret-right-filled.dbbda237.mjs +8 -0
  14. package/dist/caret-right-outlined-Btgsw6a_.7ce8e8fe.mjs +8 -0
  15. package/dist/caret-right-outlined.12fe6699.mjs +8 -0
  16. package/dist/caret-up-outlined.81b559ad.mjs +8 -0
  17. package/dist/check-box-outline-blank.d01a2055.mjs +8 -0
  18. package/dist/check-circle-outlined.b219949f.mjs +8 -0
  19. package/dist/check-outlined.59c42074.mjs +8 -0
  20. package/dist/check-square-outlined.233589d8.mjs +8 -0
  21. package/dist/checkbox-indeterminate.e5386a53.mjs +8 -0
  22. package/dist/clock-circle-outline.b9d0b3dc.mjs +8 -0
  23. package/dist/close-circle-outlined.85f75690.mjs +8 -0
  24. package/dist/close-outlined-DMcSQWxQ.ce961fd1.mjs +8 -0
  25. package/dist/close-outlined.5757472a.mjs +8 -0
  26. package/dist/collapse-all-rounded.26ee73fc.mjs +8 -0
  27. package/dist/control-outlined.d66ac4d2.mjs +8 -0
  28. package/dist/copy-filled.a3dcd299.mjs +8 -0
  29. package/dist/copy-outlined.6a695d8a.mjs +8 -0
  30. package/dist/delete-outlined.20afb717.mjs +8 -0
  31. package/dist/delete-twotone.1d40696a.mjs +8 -0
  32. package/dist/double-right-outlined.f057a6b2.mjs +8 -0
  33. package/dist/down-circle-outlined.8ba93393.mjs +8 -0
  34. package/dist/download-outlined.e78b5364.mjs +8 -0
  35. package/dist/edit-outlined.0aae2217.mjs +8 -0
  36. package/dist/edit-twotone.67c952fa.mjs +8 -0
  37. package/dist/email-resend-outline.780506de.mjs +8 -0
  38. package/dist/exception-outlined.8c0003a2.mjs +8 -0
  39. package/dist/exclamation-circle-outlined-DZrXCnvM.07559897.mjs +8 -0
  40. package/dist/expand-all-rounded.e01e6cb9.mjs +8 -0
  41. package/dist/eye-invisible-outlined.5f8d6151.mjs +8 -0
  42. package/dist/eye-outlined.b25b4d28.mjs +8 -0
  43. package/dist/file-text-outline.2fbccab6.mjs +8 -0
  44. package/dist/fit-screen-outline.7341560f.mjs +8 -0
  45. package/dist/fullscreen-exit-outlined-X1iYkFc4.d7884311.mjs +8 -0
  46. package/dist/fullscreen-exit-outlined.b77fa876.mjs +8 -0
  47. package/dist/fullscreen-outlined-DDBrsRcy.d174b06a.mjs +8 -0
  48. package/dist/fullscreen-outlined.cd572ef8.mjs +8 -0
  49. package/dist/holder-outlined.9e698750.mjs +8 -0
  50. package/dist/index.css +1 -0
  51. package/dist/info-circle-outlined.7ddbd554.mjs +8 -0
  52. package/dist/kengic-vue.js +224275 -0
  53. package/dist/key-return-thin.ce6f074c.mjs +8 -0
  54. package/dist/loading-outlined.13a15197.mjs +8 -0
  55. package/dist/more-outlined.8e1202ac.mjs +8 -0
  56. package/dist/one-to-one-outlined.ac265beb.mjs +8 -0
  57. package/dist/palette-swatch-variant.f7258843.mjs +8 -0
  58. package/dist/partition-outlined.1bcf4f37.mjs +8 -0
  59. package/dist/pause-circle-outlined.cd534f5f.mjs +8 -0
  60. package/dist/pause-outlined.fca0d0f9.mjs +8 -0
  61. package/dist/pause-rounded.1ed7cc39.mjs +8 -0
  62. package/dist/play-arrow-rounded.90fc4173.mjs +8 -0
  63. package/dist/plus-outlined.bdaa6481.mjs +8 -0
  64. package/dist/printer-outlined.a8d0d92b.mjs +8 -0
  65. package/dist/profile-outlined.1059fb0d.mjs +8 -0
  66. package/dist/project/build/generate/generateModifyVars.ts +39 -0
  67. package/dist/project/index.ts +1 -0
  68. package/dist/project/types/global.d.ts +184 -0
  69. package/dist/release-gate-check.8c1ba629.mjs +8 -0
  70. package/dist/reload-outlined.d320578b.mjs +8 -0
  71. package/dist/retweet-outlined.bfa9b123.mjs +8 -0
  72. package/dist/save-as-outline-rounded.c65d61b2.mjs +8 -0
  73. package/dist/save-outline-rounded.c9c3f880.mjs +8 -0
  74. package/dist/search-outlined-Od1M_oxf.4a68e7e4.mjs +8 -0
  75. package/dist/search-outlined.ba5c5a3f.mjs +8 -0
  76. package/dist/setting-outlined.a3caf743.mjs +8 -0
  77. package/dist/src/api/WMS/Controllers/DescriptionController/List.d.ts +51 -0
  78. package/dist/src/api/WMS/Controllers/DescriptionController/ListByCodeNamesAndCodeValues.d.ts +16 -0
  79. package/dist/src/api/WMS/Controllers/DescriptionController/index.d.ts +2 -0
  80. package/dist/src/api/WMS/Controllers/SqlClientController/Execute.d.ts +16 -0
  81. package/dist/src/api/WMS/Controllers/SqlClientController/ExecutePage.d.ts +16 -0
  82. package/dist/src/api/WMS/Controllers/SqlClientController/index.d.ts +2 -0
  83. package/dist/src/api/WMS/Controllers/SysPermissionController/List.d.ts +73 -0
  84. package/dist/src/api/WMS/Controllers/SysPermissionController/index.d.ts +1 -0
  85. package/dist/src/api/WMS/Controllers/VarConfigDescriptionController/Add.d.ts +16 -0
  86. package/dist/src/api/WMS/Controllers/VarConfigDescriptionController/ListByFormId.d.ts +16 -0
  87. package/dist/src/api/WMS/Controllers/VarConfigPossibilityController/ExecuteQuery.d.ts +18 -0
  88. package/dist/src/api/WMS/Controllers/VarConfigPossibilityController/index.d.ts +1 -0
  89. package/dist/src/api/WMS/Controllers/VarController/GetAll.d.ts +16 -0
  90. package/dist/src/api/WMS/Controllers/VarController/index.d.ts +1 -0
  91. package/dist/src/api/WMS/Controllers/VarDdaController/Create.d.ts +16 -0
  92. package/dist/src/api/WMS/Controllers/VarDdaController/GetResultSetMetadataFromSql.d.ts +16 -0
  93. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateCopySql.d.ts +16 -0
  94. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateCreateSql.d.ts +16 -0
  95. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateDeleteSql.d.ts +16 -0
  96. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateFrmId.d.ts +16 -0
  97. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateSearchSql.d.ts +16 -0
  98. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateUpdateSql.d.ts +16 -0
  99. package/dist/src/api/WMS/Controllers/VarDdaController/ValidateVarButtonVarName.d.ts +16 -0
  100. package/dist/src/api/WMS/Controllers/VarDdaController/index.d.ts +9 -0
  101. package/dist/src/api/WMS/Controllers/VarGridMasterController/QueryByID.d.ts +19 -0
  102. package/dist/src/api/WMS/Controllers/VarGridMasterController/Update.d.ts +16 -0
  103. package/dist/src/api/WMS/Controllers/VarGridMasterController/index.d.ts +2 -0
  104. package/dist/src/api/WMS/Controllers/VarProfileMasterController/QueryByID.d.ts +19 -0
  105. package/dist/src/api/WMS/Controllers/VarProfileMasterController/index.d.ts +1 -0
  106. package/dist/src/api/WMS/Controllers/VarVariableController/Delete.d.ts +16 -0
  107. package/dist/src/api/WMS/Controllers/VarVariableController/index.d.ts +1 -0
  108. package/dist/src/api/WMS/Controllers/WarehouseController/ListVO.d.ts +25 -0
  109. package/dist/src/api/WMS/Controllers/WorkstationController/List.d.ts +25 -0
  110. package/dist/src/api/WMS/Controllers/WorkstationController/index.d.ts +1 -0
  111. package/dist/src/api/WMS/index.d.ts +2 -0
  112. package/dist/src/api/WMS/models.d.ts +1128 -0
  113. package/dist/src/api/api.d.ts +1 -0
  114. package/dist/src/api/def.d.ts +1 -0
  115. package/dist/src/api/index.d.ts +2 -0
  116. package/dist/src/component/KgAppSelect/KgAppSelect.d.ts +46 -0
  117. package/dist/src/component/KgAppSelect/KgAppSelect.event.d.ts +31 -0
  118. package/dist/src/component/KgAppSelect/KgAppSelect.hooks.d.ts +18 -0
  119. package/dist/src/component/KgAppSelect/KgAppSelect.store.d.ts +33 -0
  120. package/dist/src/component/KgAppSelect/index.d.ts +3 -0
  121. package/dist/src/component/KgButton/KgButton.Copy.d.ts +40 -0
  122. package/dist/src/component/KgButton/KgButton.Create.d.ts +40 -0
  123. package/dist/src/component/KgButton/KgButton.Delete.d.ts +40 -0
  124. package/dist/src/component/KgButton/KgButton.Export.d.ts +40 -0
  125. package/dist/src/component/KgButton/KgButton.Import.d.ts +40 -0
  126. package/dist/src/component/KgButton/KgButton.ImportTemplate.d.ts +40 -0
  127. package/dist/src/component/KgButton/KgButton.Item.d.ts +39 -0
  128. package/dist/src/component/KgButton/KgButton.Other.d.ts +40 -0
  129. package/dist/src/component/KgButton/KgButton.Search.d.ts +40 -0
  130. package/dist/src/component/KgButton/KgButton.Update.d.ts +40 -0
  131. package/dist/src/component/KgButton/KgButton.d.ts +39 -0
  132. package/dist/src/component/KgButton/KgButton.event.d.ts +81 -0
  133. package/dist/src/component/KgButton/KgButton.hooks.d.ts +67 -0
  134. package/dist/src/component/KgButton/KgButton.model.d.ts +31 -0
  135. package/dist/src/component/KgButton/KgButton.store.d.ts +92 -0
  136. package/dist/src/component/KgCanvas/KgCanvas.ContextMenu.d.ts +100 -0
  137. package/dist/src/component/KgCanvas/KgCanvas.ToolbarButton.Fullscreen.d.ts +37 -0
  138. package/dist/src/component/KgCanvas/KgCanvas.ToolbarButton.Mode.d.ts +7 -0
  139. package/dist/src/component/KgCanvas/KgCanvas.ToolbarButton.OverviewScale.d.ts +37 -0
  140. package/dist/src/component/KgCanvas/KgCanvas.Tooltip.d.ts +27 -0
  141. package/dist/src/component/KgCanvas/KgCanvas.d.ts +232 -0
  142. package/dist/src/component/KgCanvas/KgCanvas.event.d.ts +216 -0
  143. package/dist/src/component/KgCanvas/KgCanvas.hooks.d.ts +100 -0
  144. package/dist/src/component/KgCanvas/KgCanvas.model.d.ts +27 -0
  145. package/dist/src/component/KgCanvas/KgCanvas.service.d.ts +17 -0
  146. package/dist/src/component/KgCanvas/KgCanvas.store.d.ts +9 -0
  147. package/dist/src/component/KgCanvas/index.d.ts +4 -0
  148. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.AreaSelect.d.ts +5 -0
  149. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Canvas.d.ts +5 -0
  150. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Canvas.service.d.ts +63 -0
  151. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Legend.d.ts +5 -0
  152. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Offline.d.ts +5 -0
  153. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Setting.d.ts +5 -0
  154. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Tab.Log.d.ts +5 -0
  155. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Tab.Rgv.d.ts +33 -0
  156. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.d.ts +5 -0
  157. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.hooks.d.ts +29 -0
  158. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.model.d.ts +127 -0
  159. package/dist/src/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.store.d.ts +354 -0
  160. package/dist/src/component/KgCircularShuttleMonitor/index.d.ts +3 -0
  161. package/dist/src/component/KgForm/KgForm.d.ts +413 -0
  162. package/dist/src/component/KgForm/KgForm.event.d.ts +202 -0
  163. package/dist/src/component/KgForm/KgForm.hooks.d.ts +92 -0
  164. package/dist/src/component/KgForm/KgForm.store.d.ts +23 -0
  165. package/dist/src/component/KgForm/index.d.ts +4 -0
  166. package/dist/src/component/KgForm.Item/KgForm.Item.Addon.DynamicQueryOperator.d.ts +49 -0
  167. package/dist/src/component/KgForm.Item/KgForm.Item.Addon.Lookup.Modal.d.ts +16 -0
  168. package/dist/src/component/KgForm.Item/KgForm.Item.Addon.Lookup.d.ts +31 -0
  169. package/dist/src/component/KgForm.Item/KgForm.Item.Checkbox.d.ts +98 -0
  170. package/dist/src/component/KgForm.Item/KgForm.Item.CheckboxGroup.d.ts +95 -0
  171. package/dist/src/component/KgForm.Item/KgForm.Item.Date.d.ts +95 -0
  172. package/dist/src/component/KgForm.Item/KgForm.Item.DateRange.d.ts +95 -0
  173. package/dist/src/component/KgForm.Item/KgForm.Item.Image.d.ts +90 -0
  174. package/dist/src/component/KgForm.Item/KgForm.Item.Input.d.ts +94 -0
  175. package/dist/src/component/KgForm.Item/KgForm.Item.InputNumber.d.ts +94 -0
  176. package/dist/src/component/KgForm.Item/KgForm.Item.InputPassword.d.ts +94 -0
  177. package/dist/src/component/KgForm.Item/KgForm.Item.Link.d.ts +93 -0
  178. package/dist/src/component/KgForm.Item/KgForm.Item.RadioGroup.d.ts +96 -0
  179. package/dist/src/component/KgForm.Item/KgForm.Item.Select.d.ts +95 -0
  180. package/dist/src/component/KgForm.Item/KgForm.Item.Select.service.d.ts +28 -0
  181. package/dist/src/component/KgForm.Item/KgForm.Item.Switch.d.ts +94 -0
  182. package/dist/src/component/KgForm.Item/KgForm.Item.TextArea.d.ts +94 -0
  183. package/dist/src/component/KgForm.Item/KgForm.Item.d.ts +95 -0
  184. package/dist/src/component/KgForm.Item/KgForm.Item.model.d.ts +111 -0
  185. package/dist/src/component/KgForm.Item/KgForm.Item.service.d.ts +17 -0
  186. package/dist/src/component/KgImage/KgImage.d.ts +100 -0
  187. package/dist/src/component/KgLayoutHeader/KgLayoutHeader.Locale.d.ts +38 -0
  188. package/dist/src/component/KgLayoutHeader/KgLayoutHeader.hooks.d.ts +4 -0
  189. package/dist/src/component/KgLayoutHeader/index.d.ts +2 -0
  190. package/dist/src/component/KgModal/KgModal.d.ts +817 -0
  191. package/dist/src/component/KgModal/KgModal.model.d.ts +8 -0
  192. package/dist/src/component/KgModal/KgModal.service.d.ts +37 -0
  193. package/dist/src/component/KgModal/KgModalHeaderButtons.d.ts +92 -0
  194. package/dist/src/component/KgModal02/KgModal02.d.ts +470 -0
  195. package/dist/src/component/KgModal02/KgModal02.model.d.ts +1 -0
  196. package/dist/src/component/KgProgressA/KgProgressA.d.ts +85 -0
  197. package/dist/src/component/KgResizable/KgResizable.d.ts +119 -0
  198. package/dist/src/component/KgResizable/KgResizable.service.d.ts +12 -0
  199. package/dist/src/component/KgSearch/KgSearch.d.ts +26 -0
  200. package/dist/src/component/KgSearch/KgSearch.event.d.ts +31 -0
  201. package/dist/src/component/KgSearch/KgSearch.hooks.d.ts +72 -0
  202. package/dist/src/component/KgSearch/KgSearch.service.d.ts +32 -0
  203. package/dist/src/component/KgSearch/KgSearch.store.d.ts +103 -0
  204. package/dist/src/component/KgSearch/index.d.ts +3 -0
  205. package/dist/src/component/KgSimulator/KgSimulator.Canvas.Title.d.ts +11 -0
  206. package/dist/src/component/KgSimulator/KgSimulator.Canvas.d.ts +11 -0
  207. package/dist/src/component/KgSimulator/KgSimulator.Canvas.service.d.ts +80 -0
  208. package/dist/src/component/KgSimulator/KgSimulator.Menu.Scene.Create.CircularConveyor.d.ts +36 -0
  209. package/dist/src/component/KgSimulator/KgSimulator.Menu.Scene.Open.CircularConveyor.d.ts +36 -0
  210. package/dist/src/component/KgSimulator/KgSimulator.Menu.d.ts +4 -0
  211. package/dist/src/component/KgSimulator/KgSimulator.Panel.Prefab.d.ts +4 -0
  212. package/dist/src/component/KgSimulator/KgSimulator.Panel.Property.d.ts +4 -0
  213. package/dist/src/component/KgSimulator/KgSimulator.Panel.Scene.d.ts +4 -0
  214. package/dist/src/component/KgSimulator/KgSimulator.Panel.d.ts +97 -0
  215. package/dist/src/component/KgSimulator/KgSimulator.Prefab.d.ts +108 -0
  216. package/dist/src/component/KgSimulator/KgSimulator.ToolbarButton.Prefab.d.ts +9 -0
  217. package/dist/src/component/KgSimulator/KgSimulator.ToolbarButton.Property.d.ts +9 -0
  218. package/dist/src/component/KgSimulator/KgSimulator.ToolbarButton.Scene.d.ts +9 -0
  219. package/dist/src/component/KgSimulator/KgSimulator.ToolbarButton.d.ts +113 -0
  220. package/dist/src/component/KgSimulator/KgSimulator.d.ts +33 -0
  221. package/dist/src/component/KgSimulator/KgSimulator.event.d.ts +93 -0
  222. package/dist/src/component/KgSimulator/KgSimulator.hooks.d.ts +103 -0
  223. package/dist/src/component/KgSimulator/KgSimulator.icons.d.ts +10 -0
  224. package/dist/src/component/KgSimulator/KgSimulator.model.d.ts +1502 -0
  225. package/dist/src/component/KgSimulator/KgSimulator.store.d.ts +474 -0
  226. package/dist/src/component/KgSimulator/KgSimulator.utils.d.ts +21 -0
  227. package/dist/src/component/KgSimulator/index.d.ts +3 -0
  228. package/dist/src/component/KgSubmit/KgSubmit.d.ts +21 -0
  229. package/dist/src/component/KgSubmit/KgSubmit.event.d.ts +135 -0
  230. package/dist/src/component/KgSubmit/KgSubmit.hooks.d.ts +358 -0
  231. package/dist/src/component/KgSubmit/KgSubmit.model.d.ts +57 -0
  232. package/dist/src/component/KgSubmit/KgSubmit.service.d.ts +29 -0
  233. package/dist/src/component/KgSubmit/KgSubmit.store.d.ts +112 -0
  234. package/dist/src/component/KgSubmit/index.d.ts +4 -0
  235. package/dist/src/component/KgTable/KgTable.BodyCell.d.ts +60 -0
  236. package/dist/src/component/KgTable/KgTable.HeadCell.d.ts +51 -0
  237. package/dist/src/component/KgTable/KgTable.Info.d.ts +57 -0
  238. package/dist/src/component/KgTable/KgTable.Setting.VarGridMaster.SaveAs.d.ts +4 -0
  239. package/dist/src/component/KgTable/KgTable.Setting.d.ts +20 -0
  240. package/dist/src/component/KgTable/KgTable.Setting.service.d.ts +22 -0
  241. package/dist/src/component/KgTable/KgTable.d.ts +39 -0
  242. package/dist/src/component/KgTable/KgTable.event.d.ts +111 -0
  243. package/dist/src/component/KgTable/KgTable.hooks.d.ts +135 -0
  244. package/dist/src/component/KgTable/KgTable.model.d.ts +65 -0
  245. package/dist/src/component/KgTable/KgTable.service.d.ts +34 -0
  246. package/dist/src/component/KgTable/KgTable.store.d.ts +91 -0
  247. package/dist/src/component/KgTable/index.d.ts +4 -0
  248. package/dist/src/component/KgTable02/KgTable02.BodyCell.d.ts +72 -0
  249. package/dist/src/component/KgTable02/KgTable02.d.ts +46 -0
  250. package/dist/src/component/KgTable02/KgTable02.event.d.ts +123 -0
  251. package/dist/src/component/KgTable02/KgTable02.hooks.d.ts +62 -0
  252. package/dist/src/component/KgTable02/KgTable02.store.d.ts +62 -0
  253. package/dist/src/component/KgTable02/index.d.ts +4 -0
  254. package/dist/src/component/KgVar/KgVar.Factory.d.ts +106 -0
  255. package/dist/src/component/KgVar/KgVar.d.ts +120 -0
  256. package/dist/src/component/KgVar/KgVar.event.d.ts +75 -0
  257. package/dist/src/component/KgVar/KgVar.hooks.d.ts +307 -0
  258. package/dist/src/component/KgVar/KgVar.model.d.ts +70 -0
  259. package/dist/src/component/KgVar/KgVar.store.d.ts +269 -0
  260. package/dist/src/component/KgVar/index.d.ts +5 -0
  261. package/dist/src/component/KgVarConfig/KgVarConfig.d.ts +3 -0
  262. package/dist/src/component/KgVarConfig/KgVarConfig.hooks.d.ts +3 -0
  263. package/dist/src/component/KgVarConfig/KgVarConfig.model.d.ts +42 -0
  264. package/dist/src/component/KgVarConfig/KgVarConfig.store.d.ts +16 -0
  265. package/dist/src/component/KgVarConfig/components/KgVarConfig.SelectFormIdModal.d.ts +27 -0
  266. package/dist/src/component/KgVarConfig/components/KgVarConfigModal.d.ts +53 -0
  267. package/dist/src/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.VarButton.d.ts +7 -0
  268. package/dist/src/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.VarButtonConfig.d.ts +7 -0
  269. package/dist/src/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.d.ts +5 -0
  270. package/dist/src/component/KgVarConfig/components/child/KgVarConfig.Modal.Child.d.ts +7 -0
  271. package/dist/src/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileConfig.d.ts +7 -0
  272. package/dist/src/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileMaster.d.ts +7 -0
  273. package/dist/src/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileMaster.service.d.ts +17 -0
  274. package/dist/src/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.d.ts +5 -0
  275. package/dist/src/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.VarSubmitConfig.d.ts +7 -0
  276. package/dist/src/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.VarSubmitDetail.d.ts +7 -0
  277. package/dist/src/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.d.ts +5 -0
  278. package/dist/src/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridConfig.d.ts +7 -0
  279. package/dist/src/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridMaster.d.ts +7 -0
  280. package/dist/src/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridMaster.service.d.ts +23 -0
  281. package/dist/src/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.d.ts +5 -0
  282. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigControl.d.ts +2 -0
  283. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigDescription.d.ts +2 -0
  284. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigInput.d.ts +2 -0
  285. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigLookup.d.ts +2 -0
  286. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigPossibility.d.ts +2 -0
  287. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigTip.d.ts +2 -0
  288. package/dist/src/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarVariable.d.ts +2 -0
  289. package/dist/src/component/KgVarConfig/index.d.ts +3 -0
  290. package/dist/src/component/KgWarehouse/KgWarehouse.d.ts +50 -0
  291. package/dist/src/component/KgWarehouse/KgWarehouse.event.d.ts +30 -0
  292. package/dist/src/component/KgWarehouse/KgWarehouse.guard.d.ts +8 -0
  293. package/dist/src/component/KgWarehouse/KgWarehouse.hooks.d.ts +41 -0
  294. package/dist/src/component/KgWarehouse/KgWarehouse.store.d.ts +27 -0
  295. package/dist/src/component/KgWarehouse/index.d.ts +4 -0
  296. package/dist/src/component/KgWorkStation/KgWorkStation.d.ts +44 -0
  297. package/dist/src/component/KgWorkStation/KgWorkStation.event.d.ts +27 -0
  298. package/dist/src/component/KgWorkStation/KgWorkStation.hooks.d.ts +28 -0
  299. package/dist/src/component/KgWorkStation/KgWorkStation.store.d.ts +37 -0
  300. package/dist/src/component/KgYesOrNo/KgYesOrNo.d.ts +60 -0
  301. package/dist/src/component/index.d.ts +22 -0
  302. package/dist/src/config/config.hooks.d.ts +10 -0
  303. package/dist/src/config/config.store.d.ts +304 -0
  304. package/dist/src/config/index.d.ts +63 -0
  305. package/dist/src/i18n/cs_CZ.d.ts +2 -0
  306. package/dist/src/i18n/en.d.ts +237 -0
  307. package/dist/src/i18n/es_ES.d.ts +2 -0
  308. package/dist/src/i18n/fr_FR.d.ts +2 -0
  309. package/dist/src/i18n/i18n.setup.d.ts +20 -0
  310. package/dist/src/i18n/index.d.ts +2 -0
  311. package/dist/src/i18n/km_KH.d.ts +2 -0
  312. package/dist/src/i18n/ko_KR.d.ts +2 -0
  313. package/dist/src/i18n/vi_VN.d.ts +2 -0
  314. package/dist/src/i18n/zh_CN.d.ts +238 -0
  315. package/dist/src/index.d.ts +12 -0
  316. package/dist/src/model/index.d.ts +1976 -0
  317. package/dist/src/page/KgPageCircularShuttleMonitor/KgPageCircularShuttleMonitor.d.ts +11 -0
  318. package/dist/src/page/KgPageDda/KgPageDda.d.ts +10 -0
  319. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Basic.SqlModal.d.ts +32 -0
  320. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Basic.d.ts +6 -0
  321. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Button.d.ts +6 -0
  322. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Menu.d.ts +6 -0
  323. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Search.d.ts +6 -0
  324. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Submit.d.ts +6 -0
  325. package/dist/src/page/KgPageDda/components/KgPageDda.Create.Table.d.ts +6 -0
  326. package/dist/src/page/KgPageDda/components/KgPageDda.Create.d.ts +32 -0
  327. package/dist/src/page/KgPageDda/components/KgPageDda.Create.store.d.ts +39 -0
  328. package/dist/src/page/KgPageDda/index.d.ts +5 -0
  329. package/dist/src/page/KgPageSqlClient/KgPageSqlClient.d.ts +12 -0
  330. package/dist/src/page/KgPageSqlClient/components/KgSqlClient.Editor.d.ts +13 -0
  331. package/dist/src/page/KgPageSqlClient/components/KgSqlClient.ResultTab.d.ts +36 -0
  332. package/dist/src/page/KgPageSqlClient/components/KgSqlClient.Toolbar.Top.d.ts +7 -0
  333. package/dist/src/page/KgPageSqlClient/components/KgSqlClient.d.ts +5 -0
  334. package/dist/src/page/index.d.ts +8 -0
  335. package/dist/src/project/build/getConfigFileName.d.ts +5 -0
  336. package/dist/src/project/build/index.d.ts +1 -0
  337. package/dist/src/project/index.d.ts +3 -0
  338. package/dist/src/project/src/api/sys/menu.d.ts +4 -0
  339. package/dist/src/project/src/api/sys/model/menuModel.d.ts +15 -0
  340. package/dist/src/project/src/api/sys/model/userModel.d.ts +46 -0
  341. package/dist/src/project/src/components/Application/src/useAppContext.d.ts +9 -0
  342. package/dist/src/project/src/components/index.d.ts +2 -0
  343. package/dist/src/project/src/enums/CompTypeEnum.d.ts +19 -0
  344. package/dist/src/project/src/enums/DateTypeEnum.d.ts +8 -0
  345. package/dist/src/project/src/enums/appEnum.d.ts +40 -0
  346. package/dist/src/project/src/enums/breakpointEnum.d.ts +18 -0
  347. package/dist/src/project/src/enums/cacheEnum.d.ts +18 -0
  348. package/dist/src/project/src/enums/exceptionEnum.d.ts +17 -0
  349. package/dist/src/project/src/enums/httpEnum.d.ts +38 -0
  350. package/dist/src/project/src/enums/jeecgEnum.d.ts +16 -0
  351. package/dist/src/project/src/enums/menuEnum.d.ts +35 -0
  352. package/dist/src/project/src/enums/pageEnum.d.ts +14 -0
  353. package/dist/src/project/src/enums/roleEnum.d.ts +4 -0
  354. package/dist/src/project/src/enums/sizeEnum.d.ts +18 -0
  355. package/dist/src/project/src/hooks/component/useFormItem.d.ts +2 -0
  356. package/dist/src/project/src/hooks/component/usePageContext.d.ts +10 -0
  357. package/dist/src/project/src/hooks/core/onMountedOrActivated.d.ts +1 -0
  358. package/dist/src/project/src/hooks/core/useAttrs.d.ts +9 -0
  359. package/dist/src/project/src/hooks/core/useContext.d.ts +11 -0
  360. package/dist/src/project/src/hooks/core/useRefs.d.ts +2 -0
  361. package/dist/src/project/src/hooks/core/useTimeout.d.ts +10 -0
  362. package/dist/src/project/src/hooks/event/useBreakpoint.d.ts +22 -0
  363. package/dist/src/project/src/hooks/event/useEventListener.d.ts +14 -0
  364. package/dist/src/project/src/hooks/event/useIntersectionObserver.d.ts +13 -0
  365. package/dist/src/project/src/hooks/event/useScrollTo.d.ts +10 -0
  366. package/dist/src/project/src/hooks/event/useWindowSizeFn.d.ts +7 -0
  367. package/dist/src/project/src/hooks/index.d.ts +21 -0
  368. package/dist/src/project/src/hooks/jeecg/useAdaptiveWidth.d.ts +18 -0
  369. package/dist/src/project/src/hooks/setting/index.d.ts +2 -0
  370. package/dist/src/project/src/hooks/web/useAppInject.d.ts +3 -0
  371. package/dist/src/project/src/hooks/web/useContentHeight.d.ts +24 -0
  372. package/dist/src/project/src/hooks/web/useCopyToClipboard.d.ts +10 -0
  373. package/dist/src/project/src/hooks/web/useDesign.d.ts +4 -0
  374. package/dist/src/project/src/hooks/web/usePage.d.ts +10 -0
  375. package/dist/src/project/src/hooks/web/usePagination.d.ts +7 -0
  376. package/dist/src/project/src/hooks/web/useWebSocket.d.ts +18 -0
  377. package/dist/src/project/src/layouts/default/content/useContentContext.d.ts +9 -0
  378. package/dist/src/project/src/layouts/default/content/useContentViewHeight.d.ts +7 -0
  379. package/dist/src/project/src/locales/helper.d.ts +4 -0
  380. package/dist/src/project/src/locales/setupI18n.d.ts +4 -0
  381. package/dist/src/project/src/locales/useLocale.d.ts +11 -0
  382. package/dist/src/project/src/router/constant2.d.ts +3 -0
  383. package/dist/src/project/src/router/types.d.ts +61 -0
  384. package/dist/src/project/src/settings/componentSetting.d.ts +44 -0
  385. package/dist/src/project/src/settings/designSetting.d.ts +6 -0
  386. package/dist/src/project/src/settings/encryptionSetting.d.ts +6 -0
  387. package/dist/src/project/src/settings/projectSetting.d.ts +3 -0
  388. package/dist/src/project/src/store/modules/locale.d.ts +38 -0
  389. package/dist/src/project/src/utils/auth/index.d.ts +19 -0
  390. package/dist/src/project/src/utils/bem.d.ts +15 -0
  391. package/dist/src/project/src/utils/cache/index.d.ts +7 -0
  392. package/dist/src/project/src/utils/cache/memory.d.ts +22 -0
  393. package/dist/src/project/src/utils/cache/persistent.d.ts +33 -0
  394. package/dist/src/project/src/utils/cache/storageCache.d.ts +8 -0
  395. package/dist/src/project/src/utils/cipher.d.ts +19 -0
  396. package/dist/src/project/src/utils/color.d.ts +29 -0
  397. package/dist/src/project/src/utils/common/compUtils.d.ts +87 -0
  398. package/dist/src/project/src/utils/common/functionUtils.d.ts +6 -0
  399. package/dist/src/project/src/utils/dateUtil.d.ts +4 -0
  400. package/dist/src/project/src/utils/domUtils.d.ts +28 -0
  401. package/dist/src/project/src/utils/encryption/signMd5Utils.d.ts +29 -0
  402. package/dist/src/project/src/utils/env.d.ts +16 -0
  403. package/dist/src/project/src/utils/event/index.d.ts +3 -0
  404. package/dist/src/project/src/utils/factory/createAsyncComponent.d.ts +9 -0
  405. package/dist/src/project/src/utils/file/base64Conver.d.ts +4 -0
  406. package/dist/src/project/src/utils/file/download.d.ts +9 -0
  407. package/dist/src/project/src/utils/helper/treeHelper.d.ts +34 -0
  408. package/dist/src/project/src/utils/helper/tsxHelper.d.ts +13 -0
  409. package/dist/src/project/src/utils/index.index.d.ts +42 -0
  410. package/dist/src/project/src/utils/is.d.ts +17 -0
  411. package/dist/src/project/src/utils/mitt.d.ts +26 -0
  412. package/dist/src/project/src/utils/propTypes.d.ts +9 -0
  413. package/dist/src/project/src/utils/props.d.ts +68 -0
  414. package/dist/src/project/src/utils/uuid.d.ts +2 -0
  415. package/dist/src/project/types/axios.d.ts +35 -0
  416. package/dist/src/project/types/config.d.ts +108 -0
  417. package/dist/src/project/types/store.d.ts +43 -0
  418. package/dist/src/project/types/utils.d.ts +4 -0
  419. package/dist/src/service/http-client.d.ts +98 -0
  420. package/dist/src/util/ant-design-vue.d.ts +347 -0
  421. package/dist/src/util/event.util.d.ts +15 -0
  422. package/dist/src/util/kg-auth.util.d.ts +12 -0
  423. package/dist/src/util/kg-route.util.d.ts +18 -0
  424. package/dist/src/util/kg.util.d.ts +347 -0
  425. package/dist/src/util/tsx.helper.d.ts +23 -0
  426. package/dist/stop-outlined.9f2c4f61.mjs +8 -0
  427. package/dist/stop.ea3dde55.mjs +8 -0
  428. package/dist/three-dots-loading-bIlrTJYR.ebceb73e.mjs +8 -0
  429. package/dist/upload-outlined.c576b26a.mjs +8 -0
  430. package/package.json +68 -10
  431. package/api/WMS/Controllers/DescriptionController/List.ts +0 -84
  432. package/api/WMS/Controllers/DescriptionController/ListByCodeNamesAndCodeValues.ts +0 -21
  433. package/api/WMS/Controllers/DescriptionController/index.ts +0 -2
  434. package/api/WMS/Controllers/SqlClientController/Execute.ts +0 -21
  435. package/api/WMS/Controllers/SqlClientController/ExecutePage.ts +0 -21
  436. package/api/WMS/Controllers/SqlClientController/index.ts +0 -2
  437. package/api/WMS/Controllers/SysPermissionController/List.ts +0 -117
  438. package/api/WMS/Controllers/SysPermissionController/index.ts +0 -1
  439. package/api/WMS/Controllers/VarConfigDescriptionController/Add.ts +0 -21
  440. package/api/WMS/Controllers/VarConfigDescriptionController/ListByFormId.ts +0 -21
  441. package/api/WMS/Controllers/VarConfigPossibilityController/ExecuteQuery.ts +0 -36
  442. package/api/WMS/Controllers/VarConfigPossibilityController/index.ts +0 -1
  443. package/api/WMS/Controllers/VarController/GetAll.ts +0 -21
  444. package/api/WMS/Controllers/VarController/index.ts +0 -1
  445. package/api/WMS/Controllers/VarDdaController/Create.ts +0 -21
  446. package/api/WMS/Controllers/VarDdaController/GetResultSetMetadataFromSql.ts +0 -21
  447. package/api/WMS/Controllers/VarDdaController/ValidateCopySql.ts +0 -21
  448. package/api/WMS/Controllers/VarDdaController/ValidateCreateSql.ts +0 -21
  449. package/api/WMS/Controllers/VarDdaController/ValidateDeleteSql.ts +0 -21
  450. package/api/WMS/Controllers/VarDdaController/ValidateFrmId.ts +0 -21
  451. package/api/WMS/Controllers/VarDdaController/ValidateSearchSql.ts +0 -21
  452. package/api/WMS/Controllers/VarDdaController/ValidateUpdateSql.ts +0 -21
  453. package/api/WMS/Controllers/VarDdaController/ValidateVarButtonVarName.ts +0 -21
  454. package/api/WMS/Controllers/VarDdaController/index.ts +0 -9
  455. package/api/WMS/Controllers/VarGridMasterController/QueryByID.ts +0 -36
  456. package/api/WMS/Controllers/VarGridMasterController/Update.ts +0 -21
  457. package/api/WMS/Controllers/VarGridMasterController/index.ts +0 -2
  458. package/api/WMS/Controllers/VarProfileMasterController/QueryByID.ts +0 -36
  459. package/api/WMS/Controllers/VarProfileMasterController/index.ts +0 -1
  460. package/api/WMS/Controllers/VarVariableController/Delete.ts +0 -21
  461. package/api/WMS/Controllers/VarVariableController/index.ts +0 -1
  462. package/api/WMS/Controllers/WarehouseController/ListVO.ts +0 -45
  463. package/api/WMS/Controllers/WorkstationController/List.ts +0 -45
  464. package/api/WMS/Controllers/WorkstationController/index.ts +0 -1
  465. package/api/WMS/index.ts +0 -2
  466. package/api/WMS/models.ts +0 -2113
  467. package/api/api.ts +0 -1
  468. package/api/def.ts +0 -1
  469. package/api/index.ts +0 -2
  470. package/asset/ant.less +0 -678
  471. package/asset/element-plus.css +0 -112
  472. package/asset/flag/cs_CZ.png +0 -0
  473. package/asset/flag/en.png +0 -0
  474. package/asset/flag/es_ES.png +0 -0
  475. package/asset/flag/fr_FR.png +0 -0
  476. package/asset/flag/km_KH.png +0 -0
  477. package/asset/flag/ko_KR.png +0 -0
  478. package/asset/flag/vi_VN.png +0 -0
  479. package/asset/flag/zh_CN.png +0 -0
  480. package/asset/images/warehouse.000000.svg +0 -9
  481. package/asset/images/warehouse.1890ff.svg +0 -9
  482. package/asset/index.less +0 -347
  483. package/asset/jeecg.less +0 -382
  484. package/asset/var.less +0 -3
  485. package/asset/vxe.less +0 -51
  486. package/component/KgAppSelect/KgAppSelect.event.ts +0 -52
  487. package/component/KgAppSelect/KgAppSelect.hooks.ts +0 -50
  488. package/component/KgAppSelect/KgAppSelect.less +0 -30
  489. package/component/KgAppSelect/KgAppSelect.store.ts +0 -162
  490. package/component/KgAppSelect/KgAppSelect.tsx +0 -60
  491. package/component/KgAppSelect/index.ts +0 -4
  492. package/component/KgButton/KgButton.Copy.tsx +0 -143
  493. package/component/KgButton/KgButton.Create.tsx +0 -208
  494. package/component/KgButton/KgButton.Delete.tsx +0 -156
  495. package/component/KgButton/KgButton.Export.tsx +0 -294
  496. package/component/KgButton/KgButton.Import.tsx +0 -247
  497. package/component/KgButton/KgButton.ImportTemplate.tsx +0 -214
  498. package/component/KgButton/KgButton.Item.tsx +0 -128
  499. package/component/KgButton/KgButton.Other.tsx +0 -292
  500. package/component/KgButton/KgButton.Search.tsx +0 -146
  501. package/component/KgButton/KgButton.Update.tsx +0 -210
  502. package/component/KgButton/KgButton.event.ts +0 -157
  503. package/component/KgButton/KgButton.hooks.ts +0 -117
  504. package/component/KgButton/KgButton.less +0 -187
  505. package/component/KgButton/KgButton.model.tsx +0 -39
  506. package/component/KgButton/KgButton.store.ts +0 -333
  507. package/component/KgButton/KgButton.tsx +0 -221
  508. package/component/KgCanvas/KgCanvas.ContextMenu.tsx +0 -181
  509. package/component/KgCanvas/KgCanvas.ToolbarButton.Fullscreen.tsx +0 -80
  510. package/component/KgCanvas/KgCanvas.ToolbarButton.Mode.tsx +0 -68
  511. package/component/KgCanvas/KgCanvas.ToolbarButton.OverviewScale.tsx +0 -66
  512. package/component/KgCanvas/KgCanvas.Tooltip.tsx +0 -118
  513. package/component/KgCanvas/KgCanvas.css +0 -128
  514. package/component/KgCanvas/KgCanvas.event.ts +0 -380
  515. package/component/KgCanvas/KgCanvas.hooks.ts +0 -181
  516. package/component/KgCanvas/KgCanvas.model.ts +0 -31
  517. package/component/KgCanvas/KgCanvas.service.tsx +0 -116
  518. package/component/KgCanvas/KgCanvas.store.ts +0 -68
  519. package/component/KgCanvas/KgCanvas.tsx +0 -632
  520. package/component/KgCanvas/index.ts +0 -5
  521. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.AreaSelect.tsx +0 -107
  522. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Canvas.service.tsx +0 -3053
  523. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Canvas.tsx +0 -606
  524. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Legend.tsx +0 -71
  525. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Offline.tsx +0 -50
  526. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Setting.tsx +0 -169
  527. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Tab.Log.tsx +0 -30
  528. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.Tab.Rgv.tsx +0 -672
  529. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.css +0 -510
  530. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.hooks.ts +0 -78
  531. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.model.ts +0 -161
  532. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.store.tsx +0 -744
  533. package/component/KgCircularShuttleMonitor/KgCircularShuttleMonitor.tsx +0 -171
  534. package/component/KgCircularShuttleMonitor/index.ts +0 -4
  535. package/component/KgForm/KgForm.event.ts +0 -328
  536. package/component/KgForm/KgForm.hooks.ts +0 -158
  537. package/component/KgForm/KgForm.less +0 -0
  538. package/component/KgForm/KgForm.store.ts +0 -36
  539. package/component/KgForm/KgForm.tsx +0 -61
  540. package/component/KgForm/index.ts +0 -10
  541. package/component/KgForm.Item/KgForm.Item.Addon.DynamicQueryOperator.tsx +0 -88
  542. package/component/KgForm.Item/KgForm.Item.Addon.Lookup.Modal.tsx +0 -191
  543. package/component/KgForm.Item/KgForm.Item.Addon.Lookup.tsx +0 -76
  544. package/component/KgForm.Item/KgForm.Item.Checkbox.tsx +0 -61
  545. package/component/KgForm.Item/KgForm.Item.CheckboxGroup.tsx +0 -176
  546. package/component/KgForm.Item/KgForm.Item.Date.tsx +0 -88
  547. package/component/KgForm.Item/KgForm.Item.DateRange.tsx +0 -110
  548. package/component/KgForm.Item/KgForm.Item.Image.tsx +0 -35
  549. package/component/KgForm.Item/KgForm.Item.Input.tsx +0 -72
  550. package/component/KgForm.Item/KgForm.Item.InputNumber.tsx +0 -68
  551. package/component/KgForm.Item/KgForm.Item.InputPassword.tsx +0 -72
  552. package/component/KgForm.Item/KgForm.Item.Link.tsx +0 -37
  553. package/component/KgForm.Item/KgForm.Item.RadioGroup.tsx +0 -91
  554. package/component/KgForm.Item/KgForm.Item.Select.service.tsx +0 -317
  555. package/component/KgForm.Item/KgForm.Item.Select.tsx +0 -236
  556. package/component/KgForm.Item/KgForm.Item.Switch.tsx +0 -49
  557. package/component/KgForm.Item/KgForm.Item.TextArea.tsx +0 -99
  558. package/component/KgForm.Item/KgForm.Item.less +0 -476
  559. package/component/KgForm.Item/KgForm.Item.model.ts +0 -129
  560. package/component/KgForm.Item/KgForm.Item.service.tsx +0 -479
  561. package/component/KgForm.Item/KgForm.Item.tsx +0 -642
  562. package/component/KgImage/KgImage.less +0 -12
  563. package/component/KgImage/KgImage.tsx +0 -73
  564. package/component/KgLayoutHeader/KgLayoutHeader.Locale.tsx +0 -118
  565. package/component/KgLayoutHeader/KgLayoutHeader.hooks.ts +0 -31
  566. package/component/KgLayoutHeader/KgLayoutHeader.less +0 -14
  567. package/component/KgLayoutHeader/index.ts +0 -3
  568. package/component/KgModal/KgModal.css +0 -234
  569. package/component/KgModal/KgModal.model.ts +0 -9
  570. package/component/KgModal/KgModal.service.ts +0 -560
  571. package/component/KgModal/KgModal.tsx +0 -207
  572. package/component/KgModal/KgModalHeaderButtons.tsx +0 -130
  573. package/component/KgModal02/KgModal02.css +0 -11
  574. package/component/KgModal02/KgModal02.model.ts +0 -1
  575. package/component/KgModal02/KgModal02.tsx +0 -93
  576. package/component/KgProgressA/KgProgressA.less +0 -35
  577. package/component/KgProgressA/KgProgressA.tsx +0 -90
  578. package/component/KgResizable/KgResizable.less +0 -114
  579. package/component/KgResizable/KgResizable.service.tsx +0 -41
  580. package/component/KgResizable/KgResizable.tsx +0 -239
  581. package/component/KgSearch/KgSearch.event.ts +0 -78
  582. package/component/KgSearch/KgSearch.hooks.ts +0 -160
  583. package/component/KgSearch/KgSearch.less +0 -251
  584. package/component/KgSearch/KgSearch.service.tsx +0 -236
  585. package/component/KgSearch/KgSearch.store.ts +0 -609
  586. package/component/KgSearch/KgSearch.tsx +0 -506
  587. package/component/KgSearch/index.ts +0 -4
  588. package/component/KgSimulator/KgSimulator.Canvas.Title.tsx +0 -71
  589. package/component/KgSimulator/KgSimulator.Canvas.service.tsx +0 -3403
  590. package/component/KgSimulator/KgSimulator.Canvas.tsx +0 -1105
  591. package/component/KgSimulator/KgSimulator.Menu.Scene.Create.CircularConveyor.tsx +0 -258
  592. package/component/KgSimulator/KgSimulator.Menu.Scene.Open.CircularConveyor.tsx +0 -214
  593. package/component/KgSimulator/KgSimulator.Menu.tsx +0 -446
  594. package/component/KgSimulator/KgSimulator.Panel.Prefab.tsx +0 -87
  595. package/component/KgSimulator/KgSimulator.Panel.Property.tsx +0 -1120
  596. package/component/KgSimulator/KgSimulator.Panel.Scene.tsx +0 -819
  597. package/component/KgSimulator/KgSimulator.Panel.tsx +0 -149
  598. package/component/KgSimulator/KgSimulator.Prefab.tsx +0 -142
  599. package/component/KgSimulator/KgSimulator.ToolbarButton.Prefab.tsx +0 -44
  600. package/component/KgSimulator/KgSimulator.ToolbarButton.Property.tsx +0 -40
  601. package/component/KgSimulator/KgSimulator.ToolbarButton.Scene.tsx +0 -40
  602. package/component/KgSimulator/KgSimulator.ToolbarButton.tsx +0 -130
  603. package/component/KgSimulator/KgSimulator.css +0 -610
  604. package/component/KgSimulator/KgSimulator.event.ts +0 -197
  605. package/component/KgSimulator/KgSimulator.hooks.ts +0 -237
  606. package/component/KgSimulator/KgSimulator.icons.tsx +0 -148
  607. package/component/KgSimulator/KgSimulator.model.ts +0 -2629
  608. package/component/KgSimulator/KgSimulator.store.tsx +0 -1192
  609. package/component/KgSimulator/KgSimulator.tsx +0 -235
  610. package/component/KgSimulator/KgSimulator.utils.ts +0 -30
  611. package/component/KgSimulator/index.ts +0 -4
  612. package/component/KgSubmit/KgSubmit.event.ts +0 -272
  613. package/component/KgSubmit/KgSubmit.hooks.ts +0 -662
  614. package/component/KgSubmit/KgSubmit.less +0 -174
  615. package/component/KgSubmit/KgSubmit.model.ts +0 -82
  616. package/component/KgSubmit/KgSubmit.service.tsx +0 -368
  617. package/component/KgSubmit/KgSubmit.store.ts +0 -568
  618. package/component/KgSubmit/KgSubmit.tsx +0 -1132
  619. package/component/KgSubmit/index.ts +0 -5
  620. package/component/KgTable/KgTable.BodyCell.tsx +0 -475
  621. package/component/KgTable/KgTable.HeadCell.tsx +0 -333
  622. package/component/KgTable/KgTable.Info.tsx +0 -133
  623. package/component/KgTable/KgTable.Setting.VarGridMaster.SaveAs.tsx +0 -63
  624. package/component/KgTable/KgTable.Setting.service.tsx +0 -285
  625. package/component/KgTable/KgTable.Setting.tsx +0 -377
  626. package/component/KgTable/KgTable.event.ts +0 -206
  627. package/component/KgTable/KgTable.hooks.ts +0 -235
  628. package/component/KgTable/KgTable.less +0 -912
  629. package/component/KgTable/KgTable.model.ts +0 -73
  630. package/component/KgTable/KgTable.service.tsx +0 -781
  631. package/component/KgTable/KgTable.store.ts +0 -390
  632. package/component/KgTable/KgTable.tsx +0 -1105
  633. package/component/KgTable/index.ts +0 -5
  634. package/component/KgTable02/KgTable02.BodyCell.tsx +0 -407
  635. package/component/KgTable02/KgTable02.css +0 -199
  636. package/component/KgTable02/KgTable02.event.ts +0 -224
  637. package/component/KgTable02/KgTable02.hooks.ts +0 -111
  638. package/component/KgTable02/KgTable02.store.ts +0 -186
  639. package/component/KgTable02/KgTable02.tsx +0 -865
  640. package/component/KgTable02/index.ts +0 -5
  641. package/component/KgVar/KgVar.Factory.tsx +0 -146
  642. package/component/KgVar/KgVar.css +0 -125
  643. package/component/KgVar/KgVar.event.ts +0 -122
  644. package/component/KgVar/KgVar.hooks.ts +0 -543
  645. package/component/KgVar/KgVar.model.ts +0 -86
  646. package/component/KgVar/KgVar.store.ts +0 -2966
  647. package/component/KgVar/KgVar.tsx +0 -276
  648. package/component/KgVar/index.ts +0 -6
  649. package/component/KgVarConfig/KgVarConfig.hooks.ts +0 -19
  650. package/component/KgVarConfig/KgVarConfig.less +0 -499
  651. package/component/KgVarConfig/KgVarConfig.model.ts +0 -56
  652. package/component/KgVarConfig/KgVarConfig.store.ts +0 -29
  653. package/component/KgVarConfig/KgVarConfig.tsx +0 -139
  654. package/component/KgVarConfig/components/KgVarConfig.SelectFormIdModal.tsx +0 -138
  655. package/component/KgVarConfig/components/KgVarConfigModal.tsx +0 -228
  656. package/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.VarButton.tsx +0 -647
  657. package/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.VarButtonConfig.tsx +0 -64
  658. package/component/KgVarConfig/components/button/KgVarConfig.Modal.Button.tsx +0 -44
  659. package/component/KgVarConfig/components/child/KgVarConfig.Modal.Child.tsx +0 -265
  660. package/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileConfig.tsx +0 -64
  661. package/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileMaster.service.tsx +0 -408
  662. package/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.VarProfileMaster.tsx +0 -399
  663. package/component/KgVarConfig/components/search/KgVarConfig.Modal.Search.tsx +0 -44
  664. package/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.VarSubmitConfig.tsx +0 -336
  665. package/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.VarSubmitDetail.tsx +0 -165
  666. package/component/KgVarConfig/components/submit/KgVarConfig.Modal.Submit.tsx +0 -44
  667. package/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridConfig.tsx +0 -209
  668. package/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridMaster.service.tsx +0 -567
  669. package/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.VarGridMaster.tsx +0 -398
  670. package/component/KgVarConfig/components/table/KgVarConfig.Modal.Table.tsx +0 -44
  671. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigControl.tsx +0 -162
  672. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigDescription.tsx +0 -119
  673. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigInput.tsx +0 -322
  674. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigLookup.tsx +0 -222
  675. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigPossibility.tsx +0 -194
  676. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarConfigTip.tsx +0 -134
  677. package/component/KgVarConfig/components/var/KgVarConfig.Modal.Var.VarVariable.tsx +0 -129
  678. package/component/KgVarConfig/index.ts +0 -6
  679. package/component/KgWarehouse/KgWarehouse.event.ts +0 -63
  680. package/component/KgWarehouse/KgWarehouse.guard.ts +0 -77
  681. package/component/KgWarehouse/KgWarehouse.hooks.ts +0 -92
  682. package/component/KgWarehouse/KgWarehouse.less +0 -78
  683. package/component/KgWarehouse/KgWarehouse.store.ts +0 -135
  684. package/component/KgWarehouse/KgWarehouse.tsx +0 -321
  685. package/component/KgWarehouse/index.ts +0 -5
  686. package/component/KgWorkStation/KgWorkStation.css +0 -8
  687. package/component/KgWorkStation/KgWorkStation.event.ts +0 -54
  688. package/component/KgWorkStation/KgWorkStation.hooks.ts +0 -59
  689. package/component/KgWorkStation/KgWorkStation.store.ts +0 -144
  690. package/component/KgWorkStation/KgWorkStation.tsx +0 -254
  691. package/component/KgYesOrNo/KgYesOrNo.less +0 -3
  692. package/component/KgYesOrNo/KgYesOrNo.tsx +0 -50
  693. package/component/index.ts +0 -23
  694. package/config/config.hooks.ts +0 -32
  695. package/config/config.store.ts +0 -705
  696. package/config/index.ts +0 -347
  697. package/i18n/cs_CZ.ts +0 -1
  698. package/i18n/en.ts +0 -236
  699. package/i18n/es_ES.ts +0 -1
  700. package/i18n/fr_FR.ts +0 -1
  701. package/i18n/i18n.setup.ts +0 -61
  702. package/i18n/index.ts +0 -23
  703. package/i18n/km_KH.ts +0 -1
  704. package/i18n/ko_KR.ts +0 -1
  705. package/i18n/vi_VN.ts +0 -1
  706. package/i18n/zh_CN.ts +0 -237
  707. package/index.ts +0 -15
  708. package/model/index.ts +0 -1695
  709. package/page/KgPageCircularShuttleMonitor/KgPageCircularShuttleMonitor.tsx +0 -13
  710. package/page/KgPageDda/KgPageDda.css +0 -0
  711. package/page/KgPageDda/KgPageDda.tsx +0 -140
  712. package/page/KgPageDda/components/KgPageDda.Create.Basic.SqlModal.tsx +0 -65
  713. package/page/KgPageDda/components/KgPageDda.Create.Basic.tsx +0 -219
  714. package/page/KgPageDda/components/KgPageDda.Create.Button.tsx +0 -427
  715. package/page/KgPageDda/components/KgPageDda.Create.Menu.tsx +0 -148
  716. package/page/KgPageDda/components/KgPageDda.Create.Search.tsx +0 -371
  717. package/page/KgPageDda/components/KgPageDda.Create.Submit.tsx +0 -362
  718. package/page/KgPageDda/components/KgPageDda.Create.Table.tsx +0 -372
  719. package/page/KgPageDda/components/KgPageDda.Create.less +0 -362
  720. package/page/KgPageDda/components/KgPageDda.Create.store.ts +0 -437
  721. package/page/KgPageDda/components/KgPageDda.Create.tsx +0 -330
  722. package/page/KgPageDda/index.ts +0 -4
  723. package/page/KgPageSqlClient/KgPageSqlClient.tsx +0 -14
  724. package/page/KgPageSqlClient/components/KgSqlClient.Editor.tsx +0 -84
  725. package/page/KgPageSqlClient/components/KgSqlClient.ResultTab.tsx +0 -145
  726. package/page/KgPageSqlClient/components/KgSqlClient.Toolbar.Top.tsx +0 -132
  727. package/page/KgPageSqlClient/components/KgSqlClient.css +0 -171
  728. package/page/KgPageSqlClient/components/KgSqlClient.tsx +0 -110
  729. package/page/index.ts +0 -55
  730. package/project/build/generate/generateModifyVars.ts +0 -40
  731. package/project/index.ts +0 -2
  732. package/project/src/api/sys/menu.ts +0 -37
  733. package/project/src/api/sys/model/menuModel.ts +0 -17
  734. package/project/src/api/sys/model/userModel.ts +0 -58
  735. package/project/src/components/Application/src/useAppContext.ts +0 -17
  736. package/project/src/components/index.ts +0 -3
  737. package/project/src/enums/CompTypeEnum.ts +0 -32
  738. package/project/src/enums/DateTypeEnum.ts +0 -8
  739. package/project/src/enums/appEnum.ts +0 -58
  740. package/project/src/enums/breakpointEnum.ts +0 -28
  741. package/project/src/enums/cacheEnum.ts +0 -39
  742. package/project/src/enums/exceptionEnum.ts +0 -27
  743. package/project/src/enums/httpEnum.ts +0 -50
  744. package/project/src/enums/jeecgEnum.ts +0 -23
  745. package/project/src/enums/menuEnum.ts +0 -50
  746. package/project/src/enums/pageEnum.ts +0 -19
  747. package/project/src/enums/roleEnum.ts +0 -7
  748. package/project/src/enums/sizeEnum.ts +0 -27
  749. package/project/src/hooks/component/useFormItem.ts +0 -44
  750. package/project/src/hooks/component/usePageContext.ts +0 -18
  751. package/project/src/hooks/core/onMountedOrActivated.ts +0 -18
  752. package/project/src/hooks/core/useAttrs.ts +0 -41
  753. package/project/src/hooks/core/useContext.ts +0 -30
  754. package/project/src/hooks/core/useRefs.ts +0 -16
  755. package/project/src/hooks/core/useTimeout.ts +0 -45
  756. package/project/src/hooks/event/useBreakpoint.ts +0 -89
  757. package/project/src/hooks/event/useEventListener.ts +0 -52
  758. package/project/src/hooks/event/useIntersectionObserver.ts +0 -42
  759. package/project/src/hooks/event/useScrollTo.ts +0 -59
  760. package/project/src/hooks/event/useWindowSizeFn.ts +0 -36
  761. package/project/src/hooks/index.ts +0 -26
  762. package/project/src/hooks/jeecg/useAdaptiveWidth.ts +0 -82
  763. package/project/src/hooks/setting/index.ts +0 -27
  764. package/project/src/hooks/web/useAppInject.ts +0 -10
  765. package/project/src/hooks/web/useContentHeight.ts +0 -175
  766. package/project/src/hooks/web/useCopyToClipboard.ts +0 -70
  767. package/project/src/hooks/web/useDesign.ts +0 -10
  768. package/project/src/hooks/web/usePage.ts +0 -87
  769. package/project/src/hooks/web/usePagination.ts +0 -31
  770. package/project/src/hooks/web/useWebSocket.ts +0 -95
  771. package/project/src/layouts/default/content/useContentContext.ts +0 -17
  772. package/project/src/layouts/default/content/useContentViewHeight.ts +0 -42
  773. package/project/src/locales/helper.ts +0 -36
  774. package/project/src/locales/setupI18n.ts +0 -43
  775. package/project/src/locales/useLocale.ts +0 -77
  776. package/project/src/router/constant2.ts +0 -5
  777. package/project/src/router/types.ts +0 -73
  778. package/project/src/settings/componentSetting.ts +0 -88
  779. package/project/src/settings/designSetting.ts +0 -14
  780. package/project/src/settings/encryptionSetting.ts +0 -11
  781. package/project/src/settings/projectSetting.ts +0 -194
  782. package/project/src/store/modules/locale.ts +0 -49
  783. package/project/src/utils/auth/index.ts +0 -42
  784. package/project/src/utils/bem.ts +0 -45
  785. package/project/src/utils/cache/index.ts +0 -31
  786. package/project/src/utils/cache/memory.ts +0 -99
  787. package/project/src/utils/cache/persistent.ts +0 -132
  788. package/project/src/utils/cache/storageCache.ts +0 -102
  789. package/project/src/utils/cipher.ts +0 -54
  790. package/project/src/utils/color.ts +0 -93
  791. package/project/src/utils/common/compUtils.ts +0 -292
  792. package/project/src/utils/common/functionUtils.ts +0 -14
  793. package/project/src/utils/dateUtil.ts +0 -14
  794. package/project/src/utils/domUtils.ts +0 -158
  795. package/project/src/utils/encryption/signMd5Utils.ts +0 -122
  796. package/project/src/utils/env.ts +0 -40
  797. package/project/src/utils/event/index.ts +0 -39
  798. package/project/src/utils/factory/createAsyncComponent.tsx +0 -50
  799. package/project/src/utils/file/base64Conver.ts +0 -15
  800. package/project/src/utils/file/download.ts +0 -37
  801. package/project/src/utils/helper/treeHelper.ts +0 -145
  802. package/project/src/utils/helper/tsxHelper.ts +0 -35
  803. package/project/src/utils/index.index.ts +0 -158
  804. package/project/src/utils/is.ts +0 -85
  805. package/project/src/utils/mitt.ts +0 -101
  806. package/project/src/utils/propTypes.ts +0 -34
  807. package/project/src/utils/props.ts +0 -139
  808. package/project/src/utils/uuid.ts +0 -29
  809. package/project/types/axios.ts +0 -57
  810. package/project/types/config.ts +0 -180
  811. package/project/types/global.d.ts +0 -191
  812. package/project/types/store.ts +0 -60
  813. package/project/types/utils.ts +0 -5
  814. package/service/http-client.ts +0 -257
  815. package/tsconfig.json +0 -26
  816. package/type/env.d.ts +0 -7
  817. package/type/index.d.ts +0 -1
  818. package/util/ant-design-vue.ts +0 -146
  819. package/util/event.util.ts +0 -24
  820. package/util/kg-auth.util.ts +0 -16
  821. package/util/kg-route.util.ts +0 -25
  822. package/util/kg.util.tsx +0 -2997
  823. package/util/tsx.helper.tsx +0 -45
  824. /package/{project → dist/project}/build/config/themeConfig.ts +0 -0
  825. /package/{project → dist/project}/build/constant.ts +0 -0
  826. /package/{project → dist/project}/build/generate/icon/index.ts +0 -0
  827. /package/{project → dist/project}/build/getConfigFileName.ts +0 -0
  828. /package/{project → dist/project}/build/index.ts +0 -0
  829. /package/{project → dist/project}/build/script/buildConf.ts +0 -0
  830. /package/{project → dist/project}/build/script/postBuild.ts +0 -0
  831. /package/{project → dist/project}/build/utils.ts +0 -0
  832. /package/{project → dist/project}/build/vite/plugin/compress.ts +0 -0
  833. /package/{project → dist/project}/build/vite/plugin/html.ts +0 -0
  834. /package/{project → dist/project}/build/vite/plugin/imagemin.ts +0 -0
  835. /package/{project → dist/project}/build/vite/plugin/index.ts +0 -0
  836. /package/{project → dist/project}/build/vite/plugin/pwa.ts +0 -0
  837. /package/{project → dist/project}/build/vite/plugin/styleImport.ts +0 -0
  838. /package/{project → dist/project}/build/vite/plugin/svgSprite.ts +0 -0
  839. /package/{project → dist/project}/build/vite/plugin/theme.ts +0 -0
  840. /package/{project → dist/project}/build/vite/plugin/visualizer.ts +0 -0
  841. /package/{project → dist/project}/build/vite/proxy.ts +0 -0
  842. /package/{api/WMS/Controllers/VarConfigDescriptionController/index.ts → dist/src/api/WMS/Controllers/VarConfigDescriptionController/index.d.ts} +0 -0
  843. /package/{api/WMS/Controllers/WarehouseController/index.ts → dist/src/api/WMS/Controllers/WarehouseController/index.d.ts} +0 -0
  844. /package/{api/WMS/Controllers/index.ts → dist/src/api/WMS/Controllers/index.d.ts} +0 -0
  845. /package/{component/KgButton/index.ts → dist/src/component/KgButton/index.d.ts} +0 -0
  846. /package/{component/KgForm.Item/index.ts → dist/src/component/KgForm.Item/index.d.ts} +0 -0
  847. /package/{component/KgImage/index.ts → dist/src/component/KgImage/index.d.ts} +0 -0
  848. /package/{component/KgModal/index.ts → dist/src/component/KgModal/index.d.ts} +0 -0
  849. /package/{component/KgModal02/index.ts → dist/src/component/KgModal02/index.d.ts} +0 -0
  850. /package/{component/KgProgressA/index.ts → dist/src/component/KgProgressA/index.d.ts} +0 -0
  851. /package/{component/KgResizable/index.ts → dist/src/component/KgResizable/index.d.ts} +0 -0
  852. /package/{component/KgSearch/KgSearch.model.ts → dist/src/component/KgSearch/KgSearch.model.d.ts} +0 -0
  853. /package/{component/KgTable02/KgTable02.model.ts → dist/src/component/KgTable02/KgTable02.model.d.ts} +0 -0
  854. /package/{component/KgWorkStation/index.ts → dist/src/component/KgWorkStation/index.d.ts} +0 -0
  855. /package/{component/KgYesOrNo/index.ts → dist/src/component/KgYesOrNo/index.d.ts} +0 -0
  856. /package/{page/KgPageCircularShuttleMonitor/index.ts → dist/src/page/KgPageCircularShuttleMonitor/index.d.ts} +0 -0
  857. /package/{page/KgPageSqlClient/index.ts → dist/src/page/KgPageSqlClient/index.d.ts} +0 -0
  858. /package/{project/src/api/index.ts → dist/src/project/src/api/index.d.ts} +0 -0
  859. /package/{project/src/api/sys/model/uploadModel.ts → dist/src/project/src/api/sys/model/uploadModel.d.ts} +0 -0
  860. /package/{project/src/components/Dropdown/index.ts → dist/src/project/src/components/Dropdown/index.d.ts} +0 -0
  861. /package/{project/src/components/Dropdown/src/typing.ts → dist/src/project/src/components/Dropdown/src/typing.d.ts} +0 -0
  862. /package/{project/src/enums/index.ts → dist/src/project/src/enums/index.d.ts} +0 -0
  863. /package/{project/src/index.ts → dist/src/project/src/index.d.ts} +0 -0
  864. /package/{project/src/layouts/index.ts → dist/src/project/src/layouts/index.d.ts} +0 -0
  865. /package/{project/src/locales/index.ts → dist/src/project/src/locales/index.d.ts} +0 -0
  866. /package/{project/src/router/index.ts → dist/src/project/src/router/index.d.ts} +0 -0
  867. /package/{project/src/settings/index.ts → dist/src/project/src/settings/index.d.ts} +0 -0
  868. /package/{project/src/store/index.ts → dist/src/project/src/store/index.d.ts} +0 -0
  869. /package/{project/src/store/modules/index.ts → dist/src/project/src/store/modules/index.d.ts} +0 -0
  870. /package/{project/src/utils/index.ts → dist/src/project/src/utils/index.d.ts} +0 -0
  871. /package/{project/types/index.ts → dist/src/project/types/index.d.ts} +0 -0
  872. /package/{service/index.ts → dist/src/service/index.d.ts} +0 -0
  873. /package/{util/index.ts → dist/src/util/index.d.ts} +0 -0
@@ -1,3053 +0,0 @@
1
- import { ____ERROR____, ____INFO_____ } from '@kengic/core.core';
2
- import { Q } from '@thymine/xunee';
3
- import { uniq } from 'lodash-es';
4
- import { ref, toRaw } from 'vue';
5
- import { useKgCircularShuttleMonitor } from './KgCircularShuttleMonitor.hooks';
6
- import { MapDTO, MapStationVO, StatusDTO, StatusRgvVO, StatusStationDTO } from './KgCircularShuttleMonitor.model';
7
-
8
- /** 节点类型. */
9
- export const NODE_KEY = {
10
- /** 巷道. */
11
- AISLE: 'AISLE-',
12
- /** 巷道:巷道编号. */
13
- AISLE__UI__TEXT: 'AISLE__UI__TEXT-',
14
- /** 轨道. */
15
- PATH: 'PATH-',
16
- /** 小车. */
17
- RGV: 'RGV-',
18
- /** 小车:路线. */
19
- RGV__PATH: 'RGV__PATH-',
20
- /** 小车:路线:小车和路线的连线. */
21
- RGV__PATH__LINE: 'RGV__PATH__LINE-',
22
- /** 小车:路线:路线上的小车. */
23
- RGV__PATH__RGV: 'RGV__PATH__RGV-',
24
- /** 小车:托盘. */
25
- RGV__UI__CONTAINER: 'RGV__UI__CONTAINER-',
26
- /** 小车:选中. */
27
- RGV__UI__SELECT: 'RGV__UI__SELECT-',
28
- /** 小车:小车编号. */
29
- RGV__UI__TEXT: 'RGV__UI__TEXT-',
30
- /** 小车:小车编号背景. */
31
- RGV__UI__TEXT_BACKGROUND: 'RGV__UI__TEXT_BACKGROUND-',
32
- /** 站点. */
33
- STATION: 'STATION-',
34
- /** 站点:方向. */
35
- STATION_UI_ARROW: 'STATION_UI_ARROW-',
36
- /** 站点:有货. */
37
- STATION_UI_CENTER_RECT: 'STATION_UI_CENTER_RECT-',
38
- /** 站点:选中. */
39
- STATION_UI_SELECT: 'STATION_UI_SELECT-',
40
- /** 站点:线体编号. */
41
- STATION_UI_TEXT: 'STATION_UI_TEXT-',
42
- };
43
-
44
- //region 方法: 绘制
45
- //----------------------------------------------------------------------------------------------------
46
- export type IUseDraw = {
47
- /**
48
- * 绘制图形.
49
- */
50
- draw(param?: IUseDrawDrawParam): void;
51
-
52
- /**
53
- * 选中小车或者选中站点发生变更.
54
- */
55
- onSelectChange(): void;
56
- };
57
-
58
- type IUseDrawDrawParam = {
59
- /**
60
- * 是否纵览比例.
61
- *
62
- * @default false
63
- */
64
- isZoomToOverview?: boolean;
65
-
66
- /**
67
- * <p>绘制类型.</p>
68
- * <ul>
69
- * <li>MAP: 绘制轨道和站点</li>
70
- * <li>STATUS: 绘制小车</li>
71
- * </ul>
72
- */
73
- type: 'MAP' | 'STATUS';
74
- };
75
-
76
- export function useDraw(): IUseDraw {
77
- const kgCircularShuttleMonitor = useKgCircularShuttleMonitor();
78
-
79
- //region DATA
80
- //----------------------------------------------------------------------------------------------------
81
- /** 线宽. */
82
- const LINE_WIDTH = Math.min(Math.max(kgCircularShuttleMonitor.store.getProps?.strokeLineWidth ?? 100, 1), 1000);
83
-
84
- /** 轨道:周长. */
85
- const PATH_LENGTH$ = ref(0);
86
- /** 轨道:内矩形宽度. */
87
- const PATH_WIDTH$ = ref(0);
88
- /** 轨道:内矩形高度. */
89
- const PATH_HEIGHT$ = ref(0);
90
- /** 轨道:线的宽度. */
91
- const PATH_LINE_WIDTH$ = ref(0);
92
- /** 轨道:内轨道的圆半径. */
93
- const PATH_INNER_RADIUS$ = ref(0);
94
- /** 轨道:外轨道的圆半径. */
95
- const PATH_OUTER_RADIUS$ = ref(0);
96
- /** 轨道:轨道方向.0:顺时针,1:逆时针. */
97
- const PATH_DIRECTION$ = ref(0);
98
-
99
- /** 内轨道起点的刻度. */
100
- const SRC_COORDINATE$ = ref(0);
101
- /** 内轨道终点的刻度. */
102
- const DST_COORDINATE$ = ref(0);
103
-
104
- /** 内轨道的矩形的上左位置的刻度. */
105
- const TOP_LEFT_COORDINATE$ = ref(0);
106
- /** 内轨道的矩形的上中位置的刻度. */
107
- const TOP_CENTER_COORDINATE$ = ref(0);
108
- /** 内轨道的矩形的上右位置的刻度. */
109
- const TOP_RIGHT_COORDINATE$ = ref(0);
110
- /** 内轨道的矩形的下左位置的刻度. */
111
- const BOTTOM_LEFT_COORDINATE$ = ref(0);
112
- /** 内轨道的矩形的下中位置的刻度. */
113
- const BOTTOM_CENTER_COORDINATE$ = ref(0);
114
- /** 内轨道的矩形的下右位置的刻度. */
115
- const BOTTOM_RIGHT_COORDINATE$ = ref(0);
116
-
117
- /** 起点所在位置. */
118
- const SRC_POSITION$ = ref<'TOP_LEFT' | 'TOP_RIGHT' | 'BOTTOM_LEFT' | 'BOTTOM_RIGHT' | 'LEFT' | 'RIGHT' | ''>('');
119
-
120
- /** 当前站台:宽度. */
121
- const CURRENT_STATION_WIDTH$ = ref(0);
122
- /** 当前站台:高度. */
123
- const CURRENT_STATION_HEIGHT$ = ref(0);
124
- /** 当前站点在轨道的上边还是下边. */
125
- const CURRENT_STATION_POSITION$ = ref<'TOP' | 'BOTTOM' | ''>('');
126
-
127
- /** 当前小车:宽度. */
128
- const CURRENT_RGV_WIDTH$ = ref(0);
129
- /** 当前小车:高度. */
130
- const CURRENT_RGV_HEIGHT$ = ref(0);
131
- /** 当前小车在轨道的上边还是下边还是左边还是右边. */
132
- const CURRENT_RGV_POSITION$ = ref<'TOP' | 'BOTTOM' | 'LEFT' | 'RIGHT' | ''>('');
133
-
134
- /**
135
- * <p>是否正在绘制. 如果上次绘制尚未完成, 此时又发起了新的绘制请求, 则并不会执行新的绘制.</p>
136
- */
137
- let isDrawing = false;
138
-
139
- /**
140
- * 为了让选中效果更醒目, 对选中效果进行闪烁, 该变量表示闪烁状态.
141
- */
142
- let isSelectBlinkOn: boolean = true;
143
-
144
- /**
145
- * 小车路线虚线偏移.
146
- */
147
- let selectBlinkDashOffset: number = 0;
148
-
149
- /**
150
- * 选中效果闪烁计时器.
151
- */
152
- let selectBlinkTimer: number = -1;
153
- //----------------------------------------------------------------------------------------------------
154
- //endregion
155
-
156
- //region WATCH
157
- //----------------------------------------------------------------------------------------------------
158
- //----------------------------------------------------------------------------------------------------
159
- //endregion
160
-
161
- //region FUNCTION
162
- //----------------------------------------------------------------------------------------------------
163
- /**
164
- * 绘制轨道.
165
- */
166
- function drawPath(canvasMapData: MapDTO | null) {
167
- if (!kgCircularShuttleMonitor.store.getGraph) {
168
- return;
169
- }
170
-
171
- if (!canvasMapData) {
172
- return;
173
- }
174
-
175
- SRC_COORDINATE$.value = canvasMapData.map?.sourceCoordinate ?? 0;
176
- DST_COORDINATE$.value = canvasMapData.map?.destinationCoordinate ?? 0;
177
-
178
- PATH_LENGTH$.value = Math.abs((DST_COORDINATE$.value ?? 0) - (SRC_COORDINATE$.value ?? 0));
179
- PATH_WIDTH$.value = canvasMapData.map?.length ?? 0;
180
- PATH_HEIGHT$.value = canvasMapData.map?.width ?? 0;
181
- PATH_LINE_WIDTH$.value = canvasMapData.map?.lineWidth ?? 0;
182
-
183
- PATH_INNER_RADIUS$.value = PATH_HEIGHT$.value / 2 - LINE_WIDTH / 2;
184
- PATH_OUTER_RADIUS$.value = PATH_INNER_RADIUS$.value + PATH_LINE_WIDTH$.value + LINE_WIDTH;
185
-
186
- PATH_DIRECTION$.value = canvasMapData.map?.direction ?? 0;
187
-
188
- BOTTOM_CENTER_COORDINATE$.value = canvasMapData.map?.offset ?? 0;
189
- TOP_CENTER_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value - PATH_LENGTH$.value / 2;
190
- if (TOP_CENTER_COORDINATE$.value < SRC_COORDINATE$.value) {
191
- TOP_CENTER_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value + PATH_LENGTH$.value / 2;
192
- }
193
-
194
- // 顺时针,
195
- if (canvasMapData.map?.direction === 0) {
196
- BOTTOM_LEFT_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value + PATH_WIDTH$.value / 2;
197
-
198
- // 起下左和下中之间,
199
- if (BOTTOM_LEFT_COORDINATE$.value > DST_COORDINATE$.value) {
200
- BOTTOM_LEFT_COORDINATE$.value = PATH_WIDTH$.value / 2 - (DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value) + SRC_COORDINATE$.value;
201
- SRC_POSITION$.value = 'BOTTOM_LEFT';
202
- }
203
-
204
- BOTTOM_RIGHT_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value - PATH_WIDTH$.value / 2;
205
-
206
- // 起下右和下中之间,
207
- if (BOTTOM_RIGHT_COORDINATE$.value < SRC_COORDINATE$.value) {
208
- BOTTOM_RIGHT_COORDINATE$.value = DST_COORDINATE$.value - PATH_WIDTH$.value / 2 + (BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
209
- SRC_POSITION$.value = 'BOTTOM_RIGHT';
210
- }
211
-
212
- TOP_RIGHT_COORDINATE$.value = TOP_CENTER_COORDINATE$.value + PATH_WIDTH$.value / 2;
213
-
214
- // 起上右和上中之间,
215
- if (TOP_RIGHT_COORDINATE$.value > DST_COORDINATE$.value) {
216
- TOP_RIGHT_COORDINATE$.value = PATH_WIDTH$.value / 2 - (DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value) + SRC_COORDINATE$.value;
217
- SRC_POSITION$.value = 'TOP_RIGHT';
218
- }
219
-
220
- TOP_LEFT_COORDINATE$.value = TOP_CENTER_COORDINATE$.value - PATH_WIDTH$.value / 2;
221
-
222
- // 起上左和上中之间,
223
- if (TOP_LEFT_COORDINATE$.value < SRC_COORDINATE$.value) {
224
- TOP_LEFT_COORDINATE$.value = DST_COORDINATE$.value - PATH_WIDTH$.value / 2 + (TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
225
- SRC_POSITION$.value = 'TOP_LEFT';
226
- }
227
-
228
- if (SRC_POSITION$.value !== 'BOTTOM_LEFT' && SRC_POSITION$.value !== 'BOTTOM_RIGHT' && SRC_POSITION$.value !== 'TOP_LEFT' && SRC_POSITION$.value !== 'TOP_RIGHT') {
229
- if (BOTTOM_CENTER_COORDINATE$.value > PATH_LENGTH$.value / 2) {
230
- SRC_POSITION$.value = 'LEFT';
231
- } else {
232
- SRC_POSITION$.value = 'RIGHT';
233
- }
234
- }
235
- }
236
- // 逆时针,
237
- else {
238
- BOTTOM_RIGHT_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value + PATH_WIDTH$.value / 2;
239
-
240
- // 起下右和下中之间,
241
- if (BOTTOM_RIGHT_COORDINATE$.value > DST_COORDINATE$.value) {
242
- BOTTOM_RIGHT_COORDINATE$.value = PATH_WIDTH$.value / 2 - (DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value) + SRC_COORDINATE$.value;
243
- SRC_POSITION$.value = 'BOTTOM_RIGHT';
244
- }
245
-
246
- BOTTOM_LEFT_COORDINATE$.value = BOTTOM_CENTER_COORDINATE$.value - PATH_WIDTH$.value / 2;
247
-
248
- // 起下左和下中之间,
249
- if (BOTTOM_LEFT_COORDINATE$.value < SRC_COORDINATE$.value) {
250
- BOTTOM_LEFT_COORDINATE$.value = DST_COORDINATE$.value - PATH_WIDTH$.value / 2 + (BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
251
- SRC_POSITION$.value = 'BOTTOM_LEFT';
252
- }
253
-
254
- TOP_LEFT_COORDINATE$.value = TOP_CENTER_COORDINATE$.value + PATH_WIDTH$.value / 2;
255
-
256
- // 起上左和上中之间,
257
- if (TOP_LEFT_COORDINATE$.value > DST_COORDINATE$.value) {
258
- TOP_LEFT_COORDINATE$.value = PATH_WIDTH$.value / 2 - (DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value) + SRC_COORDINATE$.value;
259
- SRC_POSITION$.value = 'TOP_LEFT';
260
- }
261
-
262
- TOP_RIGHT_COORDINATE$.value = TOP_CENTER_COORDINATE$.value - PATH_WIDTH$.value / 2;
263
-
264
- // 起上右和上中之间,
265
- if (TOP_RIGHT_COORDINATE$.value < SRC_COORDINATE$.value) {
266
- TOP_RIGHT_COORDINATE$.value = DST_COORDINATE$.value - PATH_WIDTH$.value / 2 + (TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
267
- SRC_POSITION$.value = 'TOP_RIGHT';
268
- }
269
-
270
- if (SRC_POSITION$.value !== 'BOTTOM_LEFT' && SRC_POSITION$.value !== 'BOTTOM_RIGHT' && SRC_POSITION$.value !== 'TOP_LEFT' && SRC_POSITION$.value !== 'TOP_RIGHT') {
271
- if (BOTTOM_CENTER_COORDINATE$.value > PATH_LENGTH$.value / 2) {
272
- SRC_POSITION$.value = 'RIGHT';
273
- } else {
274
- SRC_POSITION$.value = 'LEFT';
275
- }
276
- }
277
- }
278
-
279
- if (PATH_WIDTH$.value <= 0 || PATH_HEIGHT$.value <= 0 || PATH_LINE_WIDTH$.value <= 0) {
280
- return;
281
- }
282
-
283
- console.log('--------------------------------------------------');
284
- console.log('轨道方向:', canvasMapData.map?.direction === 0 ? '顺时针' : '逆时针');
285
- console.log(
286
- '起点位置:',
287
- (() => {
288
- switch (SRC_POSITION$.value) {
289
- case 'LEFT':
290
- return '左';
291
- case 'RIGHT':
292
- return '右';
293
- case 'TOP_LEFT':
294
- return '上左';
295
- case 'TOP_RIGHT':
296
- return '上右';
297
- case 'BOTTOM_LEFT':
298
- return '下左';
299
- case 'BOTTOM_RIGHT':
300
- return '下右';
301
-
302
- default:
303
- return '';
304
- }
305
- })(),
306
- );
307
- console.log('起点:', SRC_COORDINATE$.value);
308
- console.log('终点:', DST_COORDINATE$.value);
309
- console.log('中点:', canvasMapData.map?.offset);
310
- console.log('上左:', TOP_LEFT_COORDINATE$.value);
311
- console.log('上中:', TOP_CENTER_COORDINATE$.value);
312
- console.log('上右:', TOP_RIGHT_COORDINATE$.value);
313
- console.log('下右:', BOTTOM_RIGHT_COORDINATE$.value);
314
- console.log('下中:', BOTTOM_CENTER_COORDINATE$.value);
315
- console.log('下左:', BOTTOM_LEFT_COORDINATE$.value);
316
- console.log('--------------------------------------------------');
317
-
318
- const pathNode = kgCircularShuttleMonitor.store.getGraph!.createNode(null, 0, 0);
319
- pathNode.size = new Q.Size(PATH_WIDTH$.value + (PATH_OUTER_RADIUS$.value + LINE_WIDTH / 2) * 2, PATH_HEIGHT$.value + (PATH_LINE_WIDTH$.value + LINE_WIDTH) * 2);
320
- pathNode.image = drawPath_GetImage();
321
- pathNode.zIndex = 1;
322
- pathNode.movable = false;
323
- pathNode.selectable = false;
324
- pathNode.putStyles({
325
- [Q.Styles.PADDING]: LINE_WIDTH * 2,
326
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
327
- [Q.Styles.SHAPE_STROKE_STYLE]: '#000000',
328
- });
329
- pathNode.properties = {
330
- key: `${NODE_KEY.PATH}`,
331
- };
332
- }
333
-
334
- /**
335
- * 绘制轨道:获取节点图形.
336
- */
337
- function drawPath_GetImage(): any {
338
- const x = 0;
339
- const y = 0;
340
-
341
- const path = new Q.Path();
342
-
343
- // 内轨道画笔中心点的矩形宽度
344
- const INNER_STROKE_WIDTH = PATH_WIDTH$.value;
345
- // 内轨道画笔中心点的矩形高度
346
- const INNER_STROKE_HEIGHT = PATH_INNER_RADIUS$.value * 2;
347
-
348
- // 绘制内轨道,
349
- path.moveTo(x - INNER_STROKE_WIDTH / 2, y - INNER_STROKE_HEIGHT / 2);
350
- path.lineTo(x + INNER_STROKE_WIDTH / 2, y - INNER_STROKE_HEIGHT / 2);
351
- path.arcTo(x + INNER_STROKE_WIDTH / 2 + INNER_STROKE_HEIGHT / 2, y - INNER_STROKE_HEIGHT / 2, x + INNER_STROKE_WIDTH / 2 + INNER_STROKE_HEIGHT / 2, y, INNER_STROKE_HEIGHT / 2);
352
- path.arcTo(x + INNER_STROKE_WIDTH / 2 + INNER_STROKE_HEIGHT / 2, y + INNER_STROKE_HEIGHT / 2, x + INNER_STROKE_WIDTH / 2, y + INNER_STROKE_HEIGHT / 2, INNER_STROKE_HEIGHT / 2);
353
- path.lineTo(x - INNER_STROKE_WIDTH / 2, y + INNER_STROKE_HEIGHT / 2);
354
- path.arcTo(x - INNER_STROKE_WIDTH / 2 - INNER_STROKE_HEIGHT / 2, y + INNER_STROKE_HEIGHT / 2, x - INNER_STROKE_WIDTH / 2 - INNER_STROKE_HEIGHT / 2, y, INNER_STROKE_HEIGHT / 2);
355
- path.arcTo(x - INNER_STROKE_WIDTH / 2 - INNER_STROKE_HEIGHT / 2, y - INNER_STROKE_HEIGHT / 2, x - INNER_STROKE_WIDTH / 2, y - INNER_STROKE_HEIGHT / 2, INNER_STROKE_HEIGHT / 2);
356
-
357
- // 外轨道画笔中心点的矩形宽度
358
- const OUTER_STROKE_WIDTH = PATH_WIDTH$.value;
359
- // 外轨道画笔中心点的矩形高度
360
- const OUTER_STROKE_HEIGHT = PATH_OUTER_RADIUS$.value * 2;
361
-
362
- // 绘制外轨道,
363
- path.moveTo(x - OUTER_STROKE_WIDTH / 2, y - OUTER_STROKE_HEIGHT / 2);
364
- path.lineTo(x + OUTER_STROKE_WIDTH / 2, y - OUTER_STROKE_HEIGHT / 2);
365
- path.arcTo(x + OUTER_STROKE_WIDTH / 2 + OUTER_STROKE_HEIGHT / 2, y - OUTER_STROKE_HEIGHT / 2, x + OUTER_STROKE_WIDTH / 2 + OUTER_STROKE_HEIGHT / 2, y, OUTER_STROKE_HEIGHT / 2);
366
- path.arcTo(x + OUTER_STROKE_WIDTH / 2 + OUTER_STROKE_HEIGHT / 2, y + OUTER_STROKE_HEIGHT / 2, x + OUTER_STROKE_WIDTH / 2, y + OUTER_STROKE_HEIGHT / 2, OUTER_STROKE_HEIGHT / 2);
367
- path.lineTo(x - OUTER_STROKE_WIDTH / 2, y + OUTER_STROKE_HEIGHT / 2);
368
- path.arcTo(x - OUTER_STROKE_WIDTH / 2 - OUTER_STROKE_HEIGHT / 2, y + OUTER_STROKE_HEIGHT / 2, x - OUTER_STROKE_WIDTH / 2 - OUTER_STROKE_HEIGHT / 2, y, OUTER_STROKE_HEIGHT / 2);
369
- path.arcTo(x - OUTER_STROKE_WIDTH / 2 - OUTER_STROKE_HEIGHT / 2, y - OUTER_STROKE_HEIGHT / 2, x - OUTER_STROKE_WIDTH / 2, y - OUTER_STROKE_HEIGHT / 2, OUTER_STROKE_HEIGHT / 2);
370
-
371
- return path;
372
- }
373
-
374
- /**
375
- * 更新站点列表.
376
- */
377
- function updateStationList(canvasStatusData: StatusDTO | null) {
378
- if (!kgCircularShuttleMonitor.store.getGraph) {
379
- return;
380
- }
381
-
382
- if (!canvasStatusData) {
383
- return;
384
- }
385
-
386
- // 地图尚未绘制完成, 不能绘制小车,
387
- if (PATH_LENGTH$.value <= 0 || PATH_WIDTH$.value <= 0 || PATH_HEIGHT$.value <= 0 || PATH_LINE_WIDTH$.value <= 0) {
388
- return;
389
- }
390
-
391
- canvasStatusData.conveyorState.forEach((data, index) => {
392
- updateStation(index, data, canvasStatusData);
393
- });
394
- }
395
-
396
- /**
397
- * 更新站点.
398
- *
399
- * @param index 索引
400
- * @param station 站点.
401
- * @param canvasStatusData 状态数据.
402
- */
403
- function updateStation(index: number, station: StatusStationDTO, canvasStatusData: StatusDTO | null) {
404
- if (!kgCircularShuttleMonitor.store.getGraph) {
405
- return;
406
- }
407
-
408
- const stationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && i.properties.data?.conveyorNo === station.conveyorNo) as Q.Node;
409
- if (stationNode) {
410
- (stationNode.properties.data as MapStationVO).containerId = station.containerId;
411
- (stationNode.properties.data as MapStationVO).occupiedFlag = station.occupiedFlag;
412
-
413
- // 站台有货,
414
- if (station.occupiedFlag === 1) {
415
- stationNode.putStyles({
416
- [Q.Styles.SHAPE_STROKE_STYLE]: '#1890ff',
417
- });
418
- getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_CENTER_RECT).ui.fillColor = '#1890ff';
419
- getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_ARROW).ui.strokeStyle = '#ffffff';
420
- getNodeUiByKey<Q.LabelUI>(stationNode, NODE_KEY.STATION_UI_TEXT).ui.color = '#ffffff';
421
- }
422
- // 站台无货,
423
- else {
424
- stationNode.putStyles({
425
- [Q.Styles.SHAPE_STROKE_STYLE]: '#000000',
426
- });
427
- getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_CENTER_RECT).ui.fillColor = '#ffffff';
428
- getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_ARROW).ui.strokeStyle = '#000000';
429
- getNodeUiByKey<Q.LabelUI>(stationNode, NODE_KEY.STATION_UI_TEXT).ui.color = '#000000';
430
- }
431
- } else {
432
- // N/A
433
- }
434
- }
435
-
436
- /**
437
- * 绘制站点列表.
438
- */
439
- function drawStationList(canvasMapData: MapDTO | null) {
440
- if (!kgCircularShuttleMonitor.store.getGraph) {
441
- return;
442
- }
443
-
444
- if (!canvasMapData) {
445
- return;
446
- }
447
-
448
- canvasMapData.conveyor.forEach((data, index) => {
449
- drawStation(index, data, canvasMapData);
450
- });
451
- }
452
-
453
- /**
454
- * 绘制巷道列表.
455
- */
456
- function drawAisleList() {
457
- if (!kgCircularShuttleMonitor.store.getGraph) {
458
- return;
459
- }
460
-
461
- // 移除巷道节点,
462
- const deleteAisleNodeList = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter((i) => i.properties?.key?.startsWith(NODE_KEY.AISLE)) ?? [];
463
- for (let deleteAisleNode of deleteAisleNodeList) {
464
- kgCircularShuttleMonitor.store.getGraph!.removeElement(deleteAisleNode);
465
- }
466
-
467
- // 隐藏巷道,
468
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsAisleVisible) {
469
- return;
470
- }
471
-
472
- // 站点节点列表,
473
- const stationNodeList = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter((i) => i.properties?.key?.startsWith(NODE_KEY.STATION)) ?? [];
474
-
475
- // 巷道数据,
476
- const aisleMap: Record<
477
- /**
478
- * 巷道编号.
479
- */
480
- string,
481
- Array<{
482
- /**
483
- * 站点横坐标.
484
- */
485
- x: number;
486
-
487
- /**
488
- * 站点纵坐标.
489
- */
490
- y: number;
491
- }>
492
- > = {};
493
-
494
- for (let stationNode of stationNodeList) {
495
- const aisle = String((stationNode.properties.data as MapStationVO)?.aisle);
496
- if (aisle) {
497
- if (!aisleMap[aisle]) {
498
- aisleMap[aisle] = [];
499
- }
500
-
501
- aisleMap[aisle].push({ x: stationNode.x, y: stationNode.y });
502
- }
503
- }
504
-
505
- Object.keys(aisleMap).forEach((aisle) => {
506
- const xyList = aisleMap[aisle];
507
-
508
- const yList = uniq(xyList.map((i) => i.y));
509
- if (yList.length > 1) {
510
- ____ERROR____(`KgCircularShuttleMonitor | 绘制巷道 | 同个巷道的多个站点的纵坐标不同 | ${aisle}`);
511
- } else {
512
- const y = yList[0];
513
-
514
- const xList = uniq(xyList.map((i) => i.x));
515
-
516
- const fromX = Math.min(...xList);
517
- const toX = Math.max(...xList);
518
-
519
- drawAisle(aisle, fromX, toX, y);
520
- }
521
- });
522
- }
523
-
524
- /**
525
- * 绘制巷道.
526
- *
527
- * @param aisle 巷道编号.
528
- * @param fromX 起点横坐标.
529
- * @param toX 终点横坐标.
530
- * @param y 纵坐标.
531
- */
532
- function drawAisle(aisle: string, fromX: number, toX: number, y: number) {
533
- const aisleNode = kgCircularShuttleMonitor.store.getGraph!.createShapeNode(undefined, undefined, 0, 0);
534
- aisleNode.movable = false;
535
- aisleNode.zIndex = 2;
536
- aisleNode.selectable = false;
537
- aisleNode.putStyles({
538
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
539
- [Q.Styles.SHAPE_STROKE_STYLE]: '#00000080',
540
- });
541
- aisleNode.properties = {
542
- key: `${NODE_KEY.AISLE}${aisle}`,
543
- };
544
-
545
- // 巷道矩形高度,
546
- const HEIGHT = LINE_WIDTH * 10;
547
-
548
- // 巷道在上,
549
- if (y < 0) {
550
- const _y = y - CURRENT_STATION_HEIGHT$.value / 2 - LINE_WIDTH * 2.5;
551
-
552
- aisleNode.moveTo(fromX - CURRENT_STATION_WIDTH$.value / 2 + LINE_WIDTH / 2, _y - HEIGHT);
553
- aisleNode.lineTo(fromX - CURRENT_STATION_WIDTH$.value / 2 + LINE_WIDTH / 2, _y);
554
- aisleNode.lineTo(toX + CURRENT_STATION_WIDTH$.value / 2 - LINE_WIDTH / 2, _y);
555
- aisleNode.lineTo(toX + CURRENT_STATION_WIDTH$.value / 2 - LINE_WIDTH / 2, _y - HEIGHT);
556
- }
557
- // 巷道在下,
558
- else {
559
- const _y = y + CURRENT_STATION_HEIGHT$.value / 2 + LINE_WIDTH * 2.5;
560
-
561
- aisleNode.moveTo(fromX - CURRENT_STATION_WIDTH$.value / 2 + LINE_WIDTH / 2, _y + HEIGHT);
562
- aisleNode.lineTo(fromX - CURRENT_STATION_WIDTH$.value / 2 + LINE_WIDTH / 2, _y);
563
- aisleNode.lineTo(toX + CURRENT_STATION_WIDTH$.value / 2 - LINE_WIDTH / 2, _y);
564
- aisleNode.lineTo(toX + CURRENT_STATION_WIDTH$.value / 2 - LINE_WIDTH / 2, _y + HEIGHT);
565
- }
566
-
567
- drawAisle_DrawTextUI(aisle, y, aisleNode);
568
- }
569
-
570
- /**
571
- * 绘制巷道:绘制巷道编号.
572
- *
573
- * @param aisle 巷道编号.
574
- * @param aisleNode 巷道节点.
575
- * @param y 纵坐标.
576
- */
577
- function drawAisle_DrawTextUI(aisle: string, y: number, aisleNode: Q.Node): void {
578
- const labelUI = new Q.LabelUI(aisle);
579
-
580
- labelUI.code = NODE_KEY.AISLE__UI__TEXT;
581
- labelUI.fontSize = LINE_WIDTH * 7;
582
- labelUI.position = Q.Position.CENTER_TOP;
583
- labelUI.anchorPosition = Q.Position.CENTER_TOP;
584
- labelUI.alignPosition = Q.Position.CENTER_BOTTOM;
585
- labelUI.borderRadius = 0;
586
- labelUI.showPointer = false;
587
- labelUI.color = '#00000080';
588
- labelUI.syncSelection = false;
589
-
590
- // 巷道在上,
591
- if (y < 0) {
592
- labelUI.position = Q.Position.CENTER_BOTTOM;
593
- labelUI.anchorPosition = Q.Position.CENTER_BOTTOM;
594
- labelUI.alignPosition = Q.Position.CENTER_BOTTOM;
595
-
596
- labelUI.offsetY = -LINE_WIDTH;
597
- }
598
- // 巷道在下,
599
- else {
600
- labelUI.position = Q.Position.CENTER_TOP;
601
- labelUI.anchorPosition = Q.Position.CENTER_TOP;
602
-
603
- labelUI.offsetY = LINE_WIDTH * 2;
604
- }
605
-
606
- aisleNode.addUI(labelUI);
607
- }
608
-
609
- /**
610
- * 绘制站点.
611
- */
612
- function drawStation(index: number, station: MapStationVO, canvasMapData: MapDTO | null) {
613
- if (!kgCircularShuttleMonitor.store.getGraph) {
614
- return;
615
- }
616
-
617
- CURRENT_STATION_WIDTH$.value = station.width ?? 0;
618
- CURRENT_STATION_HEIGHT$.value = station.length ?? 0;
619
-
620
- if (CURRENT_STATION_WIDTH$.value <= 0 || CURRENT_STATION_HEIGHT$.value <= 0) {
621
- return;
622
- }
623
-
624
- // 站点距离轨道的间隔距离,
625
- const STATION_MARGIN: number = LINE_WIDTH * 2;
626
-
627
- /**
628
- * 当前站点在轨道的上边还是下边.
629
- */
630
- CURRENT_STATION_POSITION$.value = (() => {
631
- // 顺时针,
632
- if (canvasMapData?.map?.direction === 0) {
633
- // 起点在下,
634
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
635
- if (station.coordinate <= BOTTOM_LEFT_COORDINATE$.value! || station.coordinate >= BOTTOM_RIGHT_COORDINATE$.value!) {
636
- return 'BOTTOM';
637
- } else if (station.coordinate >= TOP_LEFT_COORDINATE$.value && station.coordinate <= TOP_RIGHT_COORDINATE$.value) {
638
- return 'TOP';
639
- } else {
640
- return '';
641
- }
642
- }
643
- // 起点在上,
644
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
645
- if (station.coordinate <= TOP_RIGHT_COORDINATE$.value! || station.coordinate >= TOP_LEFT_COORDINATE$.value!) {
646
- return 'TOP';
647
- } else if (station.coordinate >= BOTTOM_RIGHT_COORDINATE$.value && station.coordinate <= BOTTOM_LEFT_COORDINATE$.value) {
648
- return 'BOTTOM';
649
- } else {
650
- return '';
651
- }
652
- }
653
- // 起左/起右,
654
- else {
655
- if (station.coordinate >= BOTTOM_RIGHT_COORDINATE$.value! && station.coordinate <= BOTTOM_LEFT_COORDINATE$.value!) {
656
- return 'BOTTOM';
657
- } else if (station.coordinate >= TOP_LEFT_COORDINATE$.value! && station.coordinate <= TOP_RIGHT_COORDINATE$.value!) {
658
- return 'TOP';
659
- } else {
660
- return '';
661
- }
662
- }
663
- }
664
- // 逆时针,
665
- else {
666
- // 起点在下,
667
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
668
- if (station.coordinate <= BOTTOM_RIGHT_COORDINATE$.value! || station.coordinate >= BOTTOM_LEFT_COORDINATE$.value!) {
669
- return 'BOTTOM';
670
- } else if (station.coordinate >= TOP_RIGHT_COORDINATE$.value && station.coordinate <= TOP_LEFT_COORDINATE$.value) {
671
- return 'TOP';
672
- } else {
673
- return '';
674
- }
675
- }
676
- // 起点在上,
677
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
678
- if (station.coordinate <= TOP_LEFT_COORDINATE$.value! || station.coordinate >= TOP_RIGHT_COORDINATE$.value!) {
679
- return 'TOP';
680
- } else if (station.coordinate >= BOTTOM_LEFT_COORDINATE$.value && station.coordinate <= BOTTOM_RIGHT_COORDINATE$.value) {
681
- return 'BOTTOM';
682
- } else {
683
- return '';
684
- }
685
- }
686
- // 起左/起右,
687
- else {
688
- if (station.coordinate >= BOTTOM_LEFT_COORDINATE$.value! && station.coordinate <= BOTTOM_RIGHT_COORDINATE$.value!) {
689
- return 'BOTTOM';
690
- } else if (station.coordinate >= TOP_RIGHT_COORDINATE$.value! && station.coordinate <= TOP_LEFT_COORDINATE$.value!) {
691
- return 'TOP';
692
- } else {
693
- return '';
694
- }
695
- }
696
- }
697
- })();
698
-
699
- /**
700
- * 横坐标.
701
- */
702
- let x: number = (() => {
703
- // 顺时针,
704
- if (canvasMapData?.map?.direction === 0) {
705
- // 起点在下,
706
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
707
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
708
- if (SRC_POSITION$.value === 'BOTTOM_LEFT') {
709
- if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= BOTTOM_LEFT_COORDINATE$.value) {
710
- return -(station.coordinate - SRC_COORDINATE$.value + (DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value));
711
- } else if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
712
- return -(station.coordinate - BOTTOM_CENTER_COORDINATE$.value);
713
- } else {
714
- return BOTTOM_CENTER_COORDINATE$.value - station.coordinate;
715
- }
716
- }
717
-
718
- if (SRC_POSITION$.value === 'BOTTOM_RIGHT') {
719
- if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value && station.coordinate <= BOTTOM_LEFT_COORDINATE$.value) {
720
- return -(station.coordinate - BOTTOM_CENTER_COORDINATE$.value);
721
- } else if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
722
- return BOTTOM_CENTER_COORDINATE$.value - station.coordinate;
723
- } else {
724
- return BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value + DST_COORDINATE$.value - station.coordinate;
725
- }
726
- }
727
-
728
- if (BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
729
- if (station.coordinate >= SRC_COORDINATE$.value) {
730
- return -(station.coordinate - SRC_COORDINATE$.value);
731
- } else {
732
- return DST_COORDINATE$.value - station.coordinate;
733
- }
734
- }
735
-
736
- return 0;
737
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
738
- if (station.coordinate <= TOP_CENTER_COORDINATE$.value) {
739
- return -(TOP_CENTER_COORDINATE$.value - station.coordinate);
740
- } else {
741
- return station.coordinate - TOP_CENTER_COORDINATE$.value;
742
- }
743
- } else {
744
- return 0;
745
- }
746
- }
747
- // 起点在上,
748
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
749
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
750
- if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
751
- return -(station.coordinate - BOTTOM_CENTER_COORDINATE$.value);
752
- } else {
753
- return BOTTOM_CENTER_COORDINATE$.value - station.coordinate;
754
- }
755
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
756
- if (SRC_POSITION$.value === 'TOP_LEFT') {
757
- if (station.coordinate >= TOP_LEFT_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
758
- return -(DST_COORDINATE$.value - station.coordinate + TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
759
- } else if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= TOP_CENTER_COORDINATE$.value) {
760
- return -(TOP_CENTER_COORDINATE$.value - station.coordinate);
761
- } else {
762
- return station.coordinate - TOP_CENTER_COORDINATE$.value;
763
- }
764
- }
765
-
766
- if (SRC_POSITION$.value === 'TOP_RIGHT') {
767
- if (station.coordinate >= TOP_LEFT_COORDINATE$.value && station.coordinate <= TOP_CENTER_COORDINATE$.value) {
768
- return -(TOP_CENTER_COORDINATE$.value - station.coordinate);
769
- } else if (station.coordinate >= TOP_CENTER_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
770
- return station.coordinate - TOP_CENTER_COORDINATE$.value;
771
- } else {
772
- return DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value + station.coordinate - SRC_COORDINATE$.value;
773
- }
774
- }
775
-
776
- if (TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
777
- if (station.coordinate >= SRC_COORDINATE$.value) {
778
- return station.coordinate - SRC_COORDINATE$.value;
779
- } else {
780
- return -(DST_COORDINATE$.value - station.coordinate);
781
- }
782
- }
783
-
784
- return 0;
785
- } else {
786
- return 0;
787
- }
788
- }
789
- // 起左/起右,
790
- else {
791
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
792
- if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
793
- return -(station.coordinate - BOTTOM_CENTER_COORDINATE$.value);
794
- } else {
795
- return BOTTOM_CENTER_COORDINATE$.value - station.coordinate;
796
- }
797
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
798
- if (station.coordinate <= TOP_CENTER_COORDINATE$.value) {
799
- return -(TOP_CENTER_COORDINATE$.value - station.coordinate);
800
- } else {
801
- return station.coordinate - TOP_CENTER_COORDINATE$.value;
802
- }
803
- } else {
804
- return 0;
805
- }
806
- }
807
- }
808
- // 逆时针,
809
- else {
810
- // 起点在下,
811
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
812
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
813
- if (SRC_POSITION$.value === 'BOTTOM_LEFT') {
814
- if (station.coordinate >= BOTTOM_LEFT_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
815
- return -(DST_COORDINATE$.value - station.coordinate + BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
816
- } else if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
817
- return -(BOTTOM_CENTER_COORDINATE$.value - station.coordinate);
818
- } else {
819
- return station.coordinate - BOTTOM_CENTER_COORDINATE$.value;
820
- }
821
- }
822
-
823
- if (SRC_POSITION$.value === 'BOTTOM_RIGHT') {
824
- if (station.coordinate >= BOTTOM_LEFT_COORDINATE$.value && station.coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
825
- return -(BOTTOM_CENTER_COORDINATE$.value - station.coordinate);
826
- } else if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
827
- return station.coordinate - BOTTOM_CENTER_COORDINATE$.value;
828
- } else {
829
- return DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value + station.coordinate - SRC_COORDINATE$.value;
830
- }
831
- }
832
-
833
- if (BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
834
- if (station.coordinate <= DST_COORDINATE$.value) {
835
- return -(SRC_COORDINATE$.value - station.coordinate);
836
- } else {
837
- return station.coordinate - SRC_COORDINATE$.value;
838
- }
839
- }
840
-
841
- return 0;
842
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
843
- if (station.coordinate >= TOP_CENTER_COORDINATE$.value) {
844
- return -(station.coordinate - TOP_CENTER_COORDINATE$.value);
845
- } else {
846
- return TOP_CENTER_COORDINATE$.value - station.coordinate;
847
- }
848
- } else {
849
- return 0;
850
- }
851
- }
852
- // 起点在上,
853
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
854
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
855
- if (station.coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
856
- return -(BOTTOM_CENTER_COORDINATE$.value - station.coordinate);
857
- } else {
858
- return station.coordinate - BOTTOM_CENTER_COORDINATE$.value;
859
- }
860
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
861
- if (SRC_POSITION$.value === 'TOP_LEFT') {
862
- if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= TOP_LEFT_COORDINATE$.value) {
863
- return -(station.coordinate - SRC_COORDINATE$.value + DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value);
864
- } else if (station.coordinate >= TOP_CENTER_COORDINATE$.value && station.coordinate <= DST_COORDINATE$.value) {
865
- return -(station.coordinate - TOP_CENTER_COORDINATE$.value);
866
- } else {
867
- return TOP_CENTER_COORDINATE$.value - station.coordinate;
868
- }
869
- }
870
-
871
- if (SRC_POSITION$.value === 'TOP_RIGHT') {
872
- if (station.coordinate >= TOP_CENTER_COORDINATE$.value && station.coordinate <= TOP_LEFT_COORDINATE$.value) {
873
- return -(station.coordinate - TOP_CENTER_COORDINATE$.value);
874
- } else if (station.coordinate >= SRC_COORDINATE$.value && station.coordinate <= TOP_CENTER_COORDINATE$.value) {
875
- return TOP_CENTER_COORDINATE$.value - station.coordinate;
876
- } else {
877
- return TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value + DST_COORDINATE$.value - station.coordinate;
878
- }
879
- }
880
-
881
- if (TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
882
- if (station.coordinate >= SRC_COORDINATE$.value) {
883
- return -(station.coordinate - SRC_COORDINATE$.value);
884
- } else {
885
- return DST_COORDINATE$.value - station.coordinate;
886
- }
887
- }
888
-
889
- return 0;
890
- } else {
891
- return 0;
892
- }
893
- }
894
- // 起左/起右,
895
- else {
896
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
897
- if (station.coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
898
- return station.coordinate - BOTTOM_CENTER_COORDINATE$.value;
899
- } else {
900
- return -(BOTTOM_CENTER_COORDINATE$.value - station.coordinate);
901
- }
902
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
903
- if (station.coordinate <= TOP_CENTER_COORDINATE$.value) {
904
- return TOP_CENTER_COORDINATE$.value - station.coordinate;
905
- } else {
906
- return -(station.coordinate - TOP_CENTER_COORDINATE$.value);
907
- }
908
- } else {
909
- return 0;
910
- }
911
- }
912
- }
913
- })();
914
-
915
- /**
916
- * 纵坐标.
917
- */
918
- let y: number = (() => {
919
- if (CURRENT_STATION_POSITION$.value === 'BOTTOM') {
920
- return PATH_OUTER_RADIUS$.value + LINE_WIDTH / 2 + CURRENT_STATION_HEIGHT$.value / 2 + STATION_MARGIN;
921
- } else if (CURRENT_STATION_POSITION$.value === 'TOP') {
922
- return -(PATH_OUTER_RADIUS$.value + LINE_WIDTH / 2 + CURRENT_STATION_HEIGHT$.value / 2 + STATION_MARGIN);
923
- } else {
924
- return 0;
925
- }
926
- })();
927
-
928
- // 站点刻度有误, 站点不在上下轨道,
929
- if (x === 0 || y === 0) {
930
- ____INFO_____('站点在左右的轨道', { data: toRaw(station) });
931
- return;
932
- }
933
-
934
- const stationNode = kgCircularShuttleMonitor.store.getGraph!.createNode(null, x, y);
935
- stationNode.size = new Q.Size(CURRENT_STATION_WIDTH$.value, CURRENT_STATION_HEIGHT$.value);
936
- stationNode.image = drawStation_GetImage(x, y, station);
937
- stationNode.zIndex = 1;
938
- stationNode.movable = false;
939
- stationNode.selectable = false;
940
- stationNode.putStyles({
941
- [Q.Styles.SHAPE_FILL_COLOR]: '#ffffff',
942
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
943
- [Q.Styles.SHAPE_STROKE_STYLE]: '#000000',
944
- });
945
- stationNode.properties = {
946
- data: station,
947
- isEnableTooltip: true,
948
- key: `${NODE_KEY.STATION}${station.conveyorNo}`,
949
- };
950
-
951
- const centerRectUI = drawStation_DrawCenterRectUI(x, y, station);
952
- if (centerRectUI) {
953
- stationNode.addUI(centerRectUI);
954
- }
955
-
956
- const arrowUI = drawStation_DrawArrowUI(x, y, station, canvasMapData);
957
- if (arrowUI) {
958
- stationNode.addUI(arrowUI);
959
- }
960
-
961
- const textUI = drawStation_DrawTextUI(x, y, station);
962
- if (textUI) {
963
- stationNode.addUI(textUI);
964
- }
965
-
966
- const selectUI = drawStation_DrawSelectUI(station);
967
- if (selectUI) {
968
- stationNode.addUI(selectUI);
969
- }
970
- }
971
-
972
- /**
973
- * 绘制站点:绘制中间矩形.
974
- *
975
- * @param x 站点节点的横坐标.
976
- * @param y 站点节点的纵坐标.
977
- * @param station 站点.
978
- */
979
- function drawStation_DrawCenterRectUI(x: number, y: number, station: MapStationVO): Q.ImageUI | null {
980
- if (!kgCircularShuttleMonitor.store.getGraph) {
981
- return null;
982
- }
983
-
984
- const WIDTH = CURRENT_STATION_WIDTH$.value - LINE_WIDTH * 2 - 40;
985
- const HEIGHT = CURRENT_STATION_HEIGHT$.value - LINE_WIDTH * 2 - 40;
986
-
987
- const path = new Q.Path();
988
-
989
- path.moveTo(0, 0);
990
- path.lineTo(WIDTH, 0);
991
- path.lineTo(WIDTH, HEIGHT);
992
- path.lineTo(0, HEIGHT);
993
- path.closePath();
994
-
995
- const imageUI = new Q.ImageUI(path);
996
- imageUI.code = NODE_KEY.STATION_UI_CENTER_RECT;
997
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
998
- imageUI.position = Q.Position.CENTER_MIDDLE;
999
- imageUI.fillColor = '#ffffff';
1000
- imageUI.syncSelection = false;
1001
-
1002
- return imageUI;
1003
- }
1004
-
1005
- /**
1006
- * 绘制站点:绘制选中时的遮盖效果.
1007
- *
1008
- * @param station 站点.
1009
- */
1010
- function drawStation_DrawSelectUI(station: MapStationVO): Q.ImageUI | null {
1011
- if (!kgCircularShuttleMonitor.store.getGraph) {
1012
- return null;
1013
- }
1014
-
1015
- const WIDTH = station.width ?? 0;
1016
- const HEIGHT = station.length ?? 0;
1017
-
1018
- const path = new Q.Path();
1019
-
1020
- path.moveTo(0, 0);
1021
- path.lineTo(WIDTH, 0);
1022
- path.lineTo(WIDTH, HEIGHT);
1023
- path.lineTo(0, HEIGHT);
1024
- path.closePath();
1025
-
1026
- const imageUI = new Q.ImageUI(path);
1027
- imageUI.code = NODE_KEY.STATION_UI_SELECT;
1028
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
1029
- imageUI.position = Q.Position.CENTER_MIDDLE;
1030
- imageUI.syncSelection = false;
1031
- imageUI.fillColor = isSelectBlinkOn ? '#ffff0075' : '#ffffff00';
1032
- imageUI.borderColor = isSelectBlinkOn ? '#ffff00' : '#ffffff00';
1033
- imageUI.border = LINE_WIDTH;
1034
- imageUI.visible = !!kgCircularShuttleMonitor.store.$Canvas$getCurrentStationList.find((i) => i.conveyorNo === station.conveyorNo);
1035
-
1036
- return imageUI;
1037
- }
1038
-
1039
- /**
1040
- * 绘制站点:绘制箭头.
1041
- *
1042
- * @param x 站点节点的横坐标.
1043
- * @param y 站点节点的纵坐标.
1044
- * @param station 站点.
1045
- * @param canvasMapData 地图数据.
1046
- */
1047
- function drawStation_DrawArrowUI(x: number, y: number, station: MapStationVO, canvasMapData: MapDTO | null): Q.ImageUI | null {
1048
- if (!kgCircularShuttleMonitor.store.getGraph) {
1049
- return null;
1050
- }
1051
-
1052
- // @ts-ignore
1053
- const imageUI = new Q.ImageUI();
1054
- imageUI.code = NODE_KEY.STATION_UI_ARROW;
1055
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
1056
- imageUI.position = Q.Position.CENTER_MIDDLE;
1057
- imageUI.lineWidth = LINE_WIDTH / 2;
1058
- imageUI.strokeStyle = '#000000';
1059
- imageUI.syncSelection = false;
1060
-
1061
- // 箭头向上,
1062
- if ((station.direction === 0 && CURRENT_STATION_POSITION$.value === 'BOTTOM') || (station.direction === 1 && CURRENT_STATION_POSITION$.value === 'TOP')) {
1063
- const path = new Q.Path();
1064
-
1065
- // 箭头,
1066
- path.moveTo(0, 0);
1067
- path.lineTo((CURRENT_STATION_WIDTH$.value / 10) * 2, (CURRENT_STATION_WIDTH$.value / 10) * 2);
1068
- path.lineTo(-(CURRENT_STATION_WIDTH$.value / 10) * 2, (CURRENT_STATION_WIDTH$.value / 10) * 2);
1069
- path.closePath();
1070
-
1071
- // 尾巴,
1072
- path.moveTo(0, (CURRENT_STATION_WIDTH$.value / 10) * 2);
1073
- path.lineTo(0, (CURRENT_STATION_WIDTH$.value / 10) * 2 + LINE_WIDTH * 2);
1074
- path.lineTo(0, (CURRENT_STATION_WIDTH$.value / 10) * 2);
1075
- path.closePath();
1076
-
1077
- imageUI.data = path;
1078
- imageUI.offsetY = -CURRENT_STATION_HEIGHT$.value / 2 + (CURRENT_STATION_WIDTH$.value / 10) * 2 + LINE_WIDTH * 2;
1079
- }
1080
- // 箭头向下,
1081
- else {
1082
- const path = new Q.Path();
1083
-
1084
- // 箭头,
1085
- path.moveTo(0, 0);
1086
- path.lineTo(-(CURRENT_STATION_WIDTH$.value / 10) * 2, -(CURRENT_STATION_WIDTH$.value / 10) * 2);
1087
- path.lineTo((CURRENT_STATION_WIDTH$.value / 10) * 2, -(CURRENT_STATION_WIDTH$.value / 10) * 2);
1088
- path.closePath();
1089
-
1090
- // 尾巴,
1091
- path.moveTo(0, -(CURRENT_STATION_WIDTH$.value / 10) * 2);
1092
- path.lineTo(0, -(CURRENT_STATION_WIDTH$.value / 10) * 2 - LINE_WIDTH * 2);
1093
- path.lineTo(0, -(CURRENT_STATION_WIDTH$.value / 10) * 2);
1094
- path.closePath();
1095
-
1096
- imageUI.data = path;
1097
- imageUI.offsetY = -(-CURRENT_STATION_HEIGHT$.value / 2 + (CURRENT_STATION_WIDTH$.value / 10) * 2 + LINE_WIDTH * 2);
1098
- }
1099
-
1100
- return imageUI;
1101
- }
1102
-
1103
- /**
1104
- * 绘制站点:绘制站点编号.
1105
- *
1106
- * @param x 站点节点的横坐标.
1107
- * @param y 站点节点的纵坐标.
1108
- * @param station 站点.
1109
- */
1110
- function drawStation_DrawTextUI(x: number, y: number, station: MapStationVO): Q.LabelUI | null {
1111
- if (!kgCircularShuttleMonitor.store.getGraph) {
1112
- return null;
1113
- }
1114
-
1115
- const labelUI = new Q.LabelUI(station.conveyorNo);
1116
- labelUI.code = NODE_KEY.STATION_UI_TEXT;
1117
- labelUI.fontSize = CURRENT_STATION_WIDTH$.value / 4.5;
1118
- labelUI.fontStyle = 'bold';
1119
- labelUI.alignPosition = Q.Position.CENTER_MIDDLE;
1120
- labelUI.borderRadius = 1;
1121
- labelUI.showPointer = false;
1122
- labelUI.color = '#000000';
1123
- labelUI.offsetX = 0;
1124
-
1125
- labelUI.syncSelection = false;
1126
-
1127
- // 箭头向上,
1128
- if ((station.direction === 0 && CURRENT_STATION_POSITION$.value === 'BOTTOM') || (station.direction === 1 && CURRENT_STATION_POSITION$.value === 'TOP')) {
1129
- labelUI.position = Q.Position.CENTER_BOTTOM;
1130
- labelUI.anchorPosition = Q.Position.CENTER_BOTTOM;
1131
- labelUI.offsetY = -(CURRENT_STATION_WIDTH$.value / 10) + LINE_WIDTH / 2;
1132
- }
1133
- // 箭头向下,
1134
- else {
1135
- labelUI.position = Q.Position.CENTER_TOP;
1136
- labelUI.anchorPosition = Q.Position.CENTER_TOP;
1137
- labelUI.offsetY = CURRENT_STATION_WIDTH$.value / 10 + LINE_WIDTH / 2;
1138
- }
1139
-
1140
- return labelUI;
1141
- }
1142
-
1143
- /**
1144
- * 绘制站点:获取节点图形.
1145
- *
1146
- * @param x 横坐标.
1147
- * @param y 纵坐标.
1148
- * @param station 站点.
1149
- */
1150
- function drawStation_GetImage(x: number, y: number, station: MapStationVO): any {
1151
- const path = new Q.Path();
1152
-
1153
- // 外矩形,
1154
- path.moveTo(0 + LINE_WIDTH / 2, 0 + LINE_WIDTH / 2);
1155
- path.lineTo(CURRENT_STATION_WIDTH$.value - LINE_WIDTH / 2, 0 + LINE_WIDTH / 2);
1156
- path.lineTo(CURRENT_STATION_WIDTH$.value - LINE_WIDTH / 2, CURRENT_STATION_HEIGHT$.value - LINE_WIDTH / 2);
1157
- path.lineTo(0 + LINE_WIDTH / 2, CURRENT_STATION_HEIGHT$.value - LINE_WIDTH / 2);
1158
- path.lineTo(0 + LINE_WIDTH / 2, 0 + LINE_WIDTH / 2);
1159
- path.closePath();
1160
-
1161
- return path;
1162
- }
1163
-
1164
- /**
1165
- * 绘制小车列表.
1166
- */
1167
- function drawRgvList(canvasStatusData: StatusDTO | null) {
1168
- if (!kgCircularShuttleMonitor.store.getGraph) {
1169
- return;
1170
- }
1171
-
1172
- if (!canvasStatusData) {
1173
- return;
1174
- }
1175
-
1176
- // 地图尚未绘制完成, 不能绘制小车,
1177
- if (PATH_LENGTH$.value <= 0 || PATH_WIDTH$.value <= 0 || PATH_HEIGHT$.value <= 0 || PATH_LINE_WIDTH$.value <= 0) {
1178
- return;
1179
- }
1180
-
1181
- // 移除不存在的小车节点,
1182
- const deleteRgvNodeList = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter((i) => i.properties?.key?.startsWith(NODE_KEY.RGV) && !canvasStatusData.rgvState?.find((j) => j.rgvNo === i.properties?.data?.rgvNo)) ?? [];
1183
- for (let node of deleteRgvNodeList) {
1184
- kgCircularShuttleMonitor.store.getGraph!.removeElement(node);
1185
- }
1186
-
1187
- // 移除不存在的小车路线节点,
1188
- const deleteRgvPathNodeList =
1189
- kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter(
1190
- (i) =>
1191
- (i.properties?.key?.startsWith(NODE_KEY.RGV__PATH) || i.properties?.key?.startsWith(NODE_KEY.RGV__PATH__LINE) || i.properties?.key?.startsWith(NODE_KEY.RGV__PATH__RGV)) &&
1192
- !canvasStatusData.rgvState?.find((j) => j.rgvNo === i.properties?.data?.rgvNo),
1193
- ) ?? [];
1194
- for (let node of deleteRgvPathNodeList) {
1195
- kgCircularShuttleMonitor.store.getGraph!.removeElement(node);
1196
- }
1197
-
1198
- // 移除离线小车节点,
1199
- for (let rgv of canvasStatusData.rgvState ?? []) {
1200
- if (rgv.state === 0) {
1201
- let node = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV) && i.properties.data?.rgvNo === rgv.rgvNo) as Q.Node;
1202
- if (node) {
1203
- kgCircularShuttleMonitor.store.getGraph!.removeElement(node);
1204
- }
1205
- }
1206
- }
1207
-
1208
- (canvasStatusData.rgvState ?? [])
1209
- .filter((i) => i.state !== 0)
1210
- .forEach((rgv, index) => {
1211
- drawRgv(canvasStatusData, index, rgv);
1212
- });
1213
- }
1214
-
1215
- /**
1216
- * 绘制小车.
1217
- *
1218
- * @param canvasStatusData 状态数据.
1219
- * @param index 序号.
1220
- * @param rgv 小车.
1221
- */
1222
- function drawRgv(canvasStatusData: StatusDTO, index: number, rgv: StatusRgvVO) {
1223
- if (!kgCircularShuttleMonitor.store.getGraph) {
1224
- return;
1225
- }
1226
-
1227
- CURRENT_RGV_WIDTH$.value = rgv.length ?? 0;
1228
- CURRENT_RGV_HEIGHT$.value = rgv.width ?? 0;
1229
-
1230
- if (CURRENT_RGV_WIDTH$.value <= 0 || CURRENT_RGV_HEIGHT$.value <= 0) {
1231
- return;
1232
- }
1233
-
1234
- // 当前小车在轨道上的半径,
1235
- const rgvRadius = (() => {
1236
- // 显示小车路线,
1237
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathVisible) {
1238
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
1239
- return PATH_INNER_RADIUS$.value + LINE_WIDTH / 2 + kgCircularShuttleMonitor.store.$Canvas$Setting$getRgvMarginY * (index + 1 + 1) + (rgv.width / 2) * ((index + 1) * 2 + 1);
1240
- } else {
1241
- return PATH_INNER_RADIUS$.value + LINE_WIDTH / 2 + kgCircularShuttleMonitor.store.$Canvas$Setting$getRgvMarginY * (0 + 1) + (rgv.width / 2) * (0 * 2 + 1);
1242
- }
1243
- }
1244
- // 隐藏小车路线,
1245
- else {
1246
- return PATH_INNER_RADIUS$.value + LINE_WIDTH / 2 + kgCircularShuttleMonitor.store.$Canvas$Setting$getRgvMarginY * (0 + 1) + (rgv.width / 2) * (0 * 2 + 1);
1247
- }
1248
- })();
1249
-
1250
- // 当前小车路线在轨道上的半径,
1251
- const rgvPathRadius = (() => {
1252
- // 显示小车路线,
1253
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathVisible) {
1254
- return PATH_INNER_RADIUS$.value + LINE_WIDTH / 2 + kgCircularShuttleMonitor.store.$Canvas$Setting$getRgvMarginY * (index + 1 + 1) + (rgv.width / 2) * ((index + 1) * 2 + 1);
1255
- }
1256
- // 隐藏小车路线,
1257
- else {
1258
- return PATH_INNER_RADIUS$.value + LINE_WIDTH / 2 + kgCircularShuttleMonitor.store.$Canvas$Setting$getRgvMarginY * (0 + 1) + (rgv.width / 2) * (0 * 2 + 1);
1259
- }
1260
- })();
1261
-
1262
- drawRgv_GetCurrentPosition(rgv);
1263
-
1264
- const x = drawRgv_GetX(rgv.position, rgvRadius);
1265
- const y = drawRgv_GetY(rgv.position, rgvRadius);
1266
- const rotate = drawRgv_GetRotate(rgv.position);
1267
-
1268
- let rgvNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV) && i.properties.data?.rgvNo === rgv.rgvNo) as Q.Node;
1269
-
1270
- // 小车节点已经存在, 直接更新状态,
1271
- if (rgvNode) {
1272
- rgvNode.x = x;
1273
- rgvNode.y = y;
1274
- rgvNode.rotate = rotate;
1275
- rgvNode.putStyles({
1276
- [Q.Styles.SHAPE_STROKE_STYLE]: drawRgv_GetColorByState(rgv.state),
1277
- });
1278
- rgvNode.properties.data = rgv;
1279
-
1280
- getNodeUiByKey<Q.LabelUI>(rgvNode, NODE_KEY.RGV__UI__TEXT).ui.color = drawRgv_GetTextColorByState(rgv.state);
1281
- getNodeUiByKey<Q.ImageUI>(rgvNode, NODE_KEY.RGV__UI__CONTAINER).ui.fillColor = rgv.loadState === 1 ? drawRgv_GetColorByState(rgv.state) : '#ffffff';
1282
- getNodeUiByKey<Q.ImageUI>(rgvNode, NODE_KEY.RGV__UI__TEXT_BACKGROUND).ui.fillColor = drawRgv_GetColorByState(rgv.state);
1283
- }
1284
- // 小车节点尚不存在, 重新绘制,
1285
- else {
1286
- rgvNode = kgCircularShuttleMonitor.store.getGraph!.createNode(null, x, y);
1287
- rgvNode.size = new Q.Size(CURRENT_RGV_WIDTH$.value, CURRENT_RGV_HEIGHT$.value);
1288
- rgvNode.image = drawRgv_GetImage(x, y, rgv);
1289
- rgvNode.zIndex = 3;
1290
- rgvNode.movable = false;
1291
- rgvNode.selectable = false;
1292
- rgvNode.rotate = rotate;
1293
- rgvNode.putStyles({
1294
- [Q.Styles.SHAPE_FILL_COLOR]: '#ffffff',
1295
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
1296
- [Q.Styles.SHAPE_STROKE_STYLE]: drawRgv_GetColorByState(rgv.state),
1297
- });
1298
- rgvNode.properties = {
1299
- data: rgv,
1300
- isEnableTooltip: true,
1301
- key: `${NODE_KEY.RGV}${rgv.rgvNo}`,
1302
- };
1303
-
1304
- drawRgv_DrawTextBackgroundUI(rgv, rgvNode);
1305
- drawRgv_DrawTextUI(rgv, rgvNode);
1306
- drawRgv_DrawContainerUI(rgv, rgvNode);
1307
- drawRgv_DrawSelectUI(rgv, rgvNode);
1308
- }
1309
-
1310
- drawRgv_DrawPath(canvasStatusData, index, rgv, rgvNode, rgvPathRadius);
1311
- drawRgv_DrawPath_DrawLine(canvasStatusData, index, rgv, rgvNode, rgvPathRadius);
1312
- drawRgv_DrawPath_DrawRgv(canvasStatusData, index, rgv, rgvNode, rgvPathRadius);
1313
- }
1314
-
1315
- /**
1316
- * <p>绘制小车:计算小车位置.</p>
1317
- * <p>当前小车在轨道的上边还是下边还是左边还是右边.</p>
1318
- */
1319
- function drawRgv_GetCurrentPosition(rgv: StatusRgvVO): void {
1320
- CURRENT_RGV_POSITION$.value = (() => {
1321
- // 顺时针,
1322
- if (PATH_DIRECTION$.value === 0) {
1323
- // 起点在下,
1324
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1325
- if (rgv.position <= BOTTOM_LEFT_COORDINATE$.value! || rgv.position >= BOTTOM_RIGHT_COORDINATE$.value!) {
1326
- return 'BOTTOM';
1327
- } else if (rgv.position >= TOP_LEFT_COORDINATE$.value && rgv.position <= TOP_RIGHT_COORDINATE$.value) {
1328
- return 'TOP';
1329
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= TOP_LEFT_COORDINATE$.value) {
1330
- return 'LEFT';
1331
- } else {
1332
- return 'RIGHT';
1333
- }
1334
- }
1335
- // 起点在上,
1336
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1337
- if (rgv.position <= TOP_RIGHT_COORDINATE$.value! || rgv.position >= TOP_LEFT_COORDINATE$.value!) {
1338
- return 'TOP';
1339
- } else if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value && rgv.position <= BOTTOM_LEFT_COORDINATE$.value) {
1340
- return 'BOTTOM';
1341
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= TOP_LEFT_COORDINATE$.value) {
1342
- return 'LEFT';
1343
- } else {
1344
- return 'RIGHT';
1345
- }
1346
- }
1347
- // 起点在左,
1348
- else if (SRC_POSITION$.value === 'LEFT') {
1349
- if (rgv.position >= TOP_LEFT_COORDINATE$.value! && rgv.position <= TOP_RIGHT_COORDINATE$.value!) {
1350
- return 'TOP';
1351
- } else if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value && rgv.position <= BOTTOM_LEFT_COORDINATE$.value) {
1352
- return 'BOTTOM';
1353
- } else if (rgv.position >= TOP_RIGHT_COORDINATE$.value && rgv.position <= BOTTOM_RIGHT_COORDINATE$.value) {
1354
- return 'RIGHT';
1355
- } else {
1356
- return 'LEFT';
1357
- }
1358
- }
1359
- // 起点在右,
1360
- else {
1361
- if (rgv.position >= TOP_LEFT_COORDINATE$.value! && rgv.position <= TOP_RIGHT_COORDINATE$.value!) {
1362
- return 'TOP';
1363
- } else if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value && rgv.position <= BOTTOM_LEFT_COORDINATE$.value) {
1364
- return 'BOTTOM';
1365
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= TOP_LEFT_COORDINATE$.value) {
1366
- return 'LEFT';
1367
- } else {
1368
- return 'RIGHT';
1369
- }
1370
- }
1371
- }
1372
- // 逆时针,
1373
- else {
1374
- // 起点在下,
1375
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1376
- if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value! && rgv.position <= TOP_RIGHT_COORDINATE$.value!) {
1377
- return 'RIGHT';
1378
- } else if (rgv.position >= TOP_RIGHT_COORDINATE$.value && rgv.position <= TOP_LEFT_COORDINATE$.value) {
1379
- return 'TOP';
1380
- } else if (rgv.position >= TOP_LEFT_COORDINATE$.value && rgv.position <= BOTTOM_LEFT_COORDINATE$.value) {
1381
- return 'LEFT';
1382
- } else {
1383
- return 'BOTTOM';
1384
- }
1385
- }
1386
- // 起点在上,
1387
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1388
- if (rgv.position >= TOP_LEFT_COORDINATE$.value! && rgv.position <= BOTTOM_LEFT_COORDINATE$.value!) {
1389
- return 'LEFT';
1390
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= BOTTOM_RIGHT_COORDINATE$.value) {
1391
- return 'BOTTOM';
1392
- } else if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value && rgv.position <= TOP_RIGHT_COORDINATE$.value) {
1393
- return 'RIGHT';
1394
- } else {
1395
- return 'TOP';
1396
- }
1397
- }
1398
- // 起点在左,
1399
- else if (SRC_POSITION$.value === 'LEFT') {
1400
- if (rgv.position >= TOP_RIGHT_COORDINATE$.value! && rgv.position <= TOP_LEFT_COORDINATE$.value!) {
1401
- return 'TOP';
1402
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= BOTTOM_RIGHT_COORDINATE$.value) {
1403
- return 'BOTTOM';
1404
- } else if (rgv.position >= BOTTOM_RIGHT_COORDINATE$.value && rgv.position <= TOP_RIGHT_COORDINATE$.value) {
1405
- return 'RIGHT';
1406
- } else {
1407
- return 'LEFT';
1408
- }
1409
- }
1410
- // 起点在右,
1411
- else {
1412
- if (rgv.position >= TOP_RIGHT_COORDINATE$.value! && rgv.position <= TOP_LEFT_COORDINATE$.value!) {
1413
- return 'TOP';
1414
- } else if (rgv.position >= BOTTOM_LEFT_COORDINATE$.value && rgv.position <= BOTTOM_RIGHT_COORDINATE$.value) {
1415
- return 'BOTTOM';
1416
- } else if (rgv.position >= TOP_LEFT_COORDINATE$.value && rgv.position <= BOTTOM_LEFT_COORDINATE$.value) {
1417
- return 'LEFT';
1418
- } else {
1419
- return 'RIGHT';
1420
- }
1421
- }
1422
- }
1423
- })();
1424
- }
1425
-
1426
- /**
1427
- * 绘制小车:计算横坐标.
1428
- *
1429
- * @param coordinate 刻度.
1430
- * @param radius 轨道半径.
1431
- */
1432
- function drawRgv_GetX(coordinate: number, radius: number): number {
1433
- // 顺时针,
1434
- if (PATH_DIRECTION$.value === 0) {
1435
- // 起点在下,
1436
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1437
- // 小车在下,
1438
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1439
- if (SRC_POSITION$.value === 'BOTTOM_LEFT') {
1440
- if (coordinate >= SRC_COORDINATE$.value && coordinate <= BOTTOM_LEFT_COORDINATE$.value) {
1441
- return -(coordinate - SRC_COORDINATE$.value + (DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value));
1442
- } else if (coordinate >= BOTTOM_CENTER_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1443
- return -(coordinate - BOTTOM_CENTER_COORDINATE$.value);
1444
- } else {
1445
- return BOTTOM_CENTER_COORDINATE$.value - coordinate;
1446
- }
1447
- }
1448
-
1449
- if (SRC_POSITION$.value === 'BOTTOM_RIGHT') {
1450
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value && coordinate <= BOTTOM_LEFT_COORDINATE$.value) {
1451
- return -(coordinate - BOTTOM_CENTER_COORDINATE$.value);
1452
- } else if (coordinate >= SRC_COORDINATE$.value && coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
1453
- return BOTTOM_CENTER_COORDINATE$.value - coordinate;
1454
- } else {
1455
- return BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value + DST_COORDINATE$.value - coordinate;
1456
- }
1457
- }
1458
-
1459
- if (BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1460
- if (coordinate >= SRC_COORDINATE$.value) {
1461
- return -(coordinate - SRC_COORDINATE$.value);
1462
- } else {
1463
- return DST_COORDINATE$.value - coordinate;
1464
- }
1465
- }
1466
-
1467
- return 0;
1468
- }
1469
- // 小车在上,
1470
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1471
- if (coordinate <= TOP_CENTER_COORDINATE$.value) {
1472
- return -(TOP_CENTER_COORDINATE$.value - coordinate);
1473
- } else {
1474
- return coordinate - TOP_CENTER_COORDINATE$.value;
1475
- }
1476
- }
1477
- // 小车在左,
1478
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1479
- const radian = drawRgv_GetRadianByArcLength(coordinate - BOTTOM_LEFT_COORDINATE$.value);
1480
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1481
- }
1482
- // 小车在右,
1483
- else {
1484
- const radian = Math.PI + drawRgv_GetRadianByArcLength(coordinate - TOP_RIGHT_COORDINATE$.value);
1485
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1486
- }
1487
- }
1488
- // 起点在上,
1489
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1490
- // 小车在下,
1491
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1492
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
1493
- return -(coordinate - BOTTOM_CENTER_COORDINATE$.value);
1494
- } else {
1495
- return BOTTOM_CENTER_COORDINATE$.value - coordinate;
1496
- }
1497
- }
1498
- // 小车在上,
1499
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1500
- if (SRC_POSITION$.value === 'TOP_LEFT') {
1501
- if (coordinate >= TOP_LEFT_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1502
- return -(DST_COORDINATE$.value - coordinate + TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
1503
- } else if (coordinate >= SRC_COORDINATE$.value && coordinate <= TOP_CENTER_COORDINATE$.value) {
1504
- return -(TOP_CENTER_COORDINATE$.value - coordinate);
1505
- } else {
1506
- return coordinate - TOP_CENTER_COORDINATE$.value;
1507
- }
1508
- }
1509
-
1510
- if (SRC_POSITION$.value === 'TOP_RIGHT') {
1511
- if (coordinate >= TOP_LEFT_COORDINATE$.value && coordinate <= TOP_CENTER_COORDINATE$.value) {
1512
- return -(TOP_CENTER_COORDINATE$.value - coordinate);
1513
- } else if (coordinate >= TOP_CENTER_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1514
- return coordinate - TOP_CENTER_COORDINATE$.value;
1515
- } else {
1516
- return DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value + coordinate - SRC_COORDINATE$.value;
1517
- }
1518
- }
1519
-
1520
- if (TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1521
- if (coordinate >= SRC_COORDINATE$.value) {
1522
- return coordinate - SRC_COORDINATE$.value;
1523
- } else {
1524
- return -(DST_COORDINATE$.value - coordinate);
1525
- }
1526
- }
1527
-
1528
- return 0;
1529
- }
1530
- // 小车在左,
1531
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1532
- const radian = drawRgv_GetRadianByArcLength(coordinate - BOTTOM_LEFT_COORDINATE$.value);
1533
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1534
- }
1535
- // 小车在右,
1536
- else {
1537
- const radian = Math.PI + drawRgv_GetRadianByArcLength(coordinate - TOP_RIGHT_COORDINATE$.value);
1538
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1539
- }
1540
- }
1541
- // 起点在左,
1542
- else if (SRC_POSITION$.value === 'LEFT') {
1543
- // 小车在下,
1544
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1545
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
1546
- return -(coordinate - BOTTOM_CENTER_COORDINATE$.value);
1547
- } else {
1548
- return BOTTOM_CENTER_COORDINATE$.value - coordinate;
1549
- }
1550
- }
1551
- // 小车在上,
1552
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1553
- if (coordinate <= TOP_CENTER_COORDINATE$.value) {
1554
- return -(TOP_CENTER_COORDINATE$.value - coordinate);
1555
- } else {
1556
- return coordinate - TOP_CENTER_COORDINATE$.value;
1557
- }
1558
- }
1559
- // 小车在左,
1560
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1561
- const radian = drawRgv_GetRadianByArcLength((coordinate < BOTTOM_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_LEFT_COORDINATE$.value);
1562
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1563
- }
1564
- // 小车在右,
1565
- else {
1566
- const radian = Math.PI + drawRgv_GetRadianByArcLength(coordinate - TOP_RIGHT_COORDINATE$.value);
1567
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1568
- }
1569
- }
1570
- // 起点在右,
1571
- else {
1572
- // 小车在下,
1573
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1574
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
1575
- return -(coordinate - BOTTOM_CENTER_COORDINATE$.value);
1576
- } else {
1577
- return BOTTOM_CENTER_COORDINATE$.value - coordinate;
1578
- }
1579
- }
1580
- // 小车在上,
1581
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1582
- if (coordinate <= TOP_CENTER_COORDINATE$.value) {
1583
- return -(TOP_CENTER_COORDINATE$.value - coordinate);
1584
- } else {
1585
- return coordinate - TOP_CENTER_COORDINATE$.value;
1586
- }
1587
- }
1588
- // 小车在左,
1589
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1590
- const radian = drawRgv_GetRadianByArcLength(coordinate - BOTTOM_LEFT_COORDINATE$.value);
1591
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1592
- }
1593
- // 小车在右,
1594
- else {
1595
- const radian = Math.PI + drawRgv_GetRadianByArcLength((coordinate < TOP_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_RIGHT_COORDINATE$.value);
1596
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1597
- }
1598
- }
1599
- }
1600
- // 逆时针,
1601
- else {
1602
- // 起点在下,
1603
- if (SRC_POSITION$.value === 'BOTTOM_LEFT' || SRC_POSITION$.value === 'BOTTOM_RIGHT' || BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1604
- // 小车在下,
1605
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1606
- if (SRC_POSITION$.value === 'BOTTOM_LEFT') {
1607
- if (coordinate >= BOTTOM_LEFT_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1608
- return -(DST_COORDINATE$.value - coordinate + BOTTOM_CENTER_COORDINATE$.value - SRC_COORDINATE$.value);
1609
- } else if (coordinate >= SRC_COORDINATE$.value && coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
1610
- return -(BOTTOM_CENTER_COORDINATE$.value - coordinate);
1611
- } else {
1612
- return coordinate - BOTTOM_CENTER_COORDINATE$.value;
1613
- }
1614
- }
1615
-
1616
- if (SRC_POSITION$.value === 'BOTTOM_RIGHT') {
1617
- if (coordinate >= BOTTOM_LEFT_COORDINATE$.value && coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
1618
- return -(BOTTOM_CENTER_COORDINATE$.value - coordinate);
1619
- } else if (coordinate >= BOTTOM_CENTER_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1620
- return coordinate - BOTTOM_CENTER_COORDINATE$.value;
1621
- } else {
1622
- return DST_COORDINATE$.value - BOTTOM_CENTER_COORDINATE$.value + coordinate - SRC_COORDINATE$.value;
1623
- }
1624
- }
1625
-
1626
- if (BOTTOM_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || BOTTOM_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1627
- if (coordinate <= DST_COORDINATE$.value) {
1628
- return -(SRC_COORDINATE$.value - coordinate);
1629
- } else {
1630
- return coordinate - SRC_COORDINATE$.value;
1631
- }
1632
- }
1633
-
1634
- return 0;
1635
- }
1636
- // 小车在上,
1637
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1638
- if (coordinate >= TOP_CENTER_COORDINATE$.value) {
1639
- return -(coordinate - TOP_CENTER_COORDINATE$.value);
1640
- } else {
1641
- return TOP_CENTER_COORDINATE$.value - coordinate;
1642
- }
1643
- }
1644
- // 小车在左,
1645
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1646
- const radian = drawRgv_GetRadianByArcLength(BOTTOM_LEFT_COORDINATE$.value - coordinate);
1647
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1648
- }
1649
- // 小车在右,
1650
- else {
1651
- const radian = Math.PI + drawRgv_GetRadianByArcLength(TOP_RIGHT_COORDINATE$.value - coordinate);
1652
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1653
- }
1654
- }
1655
- // 起点在上,
1656
- else if (SRC_POSITION$.value === 'TOP_LEFT' || SRC_POSITION$.value === 'TOP_RIGHT' || TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1657
- // 小车在下,
1658
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1659
- if (coordinate <= BOTTOM_CENTER_COORDINATE$.value) {
1660
- return -(BOTTOM_CENTER_COORDINATE$.value - coordinate);
1661
- } else {
1662
- return coordinate - BOTTOM_CENTER_COORDINATE$.value;
1663
- }
1664
- }
1665
- // 小车在上,
1666
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1667
- if (SRC_POSITION$.value === 'TOP_LEFT') {
1668
- if (coordinate >= SRC_COORDINATE$.value && coordinate <= TOP_LEFT_COORDINATE$.value) {
1669
- return -(coordinate - SRC_COORDINATE$.value + DST_COORDINATE$.value - TOP_CENTER_COORDINATE$.value);
1670
- } else if (coordinate >= TOP_CENTER_COORDINATE$.value && coordinate <= DST_COORDINATE$.value) {
1671
- return -(coordinate - TOP_CENTER_COORDINATE$.value);
1672
- } else {
1673
- return TOP_CENTER_COORDINATE$.value - coordinate;
1674
- }
1675
- }
1676
-
1677
- if (SRC_POSITION$.value === 'TOP_RIGHT') {
1678
- if (coordinate >= TOP_CENTER_COORDINATE$.value && coordinate <= TOP_LEFT_COORDINATE$.value) {
1679
- return -(coordinate - TOP_CENTER_COORDINATE$.value);
1680
- } else if (coordinate >= SRC_COORDINATE$.value && coordinate <= TOP_CENTER_COORDINATE$.value) {
1681
- return TOP_CENTER_COORDINATE$.value - coordinate;
1682
- } else {
1683
- return TOP_CENTER_COORDINATE$.value - SRC_COORDINATE$.value + DST_COORDINATE$.value - coordinate;
1684
- }
1685
- }
1686
-
1687
- if (TOP_CENTER_COORDINATE$.value === SRC_COORDINATE$.value || TOP_CENTER_COORDINATE$.value === DST_COORDINATE$.value) {
1688
- if (coordinate >= SRC_COORDINATE$.value) {
1689
- return -(coordinate - SRC_COORDINATE$.value);
1690
- } else {
1691
- return DST_COORDINATE$.value - coordinate;
1692
- }
1693
- }
1694
-
1695
- return 0;
1696
- }
1697
- // 小车在左,
1698
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1699
- const radian = drawRgv_GetRadianByArcLength(BOTTOM_LEFT_COORDINATE$.value - coordinate);
1700
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1701
- }
1702
- // 小车在右,
1703
- else {
1704
- const radian = Math.PI + drawRgv_GetRadianByArcLength(TOP_RIGHT_COORDINATE$.value - coordinate);
1705
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1706
- }
1707
- }
1708
- // 起点在左,
1709
- else if (SRC_POSITION$.value === 'LEFT') {
1710
- // 小车在下,
1711
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1712
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
1713
- return coordinate - BOTTOM_CENTER_COORDINATE$.value;
1714
- } else {
1715
- return -(BOTTOM_CENTER_COORDINATE$.value - coordinate);
1716
- }
1717
- }
1718
- // 小车在上,
1719
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1720
- if (coordinate <= TOP_CENTER_COORDINATE$.value) {
1721
- return TOP_CENTER_COORDINATE$.value - coordinate;
1722
- } else {
1723
- return -(coordinate - TOP_CENTER_COORDINATE$.value);
1724
- }
1725
- }
1726
- // 小车在左,
1727
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1728
- const radian = drawRgv_GetRadianByArcLength(
1729
- BOTTOM_LEFT_COORDINATE$.value -
1730
- SRC_COORDINATE$.value +
1731
- DST_COORDINATE$.value -
1732
- TOP_LEFT_COORDINATE$.value -
1733
- ((coordinate < TOP_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_LEFT_COORDINATE$.value),
1734
- );
1735
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1736
- }
1737
- // 小车在右,
1738
- else {
1739
- const radian = Math.PI + drawRgv_GetRadianByArcLength(TOP_RIGHT_COORDINATE$.value - coordinate);
1740
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1741
- }
1742
- }
1743
- // 起点在右,
1744
- else {
1745
- // 小车在下,
1746
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1747
- if (coordinate >= BOTTOM_CENTER_COORDINATE$.value) {
1748
- return coordinate - BOTTOM_CENTER_COORDINATE$.value;
1749
- } else {
1750
- return -(BOTTOM_CENTER_COORDINATE$.value - coordinate);
1751
- }
1752
- }
1753
- // 小车在上,
1754
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1755
- if (coordinate <= TOP_CENTER_COORDINATE$.value) {
1756
- return TOP_CENTER_COORDINATE$.value - coordinate;
1757
- } else {
1758
- return -(coordinate - TOP_CENTER_COORDINATE$.value);
1759
- }
1760
- }
1761
- // 小车在左,
1762
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1763
- const radian = drawRgv_GetRadianByArcLength(BOTTOM_LEFT_COORDINATE$.value - coordinate);
1764
- return -radius * Math.sin(radian) - PATH_WIDTH$.value / 2;
1765
- }
1766
- // 小车在右,
1767
- else {
1768
- const radian =
1769
- Math.PI +
1770
- drawRgv_GetRadianByArcLength(
1771
- TOP_RIGHT_COORDINATE$.value -
1772
- SRC_COORDINATE$.value +
1773
- DST_COORDINATE$.value -
1774
- BOTTOM_RIGHT_COORDINATE$.value -
1775
- ((coordinate < BOTTOM_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_RIGHT_COORDINATE$.value),
1776
- );
1777
- return -radius * Math.sin(radian) + PATH_WIDTH$.value / 2;
1778
- }
1779
- }
1780
- }
1781
- }
1782
-
1783
- /**
1784
- * 绘制小车:计算纵坐标.
1785
- *
1786
- * @param coordinate 刻度.
1787
- * @param radius 轨道半径.
1788
- */
1789
- function drawRgv_GetY(coordinate: number, radius: number): number {
1790
- // 顺时针,
1791
- if (PATH_DIRECTION$.value === 0) {
1792
- // 小车在下,
1793
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1794
- return radius;
1795
- }
1796
- // 小车在上,
1797
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1798
- return -radius;
1799
- }
1800
- // 小车在左,
1801
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1802
- // 起点在左,
1803
- if (SRC_POSITION$.value === 'LEFT') {
1804
- const radian = drawRgv_GetRadianByArcLength((coordinate < BOTTOM_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_LEFT_COORDINATE$.value);
1805
- return radius * Math.cos(radian);
1806
- } else {
1807
- const radian = drawRgv_GetRadianByArcLength(coordinate - BOTTOM_LEFT_COORDINATE$.value);
1808
- return radius * Math.cos(radian);
1809
- }
1810
- }
1811
- // 小车在右,
1812
- else {
1813
- // 起点在右,
1814
- if (SRC_POSITION$.value === 'RIGHT') {
1815
- const radian = Math.PI + drawRgv_GetRadianByArcLength((coordinate < TOP_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_RIGHT_COORDINATE$.value);
1816
- return radius * Math.cos(radian);
1817
- }
1818
- // 起上下左,
1819
- else {
1820
- const radian = Math.PI + drawRgv_GetRadianByArcLength(coordinate - TOP_RIGHT_COORDINATE$.value);
1821
- return radius * Math.cos(radian);
1822
- }
1823
- }
1824
- }
1825
- // 逆时针,
1826
- else {
1827
- // 小车在上,
1828
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1829
- return radius;
1830
- }
1831
- // 小车在下,
1832
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1833
- return -radius;
1834
- }
1835
- // 小车在左,
1836
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1837
- // 起点在左,
1838
- if (SRC_POSITION$.value === 'LEFT') {
1839
- const radian = drawRgv_GetRadianByArcLength(
1840
- BOTTOM_LEFT_COORDINATE$.value -
1841
- SRC_COORDINATE$.value +
1842
- DST_COORDINATE$.value -
1843
- TOP_LEFT_COORDINATE$.value -
1844
- ((coordinate < TOP_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_LEFT_COORDINATE$.value),
1845
- );
1846
- return radius * Math.cos(radian);
1847
- }
1848
- // 起点在右,
1849
- else {
1850
- const radian = drawRgv_GetRadianByArcLength(BOTTOM_LEFT_COORDINATE$.value - coordinate);
1851
- return radius * Math.cos(radian);
1852
- }
1853
- }
1854
- // 小车在右,
1855
- else {
1856
- // 起点在右,
1857
- if (SRC_POSITION$.value === 'RIGHT') {
1858
- const radian =
1859
- Math.PI +
1860
- drawRgv_GetRadianByArcLength(
1861
- TOP_RIGHT_COORDINATE$.value -
1862
- SRC_COORDINATE$.value +
1863
- DST_COORDINATE$.value -
1864
- BOTTOM_RIGHT_COORDINATE$.value -
1865
- ((coordinate < BOTTOM_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_RIGHT_COORDINATE$.value),
1866
- );
1867
- return radius * Math.cos(radian);
1868
- }
1869
- // 起点在左,
1870
- else {
1871
- const radian = Math.PI + drawRgv_GetRadianByArcLength(TOP_RIGHT_COORDINATE$.value - coordinate);
1872
- return radius * Math.cos(radian);
1873
- }
1874
- }
1875
- }
1876
- }
1877
-
1878
- /**
1879
- * 绘制小车:计算旋转弧度.
1880
- *
1881
- * @param coordinate 刻度.
1882
- */
1883
- function drawRgv_GetRotate(coordinate: number): number {
1884
- // 顺时针,
1885
- if (PATH_DIRECTION$.value === 0) {
1886
- // 小车在下,
1887
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1888
- return 0;
1889
- }
1890
- // 小车在上,
1891
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1892
- return Math.PI;
1893
- }
1894
- // 小车在左,
1895
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1896
- // 起点在左,
1897
- if (SRC_POSITION$.value === 'LEFT') {
1898
- return drawRgv_GetRadianByArcLength((coordinate < TOP_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_LEFT_COORDINATE$.value);
1899
- } else {
1900
- return drawRgv_GetRadianByArcLength(coordinate - BOTTOM_LEFT_COORDINATE$.value);
1901
- }
1902
- }
1903
- // 小车在右,
1904
- else {
1905
- // 起点在右,
1906
- if (SRC_POSITION$.value === 'RIGHT') {
1907
- return Math.PI + drawRgv_GetRadianByArcLength((coordinate < BOTTOM_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_RIGHT_COORDINATE$.value);
1908
- }
1909
- // 起上下左,
1910
- else {
1911
- return Math.PI + drawRgv_GetRadianByArcLength(coordinate - TOP_RIGHT_COORDINATE$.value);
1912
- }
1913
- }
1914
- }
1915
- // 逆时针,
1916
- else {
1917
- // 小车在下,
1918
- if (CURRENT_RGV_POSITION$.value === 'BOTTOM') {
1919
- return 0;
1920
- }
1921
- // 小车在上,
1922
- else if (CURRENT_RGV_POSITION$.value === 'TOP') {
1923
- return Math.PI;
1924
- }
1925
- // 小车在左,
1926
- else if (CURRENT_RGV_POSITION$.value === 'LEFT') {
1927
- // 起点在左,
1928
- if (SRC_POSITION$.value === 'LEFT') {
1929
- const radian = drawRgv_GetRadianByArcLength(
1930
- BOTTOM_LEFT_COORDINATE$.value -
1931
- SRC_COORDINATE$.value +
1932
- DST_COORDINATE$.value -
1933
- TOP_LEFT_COORDINATE$.value -
1934
- ((coordinate < TOP_LEFT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - TOP_LEFT_COORDINATE$.value),
1935
- );
1936
- return radian;
1937
- }
1938
- // 起点在右,
1939
- else {
1940
- const radian = drawRgv_GetRadianByArcLength(BOTTOM_LEFT_COORDINATE$.value - coordinate);
1941
- return radian;
1942
- }
1943
- }
1944
- // 小车在右,
1945
- else {
1946
- // 起点在右,
1947
- if (SRC_POSITION$.value === 'RIGHT') {
1948
- const radian =
1949
- Math.PI +
1950
- drawRgv_GetRadianByArcLength(
1951
- TOP_RIGHT_COORDINATE$.value -
1952
- SRC_COORDINATE$.value +
1953
- DST_COORDINATE$.value -
1954
- BOTTOM_RIGHT_COORDINATE$.value -
1955
- ((coordinate < BOTTOM_RIGHT_COORDINATE$.value ? coordinate + DST_COORDINATE$.value - SRC_COORDINATE$.value : coordinate) - BOTTOM_RIGHT_COORDINATE$.value),
1956
- );
1957
- return radian;
1958
- }
1959
- // 起上下左,
1960
- else {
1961
- const radian = Math.PI + drawRgv_GetRadianByArcLength(TOP_RIGHT_COORDINATE$.value - coordinate);
1962
- return radian;
1963
- }
1964
- }
1965
- }
1966
- }
1967
-
1968
- /**
1969
- * 绘制小车:绘制路线.
1970
- *
1971
- * @param canvasStatusData 状态数据.
1972
- * @param index 序号.
1973
- * @param rgv 小车.
1974
- * @param rgvNode 小车节点.
1975
- * @param rgvPathRadius 小车路线半径.
1976
- */
1977
- function drawRgv_DrawPath(canvasStatusData: StatusDTO, index: number, rgv: StatusRgvVO, rgvNode: Q.Node, rgvPathRadius: number) {
1978
- let rgvPathNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV__PATH) && i.properties.data?.rgvNo === rgv.rgvNo) as Q.ShapeNode;
1979
-
1980
- // 节点已经存在, 删除之后重新创建,
1981
- if (rgvPathNode) {
1982
- kgCircularShuttleMonitor.store.getGraph!.removeElement(rgvPathNode);
1983
- }
1984
-
1985
- // 隐藏小车路线,
1986
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathVisible) {
1987
- return;
1988
- }
1989
-
1990
- // 没有起始站点, 没有目的站点,
1991
- if (!rgv.sourceStation || !rgv.destinationStation) {
1992
- return;
1993
- }
1994
-
1995
- // 起始站点节点,
1996
- const srcStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.sourceStation) as Q.Node;
1997
- if (!srcStationNode) {
1998
- return;
1999
- }
2000
-
2001
- // 目的站点节点,
2002
- const dstStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.destinationStation) as Q.Node;
2003
- if (!dstStationNode) {
2004
- return;
2005
- }
2006
-
2007
- rgvPathNode = kgCircularShuttleMonitor.store.getGraph!.createShapeNode(undefined, undefined, 0, 0);
2008
- rgvPathNode.movable = false;
2009
- rgvPathNode.zIndex = 2;
2010
- rgvPathNode.selectable = false;
2011
- rgvPathNode.putStyles({
2012
- [Q.Styles.ARROW_FROM]: Q.Consts.SHAPE_CIRCLE,
2013
- [Q.Styles.ARROW_FROM_FILL_COLOR]: kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index),
2014
- [Q.Styles.ARROW_FROM_SIZE]: LINE_WIDTH * 5,
2015
- [Q.Styles.ARROW_TO]: Q.Consts.SHAPE_TRIANGLE,
2016
- [Q.Styles.ARROW_TO_FILL_COLOR]: kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index),
2017
- [Q.Styles.ARROW_TO_LINE_JOIN]: Q.Consts.LINE_JOIN_TYPE_MITER,
2018
- [Q.Styles.ARROW_TO_SIZE]: LINE_WIDTH * 5,
2019
- [Q.Styles.SHAPE_LINE_DASH]: [LINE_WIDTH * 8, LINE_WIDTH * 4, LINE_WIDTH * 4, LINE_WIDTH * 4],
2020
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
2021
- [Q.Styles.SHAPE_STROKE_STYLE]: kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index),
2022
- });
2023
- rgvPathNode.properties = {
2024
- data: rgv,
2025
- key: `${NODE_KEY.RGV__PATH}${rgv.rgvNo}`,
2026
- };
2027
-
2028
- // 当前是选中小车,
2029
- if (rgv.rgvNo === kgCircularShuttleMonitor.store.$Canvas$getCurrentRgvList[0]?.rgvNo) {
2030
- rgvPathNode.putStyles({
2031
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: selectBlinkDashOffset * LINE_WIDTH * 2,
2032
- });
2033
- }
2034
- // 当前非选中小车,
2035
- else {
2036
- rgvPathNode.putStyles({
2037
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: undefined,
2038
- });
2039
- }
2040
-
2041
- // 起始站点位置,
2042
- const SRC_STATION_POSITION: 'TOP' | 'BOTTOM' = srcStationNode.y < 0 ? 'TOP' : 'BOTTOM';
2043
- // 目的站点位置,
2044
- const DST_STATION_POSITION: 'TOP' | 'BOTTOM' = dstStationNode.y < 0 ? 'TOP' : 'BOTTOM';
2045
-
2046
- // 顺时针,
2047
- if (PATH_DIRECTION$.value === 0) {
2048
- // 起始站点在上,
2049
- if (SRC_STATION_POSITION === 'TOP') {
2050
- // 目的站点在上,
2051
- if (DST_STATION_POSITION === 'TOP') {
2052
- // 起始站点在后,
2053
- if (srcStationNode.x < dstStationNode.x) {
2054
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2055
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2056
- }
2057
- // 起始站点在前,
2058
- else {
2059
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2060
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, -rgvPathRadius);
2061
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2062
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, +rgvPathRadius, PATH_WIDTH$.value / 2, +rgvPathRadius, rgvPathRadius);
2063
- rgvPathNode.lineTo(-(PATH_WIDTH$.value / 2), +rgvPathRadius);
2064
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2065
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2), -rgvPathRadius, rgvPathRadius);
2066
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2067
- }
2068
- }
2069
- // 目的站点在下,
2070
- else {
2071
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2072
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, -rgvPathRadius);
2073
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2074
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, +rgvPathRadius, PATH_WIDTH$.value / 2, +rgvPathRadius, rgvPathRadius);
2075
- rgvPathNode.lineTo(dstStationNode.x, +rgvPathRadius);
2076
- }
2077
- }
2078
- // 起始站点在下,
2079
- else {
2080
- // 目的站点在上,
2081
- if (DST_STATION_POSITION === 'TOP') {
2082
- rgvPathNode.moveTo(srcStationNode.x, +rgvPathRadius);
2083
- rgvPathNode.lineTo(-(PATH_WIDTH$.value / 2), +rgvPathRadius);
2084
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), +rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2085
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2), -rgvPathRadius, rgvPathRadius);
2086
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2087
- }
2088
- // 目的站点在下,
2089
- else {
2090
- // 起始站点在后,
2091
- if (srcStationNode.x > dstStationNode.x) {
2092
- rgvPathNode.moveTo(srcStationNode.x, rgvPathRadius);
2093
- rgvPathNode.lineTo(dstStationNode.x, rgvPathRadius);
2094
- }
2095
- // 起始站点在前,
2096
- else {
2097
- rgvPathNode.moveTo(srcStationNode.x, rgvPathRadius);
2098
- rgvPathNode.lineTo(-(PATH_WIDTH$.value / 2), rgvPathRadius);
2099
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2100
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2), -rgvPathRadius, rgvPathRadius);
2101
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, -rgvPathRadius);
2102
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2103
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, rgvPathRadius, PATH_WIDTH$.value / 2, rgvPathRadius, rgvPathRadius);
2104
- rgvPathNode.lineTo(dstStationNode.x, rgvPathRadius);
2105
- }
2106
- }
2107
- }
2108
- }
2109
- // 逆时针,
2110
- else {
2111
- // 起始站点在上,
2112
- if (SRC_STATION_POSITION === 'TOP') {
2113
- // 目的站点在上,
2114
- if (DST_STATION_POSITION === 'TOP') {
2115
- // 起始站点在后,
2116
- if (srcStationNode.x > dstStationNode.x) {
2117
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2118
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2119
- }
2120
- // 起始站点在前,
2121
- else {
2122
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2123
- rgvPathNode.lineTo(-PATH_WIDTH$.value / 2, -rgvPathRadius);
2124
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2125
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), +rgvPathRadius, -(PATH_WIDTH$.value / 2), rgvPathRadius, rgvPathRadius);
2126
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, rgvPathRadius);
2127
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2128
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2, -rgvPathRadius, rgvPathRadius);
2129
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2130
- }
2131
- }
2132
- // 目的站点在下,
2133
- else {
2134
- rgvPathNode.moveTo(srcStationNode.x, -rgvPathRadius);
2135
- rgvPathNode.lineTo(-(PATH_WIDTH$.value / 2), -rgvPathRadius);
2136
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2137
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), +rgvPathRadius, -(PATH_WIDTH$.value / 2), +rgvPathRadius, rgvPathRadius);
2138
- rgvPathNode.lineTo(dstStationNode.x, +rgvPathRadius);
2139
- }
2140
- }
2141
- // 起始站点在下,
2142
- else {
2143
- // 目的站点在上,
2144
- if (DST_STATION_POSITION === 'TOP') {
2145
- rgvPathNode.moveTo(srcStationNode.x, +rgvPathRadius);
2146
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, +rgvPathRadius);
2147
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, +rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2148
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2, -rgvPathRadius, rgvPathRadius);
2149
- rgvPathNode.lineTo(dstStationNode.x, -rgvPathRadius);
2150
- }
2151
- // 目的站点在下,
2152
- else {
2153
- // 起始站点在后,
2154
- if (srcStationNode.x < dstStationNode.x) {
2155
- rgvPathNode.moveTo(srcStationNode.x, rgvPathRadius);
2156
- rgvPathNode.lineTo(dstStationNode.x, rgvPathRadius);
2157
- }
2158
- // 起始站点在前,
2159
- else {
2160
- rgvPathNode.moveTo(srcStationNode.x, rgvPathRadius);
2161
- rgvPathNode.lineTo(PATH_WIDTH$.value / 2, rgvPathRadius);
2162
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, rgvPathRadius, PATH_WIDTH$.value / 2 + rgvPathRadius, 0, rgvPathRadius);
2163
- rgvPathNode.arcTo(PATH_WIDTH$.value / 2 + rgvPathRadius, -rgvPathRadius, PATH_WIDTH$.value / 2, -rgvPathRadius, rgvPathRadius);
2164
- rgvPathNode.lineTo(-(PATH_WIDTH$.value / 2), -rgvPathRadius);
2165
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), -rgvPathRadius, -(PATH_WIDTH$.value / 2 + rgvPathRadius), 0, rgvPathRadius);
2166
- rgvPathNode.arcTo(-(PATH_WIDTH$.value / 2 + rgvPathRadius), rgvPathRadius, -(PATH_WIDTH$.value / 2), rgvPathRadius, rgvPathRadius);
2167
- rgvPathNode.lineTo(dstStationNode.x, rgvPathRadius);
2168
- }
2169
- }
2170
- }
2171
- }
2172
- }
2173
-
2174
- /**
2175
- * 绘制小车:绘制路线:绘制小车和路线的连线.
2176
- *
2177
- * @param canvasStatusData 状态数据.
2178
- * @param index 序号.
2179
- * @param rgv 小车.
2180
- * @param rgvNode 小车节点.
2181
- * @param rgvPathRadius 小车路线半径.
2182
- */
2183
- function drawRgv_DrawPath_DrawLine(canvasStatusData: StatusDTO, index: number, rgv: StatusRgvVO, rgvNode: Q.Node, rgvPathRadius: number) {
2184
- let rgvPathLineNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV__PATH__LINE) && i.properties.data?.rgvNo === rgv.rgvNo) as Q.ShapeNode;
2185
-
2186
- // 节点已经存在, 删除之后重新创建,
2187
- if (rgvPathLineNode) {
2188
- kgCircularShuttleMonitor.store.getGraph!.removeElement(rgvPathLineNode);
2189
- }
2190
-
2191
- // 隐藏小车路线,
2192
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathVisible) {
2193
- return;
2194
- }
2195
-
2196
- // 隐藏垂直连线,
2197
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathLineVisible) {
2198
- return;
2199
- }
2200
-
2201
- // 小车在路线上,
2202
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2203
- return;
2204
- }
2205
-
2206
- // 没有起始站点, 没有目的站点,
2207
- if (!rgv.sourceStation || !rgv.destinationStation) {
2208
- return;
2209
- }
2210
-
2211
- // 起始站点节点,
2212
- const srcStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.sourceStation) as Q.Node;
2213
- if (!srcStationNode) {
2214
- return;
2215
- }
2216
-
2217
- // 目的站点节点,
2218
- const dstStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.destinationStation) as Q.Node;
2219
- if (!dstStationNode) {
2220
- return;
2221
- }
2222
-
2223
- const rgvX = drawRgv_GetX(rgv.position, rgvPathRadius);
2224
- const rgvY = drawRgv_GetY(rgv.position, rgvPathRadius);
2225
-
2226
- rgvPathLineNode = kgCircularShuttleMonitor.store.getGraph!.createShapeNode(undefined, undefined, 0, 0);
2227
- rgvPathLineNode.movable = false;
2228
- rgvPathLineNode.zIndex = 2;
2229
- rgvPathLineNode.selectable = false;
2230
- rgvPathLineNode.putStyles({
2231
- [Q.Styles.SHAPE_LINE_DASH]: [LINE_WIDTH * 8, LINE_WIDTH * 4, LINE_WIDTH * 4, LINE_WIDTH * 4],
2232
- [Q.Styles.SHAPE_STROKE]: LINE_WIDTH,
2233
- [Q.Styles.SHAPE_STROKE_STYLE]: kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index),
2234
- });
2235
- rgvPathLineNode.properties = {
2236
- data: rgv,
2237
- key: `${NODE_KEY.RGV__PATH__LINE}${rgv.rgvNo}`,
2238
- };
2239
-
2240
- // 当前是选中小车,
2241
- if (rgv.rgvNo === kgCircularShuttleMonitor.store.$Canvas$getCurrentRgvList[0]?.rgvNo) {
2242
- rgvPathLineNode.putStyles({
2243
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: selectBlinkDashOffset * LINE_WIDTH * 2,
2244
- });
2245
- }
2246
- // 当前非选中小车,
2247
- else {
2248
- rgvPathLineNode.putStyles({
2249
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: undefined,
2250
- });
2251
- }
2252
-
2253
- rgvPathLineNode.moveTo(rgvNode.x, rgvNode.y);
2254
- rgvPathLineNode.lineTo(rgvX, rgvY);
2255
- }
2256
-
2257
- /**
2258
- * 绘制小车:绘制路线:绘制小车和路线的连线:绘制连线上的小车.
2259
- *
2260
- * @param canvasStatusData 状态数据.
2261
- * @param index 序号.
2262
- * @param rgv 小车.
2263
- * @param rgvNode 小车节点.
2264
- * @param rgvPathRadius 小车路线半径.
2265
- */
2266
- function drawRgv_DrawPath_DrawRgv(canvasStatusData: StatusDTO, index: number, rgv: StatusRgvVO, rgvNode: Q.Node, rgvPathRadius: number) {
2267
- let rgvPathRgvNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV__PATH__RGV) && i.properties.data?.rgvNo === rgv.rgvNo) as Q.Node;
2268
-
2269
- // 节点已经存在, 删除之后重新创建,
2270
- if (rgvPathRgvNode) {
2271
- kgCircularShuttleMonitor.store.getGraph!.removeElement(rgvPathRgvNode);
2272
- }
2273
-
2274
- // 隐藏小车路线,
2275
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvPathVisible) {
2276
- return;
2277
- }
2278
-
2279
- // 没有起始站点, 没有目的站点,
2280
- if (!rgv.sourceStation || !rgv.destinationStation) {
2281
- return;
2282
- }
2283
-
2284
- // 起始站点节点,
2285
- const srcStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.sourceStation) as Q.Node;
2286
- if (!srcStationNode) {
2287
- return;
2288
- }
2289
-
2290
- // 目的站点节点,
2291
- const dstStationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.stationNo === rgv.destinationStation) as Q.Node;
2292
- if (!dstStationNode) {
2293
- return;
2294
- }
2295
-
2296
- const x = drawRgv_GetX(rgv.position, rgvPathRadius);
2297
- const y = drawRgv_GetY(rgv.position, rgvPathRadius);
2298
- const rotate = drawRgv_GetRotate(rgv.position);
2299
-
2300
- rgvPathRgvNode = kgCircularShuttleMonitor.store.getGraph!.createNode(null, x, y);
2301
- rgvPathRgvNode.size = new Q.Size(CURRENT_RGV_WIDTH$.value, CURRENT_RGV_HEIGHT$.value);
2302
- rgvPathRgvNode.image = drawRgv_DrawPath_DrawRgv_GetImage(x, y, rgv);
2303
- rgvPathRgvNode.zIndex = 2;
2304
- rgvPathRgvNode.movable = false;
2305
- rgvPathRgvNode.selectable = false;
2306
- rgvPathRgvNode.rotate = rotate;
2307
- rgvPathRgvNode.putStyles({
2308
- [Q.Styles.SHAPE_FILL_COLOR]: '#ffffff',
2309
- [Q.Styles.SHAPE_STROKE]: 0,
2310
- });
2311
- rgvPathRgvNode.properties = {
2312
- data: rgv,
2313
- key: `${NODE_KEY.RGV__PATH__RGV}${rgv.rgvNo}`,
2314
- };
2315
-
2316
- // 当前是选中小车,
2317
- if (rgv.rgvNo === kgCircularShuttleMonitor.store.$Canvas$getCurrentRgvList[0]?.rgvNo) {
2318
- rgvPathRgvNode.putStyles({
2319
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: selectBlinkDashOffset * LINE_WIDTH * 2,
2320
- });
2321
- }
2322
- // 当前非选中小车,
2323
- else {
2324
- rgvPathRgvNode.putStyles({
2325
- [Q.Styles.SHAPE_LINE_DASH_OFFSET]: undefined,
2326
- });
2327
- }
2328
-
2329
- drawRgv_DrawPath_DrawRgv_DrawTextUI(rgv, index, rgvPathRgvNode);
2330
- drawRgv_DrawPath_DrawRgv_DrawDstTextUI(rgv, index, rgvPathRgvNode);
2331
- }
2332
-
2333
- /**
2334
- * 绘制小车:绘制路线:绘制小车和路线的连线:绘制连线上的小车:绘制小车编号.
2335
- *
2336
- * @param rgv 小车.
2337
- * @param index 小车序号.
2338
- * @param rgvPathRgvNode 小车节点.
2339
- */
2340
- function drawRgv_DrawPath_DrawRgv_DrawTextUI(rgv: StatusRgvVO, index: number, rgvPathRgvNode: Q.Node): void {
2341
- const labelUI = new Q.LabelUI(rgv.rgvNo);
2342
-
2343
- labelUI.code = '';
2344
- labelUI.fontSize = CURRENT_RGV_HEIGHT$.value * 0.65;
2345
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2346
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2347
- labelUI.alignPosition = Q.Position.CENTER_BOTTOM;
2348
- labelUI.borderRadius = 0;
2349
- labelUI.border = LINE_WIDTH;
2350
- labelUI.borderColor = kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index);
2351
- labelUI.color = kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index);
2352
- labelUI.backgroundColor = '#ffffff';
2353
- labelUI.showPointer = false;
2354
- labelUI.syncSelection = false;
2355
- labelUI.size = new Q.Size(CURRENT_RGV_WIDTH$.value * 1.5, CURRENT_RGV_HEIGHT$.value - LINE_WIDTH * 2);
2356
-
2357
- // 顺时针,
2358
- if (PATH_DIRECTION$.value === 0) {
2359
- // 在上,
2360
- if (rgvPathRgvNode.y < 0) {
2361
- // 小车是在轨道上,
2362
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2363
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2364
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2365
-
2366
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value + LINE_WIDTH);
2367
- labelUI.offsetY = 0;
2368
-
2369
- labelUI.rotate = (Math.PI / 180) * 180;
2370
- }
2371
- // 小车不在轨道上,
2372
- else {
2373
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2374
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2375
-
2376
- labelUI.rotate = (Math.PI / 180) * 180;
2377
- }
2378
- }
2379
- // 在下,
2380
- else {
2381
- // 小车是在轨道上,
2382
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2383
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2384
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2385
-
2386
- labelUI.offsetX = LINE_WIDTH;
2387
- labelUI.offsetY = 0;
2388
- }
2389
- // 小车不在轨道上,
2390
- else {
2391
- labelUI.position = Q.Position.LEFT_MIDDLE;
2392
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2393
-
2394
- labelUI.offsetX = 0;
2395
- labelUI.offsetY = 0;
2396
- }
2397
- }
2398
- }
2399
- // 逆时针,
2400
- else {
2401
- // 在上,
2402
- if (rgvPathRgvNode.y < 0) {
2403
- // 小车是在轨道上,
2404
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2405
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2406
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2407
-
2408
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value + LINE_WIDTH);
2409
- labelUI.offsetY = 0;
2410
-
2411
- labelUI.rotate = (Math.PI / 180) * 180;
2412
- }
2413
- // 小车不在轨道上,
2414
- else {
2415
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2416
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2417
-
2418
- labelUI.rotate = (Math.PI / 180) * 180;
2419
- }
2420
- }
2421
- // 在下,
2422
- else {
2423
- // 小车是在轨道上,
2424
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2425
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2426
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2427
-
2428
- labelUI.offsetX = LINE_WIDTH;
2429
- labelUI.offsetY = 0;
2430
- }
2431
- // 小车不在轨道上,
2432
- else {
2433
- labelUI.position = Q.Position.LEFT_MIDDLE;
2434
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2435
-
2436
- labelUI.offsetX = 0;
2437
- labelUI.offsetY = 0;
2438
- }
2439
- }
2440
- }
2441
-
2442
- rgvPathRgvNode.addUI(labelUI);
2443
- }
2444
-
2445
- /**
2446
- * 绘制小车:绘制路线:绘制小车和路线的连线:绘制连线上的小车:绘制目的站点编号.
2447
- *
2448
- * @param rgv 小车.
2449
- * @param index 小车序号.
2450
- * @param rgvPathRgvNode 小车节点.
2451
- */
2452
- function drawRgv_DrawPath_DrawRgv_DrawDstTextUI(rgv: StatusRgvVO, index: number, rgvPathRgvNode: Q.Node): void {
2453
- const labelUI = new Q.LabelUI('' + rgv.destinationStation);
2454
-
2455
- labelUI.code = '';
2456
- labelUI.fontSize = CURRENT_RGV_HEIGHT$.value * 0.65;
2457
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2458
- labelUI.anchorPosition = Q.Position.RIGHT_MIDDLE;
2459
- labelUI.alignPosition = Q.Position.CENTER_BOTTOM;
2460
- labelUI.borderRadius = 0;
2461
- labelUI.border = LINE_WIDTH;
2462
- labelUI.borderColor = kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index);
2463
- labelUI.color = kgCircularShuttleMonitor.store.$Canvas$Setting$RgvProperty$pathColor(rgv.rgvNo, index);
2464
- labelUI.backgroundColor = '#ffffff';
2465
- labelUI.showPointer = false;
2466
- labelUI.syncSelection = false;
2467
- labelUI.size = new Q.Size(CURRENT_RGV_WIDTH$.value, CURRENT_RGV_HEIGHT$.value - LINE_WIDTH * 2);
2468
-
2469
- // 顺时针,
2470
- if (PATH_DIRECTION$.value === 0) {
2471
- // 在上,
2472
- if (rgvPathRgvNode.y < 0) {
2473
- // 小车是在轨道上,
2474
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2475
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2476
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2477
-
2478
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value + CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 4);
2479
-
2480
- labelUI.rotate = (Math.PI / 180) * 180;
2481
- }
2482
- // 小车不在轨道上,
2483
- else {
2484
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2485
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2486
-
2487
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 3);
2488
-
2489
- labelUI.rotate = (Math.PI / 180) * 180;
2490
- }
2491
- }
2492
- // 在下,
2493
- else {
2494
- // 小车是在轨道上,
2495
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2496
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2497
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2498
-
2499
- labelUI.offsetX = CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 4;
2500
- labelUI.offsetY = 0;
2501
- }
2502
- // 小车不在轨道上,
2503
- else {
2504
- labelUI.position = Q.Position.LEFT_MIDDLE;
2505
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2506
-
2507
- labelUI.offsetX = CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 3;
2508
- labelUI.offsetY = 0;
2509
- }
2510
- }
2511
- }
2512
- // 逆时针,
2513
- else {
2514
- // 在上,
2515
- if (rgvPathRgvNode.y < 0) {
2516
- // 小车是在轨道上,
2517
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2518
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2519
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2520
-
2521
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value + CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 4);
2522
-
2523
- labelUI.rotate = (Math.PI / 180) * 180;
2524
- }
2525
- // 小车不在轨道上,
2526
- else {
2527
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2528
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2529
-
2530
- labelUI.offsetX = -(CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 3);
2531
-
2532
- labelUI.rotate = (Math.PI / 180) * 180;
2533
- }
2534
- }
2535
- // 在下,
2536
- else {
2537
- // 小车是在轨道上,
2538
- if (kgCircularShuttleMonitor.store.$Canvas$Setting$getIsRgvOnPath) {
2539
- labelUI.position = Q.Position.RIGHT_MIDDLE;
2540
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2541
-
2542
- labelUI.offsetX = CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 4;
2543
- labelUI.offsetY = 0;
2544
- }
2545
- // 小车不在轨道上,
2546
- else {
2547
- labelUI.position = Q.Position.LEFT_MIDDLE;
2548
- labelUI.anchorPosition = Q.Position.LEFT_MIDDLE;
2549
-
2550
- labelUI.offsetX = CURRENT_RGV_WIDTH$.value * 1.5 + LINE_WIDTH * 3;
2551
- labelUI.offsetY = 0;
2552
- }
2553
- }
2554
- }
2555
-
2556
- rgvPathRgvNode.addUI(labelUI);
2557
- }
2558
-
2559
- /**
2560
- * 绘制小车:根据状态获取颜色.
2561
- *
2562
- * @param state 小车状态.
2563
- */
2564
- function drawRgv_GetColorByState(state: number): string {
2565
- switch (state) {
2566
- case 0:
2567
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.offline ?? '#7f7f7f';
2568
- case 1:
2569
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.warn ?? '#ff3a3a';
2570
- case 2:
2571
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.manual ?? '#765708';
2572
- case 3:
2573
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.idle ?? '#000000';
2574
- case 4:
2575
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.get ?? '#2ecc27';
2576
- case 5:
2577
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.put ?? '#1890ff';
2578
- case 6:
2579
- return kgCircularShuttleMonitor.store.getProps?.rgvStatusColor?.drive ?? '#ffd262';
2580
-
2581
- default:
2582
- return '#000000';
2583
- }
2584
- }
2585
-
2586
- /**
2587
- * 绘制小车:根据状态获取文本颜色.
2588
- *
2589
- * @param state 小车状态.
2590
- */
2591
- function drawRgv_GetTextColorByState(state: number): string {
2592
- switch (state) {
2593
- case 0:
2594
- return '#000000';
2595
- case 1:
2596
- return '#ffffff';
2597
- case 2:
2598
- return '#ffffff';
2599
- case 3:
2600
- return '#ffffff';
2601
- case 4:
2602
- return '#ffffff';
2603
- case 5:
2604
- return '#ffffff';
2605
- case 6:
2606
- return '#ffffff';
2607
-
2608
- default:
2609
- return '#000000';
2610
- }
2611
- }
2612
-
2613
- /**
2614
- * 绘制小车:根据弧长获取弧度.
2615
- *
2616
- * @param arcLength 弧长.
2617
- */
2618
- function drawRgv_GetRadianByArcLength(arcLength: number): number {
2619
- if (arcLength <= 0) {
2620
- return 0;
2621
- }
2622
-
2623
- return arcLength / (PATH_INNER_RADIUS$.value + LINE_WIDTH / 2);
2624
- }
2625
-
2626
- /**
2627
- * 绘制小车:获取节点图形.
2628
- *
2629
- * @param x 横坐标.
2630
- * @param y 纵坐标.
2631
- * @param rgv 小车.
2632
- */
2633
- function drawRgv_GetImage(x: number, y: number, rgv: StatusRgvVO): any {
2634
- // 顺时针,
2635
- if (PATH_DIRECTION$.value === 0) {
2636
- const path = new Q.Path();
2637
-
2638
- path.moveTo(-CURRENT_RGV_WIDTH$.value / 2, -CURRENT_RGV_HEIGHT$.value / 2);
2639
- path.lineTo(CURRENT_RGV_WIDTH$.value / 2, -CURRENT_RGV_HEIGHT$.value / 2);
2640
- path.lineTo(CURRENT_RGV_WIDTH$.value / 2, CURRENT_RGV_HEIGHT$.value / 2);
2641
- path.lineTo(-CURRENT_RGV_WIDTH$.value / 2, CURRENT_RGV_HEIGHT$.value / 2);
2642
- path.closePath();
2643
-
2644
- path.moveTo(CURRENT_RGV_WIDTH$.value / 4, -CURRENT_RGV_HEIGHT$.value / 2);
2645
- path.lineTo(CURRENT_RGV_WIDTH$.value / 4, CURRENT_RGV_HEIGHT$.value / 2);
2646
-
2647
- return path;
2648
- }
2649
- // 逆时针,
2650
- else {
2651
- const path = new Q.Path();
2652
-
2653
- path.moveTo(-CURRENT_RGV_WIDTH$.value / 2, -CURRENT_RGV_HEIGHT$.value / 2);
2654
- path.lineTo(CURRENT_RGV_WIDTH$.value / 2, -CURRENT_RGV_HEIGHT$.value / 2);
2655
- path.lineTo(CURRENT_RGV_WIDTH$.value / 2, CURRENT_RGV_HEIGHT$.value / 2);
2656
- path.lineTo(-CURRENT_RGV_WIDTH$.value / 2, CURRENT_RGV_HEIGHT$.value / 2);
2657
- path.closePath();
2658
-
2659
- path.moveTo(-CURRENT_RGV_WIDTH$.value / 4, -CURRENT_RGV_HEIGHT$.value / 2);
2660
- path.lineTo(-CURRENT_RGV_WIDTH$.value / 4, CURRENT_RGV_HEIGHT$.value / 2);
2661
-
2662
- return path;
2663
- }
2664
- }
2665
-
2666
- /**
2667
- * 绘制小车:绘制路线:绘制小车和路线的连线:绘制连线上的小车:获取节点图形.
2668
- *
2669
- * @param x 横坐标.
2670
- * @param y 纵坐标.
2671
- * @param rgv 小车.
2672
- */
2673
- function drawRgv_DrawPath_DrawRgv_GetImage(x: number, y: number, rgv: StatusRgvVO): any {
2674
- const width = CURRENT_RGV_WIDTH$.value;
2675
- const height = CURRENT_RGV_HEIGHT$.value;
2676
-
2677
- // 顺时针,
2678
- if (PATH_DIRECTION$.value === 0) {
2679
- const path = new Q.Path();
2680
-
2681
- path.moveTo(-width / 2, -height / 2);
2682
- path.lineTo(width / 2, -height / 2);
2683
- path.lineTo(width / 2, height / 2);
2684
- path.lineTo(-width / 2, height / 2);
2685
- path.closePath();
2686
-
2687
- return path;
2688
- }
2689
- // 逆时针,
2690
- else {
2691
- const path = new Q.Path();
2692
-
2693
- path.moveTo(-width / 2, -height / 2);
2694
- path.lineTo(width / 2, -height / 2);
2695
- path.lineTo(width / 2, height / 2);
2696
- path.lineTo(-width / 2, height / 2);
2697
- path.closePath();
2698
-
2699
- return path;
2700
- }
2701
- }
2702
-
2703
- /**
2704
- * 绘制小车:绘制小车编号背景.
2705
- *
2706
- * @param rgv 小车.
2707
- * @param rgvNode 小车节点.
2708
- */
2709
- function drawRgv_DrawTextBackgroundUI(rgv: StatusRgvVO, rgvNode: Q.Node): void {
2710
- if (!kgCircularShuttleMonitor.store.getGraph) {
2711
- return;
2712
- }
2713
-
2714
- const WIDTH = (CURRENT_RGV_WIDTH$.value / 4) * 1 - LINE_WIDTH + 40;
2715
- const HEIGHT = CURRENT_RGV_HEIGHT$.value - LINE_WIDTH * 2 + 40;
2716
-
2717
- const path = new Q.Path();
2718
-
2719
- path.moveTo(0, 0);
2720
- path.lineTo(WIDTH, 0);
2721
- path.lineTo(WIDTH, HEIGHT);
2722
- path.lineTo(0, HEIGHT);
2723
- path.closePath();
2724
-
2725
- const imageUI = new Q.ImageUI(path);
2726
- imageUI.code = NODE_KEY.RGV__UI__TEXT_BACKGROUND;
2727
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
2728
- imageUI.position = Q.Position.CENTER_MIDDLE;
2729
- imageUI.fillColor = drawRgv_GetColorByState(rgv.state);
2730
- imageUI.syncSelection = false;
2731
-
2732
- // 顺时针,
2733
- if (PATH_DIRECTION$.value === 0) {
2734
- imageUI.offsetX = (CURRENT_RGV_WIDTH$.value / 8) * 3 - (LINE_WIDTH / 4) * 1;
2735
- }
2736
- // 逆时针,
2737
- else {
2738
- imageUI.offsetX = -((CURRENT_RGV_WIDTH$.value / 8) * 3 - (LINE_WIDTH / 4) * 1);
2739
- }
2740
-
2741
- rgvNode.addUI(imageUI);
2742
- }
2743
-
2744
- /**
2745
- * 绘制小车:绘制小车编号.
2746
- *
2747
- * @param rgv 小车.
2748
- * @param rgvNode 小车节点.
2749
- */
2750
- function drawRgv_DrawTextUI(rgv: StatusRgvVO, rgvNode: Q.Node): void {
2751
- // 不显示小车编号的前缀「SC」,
2752
- const labelUI = new Q.LabelUI(rgv.rgvNo?.replace('SC', ''));
2753
-
2754
- labelUI.code = NODE_KEY.RGV__UI__TEXT;
2755
- labelUI.fontSize = CURRENT_RGV_WIDTH$.value / 4;
2756
- labelUI.position = Q.Position.CENTER_MIDDLE;
2757
- labelUI.anchorPosition = Q.Position.CENTER_MIDDLE;
2758
- labelUI.alignPosition = Q.Position.CENTER_BOTTOM;
2759
- labelUI.borderRadius = 0;
2760
- labelUI.showPointer = false;
2761
- labelUI.color = drawRgv_GetTextColorByState(rgv.state);
2762
- labelUI.size = new Q.Size(CURRENT_RGV_HEIGHT$.value - LINE_WIDTH, CURRENT_RGV_WIDTH$.value / 4);
2763
- labelUI.syncSelection = false;
2764
-
2765
- // 顺时针,
2766
- if (PATH_DIRECTION$.value === 0) {
2767
- labelUI.rotate = (Math.PI / 180) * 270;
2768
- labelUI.offsetX = (CURRENT_RGV_WIDTH$.value / 8) * 3 - (LINE_WIDTH / 4) * 1 + 40;
2769
- }
2770
- // 逆时针,
2771
- else {
2772
- labelUI.rotate = (Math.PI / 180) * 90;
2773
- labelUI.offsetX = -((CURRENT_RGV_WIDTH$.value / 8) * 3 - (LINE_WIDTH / 4) * 1 + 40);
2774
- }
2775
-
2776
- rgvNode.addUI(labelUI);
2777
- }
2778
-
2779
- /**
2780
- * 绘制小车:绘制托盘.
2781
- *
2782
- * @param rgv 小车.
2783
- * @param rgvNode 小车节点.
2784
- */
2785
- function drawRgv_DrawContainerUI(rgv: StatusRgvVO, rgvNode: Q.Node): void {
2786
- if (!kgCircularShuttleMonitor.store.getGraph) {
2787
- return;
2788
- }
2789
-
2790
- const WIDTH = (CURRENT_RGV_WIDTH$.value / 4) * 3 - LINE_WIDTH * 1.5 - 80;
2791
- const HEIGHT = CURRENT_RGV_HEIGHT$.value - LINE_WIDTH * 2 - 40;
2792
-
2793
- const path = new Q.Path();
2794
-
2795
- path.moveTo(0, 0);
2796
- path.lineTo(WIDTH, 0);
2797
- path.lineTo(WIDTH, HEIGHT);
2798
- path.lineTo(0, HEIGHT);
2799
- path.closePath();
2800
-
2801
- const imageUI = new Q.ImageUI(path);
2802
- imageUI.code = NODE_KEY.RGV__UI__CONTAINER;
2803
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
2804
- imageUI.position = Q.Position.CENTER_MIDDLE;
2805
- imageUI.fillColor = rgv.loadState === 1 ? drawRgv_GetColorByState(rgv.state) : '#ffffff';
2806
- imageUI.syncSelection = false;
2807
-
2808
- // 顺时针,
2809
- if (PATH_DIRECTION$.value === 0) {
2810
- imageUI.offsetX = -LINE_WIDTH * 2.5;
2811
- }
2812
- // 逆时针,
2813
- else {
2814
- imageUI.offsetX = LINE_WIDTH * 2.5;
2815
- }
2816
-
2817
- rgvNode.addUI(imageUI);
2818
- }
2819
-
2820
- /**
2821
- * 绘制小车:绘制选中时的遮盖效果.
2822
- *
2823
- * @param rgv 小车.
2824
- * @param rgvNode 小车节点.
2825
- */
2826
- function drawRgv_DrawSelectUI(rgv: StatusRgvVO, rgvNode: Q.Node): void {
2827
- if (!kgCircularShuttleMonitor.store.getGraph) {
2828
- return;
2829
- }
2830
-
2831
- const WIDTH = rgv.length ?? 0;
2832
- const HEIGHT = rgv.width ?? 0;
2833
-
2834
- const path = new Q.Path();
2835
-
2836
- path.moveTo(0, 0);
2837
- path.lineTo(WIDTH, 0);
2838
- path.lineTo(WIDTH, HEIGHT);
2839
- path.lineTo(0, HEIGHT);
2840
- path.closePath();
2841
-
2842
- const imageUI = new Q.ImageUI(path);
2843
- imageUI.code = NODE_KEY.RGV__UI__SELECT;
2844
- imageUI.anchorPosition = Q.Position.CENTER_MIDDLE;
2845
- imageUI.position = Q.Position.CENTER_MIDDLE;
2846
- imageUI.syncSelection = false;
2847
- imageUI.fillColor = isSelectBlinkOn ? '#ffff0075' : '#ffffff00';
2848
- imageUI.borderColor = isSelectBlinkOn ? '#ffff00' : '#ffffff00';
2849
- imageUI.border = LINE_WIDTH;
2850
- imageUI.visible = !!kgCircularShuttleMonitor.store.$Canvas$getCurrentRgvList.find((i) => i.rgvNo === rgv.rgvNo);
2851
-
2852
- rgvNode.addUI(imageUI);
2853
- }
2854
-
2855
- /**
2856
- * 删除所有选中效果.
2857
- */
2858
- function clearSelectUI() {
2859
- const stationNodeList = (kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && !!getNodeUiByKey<Q.ImageUI>(i, NODE_KEY.STATION_UI_SELECT)) ?? []) as Array<Q.Node>;
2860
- for (const stationNode of stationNodeList) {
2861
- stationNode.removeUI(getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_SELECT).ui);
2862
- }
2863
-
2864
- const rgvNodeList = (kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.filter((i) => i.properties.key?.startsWith(NODE_KEY.RGV) && !!getNodeUiByKey<Q.ImageUI>(i, NODE_KEY.RGV__UI__SELECT)) ?? []) as Array<Q.Node>;
2865
- for (const rgvNode of rgvNodeList) {
2866
- rgvNode.removeUI(getNodeUiByKey<Q.ImageUI>(rgvNode, NODE_KEY.RGV__UI__SELECT).ui);
2867
- }
2868
- }
2869
-
2870
- /**
2871
- * 获取节点下的界面元素.
2872
- *
2873
- * @param node 节点.
2874
- * @param key 界面元素编号.
2875
- */
2876
- function getNodeUiByKey<T extends Q.BaseUI>(node: Q.Node, key: string): { ui: T } {
2877
- return (node?.bindingUIs?.toDatas?.()?.find((i) => i.ui.code === key) ?? { ui: {} as Q.BaseUI }) as { ui: T };
2878
- }
2879
-
2880
- /**
2881
- * 闪烁选中.
2882
- */
2883
- function blinkSelect() {
2884
- try {
2885
- if (!kgCircularShuttleMonitor.store.$Canvas$Setting$getIsSelectBlinkOn) {
2886
- isSelectBlinkOn = true;
2887
- } else {
2888
- isSelectBlinkOn = !isSelectBlinkOn;
2889
- }
2890
-
2891
- if (selectBlinkDashOffset <= Number.MIN_SAFE_INTEGER) {
2892
- selectBlinkDashOffset = 0;
2893
- }
2894
-
2895
- selectBlinkDashOffset -= 1;
2896
-
2897
- const stationNodeList = (kgCircularShuttleMonitor.store.getGraph?.graphModel?.datas?.filter((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && !!getNodeUiByKey<Q.ImageUI>(i, NODE_KEY.STATION_UI_SELECT)) ??
2898
- []) as Array<Q.Node>;
2899
- for (const stationNode of stationNodeList) {
2900
- const selectUI = getNodeUiByKey<Q.ImageUI>(stationNode, NODE_KEY.STATION_UI_SELECT);
2901
- selectUI.ui.fillColor = isSelectBlinkOn ? '#ffff0075' : '#ffffff00';
2902
- selectUI.ui.borderColor = isSelectBlinkOn ? '#ffff00' : '#ffffff00';
2903
- kgCircularShuttleMonitor.graph!.invalidateElement(stationNode);
2904
- }
2905
-
2906
- const rgvNodeList = (kgCircularShuttleMonitor.store.getGraph?.graphModel?.datas?.filter((i) => i.properties.key?.startsWith(NODE_KEY.RGV) && !!getNodeUiByKey<Q.ImageUI>(i, NODE_KEY.RGV__UI__SELECT)) ?? []) as Array<Q.Node>;
2907
- for (const rgvNode of rgvNodeList) {
2908
- const selectUI = getNodeUiByKey<Q.ImageUI>(rgvNode, NODE_KEY.RGV__UI__SELECT);
2909
- selectUI.ui.fillColor = isSelectBlinkOn ? '#ffff0075' : '#ffffff00';
2910
- selectUI.ui.borderColor = isSelectBlinkOn ? '#ffff00' : '#ffffff00';
2911
- kgCircularShuttleMonitor.graph!.invalidateElement(rgvNode);
2912
- }
2913
- } catch (e: any) {
2914
- ____ERROR____(`KgCircularShuttleMonitor | 闪烁选中 | ${e.message}`);
2915
- }
2916
-
2917
- selectBlinkTimer = window.setTimeout(() => {
2918
- blinkSelect();
2919
- }, kgCircularShuttleMonitor.store.$Canvas$Setting$getSelectBlinkInterval);
2920
- }
2921
- //----------------------------------------------------------------------------------------------------
2922
- //endregion
2923
-
2924
- if (selectBlinkTimer && selectBlinkTimer !== -1) {
2925
- clearTimeout(selectBlinkTimer);
2926
- }
2927
-
2928
- selectBlinkTimer = window.setTimeout(() => {
2929
- blinkSelect();
2930
- }, kgCircularShuttleMonitor.store.$Canvas$Setting$getSelectBlinkInterval);
2931
-
2932
- return {
2933
- draw: (param?: IUseDrawDrawParam) => {
2934
- try {
2935
- if (!kgCircularShuttleMonitor.store.getGraph) {
2936
- return;
2937
- }
2938
-
2939
- // 上次绘制尚未完成, 取消本次绘制,
2940
- if (isDrawing) {
2941
- return;
2942
- }
2943
-
2944
- isDrawing = true;
2945
-
2946
- const _graph = kgCircularShuttleMonitor.store.getGraph!;
2947
-
2948
- // 绘制轨道, 绘制站点,
2949
- if (param?.type === 'MAP') {
2950
- // 绘制轨道时, 需要清空画布, 重新绘制所有内容,
2951
- _graph.clear();
2952
-
2953
- const canvasMapData = kgCircularShuttleMonitor.$Canvas$popMapData();
2954
-
2955
- PATH_LENGTH$.value = 0;
2956
- PATH_WIDTH$.value = 0;
2957
- PATH_HEIGHT$.value = 0;
2958
- PATH_LINE_WIDTH$.value = 0;
2959
-
2960
- PATH_INNER_RADIUS$.value = 0;
2961
- PATH_OUTER_RADIUS$.value = 0;
2962
-
2963
- kgCircularShuttleMonitor.store.$Canvas$setCurrentStationList([]);
2964
- kgCircularShuttleMonitor.store.$Canvas$setCurrentRgvList([]);
2965
-
2966
- drawPath(canvasMapData);
2967
- drawStationList(canvasMapData);
2968
- }
2969
- // 绘制小车, 更新站点,
2970
- else {
2971
- const canvasStatusData = kgCircularShuttleMonitor.$Canvas$popStatusData();
2972
- updateStationList(canvasStatusData);
2973
- drawAisleList();
2974
- drawRgvList(canvasStatusData);
2975
- }
2976
-
2977
- // 默认纵览比例,
2978
- if (param?.isZoomToOverview ?? false) {
2979
- setTimeout(() => {
2980
- _graph.zoomToOverview(false);
2981
- }, 200);
2982
- }
2983
-
2984
- // 禁用缩放以及拖拽,
2985
- if (kgCircularShuttleMonitor.store.getProps?.isScalable === false) {
2986
- _graph.zoomToOverview(false);
2987
-
2988
- _graph.callLater(
2989
- () => {
2990
- let x = _graph.bounds.x;
2991
- let y = _graph.bounds.y;
2992
- let width = _graph.bounds.width;
2993
- let height = _graph.bounds.height;
2994
-
2995
- // 尚未绘制图形, 比如图形数据为空,
2996
- if (width <= 0 || height <= 0) {
2997
- return;
2998
- }
2999
-
3000
- // 宽度大于高度
3001
- if (_graph.viewportBounds.width > _graph.viewportBounds.height) {
3002
- width = (height * _graph.viewportBounds.width) / _graph.viewportBounds.height;
3003
- x = -width / 2;
3004
- }
3005
- // 宽度小于高度
3006
- else {
3007
- height = (width * _graph.viewportBounds.height) / _graph.viewportBounds.width;
3008
- y = -height / 2;
3009
- }
3010
-
3011
- // 限制视窗范围
3012
- _graph.limitedBounds = new Q.Rect(x, y, width, height);
3013
- },
3014
- undefined,
3015
- 100,
3016
- );
3017
- }
3018
-
3019
- isDrawing = false;
3020
- } catch (e) {
3021
- isDrawing = false;
3022
- throw e;
3023
- } finally {
3024
- }
3025
- },
3026
-
3027
- onSelectChange: () => {
3028
- clearSelectUI();
3029
-
3030
- for (let rgv of kgCircularShuttleMonitor.store.$Canvas$getCurrentRgvList) {
3031
- const rgvNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.RGV) && (i.properties.data as StatusRgvVO)?.rgvNo === rgv.rgvNo) as Q.Node;
3032
-
3033
- if (rgvNode) {
3034
- drawRgv_DrawSelectUI(rgv, rgvNode);
3035
- }
3036
- }
3037
-
3038
- for (let station of kgCircularShuttleMonitor.store.$Canvas$getCurrentStationList) {
3039
- const stationNode = kgCircularShuttleMonitor.store.getGraph!.graphModel.datas.find((i) => i.properties.key?.startsWith(NODE_KEY.STATION) && (i.properties.data as MapStationVO)?.conveyorNo === station.conveyorNo) as Q.Node;
3040
-
3041
- if (stationNode) {
3042
- const selectUI = drawStation_DrawSelectUI(station);
3043
- if (selectUI) {
3044
- stationNode.addUI(selectUI);
3045
- }
3046
- }
3047
- }
3048
- },
3049
- };
3050
- }
3051
-
3052
- //----------------------------------------------------------------------------------------------------
3053
- //endregion