vue2-client 1.16.3 → 1.16.4

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 (324) hide show
  1. package/.claude/settings.local.json +13 -13
  2. package/.cursorrules +19 -19
  3. package/.env.apply +19 -19
  4. package/.env.gaslink +19 -19
  5. package/.env.his +19 -19
  6. package/.env.liuli +20 -20
  7. package/.env.scada +19 -19
  8. package/.eslintrc.js +90 -90
  9. package/CHANGELOG.md +824 -824
  10. package/Components.md +60 -60
  11. package/docs/LowCode/lowcode.md +155 -155
  12. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  13. package/docs/index.md +30 -30
  14. package/index.js +31 -31
  15. package/jest-transform-stub.js +8 -8
  16. package/jest.setup.js +7 -7
  17. package/jsconfig.json +19 -19
  18. package/package.json +1 -1
  19. package/public/his/editor/editor.html +51 -51
  20. package/public/his/editor/mock/bind_data.html +779 -779
  21. package/public/his/editor/mock/data_table.html +40 -40
  22. package/public/his/editor/mock/sign.html +75 -75
  23. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  24. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  25. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  26. package/public/his/editor/vender/date97/calendar.js +4 -4
  27. package/public/his/editor/vender/date97/lang/en.js +13 -13
  28. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  29. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  30. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  31. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  32. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  33. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  34. package/public/his/editor/vender/diff.js +1627 -1627
  35. package/public/his/editor/vender/editor.js +1 -1
  36. package/public/his/editor/vender/fabric.js +31187 -31187
  37. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  38. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  39. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  40. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  41. package/public/his/editor/vender/mui/mui.min.css +4 -4
  42. package/public/his/editor/vender/mui/mui.min.js +5 -5
  43. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  44. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  45. package/public/his/editor/vender/qrcode.js +7 -7
  46. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  47. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  48. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  49. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  50. package/public/his/editor/vender/validator.js +5094 -5094
  51. package/public/his/editor/vender/weui/weui.css +5659 -5659
  52. package/public/his/editor/vender/weui/weui.min.css +4 -4
  53. package/public/his/editor/vender/weui/weui.min.js +11 -11
  54. package/src/assets/img/querySlotDemo.svg +15 -15
  55. package/src/assets/svg/badtwo.svg +1 -1
  56. package/src/assets/svg/goodtwo.svg +1 -1
  57. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  58. package/src/base-client/components/AI/demo.vue +31 -31
  59. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +10 -13
  60. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  61. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  62. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  63. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  64. package/src/base-client/components/common/CitySelect/index.js +3 -3
  65. package/src/base-client/components/common/CitySelect/index.md +109 -109
  66. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  67. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  68. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  69. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  70. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  71. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  72. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  73. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  74. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  75. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  76. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  77. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  78. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  79. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  80. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  81. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  82. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  83. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  84. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  85. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  86. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  87. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  88. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  89. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  90. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  91. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  92. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  93. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  94. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  95. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  96. package/src/base-client/components/common/Recording/index.js +3 -3
  97. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  98. package/src/base-client/components/common/Tree/index.js +2 -2
  99. package/src/base-client/components/common/Upload/index.js +3 -3
  100. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  101. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +3 -0
  102. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  103. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +303 -303
  104. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  105. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  106. package/src/base-client/components/common/XAddReport/index.js +3 -3
  107. package/src/base-client/components/common/XAddReport/index.md +56 -56
  108. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  109. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  110. package/src/base-client/components/common/XButtons/index.js +3 -3
  111. package/src/base-client/components/common/XButtons/index.md +61 -61
  112. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  113. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  114. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  115. package/src/base-client/components/common/XDataCard/index.js +3 -3
  116. package/src/base-client/components/common/XDataCard/index.md +1 -1
  117. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  118. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  119. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  120. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  121. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  122. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  123. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  124. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  125. package/src/base-client/components/common/XForm/XFormItem.vue +2 -1
  126. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  127. package/src/base-client/components/common/XForm/index.md +178 -178
  128. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  129. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  130. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  131. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  132. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  133. package/src/base-client/components/common/XFormTable/demo.vue +3 -7
  134. package/src/base-client/components/common/XFormTable/index.md +92 -92
  135. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  136. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  137. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  138. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  139. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  140. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  141. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  142. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  143. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  144. package/src/base-client/components/common/XPrint/index.vue +97 -97
  145. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  146. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  147. package/src/base-client/components/common/XReport/index.js +3 -3
  148. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  149. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  150. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  151. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  152. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  153. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  154. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  155. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  156. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  157. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  158. package/src/base-client/components/common/XStepView/index.js +3 -3
  159. package/src/base-client/components/common/XStepView/index.md +31 -31
  160. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  161. package/src/base-client/components/common/XTab/index.js +3 -3
  162. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  163. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  164. package/src/base-client/components/common/XTable/index.md +255 -255
  165. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  166. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  167. package/src/base-client/components/common/XTree/index.js +3 -3
  168. package/src/base-client/components/common/XTree/index.md +36 -36
  169. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  170. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  171. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  172. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  173. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  174. package/src/base-client/components/index.js +51 -51
  175. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  176. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  177. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  178. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  179. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  180. package/src/base-client/plugins/Config.js +19 -19
  181. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  182. package/src/base-client/plugins/Recording.js +258 -258
  183. package/src/base-client/plugins/index.js +23 -23
  184. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  185. package/src/components/Charts/Bar.vue +62 -62
  186. package/src/components/Charts/ChartCard.vue +134 -134
  187. package/src/components/Charts/Liquid.vue +67 -67
  188. package/src/components/Charts/MiniArea.vue +39 -39
  189. package/src/components/Charts/MiniBar.vue +39 -39
  190. package/src/components/Charts/MiniProgress.vue +75 -75
  191. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  192. package/src/components/Charts/Radar.vue +68 -68
  193. package/src/components/Charts/RankList.vue +77 -77
  194. package/src/components/Charts/TagCloud.vue +113 -113
  195. package/src/components/Charts/TransferBar.vue +64 -64
  196. package/src/components/Charts/Trend.vue +82 -82
  197. package/src/components/Charts/chart.less +12 -12
  198. package/src/components/Charts/smooth.area.less +13 -13
  199. package/src/components/CodeMirror/inedx.vue +118 -118
  200. package/src/components/CodeMirror/setting.js +40 -40
  201. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  202. package/src/components/NumberInfo/index.js +3 -3
  203. package/src/components/NumberInfo/index.less +54 -54
  204. package/src/components/NumberInfo/index.md +43 -43
  205. package/src/components/card/ChartCard.vue +79 -79
  206. package/src/components/chart/Bar.vue +60 -60
  207. package/src/components/chart/MiniArea.vue +67 -67
  208. package/src/components/chart/MiniBar.vue +59 -59
  209. package/src/components/chart/MiniProgress.vue +57 -57
  210. package/src/components/chart/Radar.vue +80 -80
  211. package/src/components/chart/RankingList.vue +60 -60
  212. package/src/components/chart/Trend.vue +79 -79
  213. package/src/components/chart/index.less +9 -9
  214. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  215. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  216. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  217. package/src/components/checkbox/index.js +9 -9
  218. package/src/components/exception/ExceptionPage.vue +70 -70
  219. package/src/components/g2Charts/constants.js +202 -202
  220. package/src/components/g2Charts/demo.vue +808 -808
  221. package/src/components/g2Charts/designer.vue +228 -228
  222. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  223. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  224. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  225. package/src/components/g2Charts/index.vue +397 -397
  226. package/src/components/index.js +36 -36
  227. package/src/components/input/IInput.vue +66 -66
  228. package/src/components/menu/SideMenu.vue +75 -75
  229. package/src/components/menu/menu.js +273 -273
  230. package/src/components/setting/Setting.vue +234 -234
  231. package/src/components/tool/AStepItem.vue +60 -60
  232. package/src/config/CreateQueryConfig.js +325 -325
  233. package/src/config/default/antd.config.js +89 -89
  234. package/src/config/default/setting.config.js +55 -55
  235. package/src/font-style/common.txt +1 -1
  236. package/src/font-style/font.css +60 -60
  237. package/src/font-style//345/216/213/347/274/251/345/255/227/344/275/223.bat +1 -1
  238. package/src/layouts/CommonLayout.vue +56 -56
  239. package/src/layouts/PageLayout.vue +151 -151
  240. package/src/layouts/SinglePageView.vue +136 -136
  241. package/src/layouts/header/AdminHeader.vue +132 -132
  242. package/src/layouts/header/HeaderNotice.vue +177 -177
  243. package/src/layouts/header/InstitutionDetail.vue +181 -181
  244. package/src/layouts/tabs/TabsHead.vue +189 -189
  245. package/src/lib.js +1 -1
  246. package/src/mock/extend/index.js +84 -84
  247. package/src/mock/goods/index.js +108 -108
  248. package/src/pages/DefaultExample/index.vue +77 -77
  249. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  250. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  251. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  252. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  253. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  254. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  255. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  256. package/src/pages/DynamicStatistics/index.vue +282 -282
  257. package/src/pages/Example/childIndex.vue +15 -15
  258. package/src/pages/Example/index.vue +30 -30
  259. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  260. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  261. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  262. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  263. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  264. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  265. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  266. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  267. package/src/pages/Recording/index.vue +77 -77
  268. package/src/pages/ServiceReview/index.vue +284 -284
  269. package/src/pages/SubExample/index.vue +26 -26
  270. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  271. package/src/pages/XReportView/index.vue +64 -64
  272. package/src/pages/XTreeOneProExample/index.vue +67 -67
  273. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  274. package/src/pages/login/Login.vue +379 -379
  275. package/src/pages/login/LoginV3.vue +389 -389
  276. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  277. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  278. package/src/pages/report/ReportTable.js +124 -124
  279. package/src/pages/resourceManage/orgListManage.vue +98 -98
  280. package/src/pages/system/dictionary/index.vue +44 -44
  281. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  282. package/src/pages/system/monitor/operLog/index.vue +37 -37
  283. package/src/pages/system/settings/modifyPassword.vue +117 -117
  284. package/src/pages/system/ticket/index.vue +480 -480
  285. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  286. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  287. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  288. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  289. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  290. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  291. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  292. package/src/plugins/EventLogPlugin.js +33 -33
  293. package/src/plugins/FindParentsData.js +17 -17
  294. package/src/router/async/config.async.js +35 -35
  295. package/src/router/index.js +27 -27
  296. package/src/services/DataModel.js +30 -30
  297. package/src/services/LodopFuncs.js +137 -137
  298. package/src/services/api/TicketDetailsViewApi.js +46 -46
  299. package/src/services/api/cas.js +79 -79
  300. package/src/services/api/common.js +346 -346
  301. package/src/services/api/entity.js +18 -18
  302. package/src/services/api/index.js +17 -17
  303. package/src/store/modules/account.js +115 -115
  304. package/src/store/modules/index.js +5 -5
  305. package/src/store/modules/lowCode.js +33 -33
  306. package/src/store/modules/setting.js +119 -119
  307. package/src/theme/default/style.less +58 -58
  308. package/src/utils/authority-utils.js +85 -85
  309. package/src/utils/errorCode.js +6 -6
  310. package/src/utils/formatter.js +74 -74
  311. package/src/utils/htmlToPDF.js +108 -108
  312. package/src/utils/htmlToPDFApi.js +5 -5
  313. package/src/utils/login.js +188 -188
  314. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  315. package/src/utils/lowcode/lowcodeLog.js +29 -29
  316. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  317. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  318. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  319. package/src/utils/reg.js +95 -95
  320. package/src/utils/runEvalFunction.js +14 -14
  321. package/src/utils/theme-color-replacer-extend.js +92 -92
  322. package/src/utils/util.js +329 -329
  323. package/src/utils/waterMark.js +31 -31
  324. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
