vue2-client 1.15.86 → 1.15.88

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 (377) hide show
  1. package/.editorconfig +9 -9
  2. package/.env +20 -20
  3. package/.env.development +1 -1
  4. package/.env.iot +19 -19
  5. package/.env.message +19 -19
  6. package/.env.revenue +19 -19
  7. package/.env.runtime +19 -19
  8. package/.eslintrc.json +5 -5
  9. package/CLAUDE.md +89 -89
  10. package/README.md +65 -65
  11. package/babel.config.js +21 -21
  12. package/docs/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +46 -46
  13. package/docs/notice.md +22 -22
  14. package/docs//345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +179 -179
  15. package/jest.config.js +22 -22
  16. package/package.json +111 -111
  17. package/src/App.vue +196 -196
  18. package/src/ReportView.js +13 -13
  19. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +532 -532
  20. package/src/base-client/components/common/AddressSearchCombobox/index.js +3 -3
  21. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  22. package/src/base-client/components/common/CitySelect/CitySelect.vue +376 -376
  23. package/src/base-client/components/common/CitySelect/demo.vue +43 -43
  24. package/src/base-client/components/common/ColorPickerCombobox/ColorPickerCombobox.vue +99 -99
  25. package/src/base-client/components/common/ColorPickerCombobox/demo.vue +34 -34
  26. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +146 -146
  27. package/src/base-client/components/common/JSONToTree/index.js +3 -3
  28. package/src/base-client/components/common/Upload/Upload.vue +323 -323
  29. package/src/base-client/components/common/XAddForm/index.js +3 -3
  30. package/src/base-client/components/common/XAddForm/index.md +61 -61
  31. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1169 -1169
  32. package/src/base-client/components/common/XAddNativeForm/demo.vue +54 -54
  33. package/src/base-client/components/common/XAddNativeForm/index.js +3 -3
  34. package/src/base-client/components/common/XAddReport/XAddReport.vue +212 -212
  35. package/src/base-client/components/common/XBadge/index.js +3 -3
  36. package/src/base-client/components/common/XBadge/index.md +39 -39
  37. package/src/base-client/components/common/XButtons/XButtons.vue +284 -284
  38. package/src/base-client/components/common/XCalendar/XCalendar.vue +369 -369
  39. package/src/base-client/components/common/XCalendar/index.md +284 -284
  40. package/src/base-client/components/common/XCard/index.js +3 -3
  41. package/src/base-client/components/common/XCard/index.md +43 -43
  42. package/src/base-client/components/common/XCardSet/XCardSet.vue +300 -300
  43. package/src/base-client/components/common/XCollapse/XCollapse.vue +354 -354
  44. package/src/base-client/components/common/XConversation/XConversation.vue +576 -576
  45. package/src/base-client/components/common/XConversation/XConversationDemo.vue +28 -28
  46. package/src/base-client/components/common/XDataCard/XDataCard.vue +629 -629
  47. package/src/base-client/components/common/XDatePicker/index.vue +276 -276
  48. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +174 -174
  49. package/src/base-client/components/common/XDescriptions/XDescriptionsGroup.vue +314 -314
  50. package/src/base-client/components/common/XDescriptions/demo.vue +51 -51
  51. package/src/base-client/components/common/XForm/XForm.vue +420 -420
  52. package/src/base-client/components/common/XForm/XFormItem.vue +1474 -1474
  53. package/src/base-client/components/common/XForm/XTreeSelect.vue +276 -276
  54. package/src/base-client/components/common/XForm/demo.vue +105 -105
  55. package/src/base-client/components/common/XForm/index.js +3 -3
  56. package/src/base-client/components/common/XFormCol/XFormCol.vue +157 -157
  57. package/src/base-client/components/common/XFormCol/index.js +3 -3
  58. package/src/base-client/components/common/XFormCol/index.md +35 -35
  59. package/src/base-client/components/common/XFormGroup/XFormGroup.vue +301 -301
  60. package/src/base-client/components/common/XFormGroup/demo.vue +41 -41
  61. package/src/base-client/components/common/XFormTable/XFormTable.vue +938 -938
  62. package/src/base-client/components/common/XFormTable/demo.vue +87 -87
  63. package/src/base-client/components/common/XFormTable/index.js +3 -3
  64. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +174 -174
  65. package/src/base-client/components/common/XImportExcel/index.js +3 -3
  66. package/src/base-client/components/common/XImportExcel/index.md +38 -38
  67. package/src/base-client/components/common/XInput/XInput.vue +128 -128
  68. package/src/base-client/components/common/XInput/index.js +3 -3
  69. package/src/base-client/components/common/XInput/index.md +97 -97
  70. package/src/base-client/components/common/XIntervalPicker/XIntervalPicker.vue +121 -121
  71. package/src/base-client/components/common/XLicensePlate/index.js +3 -3
  72. package/src/base-client/components/common/XLicensePlate/index.md +38 -38
  73. package/src/base-client/components/common/XPrint/Demo.vue +41 -41
  74. package/src/base-client/components/common/XPrint/PrintBill.vue +308 -308
  75. package/src/base-client/components/common/XRate/demo.vue +102 -102
  76. package/src/base-client/components/common/XRate/index.vue +149 -149
  77. package/src/base-client/components/common/XReport/XReport.vue +963 -963
  78. package/src/base-client/components/common/XReport/XReportDemo.vue +70 -70
  79. package/src/base-client/components/common/XReport/XReportTrGroup.vue +1005 -1005
  80. package/src/base-client/components/common/XReport/index.md +103 -103
  81. package/src/base-client/components/common/XReportDrawer/XReportDrawer.vue +201 -201
  82. package/src/base-client/components/common/XReportGrid/XReport.vue +1075 -1075
  83. package/src/base-client/components/common/XReportGrid/XReportDemo.vue +44 -44
  84. package/src/base-client/components/common/XReportGrid/XReportDesign.vue +620 -620
  85. package/src/base-client/components/common/XReportGrid/XReportTrGroup.vue +723 -723
  86. package/src/base-client/components/common/XReportGrid/print.js +184 -184
  87. package/src/base-client/components/common/XTab/XTab.vue +299 -299
  88. package/src/base-client/components/common/XTable/ExportExcel.vue +283 -283
  89. package/src/base-client/components/common/XTable/XTable.vue +1599 -1599
  90. package/src/base-client/components/common/XTable/XTableWrapper.vue +597 -597
  91. package/src/base-client/components/common/XTable/index.js +3 -3
  92. package/src/base-client/components/common/XTimeline/XTimeline.vue +358 -358
  93. package/src/base-client/components/common/XTimeline/index.md +191 -191
  94. package/src/base-client/components/common/XTree/XTreePro.vue +452 -452
  95. package/src/base-client/components/common/XTreeOne/index.js +3 -3
  96. package/src/base-client/components/common/XUploadFilesView/index.vue +485 -485
  97. package/src/base-client/components/his/XCharge/XCharge.vue +238 -238
  98. package/src/base-client/components/his/XCheckbox/XCheckbox.vue +105 -105
  99. package/src/base-client/components/his/XCheckbox/index.md +253 -253
  100. package/src/base-client/components/his/XHDescriptions/XHDescriptions.vue +430 -430
  101. package/src/base-client/components/his/XHDescriptions/index.md +217 -217
  102. package/src/base-client/components/his/XHisEditor/XHisEditor.vue +629 -629
  103. package/src/base-client/components/his/XHisEditor/diagnosisAutocomplete.js +263 -263
  104. package/src/base-client/components/his/XList/XList.vue +495 -495
  105. package/src/base-client/components/his/XQuestionnaire/XQuestionnaire.json +3 -3
  106. package/src/base-client/components/his/XQuestionnaire/XQuestionnaire.vue +106 -106
  107. package/src/base-client/components/his/XQuestionnaire/XQuestionnaireDemo.vue +51 -51
  108. package/src/base-client/components/his/XQuestionnaire/XQuestionnaireItem.vue +269 -269
  109. package/src/base-client/components/his/XRadio/XRadio.vue +125 -125
  110. package/src/base-client/components/his/XRadio/index.md +234 -234
  111. package/src/base-client/components/his/XSelect/XSelect.vue +72 -72
  112. package/src/base-client/components/his/XShiftSchedule/XShiftSchedule.vue +234 -234
  113. package/src/base-client/components/his/XShiftSchedule/dome.vue +29 -29
  114. package/src/base-client/components/his/XSidebar/XSidebar.vue +240 -240
  115. package/src/base-client/components/his/XTextCard/XTextCard.vue +207 -207
  116. package/src/base-client/components/his/XTimeSelect/XTimeSelect.vue +162 -162
  117. package/src/base-client/components/his/XTimeSelect/XTimeSelectDemo.vue +23 -23
  118. package/src/base-client/components/his/XTitle/README.md +113 -113
  119. package/src/base-client/components/his/XTitle/XTitle.vue +123 -123
  120. package/src/base-client/components/his/XTreeRows/TreeNode.vue +107 -107
  121. package/src/base-client/components/his/XTreeRows/XTreeRows.vue +307 -307
  122. package/src/base-client/components/his/threeTestOrders/dome.vue +68 -68
  123. package/src/base-client/components/his/threeTestOrders/editor.vue +111 -111
  124. package/src/base-client/components/his/threeTestOrders/textBox.vue +457 -457
  125. package/src/base-client/components/his/threeTestOrders/threeTestOrders.vue +475 -475
  126. package/src/base-client/components/layout/XPageView/RenderRow.vue +88 -88
  127. package/src/base-client/components/layout/XPageView/XErrorView.vue +22 -22
  128. package/src/base-client/components/layout/XPageView/XPageRowTemplate.vue +37 -37
  129. package/src/base-client/components/layout/XPageView/XPageView.vue +223 -223
  130. package/src/base-client/components/layout/XPageView/XTab/XTab.vue +96 -96
  131. package/src/base-client/components/layout/XPageView/XTab/index.js +3 -3
  132. package/src/base-client/components/layout/XPageView/componentTypes.js +22 -22
  133. package/src/base-client/components/layout/XPageView/index.js +2 -2
  134. package/src/base-client/components/layout/XPageView/index.md +96 -96
  135. package/src/base-client/components/system/DictionaryDetailsView/index.js +3 -3
  136. package/src/base-client/components/system/DictionaryDetailsView/index.md +41 -41
  137. package/src/base-client/components/system/LogDetailsView/LogDetailsView.vue +376 -376
  138. package/src/base-client/components/system/LogDetailsView/index.js +3 -3
  139. package/src/base-client/components/system/LogDetailsView/index.md +41 -41
  140. package/src/base-client/components/system/QueryParamsDetailsView/index.js +3 -3
  141. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  142. package/src/base-client/components/ticket/TicketDetailsView/index.js +3 -3
  143. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  144. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  145. package/src/base-client/components/ticket/TicketDetailsView/part/index.js +3 -3
  146. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  147. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.js +3 -3
  148. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  149. package/src/base-client/plugins/AppData.js +126 -126
  150. package/src/base-client/plugins/PagedList.js +177 -177
  151. package/src/base-client/plugins/__tests__/selectValueTypeHelper.test.js +154 -154
  152. package/src/base-client/plugins/authority-plugin.js +167 -167
  153. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  154. package/src/base-client/plugins/i18n-extend.js +32 -32
  155. package/src/base-client/plugins/moment.js +8 -8
  156. package/src/base-client/plugins/selectValueTypeHelper.js +281 -281
  157. package/src/bootstrap.js +51 -51
  158. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  159. package/src/components/Ellipsis/index.js +3 -3
  160. package/src/components/Ellipsis/index.md +38 -38
  161. package/src/components/FileImageItem/FileItem.vue +320 -320
  162. package/src/components/FileImageItem/FileItemGroup.vue +197 -197
  163. package/src/components/FileImageItem/ImageItem.vue +107 -107
  164. package/src/components/FileImageItem/index.js +4 -4
  165. package/src/components/FilePreview/FilePreview.vue +181 -181
  166. package/src/components/FilePreview/FilePreviewDemo.vue +30 -30
  167. package/src/components/FilePreview/index.js +3 -3
  168. package/src/components/HeightScanner/index.vue +615 -615
  169. package/src/components/STable/README.md +341 -341
  170. package/src/components/STable/index.js +558 -558
  171. package/src/components/TableSetting/TableSetting.vue +143 -143
  172. package/src/components/TableSetting/index.js +3 -3
  173. package/src/components/Trend/Trend.vue +41 -41
  174. package/src/components/Trend/index.js +3 -3
  175. package/src/components/Trend/index.less +41 -41
  176. package/src/components/Trend/index.md +45 -45
  177. package/src/components/_util/util.js +46 -46
  178. package/src/components/cache/AKeepAlive.js +179 -179
  179. package/src/components/exception/typeConfig.js +19 -19
  180. package/src/components/form/FormRow.vue +52 -52
  181. package/src/components/index.less +5 -5
  182. package/src/components/menu/Contextmenu.vue +84 -84
  183. package/src/components/menu/index.less +38 -38
  184. package/src/components/page/header/PageHeader.vue +64 -64
  185. package/src/components/page/header/index.less +40 -40
  186. package/src/components/result/Result.vue +77 -77
  187. package/src/components/setting/SettingItem.vue +26 -26
  188. package/src/components/setting/i18n.js +117 -117
  189. package/src/components/table/StandardTable.vue +141 -141
  190. package/src/components/table/advance/ActionColumns.vue +158 -158
  191. package/src/components/table/advance/ActionSize.vue +45 -45
  192. package/src/components/table/advance/AdvanceTable.vue +275 -275
  193. package/src/components/table/advance/SearchArea.vue +355 -355
  194. package/src/components/table/advance/index.js +2 -2
  195. package/src/components/table/api/ApiTable.vue +50 -50
  196. package/src/components/task/TaskGroup.vue +80 -80
  197. package/src/components/task/TaskItem.vue +26 -26
  198. package/src/components/tool/AvatarList.vue +68 -68
  199. package/src/components/tool/DetailList.vue +157 -157
  200. package/src/components/tool/Drawer.vue +142 -142
  201. package/src/components/tool/FooterToolBar.vue +30 -30
  202. package/src/components/tool/HeadInfo.vue +35 -35
  203. package/src/components/tool/TagSelect.vue +83 -83
  204. package/src/components/tool/TagSelectOption.vue +33 -33
  205. package/src/components/transition/PageToggleTransition.vue +97 -97
  206. package/src/config/default/admin.config.js +18 -18
  207. package/src/config/default/animate.config.js +21 -21
  208. package/src/config/default/index.js +6 -6
  209. package/src/config/index.js +3 -3
  210. package/src/config/replacer/index.js +10 -10
  211. package/src/config/replacer/resolve.config.js +67 -67
  212. package/src/expression/ExpressionRunner.js +26 -26
  213. package/src/expression/TestExpression.js +509 -509
  214. package/src/expression/core/Delegate.js +115 -115
  215. package/src/expression/core/Expression.js +1358 -1358
  216. package/src/expression/core/Program.js +932 -932
  217. package/src/expression/core/Token.js +27 -27
  218. package/src/expression/enums/ExpressionType.js +81 -81
  219. package/src/expression/enums/TokenType.js +11 -11
  220. package/src/expression/exception/BreakWayException.js +2 -2
  221. package/src/expression/exception/ContinueWayException.js +2 -2
  222. package/src/expression/exception/ExpressionException.js +28 -28
  223. package/src/expression/exception/ReturnWayException.js +14 -14
  224. package/src/expression/exception/ServiceException.js +22 -22
  225. package/src/expression/instances/LogicConsole.js +44 -44
  226. package/src/expression/ts/ExpressionRunner.ts +28 -28
  227. package/src/expression/ts/TestExpression.ts +509 -509
  228. package/src/expression/ts/core/Delegate.ts +114 -114
  229. package/src/expression/ts/core/Expression.ts +1309 -1309
  230. package/src/expression/ts/core/Program.ts +950 -950
  231. package/src/expression/ts/core/Token.ts +29 -29
  232. package/src/expression/ts/enums/ExpressionType.ts +81 -81
  233. package/src/expression/ts/enums/TokenType.ts +13 -13
  234. package/src/expression/ts/exception/BreakWayException.ts +2 -2
  235. package/src/expression/ts/exception/ContinueWayException.ts +2 -2
  236. package/src/expression/ts/exception/ExpressionException.ts +28 -28
  237. package/src/expression/ts/exception/ReturnWayException.ts +14 -14
  238. package/src/expression/ts/exception/ServiceException.ts +22 -22
  239. package/src/expression/ts/instances/JSONArray.ts +48 -48
  240. package/src/expression/ts/instances/JSONObject.ts +109 -109
  241. package/src/expression/ts/instances/LogicConsole.ts +32 -32
  242. package/src/layouts/AdminLayout.vue +176 -176
  243. package/src/layouts/BlankView.vue +79 -79
  244. package/src/layouts/ComponentLayoutOne.vue +47 -47
  245. package/src/layouts/GridView.vue +43 -43
  246. package/src/layouts/PageView.vue +55 -55
  247. package/src/layouts/footer/PageFooter.vue +49 -49
  248. package/src/layouts/header/HeaderAvatar.vue +64 -64
  249. package/src/layouts/header/HeaderSearch.vue +67 -67
  250. package/src/layouts/header/index.less +92 -92
  251. package/src/layouts/tabs/TabsView.vue +383 -383
  252. package/src/layouts/tabs/i18n.js +25 -25
  253. package/src/layouts/tabs/index.js +2 -2
  254. package/src/logic/LogicRunner.js +62 -62
  255. package/src/logic/TestLogic.js +13 -13
  256. package/src/logic/plugins/common/DateTools.js +35 -35
  257. package/src/logic/plugins/common/VueTools.js +30 -30
  258. package/src/logic/plugins/index.js +7 -7
  259. package/src/logic/ts/LogicRunner.ts +67 -67
  260. package/src/logic/ts/TestLogic.ts +13 -13
  261. package/src/main.js +33 -33
  262. package/src/mixins/formValidationMixin.js +46 -46
  263. package/src/mock/common/activityData.js +32 -32
  264. package/src/mock/common/index.js +89 -89
  265. package/src/mock/common/reportData.js +20 -20
  266. package/src/mock/common/tableData.js +118 -118
  267. package/src/mock/index.js +12 -12
  268. package/src/mock/project/index.js +17 -17
  269. package/src/mock/user/current.js +13 -13
  270. package/src/mock/user/login.js +39 -39
  271. package/src/mock/user/routes.js +61 -61
  272. package/src/mock/workplace/index.js +15 -15
  273. package/src/pages/LogicCallExample/index.vue +46 -46
  274. package/src/pages/ReportGrid/index.vue +76 -76
  275. package/src/pages/ReportView.vue +50 -50
  276. package/src/pages/WorkflowDetail/WorkFlowDemo.vue +47 -47
  277. package/src/pages/WorkflowDetail/WorkFlowDemo2.vue +204 -204
  278. package/src/pages/WorkflowDetail/WorkFlowDemo3.vue +203 -203
  279. package/src/pages/WorkflowDetail/WorkflowDetail.vue +391 -391
  280. package/src/pages/WorkflowDetail/WorkflowPageDetail/LeaveMessage.vue +388 -388
  281. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformation.vue +415 -415
  282. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +1766 -1766
  283. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandleReso.vue +975 -975
  284. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowPreview.vue +109 -109
  285. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +929 -929
  286. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkOrderParentDetails.vue +222 -222
  287. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowDetailResso.vue +243 -243
  288. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowLog.vue +188 -188
  289. package/src/pages/WorkflowDetail/WorkflowPageDetail/components/WorkflowPersonSelector.vue +109 -109
  290. package/src/pages/WorkflowDetail/WorkflowPageDetail/worklog.vue +97 -97
  291. package/src/pages/XPageViewExample/index.vue +149 -149
  292. package/src/pages/addressSelect/addressDemo.vue +24 -24
  293. package/src/pages/addressSelect/index.vue +270 -270
  294. package/src/pages/dashboard/workplace/i18n.js +40 -40
  295. package/src/pages/dashboard/workplace/index.js +2 -2
  296. package/src/pages/dashboard/workplace/index.less +59 -59
  297. package/src/pages/exception/403.vue +21 -21
  298. package/src/pages/exception/404.vue +24 -24
  299. package/src/pages/exception/500.vue +21 -21
  300. package/src/pages/login/index.js +2 -2
  301. package/src/pages/report/ReportTableHome.vue +28 -28
  302. package/src/pages/resourceManage/depListManage.vue +23 -23
  303. package/src/pages/resourceManage/funListManage.vue +23 -23
  304. package/src/pages/resourceManage/index.js +15 -15
  305. package/src/pages/resourceManage/resourceManageMain.vue +57 -57
  306. package/src/pages/resourceManage/roleListManage.vue +23 -23
  307. package/src/pages/resourceManage/staffListManage.vue +23 -23
  308. package/src/pages/system/file/Info.vue +56 -56
  309. package/src/pages/system/file/index.vue +317 -317
  310. package/src/pages/system/settings/index.vue +126 -126
  311. package/src/pages/userInfoDetailManage/FillCardRecordQuery/index.vue +77 -77
  312. package/src/pages/userInfoDetailManage/FillGasRecordQuery/index.vue +75 -75
  313. package/src/pages/userInfoDetailManage/InsuranceDetailQuery/index.vue +64 -64
  314. package/src/pages/userInfoDetailManage/MachineRecordQuery/index.vue +75 -75
  315. package/src/pages/userInfoDetailManage/OtherChargeRecordQuery/index.vue +75 -75
  316. package/src/pages/userInfoDetailManage/PriceAdjustments/index.vue +64 -64
  317. package/src/pages/userInfoDetailManage/UserChargeRecordQuery/index.vue +94 -94
  318. package/src/pages/userInfoDetailManage/UserException/index.vue +64 -64
  319. package/src/pages/userInfoDetailManage/UserHandRecordQuery/index.vue +87 -87
  320. package/src/pages/userInfoDetailManage/UserRecordQuery/index.vue +74 -74
  321. package/src/pages/userInfoDetailManage/index.vue +290 -290
  322. package/src/pages/userInfoDetailManage/uploadFilesHistory/ImagePreview.vue +101 -101
  323. package/src/pages/userInfoDetailManage/uploadFilesHistory/index.vue +129 -129
  324. package/src/pages/userInfoDetailManage/userInfoDetailQueryTabs.vue +144 -144
  325. package/src/plugins/HiPrintPlugin.js +164 -164
  326. package/src/router/async/router.map.js +126 -126
  327. package/src/router/guards.js +262 -262
  328. package/src/router/i18n.js +57 -57
  329. package/src/router.js +17 -17
  330. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  331. package/src/services/api/LogDetailsViewApi.js +10 -10
  332. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  333. package/src/services/api/logininfor/index.js +6 -6
  334. package/src/services/api/manage.js +8 -8
  335. package/src/services/api/restTools.js +215 -215
  336. package/src/services/api/workFlow.js +57 -57
  337. package/src/services/apiService.js +16 -16
  338. package/src/services/dataSource.js +12 -12
  339. package/src/services/index.js +7 -7
  340. package/src/services/user.js +92 -92
  341. package/src/services/v3Api.js +116 -116
  342. package/src/store/index.js +5 -5
  343. package/src/store/mutation-types.js +4 -4
  344. package/src/theme/antd/ant-menu.less +2 -2
  345. package/src/theme/antd/ant-message.less +3 -3
  346. package/src/theme/antd/ant-table.less +22 -22
  347. package/src/theme/antd/ant-time-picker.less +3 -3
  348. package/src/theme/antd/index.less +3 -3
  349. package/src/theme/default/color.less +43 -43
  350. package/src/theme/default/index.less +3 -3
  351. package/src/theme/default/nprogress.less +76 -76
  352. package/src/theme/global.less +279 -279
  353. package/src/theme/index.less +5 -5
  354. package/src/theme/reportTable.less +58 -58
  355. package/src/theme/theme.less +1 -1
  356. package/src/utils/EncryptUtil.js +162 -162
  357. package/src/utils/Objects.js +25 -25
  358. package/src/utils/axios-interceptors.js +100 -100
  359. package/src/utils/colors.js +107 -107
  360. package/src/utils/common.js +10 -10
  361. package/src/utils/excel/Blob.js +180 -180
  362. package/src/utils/excel/Export2Excel.js +141 -141
  363. package/src/utils/filter.js +21 -21
  364. package/src/utils/i18n.js +80 -80
  365. package/src/utils/indexedDB.js +549 -549
  366. package/src/utils/microAppUtils.js +49 -49
  367. package/src/utils/request.js +395 -395
  368. package/src/utils/routerUtil.js +553 -553
  369. package/src/utils/themeUtil.js +100 -100
  370. package/test/Tree.spec.js +168 -168
  371. package/test/myDialog.spec.js +47 -47
  372. package/test/request.test.js +17 -17
  373. package/test/util.test.js +53 -53
  374. package/test/v3Api.test.js +1984 -1984
  375. package/tests/unit/ReportTable.spec.js +16 -16
  376. package/vue.config.js +222 -222
  377. package/.claude/settings.local.json +0 -12
