vue2-client 1.15.10 → 1.15.12

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 (344) hide show
  1. package/.cursorrules +19 -19
  2. package/.env.apply +19 -19
  3. package/.env.gaslink +19 -19
  4. package/.env.his +19 -19
  5. package/.env.liuli +19 -19
  6. package/.env.scada +19 -19
  7. package/.eslintrc.js +90 -90
  8. package/CHANGELOG.md +824 -824
  9. package/Components.md +60 -60
  10. package/docs/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +45 -45
  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/public/index.html +27 -27
  55. package/src/ReportView.js +19 -19
  56. package/src/assets/img/querySlotDemo.svg +15 -15
  57. package/src/assets/svg/badtwo.svg +1 -1
  58. package/src/assets/svg/goodtwo.svg +1 -1
  59. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  60. package/src/base-client/components/AI/demo.vue +31 -31
  61. package/src/base-client/components/common/AMisRender/index.js +3 -3
  62. package/src/base-client/components/common/AMisRender/index.vue +263 -263
  63. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  64. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  65. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  66. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  67. package/src/base-client/components/common/CitySelect/index.js +3 -3
  68. package/src/base-client/components/common/CitySelect/index.md +109 -109
  69. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  70. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  71. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  72. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  73. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  74. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  75. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  76. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  77. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  78. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  79. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  80. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  81. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  82. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  83. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  84. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  85. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  86. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  87. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  88. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  89. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  90. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  91. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  92. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  93. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  94. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  95. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  96. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  97. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  98. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  99. package/src/base-client/components/common/Recording/index.js +3 -3
  100. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  101. package/src/base-client/components/common/Tree/index.js +2 -2
  102. package/src/base-client/components/common/Upload/index.js +3 -3
  103. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  104. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  105. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +303 -303
  106. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  107. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  108. package/src/base-client/components/common/XAddReport/index.js +3 -3
  109. package/src/base-client/components/common/XAddReport/index.md +56 -56
  110. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  111. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  112. package/src/base-client/components/common/XButtons/XButtons.vue +71 -71
  113. package/src/base-client/components/common/XButtons/index.js +3 -3
  114. package/src/base-client/components/common/XButtons/index.md +61 -61
  115. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  116. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  117. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  118. package/src/base-client/components/common/XDataCard/index.js +3 -3
  119. package/src/base-client/components/common/XDataCard/index.md +1 -1
  120. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  121. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  122. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  123. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  124. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  125. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  126. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  127. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  128. package/src/base-client/components/common/XForm/XForm.vue +419 -404
  129. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  130. package/src/base-client/components/common/XForm/index.md +178 -178
  131. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  132. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  133. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  134. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  135. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  136. package/src/base-client/components/common/XFormTable/demo.vue +1 -1
  137. package/src/base-client/components/common/XFormTable/index.md +92 -92
  138. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  139. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  140. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  141. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  142. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  143. package/src/base-client/components/common/XPrint/PrintBill.vue +302 -302
  144. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  145. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  146. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  147. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  148. package/src/base-client/components/common/XPrint/index.vue +97 -97
  149. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  150. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  151. package/src/base-client/components/common/XReport/index.js +3 -3
  152. package/src/base-client/components/common/XReport/print.js +186 -186
  153. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  154. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  155. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  156. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  157. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  158. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  159. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  160. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  161. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  162. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  163. package/src/base-client/components/common/XStepView/index.js +3 -3
  164. package/src/base-client/components/common/XStepView/index.md +31 -31
  165. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  166. package/src/base-client/components/common/XTab/index.js +3 -3
  167. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  168. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  169. package/src/base-client/components/common/XTable/index.md +255 -255
  170. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  171. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  172. package/src/base-client/components/common/XTree/index.js +3 -3
  173. package/src/base-client/components/common/XTree/index.md +36 -36
  174. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  175. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  176. package/src/base-client/components/common/XUploadFilesView/index.vue +485 -485
  177. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  178. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  179. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  180. package/src/base-client/components/index.js +51 -51
  181. package/src/base-client/components/layout/XPageView/RenderRow.vue +88 -88
  182. package/src/base-client/components/layout/XPageView/XPageView.vue +223 -223
  183. package/src/base-client/components/layout/XPageView/XTab/XTab.vue +96 -96
  184. package/src/base-client/components/layout/XPageView/componentTypes.js +22 -22
  185. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  186. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  187. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  188. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  189. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  190. package/src/base-client/plugins/Config.js +19 -19
  191. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  192. package/src/base-client/plugins/Recording.js +258 -258
  193. package/src/base-client/plugins/index.js +23 -23
  194. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  195. package/src/components/Charts/Bar.vue +62 -62
  196. package/src/components/Charts/ChartCard.vue +134 -134
  197. package/src/components/Charts/Liquid.vue +67 -67
  198. package/src/components/Charts/MiniArea.vue +39 -39
  199. package/src/components/Charts/MiniBar.vue +39 -39
  200. package/src/components/Charts/MiniProgress.vue +75 -75
  201. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  202. package/src/components/Charts/Radar.vue +68 -68
  203. package/src/components/Charts/RankList.vue +77 -77
  204. package/src/components/Charts/TagCloud.vue +113 -113
  205. package/src/components/Charts/TransferBar.vue +64 -64
  206. package/src/components/Charts/Trend.vue +82 -82
  207. package/src/components/Charts/chart.less +12 -12
  208. package/src/components/Charts/smooth.area.less +13 -13
  209. package/src/components/CodeMirror/inedx.vue +118 -118
  210. package/src/components/CodeMirror/setting.js +40 -40
  211. package/src/components/HeightScanner/index.vue +571 -571
  212. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  213. package/src/components/NumberInfo/index.js +3 -3
  214. package/src/components/NumberInfo/index.less +54 -54
  215. package/src/components/NumberInfo/index.md +43 -43
  216. package/src/components/card/ChartCard.vue +79 -79
  217. package/src/components/chart/Bar.vue +60 -60
  218. package/src/components/chart/MiniArea.vue +67 -67
  219. package/src/components/chart/MiniBar.vue +59 -59
  220. package/src/components/chart/MiniProgress.vue +57 -57
  221. package/src/components/chart/Radar.vue +80 -80
  222. package/src/components/chart/RankingList.vue +60 -60
  223. package/src/components/chart/Trend.vue +79 -79
  224. package/src/components/chart/index.less +9 -9
  225. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  226. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  227. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  228. package/src/components/checkbox/index.js +9 -9
  229. package/src/components/exception/ExceptionPage.vue +70 -70
  230. package/src/components/g2Charts/constants.js +202 -202
  231. package/src/components/g2Charts/demo.vue +808 -808
  232. package/src/components/g2Charts/designer.vue +228 -228
  233. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  234. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  235. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  236. package/src/components/g2Charts/index.vue +397 -397
  237. package/src/components/index.js +36 -36
  238. package/src/components/input/IInput.vue +66 -66
  239. package/src/components/menu/SideMenu.vue +75 -75
  240. package/src/components/menu/menu.js +273 -273
  241. package/src/components/setting/Setting.vue +234 -234
  242. package/src/components/tool/AStepItem.vue +60 -60
  243. package/src/config/CreateQueryConfig.js +325 -325
  244. package/src/config/default/antd.config.js +89 -89
  245. package/src/config/default/setting.config.js +55 -55
  246. package/src/font-style/font.css +4 -4
  247. package/src/layouts/CommonLayout.vue +56 -56
  248. package/src/layouts/PageLayout.vue +151 -151
  249. package/src/layouts/SinglePageView.vue +136 -136
  250. package/src/layouts/header/AdminHeader.vue +132 -132
  251. package/src/layouts/header/HeaderNotice.vue +177 -177
  252. package/src/layouts/header/InstitutionDetail.vue +181 -181
  253. package/src/layouts/tabs/TabsHead.vue +189 -189
  254. package/src/layouts/tabs/TabsView.vue +389 -389
  255. package/src/lib.js +1 -1
  256. package/src/mock/extend/index.js +84 -84
  257. package/src/mock/goods/index.js +108 -108
  258. package/src/pages/AMisDemo/AMisDemo.vue +325 -325
  259. package/src/pages/AMisDemo/AMisDemo2.vue +74 -74
  260. package/src/pages/DefaultExample/index.vue +77 -77
  261. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  262. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  263. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  264. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  265. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  266. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  267. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  268. package/src/pages/DynamicStatistics/index.vue +282 -282
  269. package/src/pages/Example/childIndex.vue +15 -15
  270. package/src/pages/Example/index.vue +30 -30
  271. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  272. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  273. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  274. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  275. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  276. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  277. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  278. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  279. package/src/pages/Recording/index.vue +77 -77
  280. package/src/pages/ServiceReview/index.vue +284 -284
  281. package/src/pages/SubExample/index.vue +26 -26
  282. package/src/pages/WorkflowDetail/WorkflowPageDetail/LeaveMessage.vue +388 -388
  283. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  284. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformationDetails.vue +276 -276
  285. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +15 -6
  286. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowListResolution.vue +248 -248
  287. package/src/pages/XPageViewExample/index.vue +149 -149
  288. package/src/pages/XReportView/index.vue +64 -64
  289. package/src/pages/XTreeOneProExample/index.vue +67 -67
  290. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  291. package/src/pages/login/Login.vue +378 -378
  292. package/src/pages/login/LoginV3.vue +389 -389
  293. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  294. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  295. package/src/pages/report/ReportTable.js +124 -124
  296. package/src/pages/resourceManage/orgListManage.vue +98 -98
  297. package/src/pages/system/dictionary/index.vue +44 -44
  298. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  299. package/src/pages/system/monitor/operLog/index.vue +37 -37
  300. package/src/pages/system/settings/modifyPassword.vue +117 -117
  301. package/src/pages/system/ticket/index.vue +480 -480
  302. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  303. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  304. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  305. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  306. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  307. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  308. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  309. package/src/plugins/EventLogPlugin.js +33 -33
  310. package/src/plugins/FindParentsData.js +17 -17
  311. package/src/router/async/config.async.js +35 -35
  312. package/src/router/index.js +27 -27
  313. package/src/router.js +19 -19
  314. package/src/services/DataModel.js +30 -30
  315. package/src/services/LodopFuncs.js +137 -137
  316. package/src/services/api/TicketDetailsViewApi.js +46 -46
  317. package/src/services/api/cas.js +79 -79
  318. package/src/services/api/common.js +346 -346
  319. package/src/services/api/entity.js +18 -18
  320. package/src/services/api/index.js +17 -17
  321. package/src/store/modules/account.js +115 -115
  322. package/src/store/modules/index.js +5 -5
  323. package/src/store/modules/lowCode.js +33 -33
  324. package/src/store/modules/setting.js +119 -119
  325. package/src/theme/default/style.less +58 -58
  326. package/src/theme/global.less +159 -159
  327. package/src/utils/authority-utils.js +85 -85
  328. package/src/utils/errorCode.js +6 -6
  329. package/src/utils/formatter.js +74 -74
  330. package/src/utils/htmlToPDF.js +108 -108
  331. package/src/utils/htmlToPDFApi.js +5 -5
  332. package/src/utils/login.js +188 -188
  333. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  334. package/src/utils/lowcode/lowcodeLog.js +29 -29
  335. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  336. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  337. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  338. package/src/utils/map-utils.js +47 -47
  339. package/src/utils/reg.js +95 -95
  340. package/src/utils/runEvalFunction.js +14 -14
  341. package/src/utils/theme-color-replacer-extend.js +92 -92
  342. package/src/utils/util.js +329 -329
  343. package/src/utils/waterMark.js +31 -31
  344. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