package/src/utils/util.js CHANGED
@@ -1,329 +1,329 @@
1
- import enquireJs from 'enquire.js'
2
- import moment from 'moment/moment'
3
-
4
- const timeList = [
5
- {
6
- CN: '早上好',
7
- HK: '早晨啊',
8
- US: 'Good morning'
9
- }, {
10
- CN: '上午好',
11
- HK: '上午好',
12
- US: 'Good morning'
13
- }, {
14
- CN: '中午好',
15
- HK: '中午好',
16
- US: 'Good afternoon'
17
- }, {
18
- CN: '下午好',
19
- HK: '下午好',
20
- US: 'Good afternoon'
21
- }, {
22
- CN: '晚上好',
23
- HK: '晚上好',
24
- US: 'Good evening'
25
- }
26
- ]
27
- /**
28
- * 数组去空值
29
- */
30
- export function arrRemoveEmpty (arr) {
31
- for (let i = 0; i < arr.length; i++) {
32
- if (arr[i] === '' || typeof (arr[i]) == 'undefined') {
33
- arr.splice(i, 1)
34
- i--
35
- }
36
- }
37
- return arr
38
- }
39
-
40
- export function isDef (v) {
41
- return v !== undefined && v !== null
42
- }
43
-
44
- export function formatDate (dateStr, fmt) {
45
- if (dateStr == null) {
46
- return '--'
47
- }
48
- let date
49
- if (dateStr === 'now') {
50
- date = new Date()
51
- } else {
52
- date = new Date(dateStr)
53
- }
54
- const o = {
55
- 'M+': date.getMonth() + 1,
56
- 'd+': date.getDate(),
57
- 'h+': date.getHours(),
58
- 'm+': date.getMinutes(),
59
- 's+': date.getSeconds(),
60
- 'q+': Math.floor((date.getMonth() + 3) / 3),
61
- S: date.getMilliseconds()
62
- }
63
- if (!fmt) {
64
- fmt = 'yyyy-MM-dd hh:mm:ss'
65
- }
66
- if (/(y+)/.test(fmt)) {
67
- fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
68
- }
69
- for (const k in o) {
70
- if (new RegExp('(' + k + ')').test(fmt)) {
71
- fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
72
- }
73
- }
74
- return fmt
75
- }
76
-
77
- export function uuid () {
78
- return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
79
- const r = Math.random() * 16 | 0
80
- const v = c === 'x' ? r : (r & 0x3 | 0x8)
81
- return v.toString(16)
82
- })
83
- }
84
-
85
- export function timeCompare (date1, date2) {
86
- const date11 = new Date(date1)
87
- const date22 = new Date(date2)
88
- return date11.time > date22.time ? 1 : -1
89
- }
90
-
91
- export function timeFix () {
92
- const time = new Date()
93
- const hour = time.getHours()
94
- return hour < 9
95
- ? timeList[0]
96
- : (hour <= 11 ? timeList[1] : (hour <= 13 ? timeList[2] : (hour <= 20 ? timeList[3] : timeList[4])))
97
- }
98
-
99
- /**
100
- * Remove an item from an array.
101
- */
102
- export function remove (arr, item) {
103
- if (arr.length) {
104
- const index = arr.indexOf(item)
105
- if (index > -1) {
106
- return arr.splice(index, 1)
107
- }
108
- }
109
- }
110
-
111
- export function isRegExp (v) {
112
- return _toString.call(v) === '[object RegExp]'
113
- }
114
-
115
- export function enquireScreen (call) {
116
- const handler = {
117
- match: function () {
118
- call && call(true)
119
- },
120
- unmatch: function () {
121
- call && call(false)
122
- }
123
- }
124
- enquireJs.register('only screen and (max-width: 767.99px)', handler)
125
- }
126
-
127
- export function showXml (str) {
128
- let text = str
129
-
130
- // 去掉多余的空格
131
- text = '\n' + text.replace(/(<\w+)(\s.*?>)/g, function ($0, name, props) {
132
- return name + props.replace(/\s+(\w+=)/g, ' $1')
133
- }).replace(/>\s*?</g, '>\n<')
134
-
135
- // 把注释编码
136
- text = text.replace(/\n/g, '\r').replace(/<!--(.+?)-->/g, function ($0, text) {
137
- return '<!--' + escape(text) + '-->'
138
- }).replace(/\r/g, '\n')
139
-
140
- // 调整格式
141
- const rgx = /\n(<(([^?]).+?)(?:\s|\s*?>|\s*?(\/)>)(?:.*?(?:(\/)>|<(\/)\2>))?)/mg
142
- const nodeStack = []
143
- const output = text.replace(rgx, function ($0, all, name, isBegin, isCloseFull1, isCloseFull2, isFull1, isFull2) {
144
- const isClosed = (isCloseFull1 === '/') || (isCloseFull2 === '/') || (isFull1 === '/') || (isFull2 === '/')
145
- let prefix
146
- if (isBegin === '!') {
147
- prefix = getPrefix(nodeStack.length)
148
- } else {
149
- if (isBegin !== '/') {
150
- prefix = getPrefix(nodeStack.length)
151
- if (!isClosed) {
152
- nodeStack.push(name)
153
- }
154
- } else {
155
- nodeStack.pop()
156
- prefix = getPrefix(nodeStack.length)
157
- }
158
- }
159
- return '\n' + prefix + all
160
- })
161
- let outputText = output.substring(1)
162
-
163
- // 把注释还原并解码,调格式
164
- outputText = outputText.replace(/\n/g, '\r').replace(/(\s*)<!--(.+?)-->/g, function ($0, prefix, text) {
165
- if (prefix.charAt(0) === '\r') { prefix = prefix.substring(1) }
166
- text = unescape(text).replace(/\r/g, '\n')
167
- return '\n' + prefix + '<!--' + text.replace(/^\s*/mg, prefix) + '-->'
168
- })
169
- // alert(outputText);
170
-
171
- outputText = outputText.replace(/\s+$/g, '').replace(/\r/g, '\r\n')
172
-
173
- return outputText
174
- }
175
-
176
- function getPrefix (prefixIndex) {
177
- const span = ' '
178
- const output = []
179
- for (let i = 0; i < prefixIndex; ++i) {
180
- output.push(span)
181
- }
182
-
183
- return output.join('')
184
- }
185
-
186
- /**
187
- * 构造树型结构数据
188
- * [label,value,children]
189
- */
190
- export function handleTree (data, id, parentId, children) {
191
- const config = {
192
- id: id || 'id',
193
- parentId: parentId || 'parent_id',
194
- childrenList: children || 'children'
195
- }
196
- const childrenListMap = {}
197
- const nodeIds = {}
198
- const tree = []
199
- for (const d of data) {
200
- const parentId = d[config.parentId]
201
- if (childrenListMap[parentId] == null) {
202
- childrenListMap[parentId] = []
203
- }
204
- nodeIds[d[config.id]] = d
205
- childrenListMap[parentId].push(d)
206
- }
207
- for (const d of data) {
208
- const parentId = d[config.parentId]
209
- if (nodeIds[parentId] == null) {
210
- tree.push(d)
211
- }
212
- }
213
- for (const t of tree) {
214
- adaptToChildrenList(t)
215
- }
216
-
217
- function adaptToChildrenList (o) {
218
- o.label = o.name
219
- o.value = o.name
220
- if (childrenListMap[o[config.id]] !== null) {
221
- o[config.childrenList] = childrenListMap[o[config.id]]
222
- }
223
- if (o[config.childrenList]) {
224
- for (const c of o[config.childrenList]) {
225
- adaptToChildrenList(c)
226
- }
227
- }
228
- }
229
- return tree
230
- }
231
-
232
- /**
233
- * Function to get the changed data between two sets of rows *
234
- * @param beforeData 之前的数据
235
- * @param afterData 之后的数据
236
- * @returns {*[]} 差异得数据
237
- */
238
- export function getChangedData (beforeData, afterData) {
239
- const changeData = []
240
-
241
- beforeData.forEach((item, index) => {
242
- const afterItem = afterData[index]
243
- const changeItem = compareRows(item, afterItem)
244
-
245
- if (Object.keys(changeItem).length > 0) {
246
- changeData.push(afterItem)
247
- }
248
- })
249
-
250
- return changeData
251
- }
252
-
253
- /**
254
- * Function to compare two rows and return the changed fields
255
- * @param beforeRow 之前的数据
256
- * @param afterRow 之后的数据
257
- * @returns {*[]} 差异得数据
258
- */
259
- export function compareRows (beforeRow, afterRow) {
260
- const keys = Object.keys(beforeRow)
261
- const changeItem = {}
262
-
263
- keys.forEach(key => {
264
- if (beforeRow[key] !== afterRow[key]) {
265
- changeItem[key] = afterRow[key]
266
- }
267
- })
268
-
269
- return changeItem
270
- }
271
-
272
- export function getRealKeyData (data) {
273
- return Object.keys(data).reduce((obj, key) => {
274
- // 找到第一个下划线后面的部分
275
- const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
276
- obj[realKey] = data[key] // 赋值
277
- return obj
278
- }, {})
279
- }
280
-
281
- export function setDataByRealKey (form, data) {
282
- // 创建一个映射 realKey -> formKey
283
- const realFormMap = {}
284
-
285
- // 遍历 form,建立真实键名和 form 键的映射
286
- Object.keys(form).forEach(key => {
287
- // 提取第一个下划线后面的部分
288
- const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
289
- realFormMap[realKey] = key // 存储映射关系
290
- })
291
-
292
- // 遍历 data,更新 form 中的值
293
- Object.keys(data).forEach(key => {
294
- // 提取第一个下划线后面的部分
295
- const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
296
- if (realFormMap[realKey]) {
297
- form[realFormMap[realKey]] = data[key] // 根据映射关系赋值
298
- } else {
299
- form[key] = data[key]
300
- }
301
- })
302
-
303
- return form
304
- }
305
-
306
- const _toString = Object.prototype.toString
307
-
308
- export function _moment (...args) {
309
- return moment(...args)
310
- }
311
-
312
- export function base64ToFile (base64Data, filename = 'image.png') {
313
- // 将 base64 转换为 blob
314
- const arr = base64Data.split(',')
315
- const mime = arr[0].match(/:(.*?);/)?.[1] || 'image/png'
316
- const bstr = atob(arr[1])
317
- let n = bstr.length
318
- const u8arr = new Uint8Array(n)
319
-
320
- while (n--) {
321
- u8arr[n] = bstr.charCodeAt(n)
322
- }
323
-
324
- // 创建 Blob 对象
325
- const blob = new Blob([u8arr], { type: mime })
326
-
327
- // 创建 File 对象
328
- return new File([blob], filename, { type: mime })
329
- };
1
+ import enquireJs from 'enquire.js'
2
+ import moment from 'moment/moment'
3
+
4
+ const timeList = [
5
+ {
6
+ CN: '早上好',
7
+ HK: '早晨啊',
8
+ US: 'Good morning'
9
+ }, {
10
+ CN: '上午好',
11
+ HK: '上午好',
12
+ US: 'Good morning'
13
+ }, {
14
+ CN: '中午好',
15
+ HK: '中午好',
16
+ US: 'Good afternoon'
17
+ }, {
18
+ CN: '下午好',
19
+ HK: '下午好',
20
+ US: 'Good afternoon'
21
+ }, {
22
+ CN: '晚上好',
23
+ HK: '晚上好',
24
+ US: 'Good evening'
25
+ }
26
+ ]
27
+ /**
28
+ * 数组去空值
29
+ */
30
+ export function arrRemoveEmpty (arr) {
31
+ for (let i = 0; i < arr.length; i++) {
32
+ if (arr[i] === '' || typeof (arr[i]) == 'undefined') {
33
+ arr.splice(i, 1)
34
+ i--
35
+ }
36
+ }
37
+ return arr
38
+ }
39
+
40
+ export function isDef (v) {
41
+ return v !== undefined && v !== null
42
+ }
43
+
44
+ export function formatDate (dateStr, fmt) {
45
+ if (dateStr == null) {
46
+ return '--'
47
+ }
48
+ let date
49
+ if (dateStr === 'now') {
50
+ date = new Date()
51
+ } else {
52
+ date = new Date(dateStr)
53
+ }
54
+ const o = {
55
+ 'M+': date.getMonth() + 1,
56
+ 'd+': date.getDate(),
57
+ 'h+': date.getHours(),
58
+ 'm+': date.getMinutes(),
59
+ 's+': date.getSeconds(),
60
+ 'q+': Math.floor((date.getMonth() + 3) / 3),
61
+ S: date.getMilliseconds()
62
+ }
63
+ if (!fmt) {
64
+ fmt = 'yyyy-MM-dd hh:mm:ss'
65
+ }
66
+ if (/(y+)/.test(fmt)) {
67
+ fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
68
+ }
69
+ for (const k in o) {
70
+ if (new RegExp('(' + k + ')').test(fmt)) {
71
+ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
72
+ }
73
+ }
74
+ return fmt
75
+ }
76
+
77
+ export function uuid () {
78
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
79
+ const r = Math.random() * 16 | 0
80
+ const v = c === 'x' ? r : (r & 0x3 | 0x8)
81
+ return v.toString(16)
82
+ })
83
+ }
84
+
85
+ export function timeCompare (date1, date2) {
86
+ const date11 = new Date(date1)
87
+ const date22 = new Date(date2)
88
+ return date11.time > date22.time ? 1 : -1
89
+ }
90
+
91
+ export function timeFix () {
92
+ const time = new Date()
93
+ const hour = time.getHours()
94
+ return hour < 9
95
+ ? timeList[0]
96
+ : (hour <= 11 ? timeList[1] : (hour <= 13 ? timeList[2] : (hour <= 20 ? timeList[3] : timeList[4])))
97
+ }
98
+
99
+ /**
100
+ * Remove an item from an array.
101
+ */
102
+ export function remove (arr, item) {
103
+ if (arr.length) {
104
+ const index = arr.indexOf(item)
105
+ if (index > -1) {
106
+ return arr.splice(index, 1)
107
+ }
108
+ }
109
+ }
110
+
111
+ export function isRegExp (v) {
112
+ return _toString.call(v) === '[object RegExp]'
113
+ }
114
+
115
+ export function enquireScreen (call) {
116
+ const handler = {
117
+ match: function () {
118
+ call && call(true)
119
+ },
120
+ unmatch: function () {
121
+ call && call(false)
122
+ }
123
+ }
124
+ enquireJs.register('only screen and (max-width: 767.99px)', handler)
125
+ }
126
+
127
+ export function showXml (str) {
128
+ let text = str
129
+
130
+ // 去掉多余的空格
131
+ text = '\n' + text.replace(/(<\w+)(\s.*?>)/g, function ($0, name, props) {
132
+ return name + props.replace(/\s+(\w+=)/g, ' $1')
133
+ }).replace(/>\s*?</g, '>\n<')
134
+
135
+ // 把注释编码
136
+ text = text.replace(/\n/g, '\r').replace(/<!--(.+?)-->/g, function ($0, text) {
137
+ return '<!--' + escape(text) + '-->'
138
+ }).replace(/\r/g, '\n')
139
+
140
+ // 调整格式
141
+ const rgx = /\n(<(([^?]).+?)(?:\s|\s*?>|\s*?(\/)>)(?:.*?(?:(\/)>|<(\/)\2>))?)/mg
142
+ const nodeStack = []
143
+ const output = text.replace(rgx, function ($0, all, name, isBegin, isCloseFull1, isCloseFull2, isFull1, isFull2) {
144
+ const isClosed = (isCloseFull1 === '/') || (isCloseFull2 === '/') || (isFull1 === '/') || (isFull2 === '/')
145
+ let prefix
146
+ if (isBegin === '!') {
147
+ prefix = getPrefix(nodeStack.length)
148
+ } else {
149
+ if (isBegin !== '/') {
150
+ prefix = getPrefix(nodeStack.length)
151
+ if (!isClosed) {
152
+ nodeStack.push(name)
153
+ }
154
+ } else {
155
+ nodeStack.pop()
156
+ prefix = getPrefix(nodeStack.length)
157
+ }
158
+ }
159
+ return '\n' + prefix + all
160
+ })
161
+ let outputText = output.substring(1)
162
+
163
+ // 把注释还原并解码,调格式
164
+ outputText = outputText.replace(/\n/g, '\r').replace(/(\s*)<!--(.+?)-->/g, function ($0, prefix, text) {
165
+ if (prefix.charAt(0) === '\r') { prefix = prefix.substring(1) }
166
+ text = unescape(text).replace(/\r/g, '\n')
167
+ return '\n' + prefix + '<!--' + text.replace(/^\s*/mg, prefix) + '-->'
168
+ })
169
+ // alert(outputText);
170
+
171
+ outputText = outputText.replace(/\s+$/g, '').replace(/\r/g, '\r\n')
172
+
173
+ return outputText
174
+ }
175
+
176
+ function getPrefix (prefixIndex) {
177
+ const span = ' '
178
+ const output = []
179
+ for (let i = 0; i < prefixIndex; ++i) {
180
+ output.push(span)
181
+ }
182
+
183
+ return output.join('')
184
+ }
185
+
186
+ /**
187
+ * 构造树型结构数据
188
+ * [label,value,children]
189
+ */
190
+ export function handleTree (data, id, parentId, children) {
191
+ const config = {
192
+ id: id || 'id',
193
+ parentId: parentId || 'parent_id',
194
+ childrenList: children || 'children'
195
+ }
196
+ const childrenListMap = {}
197
+ const nodeIds = {}
198
+ const tree = []
199
+ for (const d of data) {
200
+ const parentId = d[config.parentId]
201
+ if (childrenListMap[parentId] == null) {
202
+ childrenListMap[parentId] = []
203
+ }
204
+ nodeIds[d[config.id]] = d
205
+ childrenListMap[parentId].push(d)
206
+ }
207
+ for (const d of data) {
208
+ const parentId = d[config.parentId]
209
+ if (nodeIds[parentId] == null) {
210
+ tree.push(d)
211
+ }
212
+ }
213
+ for (const t of tree) {
214
+ adaptToChildrenList(t)
215
+ }
216
+
217
+ function adaptToChildrenList (o) {
218
+ o.label = o.name
219
+ o.value = o.name
220
+ if (childrenListMap[o[config.id]] !== null) {
221
+ o[config.childrenList] = childrenListMap[o[config.id]]
222
+ }
223
+ if (o[config.childrenList]) {
224
+ for (const c of o[config.childrenList]) {
225
+ adaptToChildrenList(c)
226
+ }
227
+ }
228
+ }
229
+ return tree
230
+ }
231
+
232
+ /**
233
+ * Function to get the changed data between two sets of rows *
234
+ * @param beforeData 之前的数据
235
+ * @param afterData 之后的数据
236
+ * @returns {*[]} 差异得数据
237
+ */
238
+ export function getChangedData (beforeData, afterData) {
239
+ const changeData = []
240
+
241
+ beforeData.forEach((item, index) => {
242
+ const afterItem = afterData[index]
243
+ const changeItem = compareRows(item, afterItem)
244
+
245
+ if (Object.keys(changeItem).length > 0) {
246
+ changeData.push(afterItem)
247
+ }
248
+ })
249
+
250
+ return changeData
251
+ }
252
+
253
+ /**
254
+ * Function to compare two rows and return the changed fields
255
+ * @param beforeRow 之前的数据
256
+ * @param afterRow 之后的数据
257
+ * @returns {*[]} 差异得数据
258
+ */
259
+ export function compareRows (beforeRow, afterRow) {
260
+ const keys = Object.keys(beforeRow)
261
+ const changeItem = {}
262
+
263
+ keys.forEach(key => {
264
+ if (beforeRow[key] !== afterRow[key]) {
265
+ changeItem[key] = afterRow[key]
266
+ }
267
+ })
268
+
269
+ return changeItem
270
+ }
271
+
272
+ export function getRealKeyData (data) {
273
+ return Object.keys(data).reduce((obj, key) => {
274
+ // 找到第一个下划线后面的部分
275
+ const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
276
+ obj[realKey] = data[key] // 赋值
277
+ return obj
278
+ }, {})
279
+ }
280
+
281
+ export function setDataByRealKey (form, data) {
282
+ // 创建一个映射 realKey -> formKey
283
+ const realFormMap = {}
284
+
285
+ // 遍历 form,建立真实键名和 form 键的映射
286
+ Object.keys(form).forEach(key => {
287
+ // 提取第一个下划线后面的部分
288
+ const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
289
+ realFormMap[realKey] = key // 存储映射关系
290
+ })
291
+
292
+ // 遍历 data,更新 form 中的值
293
+ Object.keys(data).forEach(key => {
294
+ // 提取第一个下划线后面的部分
295
+ const realKey = key.includes('_') && key !== 'selected_id' ? key.substring(key.indexOf('_') + 1) : key
296
+ if (realFormMap[realKey]) {
297
+ form[realFormMap[realKey]] = data[key] // 根据映射关系赋值
298
+ } else {
299
+ form[key] = data[key]
300
+ }
301
+ })
302
+
303
+ return form
304
+ }
305
+
306
+ const _toString = Object.prototype.toString
307
+
308
+ export function _moment (...args) {
309
+ return moment(...args)
310
+ }
311
+
312
+ export function base64ToFile (base64Data, filename = 'image.png') {
313
+ // 将 base64 转换为 blob
314
+ const arr = base64Data.split(',')
315
+ const mime = arr[0].match(/:(.*?);/)?.[1] || 'image/png'
316
+ const bstr = atob(arr[1])
317
+ let n = bstr.length
318
+ const u8arr = new Uint8Array(n)
319
+
320
+ while (n--) {
321
+ u8arr[n] = bstr.charCodeAt(n)
322
+ }
323
+
324
+ // 创建 Blob 对象
325
+ const blob = new Blob([u8arr], { type: mime })
326
+
327
+ // 创建 File 对象
328
+ return new File([blob], filename, { type: mime })
329
+ };