vue2-client 1.15.84 → 1.15.86

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/.claude/settings.local.json +12 -0
  2. package/.editorconfig +9 -9
  3. package/.env +20 -20
  4. package/.env.development +1 -1
  5. package/.env.iot +19 -19
  6. package/.env.message +19 -19
  7. package/.env.revenue +19 -19
  8. package/.env.runtime +19 -19
  9. package/.eslintrc.json +5 -5
  10. package/CLAUDE.md +89 -89
  11. package/README.md +65 -65
  12. package/babel.config.js +21 -21
  13. package/docs/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +46 -46
  14. package/docs/notice.md +22 -22
  15. package/docs//345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +179 -179
  16. package/jest.config.js +22 -22
  17. package/package.json +111 -111
  18. package/src/App.vue +196 -196
  19. package/src/ReportView.js +13 -13
  20. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +532 -532
  21. package/src/base-client/components/common/AddressSearchCombobox/index.js +3 -3
  22. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  23. package/src/base-client/components/common/CitySelect/CitySelect.vue +376 -376
  24. package/src/base-client/components/common/CitySelect/demo.vue +43 -43
  25. package/src/base-client/components/common/ColorPickerCombobox/ColorPickerCombobox.vue +99 -99
  26. package/src/base-client/components/common/ColorPickerCombobox/demo.vue +34 -34
  27. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +146 -146
  28. package/src/base-client/components/common/JSONToTree/index.js +3 -3
  29. package/src/base-client/components/common/Upload/Upload.vue +323 -323
  30. package/src/base-client/components/common/XAddForm/index.js +3 -3
  31. package/src/base-client/components/common/XAddForm/index.md +61 -61
  32. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1169 -1169
  33. package/src/base-client/components/common/XAddNativeForm/demo.vue +54 -40
  34. package/src/base-client/components/common/XAddNativeForm/index.js +3 -3
  35. package/src/base-client/components/common/XAddReport/XAddReport.vue +212 -212
  36. package/src/base-client/components/common/XBadge/index.js +3 -3
  37. package/src/base-client/components/common/XBadge/index.md +39 -39
  38. package/src/base-client/components/common/XButtons/XButtons.vue +284 -284
  39. package/src/base-client/components/common/XCalendar/XCalendar.vue +369 -369
  40. package/src/base-client/components/common/XCalendar/index.md +284 -284
  41. package/src/base-client/components/common/XCard/index.js +3 -3
  42. package/src/base-client/components/common/XCard/index.md +43 -43
  43. package/src/base-client/components/common/XCardSet/XCardSet.vue +300 -300
  44. package/src/base-client/components/common/XCollapse/XCollapse.vue +354 -354
  45. package/src/base-client/components/common/XConversation/XConversation.vue +576 -576
  46. package/src/base-client/components/common/XConversation/XConversationDemo.vue +28 -28
  47. package/src/base-client/components/common/XDataCard/XDataCard.vue +629 -629
  48. package/src/base-client/components/common/XDatePicker/index.vue +276 -276
  49. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +174 -174
  50. package/src/base-client/components/common/XDescriptions/XDescriptionsGroup.vue +314 -314
  51. package/src/base-client/components/common/XDescriptions/demo.vue +51 -51
  52. package/src/base-client/components/common/XForm/XForm.vue +420 -420
  53. package/src/base-client/components/common/XForm/XFormItem.vue +1474 -1390
  54. package/src/base-client/components/common/XForm/XTreeSelect.vue +276 -276
  55. package/src/base-client/components/common/XForm/demo.vue +105 -105
  56. package/src/base-client/components/common/XForm/index.js +3 -3
  57. package/src/base-client/components/common/XFormCol/XFormCol.vue +157 -157
  58. package/src/base-client/components/common/XFormCol/index.js +3 -3
  59. package/src/base-client/components/common/XFormCol/index.md +35 -35
  60. package/src/base-client/components/common/XFormGroup/XFormGroup.vue +301 -301
  61. package/src/base-client/components/common/XFormGroup/demo.vue +41 -41
  62. package/src/base-client/components/common/XFormTable/XFormTable.vue +938 -938
  63. package/src/base-client/components/common/XFormTable/demo.vue +87 -87
  64. package/src/base-client/components/common/XFormTable/index.js +3 -3
  65. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +174 -174
  66. package/src/base-client/components/common/XImportExcel/index.js +3 -3
  67. package/src/base-client/components/common/XImportExcel/index.md +38 -38
  68. package/src/base-client/components/common/XInput/XInput.vue +128 -128
  69. package/src/base-client/components/common/XInput/index.js +3 -3
  70. package/src/base-client/components/common/XInput/index.md +97 -97
  71. package/src/base-client/components/common/XIntervalPicker/XIntervalPicker.vue +121 -121
  72. package/src/base-client/components/common/XLicensePlate/index.js +3 -3
  73. package/src/base-client/components/common/XLicensePlate/index.md +38 -38
  74. package/src/base-client/components/common/XPrint/Demo.vue +41 -41
  75. package/src/base-client/components/common/XPrint/PrintBill.vue +308 -308
  76. package/src/base-client/components/common/XRate/demo.vue +102 -102
  77. package/src/base-client/components/common/XRate/index.vue +149 -149
  78. package/src/base-client/components/common/XReport/XReport.vue +963 -963
  79. package/src/base-client/components/common/XReport/XReportDemo.vue +70 -70
  80. package/src/base-client/components/common/XReport/XReportTrGroup.vue +1005 -1005
  81. package/src/base-client/components/common/XReport/index.md +103 -103
  82. package/src/base-client/components/common/XReportDrawer/XReportDrawer.vue +201 -201
  83. package/src/base-client/components/common/XReportGrid/XReport.vue +1075 -1075
  84. package/src/base-client/components/common/XReportGrid/XReportDemo.vue +44 -44
  85. package/src/base-client/components/common/XReportGrid/XReportDesign.vue +620 -620
  86. package/src/base-client/components/common/XReportGrid/XReportTrGroup.vue +723 -723
  87. package/src/base-client/components/common/XReportGrid/print.js +184 -184
  88. package/src/base-client/components/common/XTab/XTab.vue +299 -299
  89. package/src/base-client/components/common/XTable/ExportExcel.vue +283 -283
  90. package/src/base-client/components/common/XTable/XTable.vue +1599 -1599
  91. package/src/base-client/components/common/XTable/XTableWrapper.vue +597 -597
  92. package/src/base-client/components/common/XTable/index.js +3 -3
  93. package/src/base-client/components/common/XTimeline/XTimeline.vue +358 -358
  94. package/src/base-client/components/common/XTimeline/index.md +191 -191
  95. package/src/base-client/components/common/XTree/XTreePro.vue +452 -452
  96. package/src/base-client/components/common/XTreeOne/index.js +3 -3
  97. package/src/base-client/components/common/XUploadFilesView/index.vue +485 -485
  98. package/src/base-client/components/his/XCharge/XCharge.vue +238 -238
  99. package/src/base-client/components/his/XCheckbox/XCheckbox.vue +105 -105
  100. package/src/base-client/components/his/XCheckbox/index.md +253 -253
  101. package/src/base-client/components/his/XHDescriptions/XHDescriptions.vue +430 -430
  102. package/src/base-client/components/his/XHDescriptions/index.md +217 -217
  103. package/src/base-client/components/his/XHisEditor/XHisEditor.vue +629 -629
  104. package/src/base-client/components/his/XHisEditor/diagnosisAutocomplete.js +263 -263
  105. package/src/base-client/components/his/XList/XList.vue +495 -495
  106. package/src/base-client/components/his/XQuestionnaire/XQuestionnaire.json +3 -3
  107. package/src/base-client/components/his/XQuestionnaire/XQuestionnaire.vue +106 -106
  108. package/src/base-client/components/his/XQuestionnaire/XQuestionnaireDemo.vue +51 -51
  109. package/src/base-client/components/his/XQuestionnaire/XQuestionnaireItem.vue +269 -269
  110. package/src/base-client/components/his/XRadio/XRadio.vue +125 -125
  111. package/src/base-client/components/his/XRadio/index.md +234 -234
  112. package/src/base-client/components/his/XSelect/XSelect.vue +72 -72
  113. package/src/base-client/components/his/XShiftSchedule/XShiftSchedule.vue +234 -234
  114. package/src/base-client/components/his/XShiftSchedule/dome.vue +29 -29
  115. package/src/base-client/components/his/XSidebar/XSidebar.vue +240 -240
  116. package/src/base-client/components/his/XTextCard/XTextCard.vue +207 -207
  117. package/src/base-client/components/his/XTimeSelect/XTimeSelect.vue +162 -162
  118. package/src/base-client/components/his/XTimeSelect/XTimeSelectDemo.vue +23 -23
  119. package/src/base-client/components/his/XTitle/README.md +113 -113
  120. package/src/base-client/components/his/XTitle/XTitle.vue +123 -123
  121. package/src/base-client/components/his/XTreeRows/TreeNode.vue +107 -107
  122. package/src/base-client/components/his/XTreeRows/XTreeRows.vue +307 -307
  123. package/src/base-client/components/his/threeTestOrders/dome.vue +68 -68
  124. package/src/base-client/components/his/threeTestOrders/editor.vue +111 -111
  125. package/src/base-client/components/his/threeTestOrders/textBox.vue +457 -457
  126. package/src/base-client/components/his/threeTestOrders/threeTestOrders.vue +475 -475
  127. package/src/base-client/components/layout/XPageView/RenderRow.vue +88 -88
  128. package/src/base-client/components/layout/XPageView/XErrorView.vue +22 -22
  129. package/src/base-client/components/layout/XPageView/XPageRowTemplate.vue +37 -37
  130. package/src/base-client/components/layout/XPageView/XPageView.vue +223 -223
  131. package/src/base-client/components/layout/XPageView/XTab/XTab.vue +96 -96
  132. package/src/base-client/components/layout/XPageView/XTab/index.js +3 -3
  133. package/src/base-client/components/layout/XPageView/componentTypes.js +22 -22
  134. package/src/base-client/components/layout/XPageView/index.js +2 -2
  135. package/src/base-client/components/layout/XPageView/index.md +96 -96
  136. package/src/base-client/components/system/DictionaryDetailsView/index.js +3 -3
  137. package/src/base-client/components/system/DictionaryDetailsView/index.md +41 -41
  138. package/src/base-client/components/system/LogDetailsView/LogDetailsView.vue +376 -376
  139. package/src/base-client/components/system/LogDetailsView/index.js +3 -3
  140. package/src/base-client/components/system/LogDetailsView/index.md +41 -41
  141. package/src/base-client/components/system/QueryParamsDetailsView/index.js +3 -3
  142. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  143. package/src/base-client/components/ticket/TicketDetailsView/index.js +3 -3
  144. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  145. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  146. package/src/base-client/components/ticket/TicketDetailsView/part/index.js +3 -3
  147. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  148. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.js +3 -3
  149. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  150. package/src/base-client/plugins/AppData.js +126 -126
  151. package/src/base-client/plugins/PagedList.js +177 -177
  152. package/src/base-client/plugins/__tests__/selectValueTypeHelper.test.js +154 -0
  153. package/src/base-client/plugins/authority-plugin.js +167 -167
  154. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  155. package/src/base-client/plugins/i18n-extend.js +32 -32
  156. package/src/base-client/plugins/moment.js +8 -8
  157. package/src/base-client/plugins/selectValueTypeHelper.js +281 -0
  158. package/src/bootstrap.js +51 -51
  159. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  160. package/src/components/Ellipsis/index.js +3 -3
  161. package/src/components/Ellipsis/index.md +38 -38
  162. package/src/components/FileImageItem/FileItem.vue +320 -320
  163. package/src/components/FileImageItem/FileItemGroup.vue +197 -197
  164. package/src/components/FileImageItem/ImageItem.vue +107 -107
  165. package/src/components/FileImageItem/index.js +4 -4
  166. package/src/components/FilePreview/FilePreview.vue +181 -181
  167. package/src/components/FilePreview/FilePreviewDemo.vue +30 -30
  168. package/src/components/FilePreview/index.js +3 -3
  169. package/src/components/HeightScanner/index.vue +615 -615
  170. package/src/components/STable/README.md +341 -341
  171. package/src/components/STable/index.js +558 -558
  172. package/src/components/TableSetting/TableSetting.vue +143 -143
  173. package/src/components/TableSetting/index.js +3 -3
  174. package/src/components/Trend/Trend.vue +41 -41
  175. package/src/components/Trend/index.js +3 -3
  176. package/src/components/Trend/index.less +41 -41
  177. package/src/components/Trend/index.md +45 -45
  178. package/src/components/_util/util.js +46 -46
  179. package/src/components/cache/AKeepAlive.js +179 -179
  180. package/src/components/exception/typeConfig.js +19 -19
  181. package/src/components/form/FormRow.vue +52 -52
  182. package/src/components/index.less +5 -5
  183. package/src/components/menu/Contextmenu.vue +84 -84
  184. package/src/components/menu/index.less +38 -38
  185. package/src/components/page/header/PageHeader.vue +64 -64
  186. package/src/components/page/header/index.less +40 -40
  187. package/src/components/result/Result.vue +77 -77
  188. package/src/components/setting/SettingItem.vue +26 -26
  189. package/src/components/setting/i18n.js +117 -117
  190. package/src/components/table/StandardTable.vue +141 -141
  191. package/src/components/table/advance/ActionColumns.vue +158 -158
  192. package/src/components/table/advance/ActionSize.vue +45 -45
  193. package/src/components/table/advance/AdvanceTable.vue +275 -275
  194. package/src/components/table/advance/SearchArea.vue +355 -355
  195. package/src/components/table/advance/index.js +2 -2
  196. package/src/components/table/api/ApiTable.vue +50 -50
  197. package/src/components/task/TaskGroup.vue +80 -80
  198. package/src/components/task/TaskItem.vue +26 -26
  199. package/src/components/tool/AvatarList.vue +68 -68
  200. package/src/components/tool/DetailList.vue +157 -157
  201. package/src/components/tool/Drawer.vue +142 -142
  202. package/src/components/tool/FooterToolBar.vue +30 -30
  203. package/src/components/tool/HeadInfo.vue +35 -35
  204. package/src/components/tool/TagSelect.vue +83 -83
  205. package/src/components/tool/TagSelectOption.vue +33 -33
  206. package/src/components/transition/PageToggleTransition.vue +97 -97
  207. package/src/config/default/admin.config.js +18 -18
  208. package/src/config/default/animate.config.js +21 -21
  209. package/src/config/default/index.js +6 -6
  210. package/src/config/index.js +3 -3
  211. package/src/config/replacer/index.js +10 -10
  212. package/src/config/replacer/resolve.config.js +67 -67
  213. package/src/expression/ExpressionRunner.js +26 -26
  214. package/src/expression/TestExpression.js +509 -509
  215. package/src/expression/core/Delegate.js +115 -115
  216. package/src/expression/core/Expression.js +1358 -1358
  217. package/src/expression/core/Program.js +932 -932
  218. package/src/expression/core/Token.js +27 -27
  219. package/src/expression/enums/ExpressionType.js +81 -81
  220. package/src/expression/enums/TokenType.js +11 -11
  221. package/src/expression/exception/BreakWayException.js +2 -2
  222. package/src/expression/exception/ContinueWayException.js +2 -2
  223. package/src/expression/exception/ExpressionException.js +28 -28
  224. package/src/expression/exception/ReturnWayException.js +14 -14
  225. package/src/expression/exception/ServiceException.js +22 -22
  226. package/src/expression/instances/LogicConsole.js +44 -44
  227. package/src/expression/ts/ExpressionRunner.ts +28 -28
  228. package/src/expression/ts/TestExpression.ts +509 -509
  229. package/src/expression/ts/core/Delegate.ts +114 -114
  230. package/src/expression/ts/core/Expression.ts +1309 -1309
  231. package/src/expression/ts/core/Program.ts +950 -950
  232. package/src/expression/ts/core/Token.ts +29 -29
  233. package/src/expression/ts/enums/ExpressionType.ts +81 -81
  234. package/src/expression/ts/enums/TokenType.ts +13 -13
  235. package/src/expression/ts/exception/BreakWayException.ts +2 -2
  236. package/src/expression/ts/exception/ContinueWayException.ts +2 -2
  237. package/src/expression/ts/exception/ExpressionException.ts +28 -28
  238. package/src/expression/ts/exception/ReturnWayException.ts +14 -14
  239. package/src/expression/ts/exception/ServiceException.ts +22 -22
  240. package/src/expression/ts/instances/JSONArray.ts +48 -48
  241. package/src/expression/ts/instances/JSONObject.ts +109 -109
  242. package/src/expression/ts/instances/LogicConsole.ts +32 -32
  243. package/src/layouts/AdminLayout.vue +176 -176
  244. package/src/layouts/BlankView.vue +79 -79
  245. package/src/layouts/ComponentLayoutOne.vue +47 -47
  246. package/src/layouts/GridView.vue +43 -43
  247. package/src/layouts/PageView.vue +55 -55
  248. package/src/layouts/footer/PageFooter.vue +49 -49
  249. package/src/layouts/header/HeaderAvatar.vue +64 -64
  250. package/src/layouts/header/HeaderSearch.vue +67 -67
  251. package/src/layouts/header/index.less +92 -92
  252. package/src/layouts/tabs/TabsView.vue +383 -383
  253. package/src/layouts/tabs/i18n.js +25 -25
  254. package/src/layouts/tabs/index.js +2 -2
  255. package/src/logic/LogicRunner.js +62 -62
  256. package/src/logic/TestLogic.js +13 -13
  257. package/src/logic/plugins/common/DateTools.js +35 -35
  258. package/src/logic/plugins/common/VueTools.js +30 -30
  259. package/src/logic/plugins/index.js +7 -7
  260. package/src/logic/ts/LogicRunner.ts +67 -67
  261. package/src/logic/ts/TestLogic.ts +13 -13
  262. package/src/main.js +33 -33
  263. package/src/mixins/formValidationMixin.js +46 -46
  264. package/src/mock/common/activityData.js +32 -32
  265. package/src/mock/common/index.js +89 -89
  266. package/src/mock/common/reportData.js +20 -20
  267. package/src/mock/common/tableData.js +118 -118
  268. package/src/mock/index.js +12 -12
  269. package/src/mock/project/index.js +17 -17
  270. package/src/mock/user/current.js +13 -13
  271. package/src/mock/user/login.js +39 -39
  272. package/src/mock/user/routes.js +61 -61
  273. package/src/mock/workplace/index.js +15 -15
  274. package/src/pages/LogicCallExample/index.vue +46 -46
  275. package/src/pages/ReportGrid/index.vue +76 -76
  276. package/src/pages/ReportView.vue +50 -50
  277. package/src/pages/WorkflowDetail/WorkFlowDemo.vue +47 -47
  278. package/src/pages/WorkflowDetail/WorkFlowDemo2.vue +204 -204
  279. package/src/pages/WorkflowDetail/WorkFlowDemo3.vue +203 -203
  280. package/src/pages/WorkflowDetail/WorkflowDetail.vue +391 -391
  281. package/src/pages/WorkflowDetail/WorkflowPageDetail/LeaveMessage.vue +388 -388
  282. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformation.vue +415 -415
  283. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +1766 -1765
  284. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandleReso.vue +975 -975
  285. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowPreview.vue +109 -109
  286. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +929 -929
  287. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkOrderParentDetails.vue +222 -222
  288. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowDetailResso.vue +243 -243
  289. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowLog.vue +188 -188
  290. package/src/pages/WorkflowDetail/WorkflowPageDetail/components/WorkflowPersonSelector.vue +109 -109
  291. package/src/pages/WorkflowDetail/WorkflowPageDetail/worklog.vue +97 -97
  292. package/src/pages/XPageViewExample/index.vue +149 -149
  293. package/src/pages/addressSelect/addressDemo.vue +24 -24
  294. package/src/pages/addressSelect/index.vue +270 -270
  295. package/src/pages/dashboard/workplace/i18n.js +40 -40
  296. package/src/pages/dashboard/workplace/index.js +2 -2
  297. package/src/pages/dashboard/workplace/index.less +59 -59
  298. package/src/pages/exception/403.vue +21 -21
  299. package/src/pages/exception/404.vue +24 -24
  300. package/src/pages/exception/500.vue +21 -21
  301. package/src/pages/login/index.js +2 -2
  302. package/src/pages/report/ReportTableHome.vue +28 -28
  303. package/src/pages/resourceManage/depListManage.vue +23 -23
  304. package/src/pages/resourceManage/funListManage.vue +23 -23
  305. package/src/pages/resourceManage/index.js +15 -15
  306. package/src/pages/resourceManage/resourceManageMain.vue +57 -57
  307. package/src/pages/resourceManage/roleListManage.vue +23 -23
  308. package/src/pages/resourceManage/staffListManage.vue +23 -23
  309. package/src/pages/system/file/Info.vue +56 -56
  310. package/src/pages/system/file/index.vue +317 -317
  311. package/src/pages/system/settings/index.vue +126 -126
  312. package/src/pages/userInfoDetailManage/FillCardRecordQuery/index.vue +77 -77
  313. package/src/pages/userInfoDetailManage/FillGasRecordQuery/index.vue +75 -75
  314. package/src/pages/userInfoDetailManage/InsuranceDetailQuery/index.vue +64 -64
  315. package/src/pages/userInfoDetailManage/MachineRecordQuery/index.vue +75 -75
  316. package/src/pages/userInfoDetailManage/OtherChargeRecordQuery/index.vue +75 -75
  317. package/src/pages/userInfoDetailManage/PriceAdjustments/index.vue +64 -64
  318. package/src/pages/userInfoDetailManage/UserChargeRecordQuery/index.vue +94 -94
  319. package/src/pages/userInfoDetailManage/UserException/index.vue +64 -64
  320. package/src/pages/userInfoDetailManage/UserHandRecordQuery/index.vue +87 -87
  321. package/src/pages/userInfoDetailManage/UserRecordQuery/index.vue +74 -74
  322. package/src/pages/userInfoDetailManage/index.vue +290 -290
  323. package/src/pages/userInfoDetailManage/uploadFilesHistory/ImagePreview.vue +101 -101
  324. package/src/pages/userInfoDetailManage/uploadFilesHistory/index.vue +129 -129
  325. package/src/pages/userInfoDetailManage/userInfoDetailQueryTabs.vue +144 -144
  326. package/src/plugins/HiPrintPlugin.js +164 -164
  327. package/src/router/async/router.map.js +126 -126
  328. package/src/router/guards.js +262 -262
  329. package/src/router/i18n.js +57 -57
  330. package/src/router.js +17 -17
  331. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  332. package/src/services/api/LogDetailsViewApi.js +10 -10
  333. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  334. package/src/services/api/logininfor/index.js +6 -6
  335. package/src/services/api/manage.js +8 -8
  336. package/src/services/api/restTools.js +215 -215
  337. package/src/services/api/workFlow.js +57 -57
  338. package/src/services/apiService.js +16 -16
  339. package/src/services/dataSource.js +12 -12
  340. package/src/services/index.js +7 -7
  341. package/src/services/user.js +92 -92
  342. package/src/services/v3Api.js +116 -116
  343. package/src/store/index.js +5 -5
  344. package/src/store/mutation-types.js +4 -4
  345. package/src/theme/antd/ant-menu.less +2 -2
  346. package/src/theme/antd/ant-message.less +3 -3
  347. package/src/theme/antd/ant-table.less +22 -22
  348. package/src/theme/antd/ant-time-picker.less +3 -3
  349. package/src/theme/antd/index.less +3 -3
  350. package/src/theme/default/color.less +43 -43
  351. package/src/theme/default/index.less +3 -3
  352. package/src/theme/default/nprogress.less +76 -76
  353. package/src/theme/global.less +279 -279
  354. package/src/theme/index.less +5 -5
  355. package/src/theme/reportTable.less +58 -58
  356. package/src/theme/theme.less +1 -1
  357. package/src/utils/EncryptUtil.js +162 -162
  358. package/src/utils/Objects.js +25 -25
  359. package/src/utils/axios-interceptors.js +100 -100
  360. package/src/utils/colors.js +107 -107
  361. package/src/utils/common.js +10 -10
  362. package/src/utils/excel/Blob.js +180 -180
  363. package/src/utils/excel/Export2Excel.js +141 -141
  364. package/src/utils/filter.js +21 -21
  365. package/src/utils/i18n.js +80 -80
  366. package/src/utils/indexedDB.js +549 -549
  367. package/src/utils/microAppUtils.js +49 -49
  368. package/src/utils/request.js +395 -395
  369. package/src/utils/routerUtil.js +553 -553
  370. package/src/utils/themeUtil.js +100 -100
  371. package/test/Tree.spec.js +168 -168
  372. package/test/myDialog.spec.js +47 -47
  373. package/test/request.test.js +17 -17
  374. package/test/util.test.js +53 -53
  375. package/test/v3Api.test.js +1984 -1984
  376. package/tests/unit/ReportTable.spec.js +16 -16
  377. package/vue.config.js +222 -222
