vue2-client 0.1.1 → 1.0.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 (395) hide show
  1. package/.editorconfig +9 -0
  2. package/.env +14 -0
  3. package/.env.development +1 -0
  4. package/.eslintrc.js +81 -0
  5. package/.eslintrc.json +5 -0
  6. package/README.md +46 -36
  7. package/babel.config.js +11 -2
  8. package/docs/index.md +29 -0
  9. package/jest.config.js +3 -0
  10. package/package.json +68 -22
  11. package/public/index.html +13 -3
  12. package/src/App.vue +93 -0
  13. package/src/assets/img/alipay.png +0 -0
  14. package/src/assets/img/defect.png +0 -0
  15. package/src/assets/img/error.png +0 -0
  16. package/src/assets/img/logo.png +0 -0
  17. package/src/assets/img/preview-nine.png +0 -0
  18. package/src/assets/img/preview.png +0 -0
  19. package/src/assets/img/success.png +0 -0
  20. package/src/assets/img/success1.png +0 -0
  21. package/src/assets/img/wechatpay.png +0 -0
  22. package/src/base-client/all.js +57 -0
  23. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +1159 -0
  24. package/src/base-client/components/common/CreateQuery/index.js +3 -0
  25. package/src/base-client/components/common/CreateQuery/index.md +42 -0
  26. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +540 -0
  27. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -0
  28. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -0
  29. package/src/{components → base-client/components/common}/CustomColumnsDrawer/CustomColumnsDrawer.vue +21 -15
  30. package/src/{components → base-client/components/common}/CustomColumnsDrawer/index.js +0 -0
  31. package/src/{components → base-client/components/common}/CustomColumnsDrawer/index.md +0 -0
  32. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +150 -0
  33. package/src/base-client/components/common/FormGroupEdit/index.js +3 -0
  34. package/src/base-client/components/common/FormGroupEdit/index.md +43 -0
  35. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +163 -0
  36. package/src/base-client/components/common/FormGroupQuery/index.js +3 -0
  37. package/src/base-client/components/common/FormGroupQuery/index.md +43 -0
  38. package/src/base-client/components/common/JSONToTree/index.js +3 -0
  39. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -0
  40. package/src/base-client/components/common/XAddForm/XAddForm.vue +323 -0
  41. package/src/base-client/components/common/XAddForm/index.js +3 -0
  42. package/src/base-client/components/common/XAddForm/index.md +60 -0
  43. package/src/base-client/components/common/XBadge/XBadge.vue +61 -0
  44. package/src/base-client/components/common/XBadge/index.js +3 -0
  45. package/src/base-client/components/common/XBadge/index.md +39 -0
  46. package/src/base-client/components/common/XCard/XCard.vue +59 -0
  47. package/src/base-client/components/common/XCard/index.js +3 -0
  48. package/src/base-client/components/common/XCard/index.md +43 -0
  49. package/src/base-client/components/common/XForm/XForm.vue +275 -0
  50. package/src/base-client/components/common/XForm/XFormItem.vue +217 -0
  51. package/src/base-client/components/common/XForm/index.js +3 -0
  52. package/src/base-client/components/common/XForm/index.md +196 -0
  53. package/src/{components/FormItem/FormItem.vue → base-client/components/common/XFormCol/XFormCol.vue} +16 -14
  54. package/src/base-client/components/common/XFormCol/index.js +3 -0
  55. package/src/{components/FormItem → base-client/components/common/XFormCol}/index.md +2 -2
  56. package/src/base-client/components/common/XFormTable/XFormTable.vue +405 -0
  57. package/src/base-client/components/common/XFormTable/index.js +3 -0
  58. package/src/base-client/components/common/XFormTable/index.md +89 -0
  59. package/src/base-client/components/common/XTable/XTable.vue +262 -0
  60. package/src/base-client/components/common/XTable/index.js +3 -0
  61. package/src/base-client/components/common/XTable/index.md +255 -0
  62. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +105 -0
  63. package/src/base-client/components/common/XTreeOne/index.js +3 -0
  64. package/src/base-client/components/iot/CustomerDetailsView/CustomerDetailsView.vue +226 -0
  65. package/src/base-client/components/iot/CustomerDetailsView/index.js +3 -0
  66. package/src/base-client/components/iot/CustomerDetailsView/index.md +41 -0
  67. package/src/base-client/components/iot/DataAnalysisUser/DataAnalysisUser.vue +127 -0
  68. package/src/base-client/components/iot/DataAnalysisUser/index.js +3 -0
  69. package/src/base-client/components/iot/DataAnalysisView/DataAnalysisView.vue +250 -0
  70. package/src/base-client/components/iot/DataAnalysisView/index.js +3 -0
  71. package/src/base-client/components/iot/DataAnalysisViewGD/DataAnalysisViewGD.vue +548 -0
  72. package/src/base-client/components/iot/DataAnalysisViewGD/WindowTemplate/WindowInfotemp.vue +99 -0
  73. package/src/base-client/components/iot/DataAnalysisViewGD/WindowTemplate/index.js +3 -0
  74. package/src/base-client/components/iot/DataAnalysisViewGD/index.js +3 -0
  75. package/src/base-client/components/iot/DeviceBrandDetailsView/DeviceBrandDetailsView.vue +453 -0
  76. package/src/base-client/components/iot/DeviceBrandDetailsView/index.js +3 -0
  77. package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +231 -0
  78. package/src/base-client/components/iot/DeviceDetailsView/index.js +3 -0
  79. package/src/base-client/components/iot/DeviceDetailsView/index.md +43 -0
  80. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsCount.vue +330 -0
  81. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -0
  82. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstruct.vue +122 -0
  83. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstructOperate.vue +122 -0
  84. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsMain.vue +225 -0
  85. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +135 -0
  86. package/src/base-client/components/iot/DeviceDetailsView/part/index.js +8 -0
  87. package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +277 -0
  88. package/src/base-client/components/iot/DeviceTypeDetailsView/index.js +3 -0
  89. package/src/base-client/components/iot/InstructDetailsView/InstructDetailsView.vue +472 -0
  90. package/src/{components → base-client/components/iot}/InstructDetailsView/index.js +0 -0
  91. package/src/base-client/components/iot/InstructDetailsView/index.md +45 -0
  92. package/src/base-client/components/iot/LogDetailsView/LogDetailsView.vue +380 -0
  93. package/src/base-client/components/iot/LogDetailsView/index.js +3 -0
  94. package/src/base-client/components/iot/LogDetailsView/index.md +43 -0
  95. package/src/base-client/components/iot/MeterDetailsView/MeterDetailsView.vue +360 -0
  96. package/src/{components → base-client/components/iot}/MeterDetailsView/index.js +0 -0
  97. package/src/base-client/components/iot/MeterDetailsView/index.md +43 -0
  98. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsCount.vue +335 -381
  99. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsException.vue +185 -204
  100. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsHandPlan.vue +292 -320
  101. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsInstruct.vue +237 -278
  102. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsMain.vue +257 -247
  103. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsSellGas.vue +190 -211
  104. package/src/base-client/components/iot/MeterDetailsView/part/index.js +9 -0
  105. package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +723 -0
  106. package/src/base-client/components/iot/WebmeterAnalysisView/index.js +3 -0
  107. package/src/base-client/components/iot/WebmeterAnalysisView/index.md +48 -0
  108. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -0
  109. package/src/base-client/components/system/DictionaryDetailsView/index.js +3 -0
  110. package/src/base-client/components/system/DictionaryDetailsView/index.md +41 -0
  111. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +248 -0
  112. package/src/base-client/components/system/QueryParamsDetailsView/index.js +3 -0
  113. package/src/base-client/components/ticket/EmployeeDetailsView/EmployeeDetailsView.vue +406 -0
  114. package/src/base-client/components/ticket/EmployeeDetailsView/index.js +3 -0
  115. package/src/base-client/components/ticket/EmployeeDetailsView/index.md +28 -0
  116. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +486 -0
  117. package/src/base-client/components/ticket/TicketDetailsView/index.js +3 -0
  118. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -0
  119. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +184 -0
  120. package/src/base-client/components/ticket/TicketDetailsView/part/index.js +3 -0
  121. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +303 -0
  122. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.js +3 -0
  123. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -0
  124. package/src/base-client/plugins/AppData.js +69 -0
  125. package/src/{plugins → base-client/plugins}/Config.js +1 -1
  126. package/src/base-client/plugins/GetLoginInfoService.js +222 -0
  127. package/src/{plugins → base-client/plugins}/PagedList.js +0 -0
  128. package/src/base-client/plugins/authority-plugin.js +167 -0
  129. package/src/base-client/plugins/i18n-extend.js +32 -0
  130. package/src/base-client/plugins/index.js +21 -0
  131. package/src/{plugins → base-client/plugins}/moment.js +8 -8
  132. package/src/base-client/plugins/tabs-page-plugin.js +38 -0
  133. package/src/bootstrap.js +25 -0
  134. package/src/components/Charts/Bar.vue +62 -0
  135. package/src/components/Charts/ChartCard.vue +120 -0
  136. package/src/components/Charts/DataUserOrderSituation.vue +77 -0
  137. package/src/components/Charts/DataUserReporting.vue +74 -0
  138. package/src/components/Charts/DataUserSituation.vue +107 -0
  139. package/src/components/Charts/Liquid.vue +67 -0
  140. package/src/components/Charts/MiniArea.vue +39 -0
  141. package/src/components/Charts/MiniBar.vue +39 -0
  142. package/src/components/Charts/MiniProgress.vue +75 -0
  143. package/src/components/Charts/MiniSmoothArea.vue +40 -0
  144. package/src/components/Charts/Radar.vue +68 -0
  145. package/src/components/Charts/RankList.vue +77 -0
  146. package/src/components/Charts/TagCloud.vue +113 -0
  147. package/src/components/Charts/TransferBar.vue +64 -0
  148. package/src/components/Charts/Trend.vue +82 -0
  149. package/src/components/Charts/chart.less +13 -0
  150. package/src/components/Charts/smooth.area.less +14 -0
  151. package/src/components/Ellipsis/Ellipsis.vue +64 -0
  152. package/src/components/Ellipsis/index.js +3 -0
  153. package/src/components/Ellipsis/index.md +38 -0
  154. package/src/components/NumberInfo/NumberInfo.vue +54 -0
  155. package/src/components/NumberInfo/index.js +3 -0
  156. package/src/components/NumberInfo/index.less +55 -0
  157. package/src/components/NumberInfo/index.md +43 -0
  158. package/src/components/STable/README.md +341 -0
  159. package/src/components/STable/index.js +316 -0
  160. package/src/components/Trend/Trend.vue +41 -0
  161. package/src/components/Trend/index.js +3 -0
  162. package/src/components/Trend/index.less +42 -0
  163. package/src/components/Trend/index.md +45 -0
  164. package/src/components/_util/util.js +46 -0
  165. package/src/components/cache/AKeepAlive.js +172 -0
  166. package/src/components/card/ChartCard.vue +79 -0
  167. package/src/components/chart/Bar.vue +60 -0
  168. package/src/components/chart/MiniArea.vue +67 -0
  169. package/src/components/chart/MiniBar.vue +59 -0
  170. package/src/components/chart/MiniProgress.vue +57 -0
  171. package/src/components/chart/Radar.vue +80 -0
  172. package/src/components/chart/RankingList.vue +60 -0
  173. package/src/components/chart/Trend.vue +79 -0
  174. package/src/components/chart/index.less +9 -0
  175. package/src/components/checkbox/ColorCheckbox.vue +157 -0
  176. package/src/components/checkbox/ImgCheckbox.vue +163 -0
  177. package/src/components/checkbox/index.js +7 -0
  178. package/src/components/dataAnalysisView/UserData.vue +61 -0
  179. package/src/components/exception/ExceptionPage.vue +70 -0
  180. package/src/components/exception/typeConfig.js +19 -0
  181. package/src/components/form/FormRow.vue +52 -0
  182. package/src/components/index.js +36 -0
  183. package/src/components/index.less +6 -0
  184. package/src/components/input/IInput.vue +66 -0
  185. package/src/components/menu/Contextmenu.vue +84 -0
  186. package/src/components/menu/SideMenu.vue +62 -0
  187. package/src/components/menu/index.less +38 -0
  188. package/src/components/menu/menu.js +273 -0
  189. package/src/components/page/header/PageHeader.vue +64 -0
  190. package/src/components/page/header/index.less +40 -0
  191. package/src/components/result/Result.vue +77 -0
  192. package/src/components/setting/Setting.vue +237 -0
  193. package/src/components/setting/SettingItem.vue +26 -0
  194. package/src/components/setting/i18n.js +117 -0
  195. package/src/components/table/StandardTable.vue +142 -0
  196. package/src/components/table/advance/ActionColumns.vue +158 -0
  197. package/src/components/table/advance/ActionSize.vue +45 -0
  198. package/src/components/table/advance/AdvanceTable.vue +275 -0
  199. package/src/components/table/advance/SearchArea.vue +355 -0
  200. package/src/components/table/advance/index.js +2 -0
  201. package/src/components/table/api/ApiTable.vue +50 -0
  202. package/src/components/task/TaskGroup.vue +80 -0
  203. package/src/components/task/TaskItem.vue +26 -0
  204. package/src/components/tool/AStepItem.vue +60 -0
  205. package/src/components/tool/AvatarList.vue +69 -0
  206. package/src/components/tool/DetailList.vue +157 -0
  207. package/src/components/tool/Drawer.vue +142 -0
  208. package/src/components/tool/FooterToolBar.vue +30 -0
  209. package/src/components/tool/HeadInfo.vue +35 -0
  210. package/src/components/tool/TagSelect.vue +83 -0
  211. package/src/components/tool/TagSelectOption.vue +33 -0
  212. package/src/components/transition/PageToggleTransition.vue +97 -0
  213. package/src/config/config.js +13 -0
  214. package/src/config/default/admin.config.js +18 -0
  215. package/src/config/default/animate.config.js +21 -0
  216. package/src/config/default/antd.config.js +84 -0
  217. package/src/config/default/index.js +6 -0
  218. package/src/config/default/setting.config.js +33 -0
  219. package/src/config/index.js +6 -0
  220. package/src/config/replacer/index.js +10 -0
  221. package/src/config/replacer/resolve.config.js +67 -0
  222. package/src/index.js +29 -0
  223. package/src/layouts/AdminLayout.vue +174 -0
  224. package/src/layouts/BlankView.vue +22 -0
  225. package/src/layouts/CommonLayout.vue +42 -0
  226. package/src/layouts/ComponentLayoutOne.vue +47 -0
  227. package/src/layouts/PageLayout.vue +151 -0
  228. package/src/layouts/PageView.vue +55 -0
  229. package/src/layouts/SinglePageView.vue +74 -0
  230. package/src/layouts/footer/PageFooter.vue +46 -0
  231. package/src/layouts/header/AdminHeader.vue +109 -0
  232. package/src/layouts/header/HeaderAvatar.vue +60 -0
  233. package/src/layouts/header/HeaderNotice.vue +97 -0
  234. package/src/layouts/header/HeaderSearch.vue +67 -0
  235. package/src/layouts/header/index.less +92 -0
  236. package/src/layouts/tabs/TabsHead.vue +190 -0
  237. package/src/layouts/tabs/TabsView.vue +355 -0
  238. package/src/layouts/tabs/i18n.js +25 -0
  239. package/src/layouts/tabs/index.js +2 -0
  240. package/src/main.js +8 -8
  241. package/src/mock/common/activityData.js +32 -0
  242. package/src/mock/common/index.js +89 -0
  243. package/src/mock/common/reportData.js +20 -0
  244. package/src/mock/common/tableData.js +118 -0
  245. package/src/mock/extend/index.js +83 -0
  246. package/src/mock/goods/index.js +108 -0
  247. package/src/mock/index.js +12 -0
  248. package/src/mock/project/index.js +17 -0
  249. package/src/mock/user/current.js +13 -0
  250. package/src/mock/user/login.js +39 -0
  251. package/src/mock/user/routes.js +61 -0
  252. package/src/mock/workplace/index.js +15 -0
  253. package/src/pages/exception/403.vue +25 -0
  254. package/src/pages/exception/404.vue +25 -0
  255. package/src/pages/exception/500.vue +25 -0
  256. package/src/pages/login/Login.vue +194 -0
  257. package/src/pages/login/index.js +2 -0
  258. package/src/pages/report/ReportTable.js +125 -0
  259. package/src/pages/report/ReportTableHome.vue +28 -0
  260. package/src/pages/resourceManage/resourceManageMain.vue +55 -0
  261. package/src/pages/system/applyInstallView/Core.vue +570 -0
  262. package/src/pages/system/applyInstallView/LFComponents/AddPanel.vue +52 -0
  263. package/src/pages/system/applyInstallView/LFComponents/Control.vue +78 -0
  264. package/src/pages/system/applyInstallView/LFComponents/DataDialog.vue +24 -0
  265. package/src/pages/system/applyInstallView/LFComponents/NodePanel.vue +103 -0
  266. package/src/pages/system/applyInstallView/PropertySetting/Base.vue +124 -0
  267. package/src/pages/system/applyInstallView/PropertySetting/CommonProperty.vue +104 -0
  268. package/src/pages/system/applyInstallView/PropertySetting/PropertyDialog.vue +43 -0
  269. package/src/pages/system/applyInstallView/background/base.png +0 -0
  270. package/src/pages/system/applyInstallView/background/click.png +0 -0
  271. package/src/pages/system/applyInstallView/background/download.png +0 -0
  272. package/src/pages/system/applyInstallView/background/end.png +0 -0
  273. package/src/pages/system/applyInstallView/background/push.png +0 -0
  274. package/src/pages/system/applyInstallView/background/start.png +0 -0
  275. package/src/pages/system/applyInstallView/background/step.png +0 -0
  276. package/src/pages/system/applyInstallView/background/time.png +0 -0
  277. package/src/pages/system/applyInstallView/config.js +22 -0
  278. package/src/pages/system/applyInstallView/data.json +1284 -0
  279. package/src/pages/system/applyInstallView/index.vue +34 -0
  280. package/src/pages/system/applyInstallView/registerNode/Connect.vue +43 -0
  281. package/src/pages/system/applyInstallView/registerNode/index.js +16 -0
  282. package/src/pages/system/applyInstallView/registerNode/registerBackEdge.js +44 -0
  283. package/src/pages/system/applyInstallView/registerNode/registerBase.js +139 -0
  284. package/src/pages/system/applyInstallView/registerNode/registerConnect.js +60 -0
  285. package/src/pages/system/applyInstallView/registerNode/registerDownload.js +92 -0
  286. package/src/pages/system/applyInstallView/registerNode/registerEnd.js +110 -0
  287. package/src/pages/system/applyInstallView/registerNode/registerPolyline.js +14 -0
  288. package/src/pages/system/applyInstallView/registerNode/registerPush.js +127 -0
  289. package/src/pages/system/applyInstallView/registerNode/registerStart.js +105 -0
  290. package/src/pages/system/applyInstallView/registerNode/registerStep.js +209 -0
  291. package/src/pages/system/applyInstallView/registerNode/registerTask.js +29 -0
  292. package/src/pages/system/dictionary/index.vue +41 -0
  293. package/src/pages/system/queryParams/index.vue +41 -0
  294. package/src/router/async/config.async.js +25 -0
  295. package/src/router/async/router.map.js +59 -0
  296. package/src/router/config.js +23 -0
  297. package/src/router/guards.js +104 -0
  298. package/src/router/i18n.js +57 -0
  299. package/src/router/index.js +31 -0
  300. package/src/services/api/CustomerDetailsViewApi.js +6 -0
  301. package/src/services/api/DeviceBrandDetailsViewApi.js +14 -0
  302. package/src/services/api/DeviceDetailsViewApi.js +10 -0
  303. package/src/services/api/DeviceTypeDetailsViewApi.js +6 -0
  304. package/src/services/api/DictionaryDetailsViewApi.js +6 -0
  305. package/src/services/api/EmployeeDetailsViewApi.js +16 -0
  306. package/src/services/api/FormGroupEditApi.js +6 -0
  307. package/src/services/api/InstructDetailsViewApi.js +12 -0
  308. package/src/services/api/LogDetailsViewApi.js +10 -0
  309. package/src/services/api/MeterDetailsViewApi.js +24 -0
  310. package/src/services/api/QueryParamsDetailsViewApi.js +6 -0
  311. package/src/services/api/TicketDetailsViewApi.js +30 -0
  312. package/src/services/api/WebmeterAnalysisViewApi.js +30 -0
  313. package/src/services/api/common.js +39 -0
  314. package/src/services/api/iot.js +7 -0
  315. package/src/services/api/manage.js +12 -0
  316. package/src/services/api/restTools.js +23 -0
  317. package/src/services/api/service.js +12 -0
  318. package/src/services/api.js +11 -0
  319. package/src/services/dataSource.js +12 -0
  320. package/src/services/index.js +7 -0
  321. package/src/services/user.js +34 -0
  322. package/src/store/index.js +8 -0
  323. package/src/store/modules/account.js +103 -0
  324. package/src/store/modules/index.js +4 -0
  325. package/src/store/modules/setting.js +114 -0
  326. package/src/store/mutation-types.js +1 -0
  327. package/src/theme/antd/ant-menu.less +3 -0
  328. package/src/theme/antd/ant-message.less +3 -0
  329. package/src/theme/antd/ant-table.less +22 -0
  330. package/src/theme/antd/ant-time-picker.less +3 -0
  331. package/src/theme/antd/index.less +4 -0
  332. package/src/theme/default/color.less +43 -0
  333. package/src/theme/default/index.less +3 -0
  334. package/src/theme/default/nprogress.less +76 -0
  335. package/src/theme/default/style.less +33 -0
  336. package/src/theme/global.less +130 -0
  337. package/src/theme/index.less +5 -0
  338. package/src/theme/reportTable.less +58 -0
  339. package/src/theme/theme.less +1 -0
  340. package/src/utils/Objects.js +25 -0
  341. package/src/utils/authority-utils.js +85 -0
  342. package/src/utils/axios-interceptors.js +82 -0
  343. package/src/utils/colors.js +103 -0
  344. package/src/utils/excel/Blob.js +181 -0
  345. package/src/utils/excel/Export2Excel.js +142 -0
  346. package/src/utils/filter.js +21 -0
  347. package/src/utils/formatter.js +68 -0
  348. package/src/utils/i18n.js +80 -0
  349. package/src/utils/indexedDB.js +146 -0
  350. package/src/utils/request.js +197 -0
  351. package/src/utils/routerUtil.js +353 -0
  352. package/src/utils/theme-color-replacer-extend.js +92 -0
  353. package/src/utils/themeUtil.js +102 -0
  354. package/src/utils/util.js +134 -0
  355. package/tests/unit/ReportTable.spec.js +15 -0
  356. package/vue.config.js +152 -0
  357. package/index.js +0 -35
  358. package/src/api/business.js +0 -30
  359. package/src/api/common.js +0 -6
  360. package/src/assets/logo.png +0 -0
  361. package/src/components/Criteria/Criteria.vue +0 -191
  362. package/src/components/Criteria/CriteriaPaged.vue +0 -50
  363. package/src/components/Criteria/index.js +0 -7
  364. package/src/components/Criteria/index.md +0 -120
  365. package/src/components/DataGrid/DataGrid.vue +0 -206
  366. package/src/components/DataGrid/index.js +0 -3
  367. package/src/components/DataGrid/index.md +0 -195
  368. package/src/components/ExportExcel/ExportExcel.vue +0 -246
  369. package/src/components/ExportExcel/index.js +0 -3
  370. package/src/components/ExportExcel/index.md +0 -76
  371. package/src/components/FormItem/index.js +0 -3
  372. package/src/components/InstructDetailsView/InstructDetailsView.vue +0 -518
  373. package/src/components/InstructDetailsView/index.md +0 -40
  374. package/src/components/MetaAnalysis/MetaAnalysis.vue +0 -183
  375. package/src/components/MetaAnalysis/demo/A.vue +0 -31
  376. package/src/components/MetaAnalysis/demo/B.vue +0 -31
  377. package/src/components/MetaAnalysis/demo/C.vue +0 -31
  378. package/src/components/MetaAnalysis/demo/MetaTest.vue +0 -44
  379. package/src/components/MetaAnalysis/index.js +0 -3
  380. package/src/components/MetaAnalysis/index.md +0 -255
  381. package/src/components/MeterDetailsView/MeterDetailsView.vue +0 -317
  382. package/src/components/MeterDetailsView/index.md +0 -40
  383. package/src/components/MeterDetailsView/part/index.js +0 -9
  384. package/src/components/ModalView/Modal.vue +0 -100
  385. package/src/components/ModalView/index.js +0 -3
  386. package/src/components/WCriteria/WCriteria.vue +0 -191
  387. package/src/components/WCriteria/WCriteriaPaged.vue +0 -95
  388. package/src/components/WCriteria/index.js +0 -7
  389. package/src/components/WCriteria/index.md +0 -120
  390. package/src/components/WTable/WTable.vue +0 -216
  391. package/src/components/WTable/index.js +0 -3
  392. package/src/components/WTable/index.md +0 -195
  393. package/src/plugins/AppData.js +0 -39
  394. package/src/plugins/GetLoginInfoService.js +0 -475
  395. package/src/plugins/MessageBox.js +0 -15