@@ -1,404 +1,419 @@
1
- <template>
2
- <div :style="{marginBottom: !visible ? '12px':''}">
3
- <div v-if="visible && realJsonData.length > 0" class="table-page-search-wrapper">
4
- <a-form-model
5
- v-if="loaded"
6
- ref="form"
7
- :model="form"
8
- :rules="rules"
9
- layout="inline">
10
- <a-row :gutter="24" type="flex">
11
- <x-form-item
12
- v-for="(item, index) in realJsonData.slice(0,7)"
13
- :showLabel="!simpleMode"
14
- :key="`${queryParamsName}-item-${index}`"
15
- :attr="item"
16
- :form="form"
17
- :service-name="serviceName"
18
- :get-data-params="getDataParams"
19
- :env="env"
20
- :setForm="setForm"
21
- @mounted="onItemMounted"
22
- />
23
- <template v-for="(groupItem, groupIndex) in groupJsonData">
24
- <x-form-item
25
- v-for="(item, index) in groupItem.groupItems"
26
- :showLabel="!simpleMode"
27
- :key="`group-${groupIndex}-item-${index}`"
28
- :attr="item"
29
- :form="form"
30
- :service-name="serviceName"
31
- :get-data-params="getDataParams"
32
- :env="env"
33
- :setForm="setForm"
34
- />
35
- </template>
36
- <x-form-item
37
- v-show="advanced"
38
- v-for="(item, index) in realJsonData.slice(7)"
39
- :showLabel="!simpleMode"
40
- :key="`advanced-${queryParamsName}-item-${index}`"
41
- :attr="item"
42
- :form="form"
43
- :service-name="serviceName"
44
- :get-data-params="getDataParams"
45
- :env="env"
46
- :setForm="setForm"
47
- @mounted="onItemMounted"
48
- />
49
- <a-col style="margin-left: auto">
50
- <span
51
- :style="advanced && { float: 'right', overflow: 'hidden' } || {} "
52
- class="table-page-search-submitButtons">
53
- <template v-if="realJsonData.length >7">
54
- <a @click="toggleAdvanced">
55
- <span v-if="!advanced" style="display: inline-flex; align-items: center;">
56
- <a-icon type="eye" :style="iconStyle"/>&nbsp;更多条件
57
- </span>
58
- <span v-else style="display: inline-flex; align-items: center;">
59
- <a-icon type="eye-invisible" :style="iconStyle"/>&nbsp;收起更多
60
- </span>
61
- </a>
62
- <a-divider type="vertical"/>
63
- </template>
64
- <a-button
65
- v-if="!simpleMode"
66
- htmlType="submit"
67
- type="primary"
68
- @click="onSubmit">
69
- <a-icon :style="iconStyle" type="search"/>查询
70
- </a-button>
71
- <a-button v-if="!simpleMode" style="margin-left: 8px" @click="resetForm">重置</a-button>
72
- <slot></slot>
73
- </span>
74
- </a-col>
75
- </a-row>
76
- </a-form-model>
77
- <div class="next-divider-dashed" role="separator"></div>
78
- </div>
79
- </div>
80
- </template>
81
- <script>
82
- import XFormItem from '@vue2-client/base-client/components/common/XForm/XFormItem'
83
- import { mapState } from 'vuex'
84
- import moment from 'moment'
85
- import { executeStrFunctionByContext } from '@vue2-client/utils/runEvalFunction'
86
- import { getConfigByNameAsync, runLogic } from '@vue2-client/services/api/common'
87
- import * as util from '@vue2-client/utils/util'
88
- import formValidationMixin from '@vue2-client/mixins/formValidationMixin'
89
-
90
- export default {
91
- name: 'XForm',
92
- components: {
93
- XFormItem
94
- },
95
- mixins: [formValidationMixin],
96
- data () {
97
- return {
98
- // 内容加载是否完成
99
- loaded: false,
100
- // 服务名称
101
- serviceName: undefined,
102
- // 是否展开条件
103
- advanced: false,
104
- // 表单Model
105
- form: undefined,
106
- // 校验
107
- rules: {},
108
- // 图标样式
109
- iconStyle: {
110
- position: 'relative',
111
- top: '1px'
112
- },
113
- // 表单项集合
114
- formItems: [],
115
- // 是否显示
116
- visible: true,
117
- // 调用logic获取数据源的追加参数
118
- getDataParams: {},
119
- // 当前环境
120
- env: 'prod',
121
- // 暂存 form 的默认值
122
- defaultMap: {},
123
- // 已经渲染得 x-from-item 为了让所有节点init执行完在调用 table 查询
124
- mountedCount: 0,
125
- // 是否简易模式
126
- simpleMode: false,
127
- queryParamsName: ''
128
- }
129
- },
130
- computed: {
131
- ...mapState('account', { currUser: 'user' }),
132
- // 过滤掉仅用于新增/修改场景的表单项
133
- realJsonData: function () {
134
- return this.formItems.filter(item => (!item.isOnlyAddOrEdit && item.type !== 'group') || (item.type === 'group' && item.groupItems.some(groupItem => !groupItem.isOnlyAddOrEdit)))
135
- },
136
- // 过滤出用于新增/修改场景的表单项
137
- groupJsonData: function () {
138
- return this.formItems.filter((item) => {
139
- return item.type === 'group'
140
- }).map((item) => {
141
- item.groupItems = item.groupItems.filter(item => !item.isOnlyAddOrEdit).map((groupItem) => {
142
- // 只保留第一个下划线后面的内容
143
- // groupItem.model = groupItem.model.substring(groupItem.model.indexOf('_') + 1)
144
- return groupItem
145
- })
146
- return item
147
- }
148
- )
149
- },
150
- },
151
- provide () {
152
- return {
153
- XFormContext: this,
154
- // 移除必填项
155
- removeRequired: this.removeRequired,
156
- // 设置必填项
157
- setRequired: this.setRequired,
158
- }
159
- },
160
- methods: {
161
- init (params) {
162
- const {
163
- formItems, serviceName, getDataParams = {}, env = 'prod', simpleMode = false, funcData = {},
164
- queryParamsName = 'localConfig'
165
- } = params
166
- this.mountedCount = 0
167
- this.queryParamsName = queryParamsName
168
- this.loaded = false
169
- this.formItems = JSON.parse(JSON.stringify(formItems))
170
- this.serviceName = serviceName
171
- this.env = env
172
- this.simpleMode = simpleMode
173
- const formData = {}
174
- for (let i = 0; i < this.realJsonData.length; i++) {
175
- const item = this.realJsonData[i]
176
- this.setFormProps(formData, item)
177
- }
178
- if (this.realJsonData.length === 0) {
179
- this.$nextTick(() => {
180
- this.$emit('itemsMounted')
181
- })
182
- }
183
- // 处理分组数据表单
184
- for (let i = 0; i < this.groupJsonData.length; i++) {
185
- const groupItem = this.groupJsonData[i]
186
- for (let j = 0; j < groupItem.groupItems.length; j++) {
187
- const item = groupItem.groupItems[j]
188
- this.setFormProps(formData, item)
189
- }
190
- }
191
- this.form = formData
192
- try {
193
- if (funcData.queryFormInit) {
194
- if (!funcData.queryFormInit.startsWith('async')) {
195
- funcData.queryFormInit = `async ${funcData.queryFormInit}`
196
- }
197
- executeStrFunctionByContext(this, funcData.queryFormInit, [util, runLogic, getConfigByNameAsync]).then(res => {
198
- this.form = Object.assign({}, this.form, res)
199
- })
200
- }
201
- } catch (e) {
202
- console.error('queryFormInit error', e)
203
- }
204
- this.getDataParams = getDataParams
205
- this.loaded = true
206
- },
207
- onItemMounted (_h) {
208
- this.mountedCount += 1
209
- if (this.mountedCount === this.realJsonData.length) {
210
- // 所有 x-from-item 挂载完成,触发父组件中的 xTable.init
211
- this.$emit('itemsMounted')
212
- }
213
- },
214
- // 时间组件赋默认值
215
- getDateRange ({ type, queryFormDefault: defaultValue, queryType, queryValueFormat: defaultFormat, name }) {
216
- const formatMap = {
217
- yearPicker: 'YYYY',
218
- yearRangePicker: 'YYYY',
219
- monthPicker: 'YYYY-MM',
220
- monthRangePicker: 'YYYY-MM',
221
- datePicker: 'YYYY-MM-DD',
222
- rangePicker: 'YYYY-MM-DD HH:mm:ss',
223
- }
224
- let format = formatMap[type]
225
-
226
- if (defaultFormat) {
227
- format = defaultFormat
228
- }
229
-
230
- let start, end
231
-
232
- switch (defaultValue) {
233
- case 'curYear':
234
- start = moment().startOf('year').format(format)
235
- end = moment().endOf('year').format(format)
236
- break
237
- case 'curMonth':
238
- start = moment().startOf('month').format(format)
239
- end = moment().endOf('month').format(format)
240
- break
241
- case 'curDay':
242
- start = moment().startOf('day').format(format)
243
- end = moment().endOf('day').format(format)
244
- break
245
- case 'curTime':
246
- start = moment().format(format)
247
- end = moment().format(format)
248
- break
249
- default:
250
- return undefined
251
- }
252
- if (['monthPicker', 'yearPicker', 'datePicker'].includes(type)) {
253
- if (queryType === 'BETWEEN') {
254
- return [start, end]
255
- }
256
- if (name.indexOf('开始') > -1 || name.indexOf('起始') > -1) {
257
- return start
258
- } else {
259
- return end
260
- }
261
- } else if (['rangePicker', 'yearRangePicker', 'monthRangePicker'].includes(type)) {
262
- return [start, end]
263
- }
264
- return [start, end]
265
- },
266
- setFormProps (formData, item) {
267
- formData[item.model] = undefined
268
- if (item.queryFormDefault) {
269
- if (['datePicker', 'rangePicker', 'yearPicker', 'monthPicker', 'yearRangePicker', 'monthRangePicker'].includes(item.type)) {
270
- formData[item.model] = this.getDateRange(item)
271
- } else if (['treeSelect', 'select', 'checkbox'].includes(item.type) && ['curOrgId', 'curDepId', 'curUserId'].includes(item.queryFormDefault)) {
272
- if (item.queryFormDefault === 'curOrgId') {
273
- formData[item.model] = item.type === 'select' ? this.currUser.orgid : [this.currUser.orgid]
274
- }
275
- if (item.queryFormDefault === 'curDepId') {
276
- formData[item.model] = item.type === 'select' ? this.currUser.depids : [this.currUser.depids]
277
- }
278
- if (item.queryFormDefault === 'curUserId') {
279
- formData[item.model] = item.type === 'select' ? this.currUser.id : [this.currUser.id]
280
- }
281
- } else {
282
- formData[item.model] = item.queryFormDefault
283
- }
284
- if (item.forceQueryDefault) {
285
- this.defaultMap[item.model] = formData[item.model]
286
- }
287
- } else {
288
- if (['datePicker', 'rangePicker', 'yearPicker', 'monthPicker', 'yearRangePicker', 'monthRangePicker'].includes(item.type)) {
289
- if (item.queryType === 'BETWEEN') {
290
- formData[item.model] = []
291
- }
292
- }
293
- }
294
- if (item.rule) {
295
- this.rules[item.model] = []
296
- const required = item.rule.queryRequired ? item.rule.queryRequired === true || item.rule.queryRequired === 'true' : false
297
- let trigger
298
- let message
299
- if (required) {
300
- switch (item.type) {
301
- case 'select':
302
- case 'checkbox':
303
- case 'radio':
304
- case 'treeSelect':
305
- case 'rangePicker':
306
- case 'monthPicker':
307
- case 'yearPicker':
308
- case 'datePicker':
309
- case 'file':
310
- case 'image':
311
- case 'citySelect':
312
- case 'addressSearch':
313
- case 'personSetting':
314
- message = '请选择' + item.name
315
- trigger = 'change'
316
- break
317
- default:
318
- message = '请输入' + item.name
319
- trigger = 'blur'
320
- }
321
- this.rules[item.model].push({
322
- required: true,
323
- message: message,
324
- trigger: trigger
325
- })
326
- }
327
-
328
- switch (item.rule.queryType) {
329
- case 'customJs': {
330
- this.rules[item.model].push({
331
- validator: (rule, value, callback) => {
332
- this.customJsValidate(rule, value, callback, item)
333
- },
334
- trigger: 'blur'
335
- })
336
- break
337
- }
338
- }
339
- }
340
- },
341
- customJsValidate (rule, value, callback, item) {
342
- if (item.rule.customQueryValidatorFunc) {
343
- executeStrFunctionByContext(this, item.rule.customQueryValidatorFunc, [rule, value, callback, this.form, item, util, runLogic, getConfigByNameAsync])
344
- } else {
345
- callback()
346
- }
347
- },
348
- toggleAdvanced () {
349
- this.advanced = !this.advanced
350
- this.$emit('toggleAdvanced')
351
- },
352
- toggleVisible () {
353
- this.visible = !this.visible
354
- return this.visible
355
- },
356
- resetForm () {
357
- this.$refs.form.resetFields()
358
- },
359
- onSubmit () {
360
- this.$refs.form.validate(valid => {
361
- for (const key of Object.keys(this.form)) {
362
- if (this.form[key] === null || this.form[key] === '') {
363
- this.form[key] = undefined
364
- }
365
- if (Array.isArray(this.form[key]) && this.form[key].length === 0) {
366
- this.form[key] = undefined
367
- }
368
- // 如果 form 中没有值,但是有默认值
369
- if (this.form[key] === undefined && this.defaultMap[key] !== undefined) {
370
- this.form = Object.assign({}, this.form, this.defaultMap)
371
- }
372
- }
373
- const requestParameters = Object.assign({}, this.form)
374
- const data = {
375
- valid: valid,
376
- form: requestParameters
377
- }
378
- this.$emit('onSubmit', data)
379
- })
380
- },
381
- exports () {
382
- this.$emit('exports', this.form)
383
- },
384
- setForm (obj) {
385
- this.form = Object.assign(this.form, obj)
386
- },
387
- }
388
- }
389
- </script>
390
- <style lang="less" scoped>
391
- :deep(.ant-form-inline .ant-form-item) {
392
- margin-right: 0px;
393
- margin-top: 0px;
394
- margin-bottom: 12px;
395
-
396
- .ant-form-item-control-wrapper {
397
- min-width: 0;
398
- }
399
- }
400
-
401
- :deep(.table-page-search-wrapper .table-page-search-submitButtons) {
402
- margin-top: 0px;
403
- }
404
- </style>
1
+ <template>
2
+ <div :style="{marginBottom: !visible ? '12px':''}">
3
+ <div v-if="visible && realJsonData.length > 0" class="table-page-search-wrapper">
4
+ <a-form-model
5
+ v-if="loaded"
6
+ ref="form"
7
+ :model="form"
8
+ :rules="rules"
9
+ layout="inline">
10
+ <a-row :gutter="24" type="flex">
11
+ <x-form-item
12
+ v-for="(item, index) in visibleItems"
13
+ :showLabel="!simpleMode"
14
+ :key="`${queryParamsName}-item-${index}`"
15
+ :attr="item.formItem"
16
+ :form="form"
17
+ :service-name="serviceName"
18
+ :get-data-params="getDataParams"
19
+ :env="env"
20
+ :setForm="setForm"
21
+ @mounted="onItemMounted"
22
+ />
23
+ <x-form-item
24
+ v-show="advanced"
25
+ v-for="(item, index) in hiddenItems"
26
+ :showLabel="!simpleMode"
27
+ :key="`advanced-${queryParamsName}-item-${index}`"
28
+ :attr="item.formItem"
29
+ :form="form"
30
+ :service-name="serviceName"
31
+ :get-data-params="getDataParams"
32
+ :env="env"
33
+ :setForm="setForm"
34
+ @mounted="onItemMounted"
35
+ />
36
+ <a-col style="margin-left: auto">
37
+ <span
38
+ :style="advanced ? { float: 'right', overflow: 'hidden' } : {}"
39
+ class="table-page-search-submitButtons">
40
+ <template v-if="hiddenItems.length > 0">
41
+ <a @click="toggleAdvanced">
42
+ <span v-if="!advanced" style="display: inline-flex; align-items: center;">
43
+ <a-icon type="eye" :style="iconStyle"></a-icon>&nbsp;更多条件
44
+ </span>
45
+ <span v-else style="display: inline-flex; align-items: center;">
46
+ <a-icon type="eye-invisible" :style="iconStyle"></a-icon>&nbsp;收起更多
47
+ </span>
48
+ </a>
49
+ <a-divider type="vertical"/>
50
+ </template>
51
+ <a-button
52
+ v-if="!simpleMode"
53
+ htmlType="submit"
54
+ type="primary"
55
+ @click="onSubmit">
56
+ <a-icon :style="iconStyle" type="search"></a-icon>查询
57
+ </a-button>
58
+ <a-button v-if="!simpleMode" style="margin-left: 8px" @click="resetForm">重置</a-button>
59
+ <slot></slot>
60
+ </span>
61
+ </a-col>
62
+ </a-row>
63
+ </a-form-model>
64
+ <div class="next-divider-dashed" role="separator"></div>
65
+ </div>
66
+ </div>
67
+ </template>
68
+ <script>
69
+ import XFormItem from '@vue2-client/base-client/components/common/XForm/XFormItem'
70
+ import { mapState } from 'vuex'
71
+ import moment from 'moment'
72
+ import { executeStrFunctionByContext } from '@vue2-client/utils/runEvalFunction'
73
+ import { getConfigByNameAsync, runLogic } from '@vue2-client/services/api/common'
74
+ import * as util from '@vue2-client/utils/util'
75
+ import formValidationMixin from '@vue2-client/mixins/formValidationMixin'
76
+
77
+ export default {
78
+ name: 'XForm',
79
+ components: {
80
+ XFormItem
81
+ },
82
+ mixins: [formValidationMixin],
83
+ data () {
84
+ return {
85
+ // 内容加载是否完成
86
+ loaded: false,
87
+ // 服务名称
88
+ serviceName: undefined,
89
+ // 是否展开条件
90
+ advanced: false,
91
+ // 表单Model
92
+ form: undefined,
93
+ // 校验
94
+ rules: {},
95
+ // 图标样式
96
+ iconStyle: {
97
+ position: 'relative',
98
+ top: '1px'
99
+ },
100
+ // 表单项集合
101
+ formItems: [],
102
+ // 是否显示
103
+ visible: true,
104
+ // 调用logic获取数据源的追加参数
105
+ getDataParams: {},
106
+ // 当前环境
107
+ env: 'prod',
108
+ // 暂存 form 的默认值
109
+ defaultMap: {},
110
+ // 已经渲染得 x-from-item 为了让所有节点init执行完在调用 table 查询
111
+ mountedCount: 0,
112
+ // 是否简易模式
113
+ simpleMode: false,
114
+ queryParamsName: '',
115
+ // 默认显示的表单项数量
116
+ visibleItemCount: 7
117
+ }
118
+ },
119
+ computed: {
120
+ ...mapState('account', { currUser: 'user' }),
121
+ // 过滤掉仅用于新增/修改场景的表单项
122
+ realJsonData: function () {
123
+ return this.formItems.filter(item => (!item.isOnlyAddOrEdit && item.type !== 'group') || (item.type === 'group' && item.groupItems.some(groupItem => !groupItem.isOnlyAddOrEdit)))
124
+ },
125
+ // 过滤出用于新增/修改场景的表单项
126
+ groupJsonData: function () {
127
+ return this.formItems.filter((item) => {
128
+ return item.type === 'group'
129
+ }).map((item) => {
130
+ item.groupItems = item.groupItems.filter(item => !item.isOnlyAddOrEdit).map((groupItem) => {
131
+ // 只保留第一个下划线后面的内容
132
+ // groupItem.model = groupItem.model.substring(groupItem.model.indexOf('_') + 1)
133
+ return groupItem
134
+ })
135
+ return item
136
+ }
137
+ )
138
+ },
139
+ // 合并所有来源的表单项
140
+ allFormItems: function () {
141
+ const normalItems = this.realJsonData.map(item => ({
142
+ type: 'normal',
143
+ formItem: item
144
+ }))
145
+
146
+ const groupItems = this.groupJsonData.flatMap(group =>
147
+ group.groupItems.map(item => ({
148
+ type: 'group',
149
+ formItem: item,
150
+ groupName: group.name || '分组'
151
+ }))
152
+ )
153
+
154
+ return [...normalItems, ...groupItems]
155
+ },
156
+ // 显示的表单项
157
+ visibleItems: function () {
158
+ return this.allFormItems.slice(0, this.visibleItemCount)
159
+ },
160
+ // 隐藏的表单项(需要点击展开才显示)
161
+ hiddenItems: function () {
162
+ return this.allFormItems.slice(this.visibleItemCount)
163
+ },
164
+ },
165
+ provide () {
166
+ return {
167
+ XFormContext: this,
168
+ // 移除必填项
169
+ removeRequired: this.removeRequired,
170
+ // 设置必填项
171
+ setRequired: this.setRequired,
172
+ }
173
+ },
174
+ methods: {
175
+ init (params) {
176
+ const {
177
+ formItems, serviceName, getDataParams = {}, env = 'prod', simpleMode = false, funcData = {},
178
+ queryParamsName = 'localConfig', visibleItemCount = 7
179
+ } = params
180
+ this.mountedCount = 0
181
+ this.queryParamsName = queryParamsName
182
+ this.loaded = false
183
+ this.formItems = JSON.parse(JSON.stringify(formItems))
184
+ this.serviceName = serviceName
185
+ this.env = env
186
+ this.simpleMode = simpleMode
187
+ this.visibleItemCount = visibleItemCount
188
+ const formData = {}
189
+ for (let i = 0; i < this.realJsonData.length; i++) {
190
+ const item = this.realJsonData[i]
191
+ this.setFormProps(formData, item)
192
+ }
193
+ if (this.realJsonData.length === 0) {
194
+ this.$nextTick(() => {
195
+ this.$emit('itemsMounted')
196
+ })
197
+ }
198
+ // 处理分组数据表单
199
+ for (let i = 0; i < this.groupJsonData.length; i++) {
200
+ const groupItem = this.groupJsonData[i]
201
+ for (let j = 0; j < groupItem.groupItems.length; j++) {
202
+ const item = groupItem.groupItems[j]
203
+ this.setFormProps(formData, item)
204
+ }
205
+ }
206
+ this.form = formData
207
+ try {
208
+ if (funcData.queryFormInit) {
209
+ if (!funcData.queryFormInit.startsWith('async')) {
210
+ funcData.queryFormInit = `async ${funcData.queryFormInit}`
211
+ }
212
+ executeStrFunctionByContext(this, funcData.queryFormInit, [util, runLogic, getConfigByNameAsync]).then(res => {
213
+ this.form = Object.assign({}, this.form, res)
214
+ })
215
+ }
216
+ } catch (e) {
217
+ console.error('queryFormInit error', e)
218
+ }
219
+ this.getDataParams = getDataParams
220
+ this.loaded = true
221
+ },
222
+ onItemMounted (_h) {
223
+ this.mountedCount += 1
224
+ if (this.mountedCount === this.allFormItems.length) {
225
+ // 所有 x-from-item 挂载完成,触发父组件中的 xTable.init
226
+ this.$emit('itemsMounted')
227
+ }
228
+ },
229
+ // 时间组件赋默认值
230
+ getDateRange ({ type, queryFormDefault: defaultValue, queryType, queryValueFormat: defaultFormat, name }) {
231
+ const formatMap = {
232
+ yearPicker: 'YYYY',
233
+ yearRangePicker: 'YYYY',
234
+ monthPicker: 'YYYY-MM',
235
+ monthRangePicker: 'YYYY-MM',
236
+ datePicker: 'YYYY-MM-DD',
237
+ rangePicker: 'YYYY-MM-DD HH:mm:ss',
238
+ }
239
+ let format = formatMap[type]
240
+
241
+ if (defaultFormat) {
242
+ format = defaultFormat
243
+ }
244
+
245
+ let start, end
246
+
247
+ switch (defaultValue) {
248
+ case 'curYear':
249
+ start = moment().startOf('year').format(format)
250
+ end = moment().endOf('year').format(format)
251
+ break
252
+ case 'curMonth':
253
+ start = moment().startOf('month').format(format)
254
+ end = moment().endOf('month').format(format)
255
+ break
256
+ case 'curDay':
257
+ start = moment().startOf('day').format(format)
258
+ end = moment().endOf('day').format(format)
259
+ break
260
+ case 'curTime':
261
+ start = moment().format(format)
262
+ end = moment().format(format)
263
+ break
264
+ default:
265
+ return undefined
266
+ }
267
+ if (['monthPicker', 'yearPicker', 'datePicker'].includes(type)) {
268
+ if (queryType === 'BETWEEN') {
269
+ return [start, end]
270
+ }
271
+ if (name.indexOf('开始') > -1 || name.indexOf('起始') > -1) {
272
+ return start
273
+ } else {
274
+ return end
275
+ }
276
+ } else if (['rangePicker', 'yearRangePicker', 'monthRangePicker'].includes(type)) {
277
+ return [start, end]
278
+ }
279
+ return [start, end]
280
+ },
281
+ setFormProps (formData, item) {
282
+ formData[item.model] = undefined
283
+ if (item.queryFormDefault) {
284
+ if (['datePicker', 'rangePicker', 'yearPicker', 'monthPicker', 'yearRangePicker', 'monthRangePicker'].includes(item.type)) {
285
+ formData[item.model] = this.getDateRange(item)
286
+ } else if (['treeSelect', 'select', 'checkbox'].includes(item.type) && ['curOrgId', 'curDepId', 'curUserId'].includes(item.queryFormDefault)) {
287
+ if (item.queryFormDefault === 'curOrgId') {
288
+ formData[item.model] = item.type === 'select' ? this.currUser.orgid : [this.currUser.orgid]
289
+ }
290
+ if (item.queryFormDefault === 'curDepId') {
291
+ formData[item.model] = item.type === 'select' ? this.currUser.depids : [this.currUser.depids]
292
+ }
293
+ if (item.queryFormDefault === 'curUserId') {
294
+ formData[item.model] = item.type === 'select' ? this.currUser.id : [this.currUser.id]
295
+ }
296
+ } else {
297
+ formData[item.model] = item.queryFormDefault
298
+ }
299
+ if (item.forceQueryDefault) {
300
+ this.defaultMap[item.model] = formData[item.model]
301
+ }
302
+ } else {
303
+ if (['datePicker', 'rangePicker', 'yearPicker', 'monthPicker', 'yearRangePicker', 'monthRangePicker'].includes(item.type)) {
304
+ if (item.queryType === 'BETWEEN') {
305
+ formData[item.model] = []
306
+ }
307
+ }
308
+ }
309
+ if (item.rule) {
310
+ this.rules[item.model] = []
311
+ const required = item.rule.queryRequired ? item.rule.queryRequired === true || item.rule.queryRequired === 'true' : false
312
+ let trigger
313
+ let message
314
+ if (required) {
315
+ switch (item.type) {
316
+ case 'select':
317
+ case 'checkbox':
318
+ case 'radio':
319
+ case 'treeSelect':
320
+ case 'rangePicker':
321
+ case 'monthPicker':
322
+ case 'yearPicker':
323
+ case 'datePicker':
324
+ case 'file':
325
+ case 'image':
326
+ case 'citySelect':
327
+ case 'addressSearch':
328
+ case 'personSetting':
329
+ message = '请选择' + item.name
330
+ trigger = 'change'
331
+ break
332
+ default:
333
+ message = '请输入' + item.name
334
+ trigger = 'blur'
335
+ }
336
+ this.rules[item.model].push({
337
+ required: true,
338
+ message: message,
339
+ trigger: trigger
340
+ })
341
+ }
342
+
343
+ switch (item.rule.queryType) {
344
+ case 'customJs': {
345
+ this.rules[item.model].push({
346
+ validator: (rule, value, callback) => {
347
+ this.customJsValidate(rule, value, callback, item)
348
+ },
349
+ trigger: 'blur'
350
+ })
351
+ break
352
+ }
353
+ }
354
+ }
355
+ },
356
+ customJsValidate (rule, value, callback, item) {
357
+ if (item.rule.customQueryValidatorFunc) {
358
+ executeStrFunctionByContext(this, item.rule.customQueryValidatorFunc, [rule, value, callback, this.form, item, util, runLogic, getConfigByNameAsync])
359
+ } else {
360
+ callback()
361
+ }
362
+ },
363
+ toggleAdvanced () {
364
+ this.advanced = !this.advanced
365
+ this.$emit('toggleAdvanced')
366
+ },
367
+ toggleVisible () {
368
+ this.visible = !this.visible
369
+ return this.visible
370
+ },
371
+ resetForm () {
372
+ this.$refs.form.resetFields()
373
+ },
374
+ onSubmit () {
375
+ this.$refs.form.validate(valid => {
376
+ for (const key of Object.keys(this.form)) {
377
+ if (this.form[key] === null || this.form[key] === '') {
378
+ this.form[key] = undefined
379
+ }
380
+ if (Array.isArray(this.form[key]) && this.form[key].length === 0) {
381
+ this.form[key] = undefined
382
+ }
383
+ // 如果 form 中没有值,但是有默认值
384
+ if (this.form[key] === undefined && this.defaultMap[key] !== undefined) {
385
+ this.form = Object.assign({}, this.form, this.defaultMap)
386
+ }
387
+ }
388
+ const requestParameters = Object.assign({}, this.form)
389
+ const data = {
390
+ valid: valid,
391
+ form: requestParameters
392
+ }
393
+ this.$emit('onSubmit', data)
394
+ })
395
+ },
396
+ exports () {
397
+ this.$emit('exports', this.form)
398
+ },
399
+ setForm (obj) {
400
+ this.form = Object.assign(this.form, obj)
401
+ },
402
+ }
403
+ }
404
+ </script>
405
+ <style lang="less" scoped>
406
+ :deep(.ant-form-inline .ant-form-item) {
407
+ margin-right: 0;
408
+ margin-top: 0;
409
+ margin-bottom: 12px;
410
+
411
+ .ant-form-item-control-wrapper {
412
+ min-width: 0;
413
+ }
414
+ }
415
+
416
+ :deep(.table-page-search-wrapper .table-page-search-submitButtons) {
417
+ margin-top: 0;
418
+ }
419
+ </style>