vue2-client 0.1.1 → 1.2.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 (394) 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 +56 -36
  7. package/babel.config.js +14 -5
  8. package/docs/index.md +29 -0
  9. package/index.js +28 -35
  10. package/jest.config.js +3 -0
  11. package/package.json +68 -22
  12. package/public/index.html +27 -17
  13. package/src/App.vue +93 -0
  14. package/src/assets/img/alipay.png +0 -0
  15. package/src/assets/img/defect.png +0 -0
  16. package/src/assets/img/error.png +0 -0
  17. package/src/assets/img/logo.png +0 -0
  18. package/src/assets/img/preview-nine.png +0 -0
  19. package/src/assets/img/preview.png +0 -0
  20. package/src/assets/img/success.png +0 -0
  21. package/src/assets/img/success1.png +0 -0
  22. package/src/assets/img/wechatpay.png +0 -0
  23. package/src/base-client/all.js +57 -0
  24. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +1159 -0
  25. package/src/base-client/components/common/CreateQuery/index.js +3 -0
  26. package/src/base-client/components/common/CreateQuery/index.md +42 -0
  27. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +540 -0
  28. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -0
  29. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -0
  30. package/src/{components → base-client/components/common}/CustomColumnsDrawer/CustomColumnsDrawer.vue +21 -15
  31. package/src/{components → base-client/components/common}/CustomColumnsDrawer/index.js +0 -0
  32. package/src/{components → base-client/components/common}/CustomColumnsDrawer/index.md +46 -46
  33. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +150 -0
  34. package/src/base-client/components/common/FormGroupEdit/index.js +3 -0
  35. package/src/base-client/components/common/FormGroupEdit/index.md +43 -0
  36. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +163 -0
  37. package/src/base-client/components/common/FormGroupQuery/index.js +3 -0
  38. package/src/base-client/components/common/FormGroupQuery/index.md +43 -0
  39. package/src/base-client/components/common/JSONToTree/index.js +3 -0
  40. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -0
  41. package/src/base-client/components/common/XAddForm/XAddForm.vue +323 -0
  42. package/src/base-client/components/common/XAddForm/index.js +3 -0
  43. package/src/base-client/components/common/XAddForm/index.md +60 -0
  44. package/src/base-client/components/common/XBadge/XBadge.vue +61 -0
  45. package/src/base-client/components/common/XBadge/index.js +3 -0
  46. package/src/base-client/components/common/XBadge/index.md +39 -0
  47. package/src/base-client/components/common/XCard/XCard.vue +59 -0
  48. package/src/base-client/components/common/XCard/index.js +3 -0
  49. package/src/base-client/components/common/XCard/index.md +43 -0
  50. package/src/base-client/components/common/XForm/XForm.vue +275 -0
  51. package/src/base-client/components/common/XForm/XFormItem.vue +217 -0
  52. package/src/base-client/components/common/XForm/index.js +3 -0
  53. package/src/base-client/components/common/XForm/index.md +196 -0
  54. package/src/{components/FormItem/FormItem.vue → base-client/components/common/XFormCol/XFormCol.vue} +16 -14
  55. package/src/base-client/components/common/XFormCol/index.js +3 -0
  56. package/src/{components/FormItem → base-client/components/common/XFormCol}/index.md +35 -35
  57. package/src/base-client/components/common/XFormTable/XFormTable.vue +405 -0
  58. package/src/base-client/components/common/XFormTable/index.js +3 -0
  59. package/src/base-client/components/common/XFormTable/index.md +89 -0
  60. package/src/base-client/components/common/XTable/XTable.vue +262 -0
  61. package/src/base-client/components/common/XTable/index.js +3 -0
  62. package/src/base-client/components/common/XTable/index.md +255 -0
  63. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +105 -0
  64. package/src/base-client/components/common/XTreeOne/index.js +3 -0
  65. package/src/base-client/components/iot/CustomerDetailsView/CustomerDetailsView.vue +226 -0
  66. package/src/base-client/components/iot/CustomerDetailsView/index.js +3 -0
  67. package/src/base-client/components/iot/CustomerDetailsView/index.md +41 -0
  68. package/src/base-client/components/iot/DataAnalysisUser/DataAnalysisUser.vue +127 -0
  69. package/src/base-client/components/iot/DataAnalysisUser/index.js +3 -0
  70. package/src/base-client/components/iot/DataAnalysisView/DataAnalysisView.vue +250 -0
  71. package/src/base-client/components/iot/DataAnalysisView/index.js +3 -0
  72. package/src/base-client/components/iot/DataAnalysisViewGD/DataAnalysisViewGD.vue +548 -0
  73. package/src/base-client/components/iot/DataAnalysisViewGD/WindowTemplate/WindowInfotemp.vue +99 -0
  74. package/src/base-client/components/iot/DataAnalysisViewGD/WindowTemplate/index.js +3 -0
  75. package/src/base-client/components/iot/DataAnalysisViewGD/index.js +3 -0
  76. package/src/base-client/components/iot/DeviceBrandDetailsView/DeviceBrandDetailsView.vue +453 -0
  77. package/src/base-client/components/iot/DeviceBrandDetailsView/index.js +3 -0
  78. package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +231 -0
  79. package/src/base-client/components/iot/DeviceDetailsView/index.js +3 -0
  80. package/src/base-client/components/iot/DeviceDetailsView/index.md +43 -0
  81. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsCount.vue +330 -0
  82. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -0
  83. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstruct.vue +122 -0
  84. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstructOperate.vue +122 -0
  85. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsMain.vue +225 -0
  86. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +135 -0
  87. package/src/base-client/components/iot/DeviceDetailsView/part/index.js +8 -0
  88. package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +277 -0
  89. package/src/base-client/components/iot/DeviceTypeDetailsView/index.js +3 -0
  90. package/src/base-client/components/iot/InstructDetailsView/InstructDetailsView.vue +472 -0
  91. package/src/{components → base-client/components/iot}/InstructDetailsView/index.js +0 -0
  92. package/src/base-client/components/iot/InstructDetailsView/index.md +45 -0
  93. package/src/base-client/components/iot/LogDetailsView/LogDetailsView.vue +380 -0
  94. package/src/base-client/components/iot/LogDetailsView/index.js +3 -0
  95. package/src/base-client/components/iot/LogDetailsView/index.md +43 -0
  96. package/src/base-client/components/iot/MeterDetailsView/MeterDetailsView.vue +360 -0
  97. package/src/{components → base-client/components/iot}/MeterDetailsView/index.js +0 -0
  98. package/src/base-client/components/iot/MeterDetailsView/index.md +43 -0
  99. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsCount.vue +335 -381
  100. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsException.vue +185 -204
  101. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsHandPlan.vue +292 -320
  102. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsInstruct.vue +237 -278
  103. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsMain.vue +257 -247
  104. package/src/{components → base-client/components/iot}/MeterDetailsView/part/MeterDetailsSellGas.vue +190 -211
  105. package/src/base-client/components/iot/MeterDetailsView/part/index.js +9 -0
  106. package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +723 -0
  107. package/src/base-client/components/iot/WebmeterAnalysisView/index.js +3 -0
  108. package/src/base-client/components/iot/WebmeterAnalysisView/index.md +48 -0
  109. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -0
  110. package/src/base-client/components/system/DictionaryDetailsView/index.js +3 -0
  111. package/src/base-client/components/system/DictionaryDetailsView/index.md +41 -0
  112. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +248 -0
  113. package/src/base-client/components/system/QueryParamsDetailsView/index.js +3 -0
  114. package/src/base-client/components/ticket/EmployeeDetailsView/EmployeeDetailsView.vue +406 -0
  115. package/src/base-client/components/ticket/EmployeeDetailsView/index.js +3 -0
  116. package/src/base-client/components/ticket/EmployeeDetailsView/index.md +28 -0
  117. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +486 -0
  118. package/src/base-client/components/ticket/TicketDetailsView/index.js +3 -0
  119. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -0
  120. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +184 -0
  121. package/src/base-client/components/ticket/TicketDetailsView/part/index.js +3 -0
  122. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +303 -0
  123. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.js +3 -0
  124. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -0
  125. package/src/base-client/plugins/AppData.js +69 -0
  126. package/src/{plugins → base-client/plugins}/Config.js +1 -1
  127. package/src/base-client/plugins/GetLoginInfoService.js +221 -0
  128. package/src/{plugins → base-client/plugins}/PagedList.js +0 -0
  129. package/src/base-client/plugins/authority-plugin.js +167 -0
  130. package/src/base-client/plugins/i18n-extend.js +32 -0
  131. package/src/base-client/plugins/index.js +21 -0
  132. package/src/{plugins → base-client/plugins}/moment.js +8 -8
  133. package/src/base-client/plugins/tabs-page-plugin.js +38 -0
  134. package/src/bootstrap.js +27 -0
  135. package/src/components/Charts/Bar.vue +62 -0
  136. package/src/components/Charts/ChartCard.vue +120 -0
  137. package/src/components/Charts/DataUserOrderSituation.vue +77 -0
  138. package/src/components/Charts/DataUserReporting.vue +74 -0
  139. package/src/components/Charts/DataUserSituation.vue +107 -0
  140. package/src/components/Charts/Liquid.vue +67 -0
  141. package/src/components/Charts/MiniArea.vue +39 -0
  142. package/src/components/Charts/MiniBar.vue +39 -0
  143. package/src/components/Charts/MiniProgress.vue +75 -0
  144. package/src/components/Charts/MiniSmoothArea.vue +40 -0
  145. package/src/components/Charts/Radar.vue +68 -0
  146. package/src/components/Charts/RankList.vue +77 -0
  147. package/src/components/Charts/TagCloud.vue +113 -0
  148. package/src/components/Charts/TransferBar.vue +64 -0
  149. package/src/components/Charts/Trend.vue +82 -0
  150. package/src/components/Charts/chart.less +13 -0
  151. package/src/components/Charts/smooth.area.less +14 -0
  152. package/src/components/Ellipsis/Ellipsis.vue +64 -0
  153. package/src/components/Ellipsis/index.js +3 -0
  154. package/src/components/Ellipsis/index.md +38 -0
  155. package/src/components/NumberInfo/NumberInfo.vue +54 -0
  156. package/src/components/NumberInfo/index.js +3 -0
  157. package/src/components/NumberInfo/index.less +55 -0
  158. package/src/components/NumberInfo/index.md +43 -0
  159. package/src/components/STable/README.md +341 -0
  160. package/src/components/STable/index.js +316 -0
  161. package/src/components/Trend/Trend.vue +41 -0
  162. package/src/components/Trend/index.js +3 -0
  163. package/src/components/Trend/index.less +42 -0
  164. package/src/components/Trend/index.md +45 -0
  165. package/src/components/_util/util.js +46 -0
  166. package/src/components/cache/AKeepAlive.js +172 -0
  167. package/src/components/card/ChartCard.vue +79 -0
  168. package/src/components/chart/Bar.vue +60 -0
  169. package/src/components/chart/MiniArea.vue +67 -0
  170. package/src/components/chart/MiniBar.vue +59 -0
  171. package/src/components/chart/MiniProgress.vue +57 -0
  172. package/src/components/chart/Radar.vue +80 -0
  173. package/src/components/chart/RankingList.vue +60 -0
  174. package/src/components/chart/Trend.vue +79 -0
  175. package/src/components/chart/index.less +9 -0
  176. package/src/components/checkbox/ColorCheckbox.vue +157 -0
  177. package/src/components/checkbox/ImgCheckbox.vue +163 -0
  178. package/src/components/checkbox/index.js +7 -0
  179. package/src/components/dataAnalysisView/UserData.vue +61 -0
  180. package/src/components/exception/ExceptionPage.vue +70 -0
  181. package/src/components/exception/typeConfig.js +19 -0
  182. package/src/components/form/FormRow.vue +52 -0
  183. package/src/components/index.js +36 -0
  184. package/src/components/index.less +6 -0
  185. package/src/components/input/IInput.vue +66 -0
  186. package/src/components/menu/Contextmenu.vue +84 -0
  187. package/src/components/menu/SideMenu.vue +62 -0
  188. package/src/components/menu/index.less +38 -0
  189. package/src/components/menu/menu.js +273 -0
  190. package/src/components/page/header/PageHeader.vue +64 -0
  191. package/src/components/page/header/index.less +40 -0
  192. package/src/components/result/Result.vue +77 -0
  193. package/src/components/setting/Setting.vue +237 -0
  194. package/src/components/setting/SettingItem.vue +26 -0
  195. package/src/components/setting/i18n.js +117 -0
  196. package/src/components/table/StandardTable.vue +142 -0
  197. package/src/components/table/advance/ActionColumns.vue +158 -0
  198. package/src/components/table/advance/ActionSize.vue +45 -0
  199. package/src/components/table/advance/AdvanceTable.vue +275 -0
  200. package/src/components/table/advance/SearchArea.vue +355 -0
  201. package/src/components/table/advance/index.js +2 -0
  202. package/src/components/table/api/ApiTable.vue +50 -0
  203. package/src/components/task/TaskGroup.vue +80 -0
  204. package/src/components/task/TaskItem.vue +26 -0
  205. package/src/components/tool/AStepItem.vue +60 -0
  206. package/src/components/tool/AvatarList.vue +69 -0
  207. package/src/components/tool/DetailList.vue +157 -0
  208. package/src/components/tool/Drawer.vue +142 -0
  209. package/src/components/tool/FooterToolBar.vue +30 -0
  210. package/src/components/tool/HeadInfo.vue +35 -0
  211. package/src/components/tool/TagSelect.vue +83 -0
  212. package/src/components/tool/TagSelectOption.vue +33 -0
  213. package/src/components/transition/PageToggleTransition.vue +97 -0
  214. package/src/config/config.js +13 -0
  215. package/src/config/default/admin.config.js +18 -0
  216. package/src/config/default/animate.config.js +21 -0
  217. package/src/config/default/antd.config.js +84 -0
  218. package/src/config/default/index.js +6 -0
  219. package/src/config/default/setting.config.js +33 -0
  220. package/src/config/index.js +6 -0
  221. package/src/config/replacer/index.js +10 -0
  222. package/src/config/replacer/resolve.config.js +67 -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 +15 -7
  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/guards.js +104 -0
  297. package/src/router/i18n.js +57 -0
  298. package/src/router/index.js +27 -0
  299. package/src/services/api/CustomerDetailsViewApi.js +6 -0
  300. package/src/services/api/DeviceBrandDetailsViewApi.js +14 -0
  301. package/src/services/api/DeviceDetailsViewApi.js +10 -0
  302. package/src/services/api/DeviceTypeDetailsViewApi.js +6 -0
  303. package/src/services/api/DictionaryDetailsViewApi.js +6 -0
  304. package/src/services/api/EmployeeDetailsViewApi.js +16 -0
  305. package/src/services/api/FormGroupEditApi.js +6 -0
  306. package/src/services/api/InstructDetailsViewApi.js +12 -0
  307. package/src/services/api/LogDetailsViewApi.js +10 -0
  308. package/src/services/api/MeterDetailsViewApi.js +24 -0
  309. package/src/services/api/QueryParamsDetailsViewApi.js +6 -0
  310. package/src/services/api/TicketDetailsViewApi.js +30 -0
  311. package/src/services/api/WebmeterAnalysisViewApi.js +30 -0
  312. package/src/services/api/common.js +39 -0
  313. package/src/services/api/iot.js +7 -0
  314. package/src/services/api/manage.js +12 -0
  315. package/src/services/api/restTools.js +23 -0
  316. package/src/services/api/service.js +12 -0
  317. package/src/services/api.js +11 -0
  318. package/src/services/dataSource.js +12 -0
  319. package/src/services/index.js +7 -0
  320. package/src/services/user.js +34 -0
  321. package/src/store/index.js +5 -0
  322. package/src/store/modules/account.js +103 -0
  323. package/src/store/modules/index.js +4 -0
  324. package/src/store/modules/setting.js +114 -0
  325. package/src/store/mutation-types.js +1 -0
  326. package/src/theme/antd/ant-menu.less +3 -0
  327. package/src/theme/antd/ant-message.less +3 -0
  328. package/src/theme/antd/ant-table.less +22 -0
  329. package/src/theme/antd/ant-time-picker.less +3 -0
  330. package/src/theme/antd/index.less +4 -0
  331. package/src/theme/default/color.less +43 -0
  332. package/src/theme/default/index.less +3 -0
  333. package/src/theme/default/nprogress.less +76 -0
  334. package/src/theme/default/style.less +33 -0
  335. package/src/theme/global.less +130 -0
  336. package/src/theme/index.less +5 -0
  337. package/src/theme/reportTable.less +58 -0
  338. package/src/theme/theme.less +1 -0
  339. package/src/utils/Objects.js +25 -0
  340. package/src/utils/authority-utils.js +85 -0
  341. package/src/utils/axios-interceptors.js +82 -0
  342. package/src/utils/colors.js +103 -0
  343. package/src/utils/excel/Blob.js +181 -0
  344. package/src/utils/excel/Export2Excel.js +142 -0
  345. package/src/utils/filter.js +21 -0
  346. package/src/utils/formatter.js +68 -0
  347. package/src/utils/i18n.js +80 -0
  348. package/src/utils/indexedDB.js +146 -0
  349. package/src/utils/request.js +197 -0
  350. package/src/utils/routerUtil.js +353 -0
  351. package/src/utils/theme-color-replacer-extend.js +92 -0
  352. package/src/utils/themeUtil.js +102 -0
  353. package/src/utils/util.js +134 -0
  354. package/tests/unit/ReportTable.spec.js +15 -0
  355. package/vue.config.js +153 -0
  356. package/webpack.config.js +12 -0
  357. package/src/api/business.js +0 -30
  358. package/src/api/common.js +0 -6
  359. package/src/assets/logo.png +0 -0
  360. package/src/components/Criteria/Criteria.vue +0 -191
  361. package/src/components/Criteria/CriteriaPaged.vue +0 -50
  362. package/src/components/Criteria/index.js +0 -7
  363. package/src/components/Criteria/index.md +0 -120
  364. package/src/components/DataGrid/DataGrid.vue +0 -206
  365. package/src/components/DataGrid/index.js +0 -3
  366. package/src/components/DataGrid/index.md +0 -195
  367. package/src/components/ExportExcel/ExportExcel.vue +0 -246
  368. package/src/components/ExportExcel/index.js +0 -3
  369. package/src/components/ExportExcel/index.md +0 -76
  370. package/src/components/FormItem/index.js +0 -3
  371. package/src/components/InstructDetailsView/InstructDetailsView.vue +0 -518
  372. package/src/components/InstructDetailsView/index.md +0 -40
  373. package/src/components/MetaAnalysis/MetaAnalysis.vue +0 -183
  374. package/src/components/MetaAnalysis/demo/A.vue +0 -31
  375. package/src/components/MetaAnalysis/demo/B.vue +0 -31
  376. package/src/components/MetaAnalysis/demo/C.vue +0 -31
  377. package/src/components/MetaAnalysis/demo/MetaTest.vue +0 -44
  378. package/src/components/MetaAnalysis/index.js +0 -3
  379. package/src/components/MetaAnalysis/index.md +0 -255
  380. package/src/components/MeterDetailsView/MeterDetailsView.vue +0 -317
  381. package/src/components/MeterDetailsView/index.md +0 -40
  382. package/src/components/MeterDetailsView/part/index.js +0 -9
  383. package/src/components/ModalView/Modal.vue +0 -100
  384. package/src/components/ModalView/index.js +0 -3
  385. package/src/components/WCriteria/WCriteria.vue +0 -191
  386. package/src/components/WCriteria/WCriteriaPaged.vue +0 -95
  387. package/src/components/WCriteria/index.js +0 -7
  388. package/src/components/WCriteria/index.md +0 -120
  389. package/src/components/WTable/WTable.vue +0 -216
  390. package/src/components/WTable/index.js +0 -3
  391. package/src/components/WTable/index.md +0 -195
  392. package/src/plugins/AppData.js +0 -39
  393. package/src/plugins/GetLoginInfoService.js +0 -475
  394. package/src/plugins/MessageBox.js +0 -15