@@ -0,0 +1,570 @@
1
+ <template>
2
+ <div class="logic-flow-view">
3
+ <!-- 辅助工具栏 -->
4
+ <Control
5
+ class="demo-control"
6
+ v-if="lf"
7
+ :lf="lf"
8
+ @catData="$_catData"
9
+ @catRealData="$_catRealData"
10
+ ></Control>
11
+ <a-card
12
+ class="demo-card"
13
+ title="属性预览"
14
+ size="small"
15
+ v-if="Object.keys(selectNodeProperties).length > 0"
16
+ >
17
+ <a-descriptions :column="1" :title="'节点:' + selectNodeProperties.text" >
18
+ <a-descriptions-item v-if="key !== 'formData'" v-for="key of Object.keys(selectNodeProperties)" :key="key" :label="key">
19
+ {{ selectNodeProperties[key] }}
20
+ </a-descriptions-item>
21
+ </a-descriptions>
22
+
23
+ </a-card>
24
+ <!-- 节点面板 -->
25
+ <NodePanel v-if="lf" :lf="lf" :nodeList="nodeList"></NodePanel>
26
+ <!-- 画布 -->
27
+ <div id="LF-view"></div>
28
+ <!-- 步骤节点自定义操作面板 -->
29
+ <AddPanel
30
+ v-if="showAddPanel"
31
+ class="add-panel"
32
+ :style="addPanelStyle"
33
+ :lf="lf"
34
+ :nodeData="addClickNode"
35
+ :node-list="addNodeList"
36
+ @addNodeFinish="hideAddPanel"
37
+ >
38
+ </AddPanel>
39
+ <!-- 属性面板 -->
40
+ <a-drawer
41
+ title="设置节点属性"
42
+ :visible="dialogVisible"
43
+ width="40%"
44
+ @close="closeDialog">
45
+ <PropertyDialog
46
+ v-if="dialogVisible"
47
+ :nodeData="clickNode"
48
+ :lf="lf"
49
+ @setPropertiesFinish="closeDialog"
50
+ ></PropertyDialog>
51
+ </a-drawer>
52
+ <!-- 表单构建面板 -->
53
+ <create-simple-form-query
54
+ :visible.sync="createSimpleFormVisible"
55
+ :to-edit-json="createFormNodeJson"
56
+ @saveSimpleFormQueryParams="saveSimpleFormQueryParams"
57
+ />
58
+ <!-- 数据查看面板 -->
59
+ <a-modal
60
+ title="原始数据"
61
+ v-model="dataVisible"
62
+ width="50%">
63
+ <DataDialog :graphData="graphData"></DataDialog>
64
+ </a-modal>
65
+ <!-- 实际数据查看面板 -->
66
+ <a-modal
67
+ title="实际数据"
68
+ v-model="realDataVisible"
69
+ width="50%"
70
+ @ok="saveData"
71
+ >
72
+ <a-tabs default-active-key="99999">
73
+ <a-tab-pane key="99999" tab="报装流程配置">
74
+ <pre>{{ graphRealData }}</pre>
75
+ </a-tab-pane>
76
+ <a-tab-pane v-for="item of hasFormNodeList" :key="item.id" :tab="'表单:' + item.properties.formData.describe">
77
+ <json-viewer :copyable="{copyText: '复制', copiedText: '已复制'}" :value="item.properties.formData" :expand-depth="parseInt('100')" style="overflow: auto;max-height: 440px"></json-viewer>
78
+ </a-tab-pane>
79
+ </a-tabs>
80
+ </a-modal>
81
+ </div>
82
+ </template>
83
+ <script>
84
+ import LogicFlow from '@logicflow/core'
85
+ // const LogicFlow = window.LogicFlow
86
+ import { Menu, SelectionSelect, Snapshot } from '@logicflow/extension'
87
+ import '@logicflow/core/dist/style/index.css'
88
+ import '@logicflow/extension/lib/style/index.css'
89
+ import NodePanel from './LFComponents/NodePanel'
90
+ import AddPanel from './LFComponents/AddPanel'
91
+ import Control from './LFComponents/Control'
92
+ import PropertyDialog from './PropertySetting/PropertyDialog'
93
+ import DataDialog from './LFComponents/DataDialog'
94
+ import { nodeList } from './config'
95
+ import { showXml } from '@/utils/util'
96
+ import FileSaver from 'file-saver'
97
+ import JsonViewer from 'vue-json-viewer'
98
+
99
+ import {
100
+ registerBackEdge,
101
+ registerConnect,
102
+ registerDownload,
103
+ registerEnd,
104
+ registerPolyline,
105
+ registerPush,
106
+ registerStart,
107
+ registerStep,
108
+ registerTask,
109
+ registerBase
110
+ } from './registerNode'
111
+
112
+ const demoData = require('./data.json')
113
+
114
+ export default {
115
+ name: 'LF',
116
+ components: { NodePanel, AddPanel, Control, PropertyDialog, DataDialog, JsonViewer },
117
+ computed: {
118
+ hasFormNodeList () {
119
+ return this.allNodeList.filter(item => item.type === 'step' && item.properties.formData)
120
+ }
121
+ },
122
+ data () {
123
+ return {
124
+ lf: null,
125
+ showAddPanel: false,
126
+ addPanelStyle: {
127
+ top: 0,
128
+ left: 0
129
+ },
130
+ nodeData: null,
131
+ addClickNode: null,
132
+ clickNode: null,
133
+ dialogVisible: false,
134
+ graphData: null,
135
+ graphRealData: null,
136
+ dataVisible: false,
137
+ realDataVisible: false,
138
+ config: {
139
+ background: {
140
+ backgroundColor: '#f7f9ff'
141
+ },
142
+ grid: {
143
+ size: 10,
144
+ visible: false
145
+ },
146
+ keyboard: {
147
+ enabled: true
148
+ },
149
+ style: {
150
+ rect: {
151
+ radius: 6
152
+ },
153
+ edgeText: { // 边文本样式
154
+ background: {
155
+ fill: '#fff'
156
+ }
157
+ }
158
+ },
159
+ edgeTextDraggable: true,
160
+ hoverOutline: false,
161
+ guards: {
162
+ beforeClone (data) {
163
+ console.log('beforeClone', data)
164
+ return true
165
+ },
166
+ beforeDelete (data) {
167
+ // 可以根据data数据判断是否允许删除,允许返回true,不允许返回false
168
+ // 文档: http://logic-flow.org/guide/basic/keyboard.html#%E5%A6%82%E4%BD%95%E9%98%BB%E6%AD%A2%E5%88%A0%E9%99%A4%E6%88%96%E8%80%85%E6%8B%B7%E8%B4%9D%E8%A1%8C%E4%B8%BA
169
+ console.log('beforeDelete', data)
170
+ // _this.$message('不允许删除', 'error')
171
+ return true
172
+ }
173
+ }
174
+ },
175
+ moveData: {},
176
+ nodeList,
177
+ addNodeList: [],
178
+ baseNodeName: '',
179
+ createSimpleFormVisible: false,
180
+ createFormNodeJson: {},
181
+ nodeFormJsonArray: [],
182
+ allNodeList: [],
183
+ selectNodeProperties: {}
184
+ }
185
+ },
186
+ mounted () {
187
+ this.$_initLf()
188
+ },
189
+ methods: {
190
+ $_initLf () {
191
+ // 画布配置
192
+
193
+ // 使用插件
194
+ LogicFlow.use(Menu)
195
+ LogicFlow.use(Snapshot)
196
+ LogicFlow.use(SelectionSelect)
197
+ const lf = new LogicFlow({
198
+ ...this.config,
199
+ container: document.querySelector('#LF-view'),
200
+ stopMoveGraph: true
201
+ })
202
+ this.lf = lf
203
+ // 1.1.0新增用法
204
+ lf.extension.selectionSelect.openSelectionSelect()
205
+ lf.zoom(false)
206
+ lf.zoom(false)
207
+ lf.zoom(false)
208
+ lf.zoom(false)
209
+ lf.zoom(false)
210
+ // 菜单配置文档:http://logic-flow.org/guide/extension/extension-components.html#%E8%8F%9C%E5%8D%95
211
+ // 重置,增加,节点自由配置(以base节点为示例)
212
+ // lf.setMenuConfig({
213
+ // nodeMenu: [],
214
+ // edgeMenu: []
215
+ // })
216
+ // lf.addMenuConfig({
217
+ // nodeMenu: [
218
+ // {
219
+ // text: '分享',
220
+ // callback () {
221
+ // alert('分享成功!')
222
+ // }
223
+ // },
224
+ // {
225
+ // text: '属性',
226
+ // callback (node) {
227
+ // alert(`
228
+ // 节点id:${node.id}
229
+ // 节点类型:${node.type}
230
+ // 节点坐标:(x: ${node.x}, y: ${node.y})`
231
+ // )
232
+ // }
233
+ // }
234
+ // ],
235
+ // edgeMenu: [
236
+ // {
237
+ // text: '属性',
238
+ // callback (edge) {
239
+ // alert(`
240
+ // 边id:${edge.id}
241
+ // 边类型:${edge.type}
242
+ // 边坐标:(x: ${edge.x}, y: ${edge.y})
243
+ // 源节点id:${edge.sourceNodeId}
244
+ // 目标节点id:${edge.targetNodeId}`
245
+ // )
246
+ // }
247
+ // }
248
+ // ]
249
+ // })
250
+ // 设置主题
251
+ lf.setTheme({
252
+ circle: {
253
+ stroke: '#000000',
254
+ strokeWidth: 1,
255
+ outlineColor: '#88f'
256
+ },
257
+ rect: {
258
+ outlineColor: '#88f',
259
+ strokeWidth: 1
260
+ },
261
+ polygon: {
262
+ strokeWidth: 1
263
+ },
264
+ polyline: {
265
+ stroke: '#000000',
266
+ hoverStroke: '#000000',
267
+ selectedStroke: '#000000',
268
+ outlineColor: '#88f',
269
+ strokeWidth: 1
270
+ },
271
+ nodeText: {
272
+ fontSize: 16,
273
+ color: '#000000'
274
+ },
275
+ baseEdge: {
276
+ stroke: '#999',
277
+ strokeWidth: 2
278
+ },
279
+ edgeText: {
280
+ fontSize: 14,
281
+ color: '#000000',
282
+ background: {
283
+ fill: '#f7f9ff'
284
+ }
285
+ }
286
+ })
287
+ this.$_registerNode()
288
+ },
289
+ // 自定义
290
+ $_registerNode () {
291
+ registerStart(this.lf)
292
+ registerBase(this.lf, this.clickPlus, this.mouseDownPlus, this.showPropView)
293
+ registerEnd(this.lf)
294
+ registerStep(this.lf, this.clickPlus, this.mouseDownPlus, this.showPropView, this.showSimpleFormView)
295
+ registerPush(this.lf, this.clickPlus, this.mouseDownPlus)
296
+ registerDownload(this.lf)
297
+ registerPolyline(this.lf)
298
+ registerTask(this.lf)
299
+ registerConnect(this.lf)
300
+
301
+ registerBackEdge(this.lf)
302
+ this.$_render()
303
+ },
304
+ $_render () {
305
+ this.lf.render(demoData)
306
+ this.$_LfEvent()
307
+ },
308
+ $_getData () {
309
+ const data = this.lf.getGraphData()
310
+ console.log(JSON.stringify(data))
311
+ },
312
+ showPropView (node) {
313
+ this.$data.clickNode = node
314
+ this.$data.dialogVisible = true
315
+ },
316
+ showSimpleFormView (node) {
317
+ this.$data.clickNode = node
318
+ if (node.properties.formData) {
319
+ this.createFormNodeJson = node.properties.formData
320
+ } else {
321
+ this.createFormNodeJson = {
322
+ group: this.baseNodeName ? this.baseNodeName : '',
323
+ describe: node.text ? node.text.value : ''
324
+ }
325
+ }
326
+ this.$data.createSimpleFormVisible = true
327
+ },
328
+ $_LfEvent () {
329
+ this.lf.on('node:click', ({ data }) => {
330
+ this.selectNodeProperties = data.properties
331
+ })
332
+ this.lf.on('node:dbclick', ({ data }) => {})
333
+ this.lf.on('edge:dbclick', ({ data }) => {})
334
+ this.lf.on('element:click', () => {
335
+ this.hideAddPanel()
336
+ })
337
+ this.lf.on('edge:add', ({ data }) => {
338
+ console.log('edge:add', data)
339
+ })
340
+ this.lf.on('node:mousemove', ({ data }) => {
341
+ console.log('node:mousemove')
342
+ this.moveData = data
343
+ })
344
+ this.lf.on('blank:click', () => {
345
+ this.hideAddPanel()
346
+ })
347
+ this.lf.on('connection:not-allowed', (data) => {
348
+ this.$message.error(data.msg)
349
+ })
350
+ this.lf.on('node:mousemove', () => {
351
+ console.log('on mousemove')
352
+ })
353
+ },
354
+ clickPlus (e, attributes, addNodeList) {
355
+ e.stopPropagation()
356
+ const { clientX, clientY } = e
357
+ console.log(clientX, clientY)
358
+ this.$data.addPanelStyle.top = (clientY - 180) + 'px'
359
+ this.$data.addPanelStyle.left = (clientX - 260) + 'px'
360
+ this.$data.addNodeList = addNodeList
361
+ this.$data.showAddPanel = true
362
+ this.$data.addClickNode = attributes
363
+ },
364
+ mouseDownPlus (e, attributes) {
365
+ e.stopPropagation()
366
+ console.log('mouseDownPlus', e, attributes)
367
+ },
368
+ hideAddPanel () {
369
+ this.$data.showAddPanel = false
370
+ this.$data.addPanelStyle.top = 0
371
+ this.$data.addPanelStyle.left = 0
372
+ // this.$data.addClickNode = null
373
+ console.warn(this.$data)
374
+ },
375
+ closeDialog () {
376
+ this.$data.dialogVisible = false
377
+ },
378
+ $_catData () {
379
+ this.$data.graphData = this.$data.lf.getGraphData()
380
+ this.$data.dataVisible = true
381
+ },
382
+ $_catRealData () {
383
+ const data = this.$data.lf.getGraphData()
384
+ const nodeMap = {}
385
+ this.allNodeList = []
386
+ let baseNode = null
387
+ for (const node of data.nodes) {
388
+ if (node.type === 'step' && !node.properties.id) {
389
+ if (node.text) {
390
+ this.$message.error('节点[' + node.text.value + ']没有设置ID')
391
+ } else {
392
+ this.$message.error('节点需要设置名称')
393
+ }
394
+ return
395
+ }
396
+ const item = {
397
+ id: node.properties.id,
398
+ type: node.type,
399
+ properties: node.properties,
400
+ name: node.text ? node.text.value : ''
401
+ }
402
+ if (item.type === 'base') {
403
+ baseNode = item
404
+ continue
405
+ }
406
+ nodeMap[node.id] = item
407
+ if (node.properties.id) {
408
+ this.allNodeList[node.properties.id] = item
409
+ }
410
+ }
411
+ if (!baseNode) {
412
+ this.$message.error('请设置流程根节点[基础]')
413
+ return
414
+ }
415
+ this.allNodeList.shift()
416
+ const submitList = []
417
+ const backList = []
418
+ const skipList = []
419
+ for (const edge of data.edges) {
420
+ const id = nodeMap[edge.sourceNodeId].properties.id
421
+ const toId = nodeMap[edge.targetNodeId].properties.id
422
+ let type
423
+ if (id && toId) {
424
+ if (toId - id === 1) {
425
+ type = 'submit'
426
+ } else if (id - toId === 1) {
427
+ type = 'back'
428
+ } else if (toId - id > 1) {
429
+ type = 'skip'
430
+ } else if (id - toId > 1) {
431
+ this.$message.error('错误的流程连接[id:' + id + ', to_id:' + toId + '],每次只能退回一个步骤')
432
+ return
433
+ } else {
434
+ this.$message.error('错误的流程连接[id:' + id + ', to_id:' + toId + ']')
435
+ return
436
+ }
437
+ const item = {
438
+ id: id,
439
+ to: toId
440
+ }
441
+ if (type === 'submit') {
442
+ submitList.push(item)
443
+ } else if (type === 'back') {
444
+ backList.push(item)
445
+ } else {
446
+ skipList.push(item)
447
+ }
448
+ }
449
+ }
450
+
451
+ this.baseNodeName = baseNode.properties.text
452
+
453
+ let xml = '<?xml version="1.0" encoding="utf-8"?>'
454
+ xml += '<WorkflowDiagram id="' + baseNode.properties.id + '" name="' + baseNode.properties.text + '">'
455
+
456
+ for (const item of baseNode.properties.propArray) {
457
+ xml += '<Var name="' + item.name + '" id="' + item.id + '" description="' + item.description + '" />'
458
+ }
459
+
460
+ xml += '<Actor id="' + baseNode.properties.personId + '" name="' + baseNode.properties.personName + '">'
461
+
462
+ for (const node of this.allNodeList) {
463
+ let personexpression
464
+ if (node.properties.name.length === 1) {
465
+ personexpression = 'R(' + node.properties.name[0] + ')'
466
+ } else if (node.properties.name.length > 1) {
467
+ personexpression = 'RS('
468
+ for (const nameItem of node.properties.name) {
469
+ personexpression += (nameItem + ',')
470
+ }
471
+ personexpression = personexpression.substring(0, personexpression.length - 1)
472
+ personexpression += ')'
473
+ } else {
474
+ personexpression = ''
475
+ }
476
+ let timeoutExp
477
+ if (node.properties.timeout) {
478
+ timeoutExp = 'timeout="HH(' + node.properties.timeout + ')" '
479
+ } else {
480
+ timeoutExp = ''
481
+ }
482
+ const activity = '<Activity id="' + node.id + '" name="' + node.name + '" personexpression="' + personexpression + '" ' + timeoutExp + '/>'
483
+ xml += activity
484
+ }
485
+ xml += '</Actor>'
486
+ xml += '<!-- 报建流程 -->'
487
+ for (const id in submitList) {
488
+ const edge = submitList[id]
489
+ const diversion = '<Diversion id="' + edge.id + '" head="' + edge.id + '" tail="' + edge.to + '" expression="subedp == $提交$" />'
490
+ xml += diversion
491
+ }
492
+ for (const id in skipList) {
493
+ const edge = skipList[id]
494
+ const diversion = '<Diversion id="' + edge.id + '" head="' + edge.id + '" tail="' + edge.to + '" expression="subedp == $跳过$" />'
495
+ xml += diversion
496
+ }
497
+ for (const id in backList) {
498
+ const edge = backList[id]
499
+ const diversion = '<Diversion id="' + edge.to + '" head="' + edge.id + '" tail="' + edge.to + '" expression="subedp == $退回$" />'
500
+ xml += diversion
501
+ }
502
+
503
+ xml += '</WorkflowDiagram>'
504
+ this.$data.graphRealData = showXml(xml)
505
+ this.$data.realDataVisible = true
506
+ },
507
+ saveData () {
508
+ // 存储流程
509
+ const blob = new Blob([this.graphRealData], { type: 'application/xml' })
510
+ FileSaver.saveAs(blob, this.baseNodeName + `.xml`)
511
+ },
512
+ // 存储基础表单配置信息
513
+ saveSimpleFormQueryParams (source) {
514
+ const properties = Object.assign(this.lf.getProperties(this.clickNode.id), {
515
+ formData: source
516
+ })
517
+ this.lf.setProperties(this.clickNode.id, properties)
518
+ this.$message.success('保存表单成功!')
519
+ }
520
+ }
521
+ }
522
+ </script>
523
+ <style>
524
+ .logic-flow-view {
525
+ height: 100vh;
526
+ position: relative;
527
+ }
528
+ .demo-title{
529
+ text-align: center;
530
+ margin: 20px;
531
+ }
532
+ .demo-control{
533
+ position: absolute;
534
+ top: 50px;
535
+ right: 0;
536
+ z-index: 2;
537
+ }
538
+ .demo-card{
539
+ background-color: rgba(255,255,255,0.2);
540
+ position: absolute;
541
+ width: 250px;
542
+ top: 85px;
543
+ right: 10px;
544
+ z-index: 2;
545
+ }
546
+ #LF-view{
547
+ width: calc(100%);
548
+ height: 100%;
549
+ outline: none;
550
+ }
551
+ .time-plus{
552
+ cursor: pointer;
553
+ }
554
+ .add-panel {
555
+ position: absolute;
556
+ z-index: 11;
557
+ background-color: white;
558
+ padding: 10px 5px;
559
+ }
560
+ .el-drawer__body {
561
+ height: 80%;
562
+ overflow: auto;
563
+ margin-top: -30px;
564
+ z-index: 3;
565
+ }
566
+ .lf-element-text {
567
+ font-weight: bold;
568
+ z-index: 99999;
569
+ }
570
+ </style>
@@ -0,0 +1,52 @@
1
+ <template>
2
+ <a-tabs tab-position="left">
3
+ <a-tab-pane tab="操作">
4
+ <div v-for="item in nodeList" :key="item.type">
5
+ <a-button class="add-node-btn" type="primary" size="small" @click="$_addNode(item)">{{ item.label }}</a-button>
6
+ </div>
7
+ </a-tab-pane>
8
+ </a-tabs>
9
+ </template>
10
+ <script>
11
+ export default {
12
+ name: 'AddPanel',
13
+ props: {
14
+ nodeData: {
15
+ type: Object,
16
+ default: null
17
+ },
18
+ lf: {
19
+ type: Object || String,
20
+ default: null
21
+ },
22
+ nodeList: {
23
+ type: Array,
24
+ default: null
25
+ }
26
+ },
27
+ data () {
28
+ return {
29
+ }
30
+ },
31
+ methods: {
32
+ $_addNode (item) {
33
+ const { lf, nodeData } = this.$props
34
+ const { id, x, y } = nodeData
35
+ const nextNode = lf.addNode({
36
+ type: item.type,
37
+ x: x + 0,
38
+ y: y + 120
39
+ })
40
+ const nextId = nextNode.id
41
+ lf.addEdge({ sourceNodeId: id, targetNodeId: nextId })
42
+ this.$emit('addNodeFinish')
43
+ }
44
+ }
45
+ }
46
+ </script>
47
+ <style scoped>
48
+ .add-node-btn{
49
+ margin-bottom: 10px;
50
+ margin-right: 20px;
51
+ }
52
+ </style>
@@ -0,0 +1,78 @@
1
+ <template>
2
+ <div>
3
+ <a-button-group>
4
+ <a-button type="plain" size="small" @click="$_zoomIn">放大</a-button>
5
+ <a-button type="plain" size="small" @click="$_zoomOut">缩小</a-button>
6
+ <a-button type="plain" size="small" @click="$_zoomReset">大小适应</a-button>
7
+ <a-button type="plain" size="small" @click="$_translateRest">定位还原</a-button>
8
+ <a-button type="plain" size="small" @click="$_reset">还原(大小&定位)</a-button>
9
+ <a-button type="plain" size="small" @click="$_undo" :disabled="undoDisable">上一步(ctrl+z)</a-button>
10
+ <a-button type="plain" size="small" @click="$_redo" :disabled="redoDisable">下一步(ctrl+y)</a-button>
11
+ <a-button type="plain" size="small" @click="$_download">下载图片</a-button>
12
+ <a-button type="plain" size="small" @click="$_catData">查看数据</a-button>
13
+ <a-button type="plain" size="small" @click="$_catRealData">查看实际数据</a-button>
14
+ <a-button v-if="catTurboData" type="plain" size="small" @click="$_catTurboData">查看turbo数据</a-button>
15
+ </a-button-group>
16
+ </div>
17
+ </template>
18
+ <script>
19
+ export default {
20
+ name: 'Control',
21
+ props: {
22
+ lf: Object || String,
23
+ catTurboData: Boolean
24
+ },
25
+ data () {
26
+ return {
27
+ undoDisable: true,
28
+ redoDisable: true,
29
+ graphData: null,
30
+ dataVisible: false
31
+ }
32
+ },
33
+ mounted () {
34
+ this.$props.lf.on('history:change', ({ data: { undoAble, redoAble } }) => {
35
+ this.$data.undoDisable = !undoAble
36
+ this.$data.redoDisable = !redoAble
37
+ })
38
+ },
39
+ methods: {
40
+ $_zoomIn () {
41
+ this.$props.lf.zoom(true)
42
+ },
43
+ $_zoomOut () {
44
+ this.$props.lf.zoom(false)
45
+ },
46
+ $_zoomReset () {
47
+ this.$props.lf.resetZoom()
48
+ },
49
+ $_translateRest () {
50
+ this.$props.lf.resetTranslate()
51
+ },
52
+ $_reset () {
53
+ this.$props.lf.resetZoom()
54
+ this.$props.lf.resetTranslate()
55
+ },
56
+ $_undo () {
57
+ this.$props.lf.undo()
58
+ },
59
+ $_redo () {
60
+ this.$props.lf.redo()
61
+ },
62
+ $_download () {
63
+ this.$props.lf.getSnapshot()
64
+ },
65
+ $_catData () {
66
+ this.$emit('catData')
67
+ },
68
+ $_catRealData () {
69
+ this.$emit('catRealData')
70
+ },
71
+ $_catTurboData () {
72
+ this.$emit('catTurboData')
73
+ }
74
+ }
75
+ }
76
+ </script>
77
+ <style scoped>
78
+ </style>