@@ -0,0 +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
+ }
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
@@ -1,65 +1,65 @@
1
- <script>
2
- import Tooltip from 'ant-design-vue/es/tooltip'
3
- import { cutStrByFullLength, getStrFullLength } from '@vue2-client/components/_util/util'
4
- /*
5
- const isSupportLineClamp = document.body.style.webkitLineClamp !== undefined;
6
-
7
- const TooltipOverlayStyle = {
8
- overflowWrap: 'break-word',
9
- wordWrap: 'break-word',
10
- };
11
- */
12
-
13
- export default {
14
- name: 'Ellipsis',
15
- components: {
16
- Tooltip
17
- },
18
- props: {
19
- prefixCls: {
20
- type: String,
21
- default: 'ant-pro-ellipsis'
22
- },
23
- tooltip: {
24
- type: Boolean,
25
- default: false
26
- },
27
- length: {
28
- type: [String, Number],
29
- required: true
30
- },
31
- lines: {
32
- type: Number,
33
- default: 1
34
- },
35
- fullWidthRecognition: {
36
- type: Boolean,
37
- default: false
38
- }
39
- },
40
- methods: {
41
- getStrDom (str, fullLength) {
42
- return (
43
- <span>{ cutStrByFullLength(str, this.length) + (fullLength > this.length ? '...' : '') }</span>
44
- )
45
- },
46
- getTooltip (fullStr, fullLength) {
47
- return (
48
- <Tooltip>
49
- <template slot="title">{ fullStr }</template>
50
- { this.getStrDom(fullStr, fullLength) }
51
- </Tooltip>
52
- )
53
- }
54
- },
55
- render () {
56
- const { tooltip, length } = this.$props
57
- const str = this.$slots.default.map(vNode => vNode.text).join('')
58
- const fullLength = getStrFullLength(str)
59
- const strDom = tooltip && fullLength > length ? this.getTooltip(str, fullLength) : this.getStrDom(str, fullLength)
60
- return (
61
- strDom
62
- )
63
- }
64
- }
65
- </script>
1
+ <script>
2
+ import Tooltip from 'ant-design-vue/es/tooltip'
3
+ import { cutStrByFullLength, getStrFullLength } from '@vue2-client/components/_util/util'
4
+ /*
5
+ const isSupportLineClamp = document.body.style.webkitLineClamp !== undefined;
6
+
7
+ const TooltipOverlayStyle = {
8
+ overflowWrap: 'break-word',
9
+ wordWrap: 'break-word',
10
+ };
11
+ */
12
+
13
+ export default {
14
+ name: 'Ellipsis',
15
+ components: {
16
+ Tooltip
17
+ },
18
+ props: {
19
+ prefixCls: {
20
+ type: String,
21
+ default: 'ant-pro-ellipsis'
22
+ },
23
+ tooltip: {
24
+ type: Boolean,
25
+ default: false
26
+ },
27
+ length: {
28
+ type: [String, Number],
29
+ required: true
30
+ },
31
+ lines: {
32
+ type: Number,
33
+ default: 1
34
+ },
35
+ fullWidthRecognition: {
36
+ type: Boolean,
37
+ default: false
38
+ }
39
+ },
40
+ methods: {
41
+ getStrDom (str, fullLength) {
42
+ return (
43
+ <span>{ cutStrByFullLength(str, this.length) + (fullLength > this.length ? '...' : '') }</span>
44
+ )
45
+ },
46
+ getTooltip (fullStr, fullLength) {
47
+ return (
48
+ <Tooltip>
49
+ <template slot="title">{ fullStr }</template>
50
+ { this.getStrDom(fullStr, fullLength) }
51
+ </Tooltip>
52
+ )
53
+ }
54
+ },
55
+ render () {
56
+ const { tooltip, length } = this.$props
57
+ const str = this.$slots.default.map(vNode => vNode.text).join('')
58
+ const fullLength = getStrFullLength(str)
59
+ const strDom = tooltip && fullLength > length ? this.getTooltip(str, fullLength) : this.getStrDom(str, fullLength)
60
+ return (
61
+ strDom
62
+ )
63
+ }
64
+ }
65
+ </script>
@@ -1,3 +1,3 @@
1
- import Ellipsis from './Ellipsis'
2
-
3
- export default Ellipsis
1
+ import Ellipsis from './Ellipsis'
2
+
3
+ export default Ellipsis
@@ -1,38 +1,38 @@
1
- # Ellipsis 文本自动省略号
2
-
3
- 文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。
4
-
5
-
6
-
7
- 引用方式:
8
-
9
- ```javascript
10
- import Ellipsis from '@vue2-client/components/Ellipsis'
11
-
12
- export default {
13
- components: {
14
- Ellipsis
15
- }
16
- }
17
- ```
18
-
19
-
20
-
21
- ## 代码演示 [demo](https://pro.loacg.com/test/home)
22
-
23
- ```html
24
- <ellipsis :length="100" tooltip>
25
- There were injuries alleged in three cases in 2015, and a
26
- fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
27
- </ellipsis>
28
- ```
29
-
30
-
31
-
32
- ## API
33
-
34
-
35
- | 参数 | 说明 | 类型 | 默认值 |
36
- |---------|--------------------------|---------|-----|
37
- | tooltip | 移动到文本展示完整内容的提示 | boolean | - |
38
- | length | 在按照长度截取下的文本最大字符数,超过则截取省略 | number | - |
1
+ # Ellipsis 文本自动省略号
2
+
3
+ 文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。
4
+
5
+
6
+
7
+ 引用方式:
8
+
9
+ ```javascript
10
+ import Ellipsis from '@vue2-client/components/Ellipsis'
11
+
12
+ export default {
13
+ components: {
14
+ Ellipsis
15
+ }
16
+ }
17
+ ```
18
+
19
+
20
+
21
+ ## 代码演示 [demo](https://pro.loacg.com/test/home)
22
+
23
+ ```html
24
+ <ellipsis :length="100" tooltip>
25
+ There were injuries alleged in three cases in 2015, and a
26
+ fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
27
+ </ellipsis>
28
+ ```
29
+
30
+
31
+
32
+ ## API
33
+
34
+
35
+ | 参数 | 说明 | 类型 | 默认值 |
36
+ |---------|--------------------------|---------|-----|
37
+ | tooltip | 移动到文本展示完整内容的提示 | boolean | - |
38
+ | length | 在按照长度截取下的文本最大字符数,超过则截取省略 | number | - |