@@ -0,0 +1,167 @@
1
+ /**
2
+ * 获取路由需要的权限
3
+ * @param permissions
4
+ * @param route
5
+ * @returns {Permission}
6
+ */
7
+ const getRoutePermission = (permissions, route) => permissions.find(item => item.id === route.meta.authority.permission)
8
+ /**
9
+ * 获取路由需要的角色
10
+ * @param roles
11
+ * @param route
12
+ * @returns {Array[Role]}
13
+ */
14
+ const getRouteRole = (roles, route) => {
15
+ const requiredRoles = route.meta.authority.role
16
+ return requiredRoles ? roles.filter(item => requiredRoles.findIndex(required => required === item.id) !== -1) : []
17
+ }
18
+ /**
19
+ * 判断是否已为方法注入权限认证
20
+ * @param method
21
+ * @returns {boolean}
22
+ */
23
+ const hasInjected = (method) => method.toString().indexOf('//--auth-inject') !== -1
24
+
25
+ /**
26
+ * 操作权限校验
27
+ * @param authConfig
28
+ * @param permission
29
+ * @param role
30
+ * @param permissions
31
+ * @param roles
32
+ * @returns {boolean}
33
+ */
34
+ const auth = function (authConfig, permission, role, permissions, roles) {
35
+ const { check, type } = authConfig
36
+ if (check && typeof check === 'function') {
37
+ return check.apply(this, [permission, role, permissions, roles])
38
+ }
39
+ if (type === 'permission') {
40
+ return checkFromPermission(check, permission)
41
+ } else if (type === 'role') {
42
+ return checkFromRoles(check, role)
43
+ } else {
44
+ return checkFromPermission(check, permission) || checkFromRoles(check, role)
45
+ }
46
+ }
47
+
48
+ /**
49
+ * 检查权限是否有操作权限
50
+ * @param check 需要检查的操作权限
51
+ * @param permission 权限
52
+ * @returns {boolean}
53
+ */
54
+ const checkFromPermission = function (check, permission) {
55
+ return permission && permission.operation && permission.operation.indexOf(check) !== -1
56
+ }
57
+
58
+ /**
59
+ * 检查 roles 是否有操作权限
60
+ * @param check 需要检查的操作权限
61
+ * @param roles 角色数组
62
+ * @returns {boolean}
63
+ */
64
+ const checkFromRoles = function (check, roles) {
65
+ if (!roles) {
66
+ return false
67
+ }
68
+ for (const role of roles) {
69
+ const { operation } = role
70
+ if (operation && operation.indexOf(check) !== -1) {
71
+ return true
72
+ }
73
+ }
74
+ return false
75
+ }
76
+
77
+ const checkInject = function (el, binding, vnode) {
78
+ const type = binding.arg
79
+ const check = binding.value
80
+ const instance = vnode.context
81
+ const $auth = instance.$auth
82
+ if (!$auth || !$auth(check, type)) {
83
+ addDisabled(el)
84
+ } else {
85
+ removeDisabled(el)
86
+ }
87
+ }
88
+
89
+ const addDisabled = function (el) {
90
+ if (el.tagName === 'BUTTON') {
91
+ el.disabled = true
92
+ } else {
93
+ el.classList.add('disabled')
94
+ }
95
+ el.setAttribute('title', '无此权限')
96
+ }
97
+
98
+ const removeDisabled = function (el) {
99
+ el.disabled = false
100
+ el.classList.remove('disabled')
101
+ el.removeAttribute('title')
102
+ }
103
+
104
+ const AuthorityPlugin = {
105
+ install (Vue) {
106
+ Vue.directive('auth', {
107
+ bind (el, binding, vnode) {
108
+ setTimeout(() => checkInject(el, binding, vnode), 10)
109
+ },
110
+ componentUpdated (el, binding, vnode) {
111
+ setTimeout(() => checkInject(el, binding, vnode), 10)
112
+ },
113
+ unbind (el) {
114
+ removeDisabled(el)
115
+ }
116
+ })
117
+ Vue.mixin({
118
+ beforeCreate () {
119
+ if (this.$options.authorize) {
120
+ const authorize = this.$options.authorize
121
+ Object.keys(authorize).forEach(key => {
122
+ if (this.$options.methods[key]) {
123
+ const method = this.$options.methods[key]
124
+ if (!hasInjected(method)) {
125
+ let authConfig = authorize[key]
126
+ authConfig = (typeof authConfig === 'string') ? { check: authConfig } : authConfig
127
+ const { check, type, onFailure } = authConfig
128
+ this.$options.methods[key] = function () {
129
+ // --auth-inject
130
+ if (this.$auth(check, type)) {
131
+ return method.apply(this, arguments)
132
+ } else {
133
+ if (onFailure && typeof onFailure === 'function') {
134
+ this[`$${check}Failure`] = onFailure
135
+ return this[`$${check}Failure`](check)
136
+ } else {
137
+ this.$message.error(`对不起,您没有操作权限:${check}`)
138
+ }
139
+ return 0
140
+ }
141
+ }
142
+ }
143
+ }
144
+ })
145
+ }
146
+ },
147
+ methods: {
148
+ /**
149
+ * 操作权限校验
150
+ * @param check 需要校验的操作名
151
+ * @param type 校验类型,通过 permission 校验,还是通过 role 校验。
152
+ * 如未设置,则自动识别,如匹配到当前路由 permission 则 type = permission,否则 type = role
153
+ * @returns {boolean} 是否校验通过
154
+ */
155
+ $auth (check, type) {
156
+ const permissions = this.$store.getters['account/permissions']
157
+ const roles = this.$store.getters['account/roles']
158
+ const permission = getRoutePermission(permissions, this.$route)
159
+ const role = getRouteRole(roles, this.$route)
160
+ return auth.apply(this, [{ check, type }, permission, role, permissions, roles])
161
+ }
162
+ }
163
+ })
164
+ }
165
+ }
166
+
167
+ export default AuthorityPlugin
@@ -0,0 +1,32 @@
1
+ // 语句模式
2
+ const MODE = {
3
+ STATEMENTS: 's', // 语句模式
4
+ PHRASAL: 'p' // 词组模式
5
+ }
6
+
7
+ const VueI18nPlugin = {
8
+ install: function (Vue) {
9
+ Vue.mixin({
10
+ methods: {
11
+ $ta (syntaxKey, mode) {
12
+ const _mode = mode || MODE.STATEMENTS
13
+ const keys = syntaxKey.split('|')
14
+ const _this = this
15
+ const locale = this.$i18n.locale
16
+ let message = ''
17
+ const splitter = locale == 'US' ? ' ' : ''
18
+ // 拼接 message
19
+ keys.forEach(key => {
20
+ message += _this.$t(key) + splitter
21
+ })
22
+ // 英文环境语句模式下,转换单词大小写
23
+ if (keys.length > 0 && _mode == MODE.STATEMENTS && locale == 'US') {
24
+ message = message.charAt(0).toUpperCase() + message.toLowerCase().substring(1)
25
+ }
26
+ return message
27
+ }
28
+ }
29
+ })
30
+ }
31
+ }
32
+ export default VueI18nPlugin
@@ -0,0 +1,21 @@
1
+ import GetLoginInfoService from '@vue2-client/base-client/plugins/GetLoginInfoService'
2
+ import GetAppDataService from '@vue2-client/base-client/plugins/AppData'
3
+ import getConfig from '@vue2-client/base-client/plugins/Config'
4
+ import moment from '@vue2-client/base-client/plugins/moment'
5
+
6
+ import VueI18nPlugin from './i18n-extend'
7
+ import AuthorityPlugin from './authority-plugin'
8
+ import TabsPagePlugin from './tabs-page-plugin'
9
+
10
+ const Plugins = {
11
+ install: function (Vue) {
12
+ Vue.use(GetLoginInfoService)
13
+ Vue.use(GetAppDataService)
14
+ Vue.use(getConfig)
15
+ Vue.use(moment)
16
+ Vue.use(VueI18nPlugin)
17
+ Vue.use(AuthorityPlugin)
18
+ Vue.use(TabsPagePlugin)
19
+ }
20
+ }
21
+ export default Plugins
@@ -1,8 +1,8 @@
1
- import moment from 'moment'
2
-
3
- const momentPluging = {
4
- install (Vue) {
5
- Vue.moment = Vue.prototype.$moment = moment
6
- }
7
- }
8
- export default momentPluging
1
+ import moment from 'moment'
2
+
3
+ const momentPluging = {
4
+ install (Vue) {
5
+ Vue.moment = Vue.prototype.$moment = moment
6
+ }
7
+ }
8
+ export default momentPluging
@@ -0,0 +1,38 @@
1
+ const TabsPagePlugin = {
2
+ install (Vue) {
3
+ Vue.mixin({
4
+ methods: {
5
+ $closePage (closeRoute, nextRoute) {
6
+ const event = new CustomEvent('page:close', { detail: { closeRoute, nextRoute } })
7
+ window.dispatchEvent(event)
8
+ },
9
+ $refreshPage (route) {
10
+ const path = typeof route === 'object' ? route.path : route
11
+ const event = new CustomEvent('page:refresh', { detail: { pageKey: path } })
12
+ window.dispatchEvent(event)
13
+ },
14
+ $openPage (route, title) {
15
+ this.$setPageTitle(route, title)
16
+ this.$router.push(route)
17
+ },
18
+ $setPageTitle (route, title) {
19
+ if (title) {
20
+ let path = typeof route === 'object' ? route.path : route
21
+ path = path && path.split('?')[0]
22
+ this.$store.commit('setting/setCustomTitle', { path, title })
23
+ }
24
+ }
25
+ },
26
+ computed: {
27
+ customTitle () {
28
+ const customTitles = this.$store.state.setting.customTitles
29
+ const path = this.$route.path.split('?')[0]
30
+ const custom = customTitles.find(item => item.path === path)
31
+ return custom && custom.title
32
+ }
33
+ }
34
+ })
35
+ }
36
+ }
37
+
38
+ export default TabsPagePlugin
@@ -0,0 +1,27 @@
1
+ import Vue from 'vue'
2
+ import { loadRoutes, loadGuards, setAppOptions } from '@vue2-client/utils/routerUtil'
3
+ import { loadInterceptors } from '@vue2-client/utils/request'
4
+ import guards from '@vue2-client/router/guards'
5
+ import interceptors from '@vue2-client/utils/axios-interceptors'
6
+
7
+ /**
8
+ * 启动引导方法
9
+ * 应用启动时需要执行的操作放在这里
10
+ * @param router 应用的路由实例
11
+ * @param store 应用的 vuex.store 实例
12
+ * @param i18n 应用的 vue-i18n 实例
13
+ * @param i18n 应用的 message 实例
14
+ */
15
+ function bootstrap ({ router, store, i18n, message }) {
16
+ Vue.$store = store
17
+ // 设置应用配置
18
+ setAppOptions({ router, store, i18n })
19
+ // 加载 axios 拦截器
20
+ loadInterceptors(interceptors, { router, store, i18n, message })
21
+ // 加载路由
22
+ loadRoutes()
23
+ // 加载路由守卫
24
+ loadGuards(guards, { router, store, i18n, message })
25
+ }
26
+
27
+ export default bootstrap
@@ -0,0 +1,62 @@
1
+ <template>
2
+ <div :style="{ padding: '0 0 32px 32px' }">
3
+ <h4 :style="{ marginBottom: '20px' }">{{ title }}</h4>
4
+ <v-chart
5
+ height="375"
6
+ :data="data"
7
+ :forceFit="true"
8
+ :padding="['auto', 'auto', '40', '70']">
9
+ <v-tooltip />
10
+ <v-axis />
11
+ <v-bar position="x*y"/>
12
+ </v-chart>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ export default {
18
+ name: 'Bar',
19
+ props: {
20
+ title: {
21
+ type: String,
22
+ default: ''
23
+ },
24
+ data: {
25
+ type: Array,
26
+ default: () => {
27
+ return []
28
+ }
29
+ },
30
+ scale: {
31
+ type: Array,
32
+ default: () => {
33
+ return [{
34
+ dataKey: 'x',
35
+ min: 2
36
+ }, {
37
+ dataKey: 'y',
38
+ title: '时间',
39
+ min: 1,
40
+ max: 22
41
+ }]
42
+ }
43
+ },
44
+ tooltip: {
45
+ type: Array,
46
+ default: () => {
47
+ return [
48
+ 'x*y',
49
+ (x, y) => ({
50
+ name: x,
51
+ value: y
52
+ })
53
+ ]
54
+ }
55
+ }
56
+ },
57
+ data () {
58
+ return {
59
+ }
60
+ }
61
+ }
62
+ </script>
@@ -0,0 +1,120 @@
1
+ <template>
2
+ <a-card :loading="loading" :body-style="{ padding: '20px 24px 8px', minHeight: '182px' }" :bordered="false">
3
+ <div class="chart-card-header">
4
+ <div class="meta">
5
+ <span class="chart-card-title">
6
+ <slot name="title">
7
+ {{ title }}
8
+ </slot>
9
+ </span>
10
+ <span class="chart-card-action">
11
+ <slot name="action"></slot>
12
+ </span>
13
+ </div>
14
+ <div class="total">
15
+ <slot name="total">
16
+ <span>{{ typeof total === 'function' && total() || total }}</span>
17
+ </slot>
18
+ </div>
19
+ </div>
20
+ <div class="chart-card-content">
21
+ <div class="content-fix">
22
+ <slot></slot>
23
+ </div>
24
+ </div>
25
+ <div class="chart-card-footer">
26
+ <div class="field">
27
+ <slot name="footer"></slot>
28
+ </div>
29
+ </div>
30
+ </a-card>
31
+ </template>
32
+
33
+ <script>
34
+ export default {
35
+ name: 'ChartCard',
36
+ props: {
37
+ title: {
38
+ type: String,
39
+ default: ''
40
+ },
41
+ total: {
42
+ type: [Function, Number, String],
43
+ required: false,
44
+ default: null
45
+ },
46
+ loading: {
47
+ type: Boolean,
48
+ default: false
49
+ }
50
+ }
51
+ }
52
+ </script>
53
+
54
+ <style lang="less" scoped>
55
+ .chart-card-header {
56
+ position: relative;
57
+ overflow: hidden;
58
+ width: 100%;
59
+
60
+ .meta {
61
+ position: relative;
62
+ overflow: hidden;
63
+ width: 100%;
64
+ color: rgba(0, 0, 0, .45);
65
+ font-size: 14px;
66
+ line-height: 22px;
67
+ }
68
+ }
69
+
70
+ .chart-card-action {
71
+ cursor: pointer;
72
+ position: absolute;
73
+ top: 0;
74
+ right: 0;
75
+ }
76
+
77
+ .chart-card-footer {
78
+ border-top: 1px solid #e8e8e8;
79
+ padding-top: 9px;
80
+ margin-top: 8px;
81
+
82
+ > * {
83
+ position: relative;
84
+ }
85
+
86
+ .field {
87
+ white-space: nowrap;
88
+ overflow: hidden;
89
+ text-overflow: ellipsis;
90
+ margin: 0;
91
+ }
92
+ }
93
+
94
+ .chart-card-content {
95
+ margin-bottom: 12px;
96
+ position: relative;
97
+ height: 46px;
98
+ width: 100%;
99
+
100
+ .content-fix {
101
+ position: absolute;
102
+ left: 0;
103
+ bottom: 0;
104
+ width: 100%;
105
+ }
106
+ }
107
+
108
+ .total {
109
+ overflow: hidden;
110
+ text-overflow: ellipsis;
111
+ word-break: break-all;
112
+ white-space: nowrap;
113
+ color: #000;
114
+ margin-top: 4px;
115
+ margin-bottom: 0;
116
+ font-size: 30px;
117
+ line-height: 38px;
118
+ height: 38px;
119
+ }
120
+ </style>
@@ -0,0 +1,77 @@
1
+ <template>
2
+ <div style="margin-top: 100px">
3
+ <canvas id="OrderSituation" width="350" height="250" top="30"></canvas>
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ // eslint-disable-next-line no-unused-vars
9
+ import { Line } from '@antv/g2plot'
10
+ import F2 from '@antv/f2/lib/index-all'
11
+ // eslint-disable-next-line no-unused-vars
12
+ import _ from 'lodash'
13
+ export default {
14
+ name: 'DataUserOrderSituation',
15
+ data () {
16
+ return {
17
+ chart: null
18
+ }
19
+ },
20
+ props: {
21
+ instructSituation: {
22
+ type: Array,
23
+ default: () => {
24
+ return []
25
+ }
26
+ }
27
+ },
28
+ mounted () {
29
+ console.log('instructSituation', this.instructSituation)
30
+ var v = this
31
+ this.$nextTick(() => {
32
+ v.createcon()
33
+ })
34
+ },
35
+ watch: {
36
+ 'instructSituation' () {
37
+ this.createcon()
38
+ }
39
+ },
40
+ methods: {
41
+ createcon () {
42
+ const data = []
43
+ if (this.chart) {
44
+ this.chart.clear()
45
+ }
46
+ if (this.instructSituation.length > 0) {
47
+ console.log(this.instructSituation)
48
+ // eslint-disable-next-line no-unused-vars
49
+ this.instructSituation.forEach(item => {
50
+ const re = {
51
+ genre: item.name,
52
+ sold: parseFloat(item.cout).toFixed(2)
53
+ }
54
+ data.push(re)
55
+ })
56
+ }
57
+ console.log('-00000000', this.instructSituation)
58
+ this.chart = new F2.Chart({
59
+ id: 'OrderSituation',
60
+ pixelRatio: window.devicePixelRatio,
61
+ aria: true, // 开启无障碍描述生成
62
+ title: '指令情况' // 图表标题,可被无障碍识别
63
+ })
64
+ this.chart.source(data)
65
+ this.chart.interval()
66
+ .position('genre*sold')
67
+ .color('genre')
68
+
69
+ this.chart.render()
70
+ }
71
+ }
72
+ }
73
+ </script>
74
+
75
+ <style scoped>
76
+
77
+ </style>
@@ -0,0 +1,74 @@
1
+ <template>
2
+ <div class="About">
3
+ <canvas id="containers" width="350" height="250"></canvas>
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ // eslint-disable-next-line no-unused-vars
9
+ import F2 from '@antv/f2'
10
+ export default {
11
+ name: 'Radar',
12
+ data () {
13
+ return {
14
+ chart: null
15
+ }
16
+ },
17
+ props: {
18
+ reportSituation: {
19
+ type: Array,
20
+ default: () => {
21
+ return []
22
+ }
23
+ }
24
+ },
25
+ mounted () {
26
+ var v = this
27
+ this.$nextTick(() => {
28
+ v.createcon()
29
+ })
30
+ },
31
+ methods: {
32
+ createcon () {
33
+ const data = []
34
+ if (this.chart) {
35
+ this.chart.clear()
36
+ }
37
+ // eslint-disable-next-line no-const-assign
38
+ if (this.reportSituation.length > 0) {
39
+ // eslint-disable-next-line no-unused-vars
40
+ this.reportSituation.forEach(item => {
41
+ const re = {
42
+ genre: item.name,
43
+ sold: parseFloat(item.cout).toFixed(2)
44
+ }
45
+ data.push(re)
46
+ })
47
+ }
48
+ console.log('reportSituation==data', data)
49
+ this.chart = new F2.Chart({
50
+ id: 'containers',
51
+ pixelRatio: window.devicePixelRatio,
52
+ aria: true, // 开启无障碍描述生成
53
+ title: '抄表上报' // 图表标题,可被无障碍识别
54
+ })
55
+ this.chart.source(data)
56
+ this.chart.interval()
57
+ .position('genre*sold')
58
+ .color('genre')
59
+
60
+ this.chart.render()
61
+ }
62
+ },
63
+ watch: {
64
+ 'reportSituation' () {
65
+ console.log('222.')
66
+ this.createcon()
67
+ }
68
+ }
69
+ }
70
+ </script>
71
+
72
+ <style scoped>
73
+
74
+ </style>