@@ -1,281 +1,281 @@
1
- /**
2
- * selectValueType 功能辅助工具
3
- * 用于处理表单选择组件的值存储模式转换
4
- */
5
-
6
- /**
7
- * 根据selectValueType预处理options数据
8
- * @param {Array} options - 原始选项数据
9
- * @param {String} selectValueType - 值存储类型:'value' | 'label' | 'both'
10
- * @returns {Array} 处理后的选项数据
11
- */
12
- export function processOptionsForValueType (options, selectValueType = 'value') {
13
- // value模式:不做任何改变,保持现有逻辑
14
- if (selectValueType === 'value') {
15
- return options
16
- }
17
-
18
- // label模式:交换value和label,保存原始value到originValue
19
- if (selectValueType === 'label') {
20
- return processOptionsForLabelType(options)
21
- }
22
-
23
- // both模式:不处理options
24
- return options
25
- }
26
-
27
- /**
28
- * 处理label模式的options数据转换
29
- * @param {Array} options - 原始选项数据
30
- * @returns {Array} 转换后的选项数据
31
- */
32
- export function processOptionsForLabelType (options) {
33
- if (!Array.isArray(options)) {
34
- return options
35
- }
36
-
37
- return options.map(item => {
38
- // 先创建基础的转换对象
39
- const transformedItem = { ...item }
40
-
41
- // 处理各种数据格式的属性转换
42
- if (item.value !== undefined && item.label !== undefined) {
43
- // 标准格式 {value, label}
44
- transformedItem.originValue = item.value
45
- transformedItem.value = item.label
46
- } else if (item.key !== undefined && item.title !== undefined) {
47
- // 兼容格式 {key, title}
48
- transformedItem.originValue = item.key
49
- transformedItem.value = item.title
50
- transformedItem.label = item.title
51
- } else if (item.value !== undefined && item.text !== undefined) {
52
- // 字典格式 {value, text}
53
- transformedItem.originValue = item.value
54
- transformedItem.value = item.text
55
- transformedItem.label = item.text
56
- } else if (item.value !== undefined) {
57
- // 其他情况,尝试从多个可能的标签字段获取
58
- const labelValue = item.label || item.title || item.text
59
- if (labelValue !== undefined) {
60
- transformedItem.originValue = item.value
61
- transformedItem.value = labelValue
62
- }
63
- }
64
-
65
- // 处理树形结构(递归处理children)
66
- if (item.children && Array.isArray(item.children)) {
67
- transformedItem.children = processOptionsForLabelType(item.children)
68
- }
69
-
70
- return transformedItem
71
- })
72
- }
73
-
74
- /**
75
- * 根据value查找对应的label(支持单选和多选)
76
- * @param {any} value - 要查找的值
77
- * @param {Array} options - 选项数据
78
- * @returns {String|Array|null} 对应的label值,找不到时返回null
79
- */
80
- export function findLabelByValue (value, options) {
81
- if (value === undefined || value === null) {
82
- return null
83
- }
84
-
85
- // 多选情况:value是数组
86
- if (Array.isArray(value)) {
87
- const labels = []
88
- for (const val of value) {
89
- const label = findSingleLabelByValue(val, options)
90
- if (label !== null) {
91
- labels.push(label)
92
- }
93
- }
94
- return labels.length > 0 ? labels : null
95
- }
96
-
97
- // 单选情况:value是单个值
98
- return findSingleLabelByValue(value, options)
99
- }
100
-
101
- /**
102
- * 在选项数据中查找单个value对应的label(支持树形结构递归查找)
103
- * @param {any} value - 要查找的值
104
- * @param {Array} options - 选项数据
105
- * @returns {String} 对应的label值,找不到时返回String(value)作为fallback
106
- */
107
- export function findSingleLabelByValue (value, options) {
108
- if (!Array.isArray(options)) {
109
- return String(value)
110
- }
111
-
112
- for (const item of options) {
113
- // 处理标准格式 {value, label}
114
- if (item.value !== undefined && String(item.value) === String(value)) {
115
- return item.label || item.title || item.text || String(value)
116
- }
117
-
118
- // 处理兼容格式 {key, title}
119
- if (item.key !== undefined && String(item.key) === String(value)) {
120
- return item.title || item.label || item.text || String(value)
121
- }
122
-
123
- // 递归查找树形结构
124
- if (item.children && Array.isArray(item.children)) {
125
- const childLabel = findSingleLabelByValue(value, item.children)
126
- // 只有找到真正匹配项时才返回(不是fallback的String(value))
127
- if (childLabel !== String(value)) {
128
- return childLabel
129
- }
130
- }
131
- }
132
-
133
- // 如果找不到对应的label,降级返回原值
134
- return String(value)
135
- }
136
-
137
- /**
138
- * 处理 label 模式数据存储
139
- * @param {Object} form - 表单对象
140
- * @param {String} fieldName - 字段名
141
- * @param {any} currentValue - 当前值
142
- * @param {Array} options - 选项数据
143
- * @param {Function} setFieldValue - Vue的$set方法
144
- */
145
- export function processLabelModeData (form, fieldName, currentValue, options, setFieldValue) {
146
- // 确保 originData 对象存在
147
- if (!form.originData) {
148
- setFieldValue(form, 'originData', {})
149
- }
150
-
151
- // 获取当前值对应的原始值
152
- const originValue = getOriginValue(currentValue, options)
153
-
154
- // 存储原始值到 originData 中
155
- setFieldValue(form.originData, fieldName, originValue)
156
- }
157
-
158
- /**
159
- * 处理 both 模式数据存储
160
- * @param {Object} form - 表单对象
161
- * @param {String} fieldName - 字段名
162
- * @param {any} currentValue - 当前值
163
- * @param {Array} options - 选项数据
164
- * @param {Function} setFieldValue - Vue的$set方法
165
- */
166
- export function processBothModeData (form, fieldName, currentValue, options, setFieldValue) {
167
- // 确保 labelData 对象存在
168
- if (!form.labelData) {
169
- setFieldValue(form, 'labelData', {})
170
- }
171
-
172
- // 获取当前值对应的标签值
173
- const labelValue = findLabelByValue(currentValue, options)
174
-
175
- // 存储标签值到 labelData 中
176
- if (labelValue !== null && labelValue !== undefined) {
177
- setFieldValue(form.labelData, fieldName, labelValue)
178
- }
179
- }
180
-
181
- /**
182
- * 获取原始值(用于label模式时获取originValue)
183
- * @param {any} currentValue - 当前值
184
- * @param {Array} options - 选项数据
185
- * @returns {any} 原始值,找不到时返回currentValue作为fallback
186
- */
187
- export function getOriginValue (currentValue, options) {
188
- if (!Array.isArray(options) || currentValue === undefined || currentValue === null) {
189
- return currentValue
190
- }
191
-
192
- // 多选情况
193
- if (Array.isArray(currentValue)) {
194
- const originValues = []
195
- for (const val of currentValue) {
196
- const originVal = findOriginValueByLabel(val, options)
197
- // 只有找到真正的原始值时才使用originVal(不是fallback值)
198
- if (originVal !== val) {
199
- originValues.push(originVal)
200
- } else {
201
- // 如果没找到原始值,保留当前值
202
- originValues.push(val)
203
- }
204
- }
205
- return originValues
206
- }
207
-
208
- // 单选情况
209
- return findOriginValueByLabel(currentValue, options)
210
- }
211
-
212
- /**
213
- * 根据label查找原始value值
214
- * @param {any} label - 标签值
215
- * @param {Array} options - 选项数据
216
- * @returns {any} 原始值,找不到时返回label作为fallback
217
- */
218
- function findOriginValueByLabel (label, options) {
219
- for (const item of options) {
220
- // 如果有originValue,说明是经过label模式转换的
221
- if (item.originValue !== undefined && String(item.value) === String(label)) {
222
- return item.originValue
223
- }
224
-
225
- // 递归查找树形结构
226
- if (item.children && Array.isArray(item.children) && item.children.length > 0) {
227
- const childOriginValue = findOriginValueByLabel(label, item.children)
228
- // 只有当找到真正的匹配项时才返回(不等于传入的label)
229
- if (childOriginValue !== label) {
230
- return childOriginValue
231
- }
232
- }
233
- }
234
-
235
- return label // 如果找不到,返回原值
236
- }
237
-
238
- /**
239
- * 创建selectValueType处理器的工厂函数
240
- * @param {Object} context - Vue组件上下文
241
- * @returns {Object} 处理器对象
242
- */
243
- export function createSelectValueTypeHandler (context) {
244
- return {
245
- // 预处理options数据
246
- processOptions (options, selectValueType) {
247
- return processOptionsForValueType(options, selectValueType)
248
- },
249
-
250
- // 查找label值
251
- findLabel (value, options) {
252
- return findLabelByValue(value, options)
253
- },
254
-
255
- // 处理both模式数据
256
- processBothMode (form, fieldName, currentValue, options) {
257
- return processBothModeData(form, fieldName, currentValue, options, context.$set)
258
- },
259
-
260
- // 处理label模式数据
261
- processLabelMode (form, fieldName, currentValue, options) {
262
- return processLabelModeData(form, fieldName, currentValue, options, context.$set)
263
- },
264
-
265
- // 获取原始值
266
- getOriginValue (currentValue, options) {
267
- return getOriginValue(currentValue, options)
268
- }
269
- }
270
- }
271
-
272
- export default {
273
- processOptionsForValueType,
274
- processOptionsForLabelType,
275
- findLabelByValue,
276
- findSingleLabelByValue,
277
- processLabelModeData,
278
- processBothModeData,
279
- getOriginValue,
280
- createSelectValueTypeHandler
281
- }
1
+ /**
2
+ * selectValueType 功能辅助工具
3
+ * 用于处理表单选择组件的值存储模式转换
4
+ */
5
+
6
+ /**
7
+ * 根据selectValueType预处理options数据
8
+ * @param {Array} options - 原始选项数据
9
+ * @param {String} selectValueType - 值存储类型:'value' | 'label' | 'both'
10
+ * @returns {Array} 处理后的选项数据
11
+ */
12
+ export function processOptionsForValueType (options, selectValueType = 'value') {
13
+ // value模式:不做任何改变,保持现有逻辑
14
+ if (selectValueType === 'value') {
15
+ return options
16
+ }
17
+
18
+ // label模式:交换value和label,保存原始value到originValue
19
+ if (selectValueType === 'label') {
20
+ return processOptionsForLabelType(options)
21
+ }
22
+
23
+ // both模式:不处理options
24
+ return options
25
+ }
26
+
27
+ /**
28
+ * 处理label模式的options数据转换
29
+ * @param {Array} options - 原始选项数据
30
+ * @returns {Array} 转换后的选项数据
31
+ */
32
+ export function processOptionsForLabelType (options) {
33
+ if (!Array.isArray(options)) {
34
+ return options
35
+ }
36
+
37
+ return options.map(item => {
38
+ // 先创建基础的转换对象
39
+ const transformedItem = { ...item }
40
+
41
+ // 处理各种数据格式的属性转换
42
+ if (item.value !== undefined && item.label !== undefined) {
43
+ // 标准格式 {value, label}
44
+ transformedItem.originValue = item.value
45
+ transformedItem.value = item.label
46
+ } else if (item.key !== undefined && item.title !== undefined) {
47
+ // 兼容格式 {key, title}
48
+ transformedItem.originValue = item.key
49
+ transformedItem.value = item.title
50
+ transformedItem.label = item.title
51
+ } else if (item.value !== undefined && item.text !== undefined) {
52
+ // 字典格式 {value, text}
53
+ transformedItem.originValue = item.value
54
+ transformedItem.value = item.text
55
+ transformedItem.label = item.text
56
+ } else if (item.value !== undefined) {
57
+ // 其他情况,尝试从多个可能的标签字段获取
58
+ const labelValue = item.label || item.title || item.text
59
+ if (labelValue !== undefined) {
60
+ transformedItem.originValue = item.value
61
+ transformedItem.value = labelValue
62
+ }
63
+ }
64
+
65
+ // 处理树形结构(递归处理children)
66
+ if (item.children && Array.isArray(item.children)) {
67
+ transformedItem.children = processOptionsForLabelType(item.children)
68
+ }
69
+
70
+ return transformedItem
71
+ })
72
+ }
73
+
74
+ /**
75
+ * 根据value查找对应的label(支持单选和多选)
76
+ * @param {any} value - 要查找的值
77
+ * @param {Array} options - 选项数据
78
+ * @returns {String|Array|null} 对应的label值,找不到时返回null
79
+ */
80
+ export function findLabelByValue (value, options) {
81
+ if (value === undefined || value === null) {
82
+ return null
83
+ }
84
+
85
+ // 多选情况:value是数组
86
+ if (Array.isArray(value)) {
87
+ const labels = []
88
+ for (const val of value) {
89
+ const label = findSingleLabelByValue(val, options)
90
+ if (label !== null) {
91
+ labels.push(label)
92
+ }
93
+ }
94
+ return labels.length > 0 ? labels : null
95
+ }
96
+
97
+ // 单选情况:value是单个值
98
+ return findSingleLabelByValue(value, options)
99
+ }
100
+
101
+ /**
102
+ * 在选项数据中查找单个value对应的label(支持树形结构递归查找)
103
+ * @param {any} value - 要查找的值
104
+ * @param {Array} options - 选项数据
105
+ * @returns {String} 对应的label值,找不到时返回String(value)作为fallback
106
+ */
107
+ export function findSingleLabelByValue (value, options) {
108
+ if (!Array.isArray(options)) {
109
+ return String(value)
110
+ }
111
+
112
+ for (const item of options) {
113
+ // 处理标准格式 {value, label}
114
+ if (item.value !== undefined && String(item.value) === String(value)) {
115
+ return item.label || item.title || item.text || String(value)
116
+ }
117
+
118
+ // 处理兼容格式 {key, title}
119
+ if (item.key !== undefined && String(item.key) === String(value)) {
120
+ return item.title || item.label || item.text || String(value)
121
+ }
122
+
123
+ // 递归查找树形结构
124
+ if (item.children && Array.isArray(item.children)) {
125
+ const childLabel = findSingleLabelByValue(value, item.children)
126
+ // 只有找到真正匹配项时才返回(不是fallback的String(value))
127
+ if (childLabel !== String(value)) {
128
+ return childLabel
129
+ }
130
+ }
131
+ }
132
+
133
+ // 如果找不到对应的label,降级返回原值
134
+ return String(value)
135
+ }
136
+
137
+ /**
138
+ * 处理 label 模式数据存储
139
+ * @param {Object} form - 表单对象
140
+ * @param {String} fieldName - 字段名
141
+ * @param {any} currentValue - 当前值
142
+ * @param {Array} options - 选项数据
143
+ * @param {Function} setFieldValue - Vue的$set方法
144
+ */
145
+ export function processLabelModeData (form, fieldName, currentValue, options, setFieldValue) {
146
+ // 确保 originData 对象存在
147
+ if (!form.originData) {
148
+ setFieldValue(form, 'originData', {})
149
+ }
150
+
151
+ // 获取当前值对应的原始值
152
+ const originValue = getOriginValue(currentValue, options)
153
+
154
+ // 存储原始值到 originData 中
155
+ setFieldValue(form.originData, fieldName, originValue)
156
+ }
157
+
158
+ /**
159
+ * 处理 both 模式数据存储
160
+ * @param {Object} form - 表单对象
161
+ * @param {String} fieldName - 字段名
162
+ * @param {any} currentValue - 当前值
163
+ * @param {Array} options - 选项数据
164
+ * @param {Function} setFieldValue - Vue的$set方法
165
+ */
166
+ export function processBothModeData (form, fieldName, currentValue, options, setFieldValue) {
167
+ // 确保 labelData 对象存在
168
+ if (!form.labelData) {
169
+ setFieldValue(form, 'labelData', {})
170
+ }
171
+
172
+ // 获取当前值对应的标签值
173
+ const labelValue = findLabelByValue(currentValue, options)
174
+
175
+ // 存储标签值到 labelData 中
176
+ if (labelValue !== null && labelValue !== undefined) {
177
+ setFieldValue(form.labelData, fieldName, labelValue)
178
+ }
179
+ }
180
+
181
+ /**
182
+ * 获取原始值(用于label模式时获取originValue)
183
+ * @param {any} currentValue - 当前值
184
+ * @param {Array} options - 选项数据
185
+ * @returns {any} 原始值,找不到时返回currentValue作为fallback
186
+ */
187
+ export function getOriginValue (currentValue, options) {
188
+ if (!Array.isArray(options) || currentValue === undefined || currentValue === null) {
189
+ return currentValue
190
+ }
191
+
192
+ // 多选情况
193
+ if (Array.isArray(currentValue)) {
194
+ const originValues = []
195
+ for (const val of currentValue) {
196
+ const originVal = findOriginValueByLabel(val, options)
197
+ // 只有找到真正的原始值时才使用originVal(不是fallback值)
198
+ if (originVal !== val) {
199
+ originValues.push(originVal)
200
+ } else {
201
+ // 如果没找到原始值,保留当前值
202
+ originValues.push(val)
203
+ }
204
+ }
205
+ return originValues
206
+ }
207
+
208
+ // 单选情况
209
+ return findOriginValueByLabel(currentValue, options)
210
+ }
211
+
212
+ /**
213
+ * 根据label查找原始value值
214
+ * @param {any} label - 标签值
215
+ * @param {Array} options - 选项数据
216
+ * @returns {any} 原始值,找不到时返回label作为fallback
217
+ */
218
+ function findOriginValueByLabel (label, options) {
219
+ for (const item of options) {
220
+ // 如果有originValue,说明是经过label模式转换的
221
+ if (item.originValue !== undefined && String(item.value) === String(label)) {
222
+ return item.originValue
223
+ }
224
+
225
+ // 递归查找树形结构
226
+ if (item.children && Array.isArray(item.children) && item.children.length > 0) {
227
+ const childOriginValue = findOriginValueByLabel(label, item.children)
228
+ // 只有当找到真正的匹配项时才返回(不等于传入的label)
229
+ if (childOriginValue !== label) {
230
+ return childOriginValue
231
+ }
232
+ }
233
+ }
234
+
235
+ return label // 如果找不到,返回原值
236
+ }
237
+
238
+ /**
239
+ * 创建selectValueType处理器的工厂函数
240
+ * @param {Object} context - Vue组件上下文
241
+ * @returns {Object} 处理器对象
242
+ */
243
+ export function createSelectValueTypeHandler (context) {
244
+ return {
245
+ // 预处理options数据
246
+ processOptions (options, selectValueType) {
247
+ return processOptionsForValueType(options, selectValueType)
248
+ },
249
+
250
+ // 查找label值
251
+ findLabel (value, options) {
252
+ return findLabelByValue(value, options)
253
+ },
254
+
255
+ // 处理both模式数据
256
+ processBothMode (form, fieldName, currentValue, options) {
257
+ return processBothModeData(form, fieldName, currentValue, options, context.$set)
258
+ },
259
+
260
+ // 处理label模式数据
261
+ processLabelMode (form, fieldName, currentValue, options) {
262
+ return processLabelModeData(form, fieldName, currentValue, options, context.$set)
263
+ },
264
+
265
+ // 获取原始值
266
+ getOriginValue (currentValue, options) {
267
+ return getOriginValue(currentValue, options)
268
+ }
269
+ }
270
+ }
271
+
272
+ export default {
273
+ processOptionsForValueType,
274
+ processOptionsForLabelType,
275
+ findLabelByValue,
276
+ findSingleLabelByValue,
277
+ processLabelModeData,
278
+ processBothModeData,
279
+ getOriginValue,
280
+ createSelectValueTypeHandler
281
+ }
package/src/bootstrap.js CHANGED
@@ -1,51 +1,51 @@
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
- import { getConfigByName } from '@vue2-client/services/api/common'
7
- import { hiPrintPlugin } from '@vue2-client/plugins/HiPrintPlugin'
8
- import { isMicroAppEnv } from '@vue2-client/utils/microAppUtils'
9
-
10
- /**
11
- * 启动引导方法
12
- * 应用启动时需要执行的操作放在这里
13
- * @param router 应用的路由实例
14
- * @param store 应用的 vuex.store 实例
15
- * @param i18n 应用的 vue-i18n 实例
16
- * @param message 应用的 message 实例
17
- */
18
- async function bootstrap ({ router, store, i18n, message }) {
19
- Vue.$store = store
20
- // 获取系统配置
21
- if (store) {
22
- // microApp 环境下作为子应用不获取webConfig
23
- if (!isMicroAppEnv) {
24
- await getConfigByName('webConfig', undefined, res => {
25
- localStorage.setItem(process.env.VUE_APP_WEB_CONFIG_KEY, JSON.stringify(res))
26
- if (res?.setting) {
27
- Vue.$store.commit('setting/setSetting', res?.setting)
28
- }
29
- })
30
- }
31
- if (process.env.VUE_APP_SYSTEM_NAME && process.env.VUE_APP_SYSTEM_NAME === 'af-his') {
32
- await getConfigByName('componentStyles', undefined, res => {
33
- localStorage.setItem(process.env.VUE_APP_WEB_STYLES_KEY, JSON.stringify(res))
34
- })
35
- }
36
- }
37
- // 设置应用配置
38
- setAppOptions({ router, store, i18n })
39
- // 加载 axios 拦截器
40
- loadInterceptors(interceptors, { router, store, i18n, message })
41
- if (router) {
42
- // 加载路由
43
- loadRoutes()
44
- // 加载路由守卫
45
- loadGuards(guards, { router, store, i18n, message })
46
- // 加载通用插件
47
- Vue.use(hiPrintPlugin)
48
- }
49
- }
50
-
51
- export default bootstrap
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
+ import { getConfigByName } from '@vue2-client/services/api/common'
7
+ import { hiPrintPlugin } from '@vue2-client/plugins/HiPrintPlugin'
8
+ import { isMicroAppEnv } from '@vue2-client/utils/microAppUtils'
9
+
10
+ /**
11
+ * 启动引导方法
12
+ * 应用启动时需要执行的操作放在这里
13
+ * @param router 应用的路由实例
14
+ * @param store 应用的 vuex.store 实例
15
+ * @param i18n 应用的 vue-i18n 实例
16
+ * @param message 应用的 message 实例
17
+ */
18
+ async function bootstrap ({ router, store, i18n, message }) {
19
+ Vue.$store = store
20
+ // 获取系统配置
21
+ if (store) {
22
+ // microApp 环境下作为子应用不获取webConfig
23
+ if (!isMicroAppEnv) {
24
+ await getConfigByName('webConfig', undefined, res => {
25
+ localStorage.setItem(process.env.VUE_APP_WEB_CONFIG_KEY, JSON.stringify(res))
26
+ if (res?.setting) {
27
+ Vue.$store.commit('setting/setSetting', res?.setting)
28
+ }
29
+ })
30
+ }
31
+ if (process.env.VUE_APP_SYSTEM_NAME && process.env.VUE_APP_SYSTEM_NAME === 'af-his') {
32
+ await getConfigByName('componentStyles', undefined, res => {
33
+ localStorage.setItem(process.env.VUE_APP_WEB_STYLES_KEY, JSON.stringify(res))
34
+ })
35
+ }
36
+ }
37
+ // 设置应用配置
38
+ setAppOptions({ router, store, i18n })
39
+ // 加载 axios 拦截器
40
+ loadInterceptors(interceptors, { router, store, i18n, message })
41
+ if (router) {
42
+ // 加载路由
43
+ loadRoutes()
44
+ // 加载路由守卫
45
+ loadGuards(guards, { router, store, i18n, message })
46
+ // 加载通用插件
47
+ Vue.use(hiPrintPlugin)
48
+ }
49
+ }
50
+
51
+ export default bootstrap