vue2-client 1.12.5 → 1.12.9

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 (391) hide show
  1. package/.cursorrules +19 -19
  2. package/.env +19 -19
  3. package/.env.gaslink +19 -19
  4. package/.env.his +19 -19
  5. package/.env.liuli +19 -19
  6. package/.env.revenue +19 -19
  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/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +45 -45
  12. package/docs/LowCode/lowcode.md +155 -155
  13. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  14. package/docs/index.md +30 -30
  15. package/docs//345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +174 -174
  16. package/index.js +31 -31
  17. package/jest-transform-stub.js +8 -8
  18. package/jest.setup.js +7 -7
  19. package/jsconfig.json +19 -19
  20. package/package.json +107 -107
  21. package/public/his/editor/editor.html +51 -51
  22. package/public/his/editor/mock/bind_data.html +779 -779
  23. package/public/his/editor/mock/data_table.html +40 -40
  24. package/public/his/editor/mock/sign.html +75 -75
  25. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  26. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  27. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  28. package/public/his/editor/vender/date97/calendar.js +4 -4
  29. package/public/his/editor/vender/date97/lang/en.js +13 -13
  30. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  31. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  32. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  33. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  34. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  35. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  36. package/public/his/editor/vender/diff.js +1627 -1627
  37. package/public/his/editor/vender/editor.js +1 -1
  38. package/public/his/editor/vender/fabric.js +31187 -31187
  39. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  40. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  41. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  42. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  43. package/public/his/editor/vender/mui/mui.min.css +4 -4
  44. package/public/his/editor/vender/mui/mui.min.js +5 -5
  45. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  46. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  47. package/public/his/editor/vender/qrcode.js +7 -7
  48. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  49. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  50. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  51. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  52. package/public/his/editor/vender/validator.js +5094 -5094
  53. package/public/his/editor/vender/weui/weui.css +5659 -5659
  54. package/public/his/editor/vender/weui/weui.min.css +4 -4
  55. package/public/his/editor/vender/weui/weui.min.js +11 -11
  56. package/public/index.html +27 -27
  57. package/src/ReportView.js +19 -19
  58. package/src/assets/img/querySlotDemo.svg +15 -15
  59. package/src/assets/svg/badtwo.svg +1 -1
  60. package/src/assets/svg/goodtwo.svg +1 -1
  61. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  62. package/src/base-client/components/AI/demo.vue +31 -31
  63. package/src/base-client/components/common/AMisRender/index.js +3 -3
  64. package/src/base-client/components/common/AMisRender/index.vue +263 -263
  65. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +470 -470
  66. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  67. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  68. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  69. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  70. package/src/base-client/components/common/CitySelect/index.js +3 -3
  71. package/src/base-client/components/common/CitySelect/index.md +109 -109
  72. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  73. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  74. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  75. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  76. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  77. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  78. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  79. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  80. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +149 -149
  81. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  82. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  83. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  84. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  85. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  86. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  87. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  88. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  89. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  90. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  91. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  92. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  93. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  94. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  95. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  96. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  97. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  98. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  99. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  100. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  101. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  102. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  103. package/src/base-client/components/common/Recording/index.js +3 -3
  104. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  105. package/src/base-client/components/common/Tree/index.js +2 -2
  106. package/src/base-client/components/common/Upload/index.js +3 -3
  107. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  108. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1146 -1146
  109. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  110. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +303 -303
  111. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  112. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  113. package/src/base-client/components/common/XAddReport/index.js +3 -3
  114. package/src/base-client/components/common/XAddReport/index.md +56 -56
  115. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  116. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  117. package/src/base-client/components/common/XButtons/XButtons.vue +71 -71
  118. package/src/base-client/components/common/XButtons/index.js +3 -3
  119. package/src/base-client/components/common/XButtons/index.md +61 -61
  120. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  121. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  122. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  123. package/src/base-client/components/common/XCollapse/XCollapse.vue +147 -0
  124. package/src/base-client/components/common/XCollapse/XCollapseDemo.vue +15 -0
  125. package/src/base-client/components/common/XConversation/XConversationDemo.vue +28 -28
  126. package/src/base-client/components/common/XDataCard/index.js +3 -3
  127. package/src/base-client/components/common/XDataCard/index.md +1 -1
  128. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  129. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  130. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  131. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  132. package/src/base-client/components/common/XDatePicker/index.vue +259 -259
  133. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +169 -169
  134. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  135. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  136. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  137. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  138. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  139. package/src/base-client/components/common/XForm/XTreeSelect.vue +264 -264
  140. package/src/base-client/components/common/XForm/index.md +178 -178
  141. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  142. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  143. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  144. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  145. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  146. package/src/base-client/components/common/XFormTable/index.md +92 -92
  147. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +167 -167
  148. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  149. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  150. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  151. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  152. package/src/base-client/components/common/XPrint/Demo.vue +41 -41
  153. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  154. package/src/base-client/components/common/XPrint/PrintBill.vue +302 -302
  155. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  156. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  157. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  158. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  159. package/src/base-client/components/common/XPrint/index.vue +97 -97
  160. package/src/base-client/components/common/XReport/XReport.vue +892 -892
  161. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  162. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  163. package/src/base-client/components/common/XReport/index.js +3 -3
  164. package/src/base-client/components/common/XReport/index.md +44 -44
  165. package/src/base-client/components/common/XReport/print.js +186 -186
  166. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  167. package/src/base-client/components/common/XReportGrid/XReportTrGroup.vue +4 -2
  168. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  169. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  170. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  171. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  172. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  173. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  174. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  175. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  176. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  177. package/src/base-client/components/common/XStepView/index.js +3 -3
  178. package/src/base-client/components/common/XStepView/index.md +31 -31
  179. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  180. package/src/base-client/components/common/XTab/index.js +3 -3
  181. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  182. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  183. package/src/base-client/components/common/XTable/index.md +255 -255
  184. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  185. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  186. package/src/base-client/components/common/XTree/index.js +3 -3
  187. package/src/base-client/components/common/XTree/index.md +36 -36
  188. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  189. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  190. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  191. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  192. package/src/base-client/components/his/XHDescriptions/XHDescriptions.vue +172 -0
  193. package/src/base-client/components/his/XHisEditor/XHisEditor.vue +359 -359
  194. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  195. package/src/base-client/components/index.js +51 -51
  196. package/src/base-client/components/layout/XPageView/XErrorView.vue +11 -11
  197. package/src/base-client/components/layout/XPageView/XPageView.vue +155 -155
  198. package/src/base-client/components/layout/XPageView/index.js +3 -3
  199. package/src/base-client/components/layout/XPageView/index.md +38 -38
  200. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  201. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  202. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  203. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  204. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  205. package/src/base-client/plugins/AppData.js +121 -121
  206. package/src/base-client/plugins/Config.js +19 -19
  207. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  208. package/src/base-client/plugins/Recording.js +258 -258
  209. package/src/base-client/plugins/index.js +23 -23
  210. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  211. package/src/bootstrap.js +42 -42
  212. package/src/components/Charts/Bar.vue +62 -62
  213. package/src/components/Charts/ChartCard.vue +134 -134
  214. package/src/components/Charts/Liquid.vue +67 -67
  215. package/src/components/Charts/MiniArea.vue +39 -39
  216. package/src/components/Charts/MiniBar.vue +39 -39
  217. package/src/components/Charts/MiniProgress.vue +75 -75
  218. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  219. package/src/components/Charts/Radar.vue +68 -68
  220. package/src/components/Charts/RankList.vue +77 -77
  221. package/src/components/Charts/TagCloud.vue +113 -113
  222. package/src/components/Charts/TransferBar.vue +64 -64
  223. package/src/components/Charts/Trend.vue +82 -82
  224. package/src/components/Charts/chart.less +12 -12
  225. package/src/components/Charts/smooth.area.less +13 -13
  226. package/src/components/CodeMirror/inedx.vue +118 -118
  227. package/src/components/CodeMirror/setting.js +40 -40
  228. package/src/components/FilePreview/FilePreview.vue +166 -166
  229. package/src/components/HeightScanner/index.vue +571 -571
  230. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  231. package/src/components/NumberInfo/index.js +3 -3
  232. package/src/components/NumberInfo/index.less +54 -54
  233. package/src/components/NumberInfo/index.md +43 -43
  234. package/src/components/card/ChartCard.vue +79 -79
  235. package/src/components/chart/Bar.vue +60 -60
  236. package/src/components/chart/MiniArea.vue +67 -67
  237. package/src/components/chart/MiniBar.vue +59 -59
  238. package/src/components/chart/MiniProgress.vue +57 -57
  239. package/src/components/chart/Radar.vue +80 -80
  240. package/src/components/chart/RankingList.vue +60 -60
  241. package/src/components/chart/Trend.vue +79 -79
  242. package/src/components/chart/index.less +9 -9
  243. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  244. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  245. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  246. package/src/components/checkbox/index.js +9 -9
  247. package/src/components/exception/ExceptionPage.vue +70 -70
  248. package/src/components/g2Charts/constants.js +202 -202
  249. package/src/components/g2Charts/demo.vue +808 -808
  250. package/src/components/g2Charts/designer.vue +228 -228
  251. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  252. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  253. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  254. package/src/components/g2Charts/index.vue +397 -397
  255. package/src/components/index.js +36 -36
  256. package/src/components/input/IInput.vue +66 -66
  257. package/src/components/menu/SideMenu.vue +75 -75
  258. package/src/components/menu/menu.js +273 -273
  259. package/src/components/setting/Setting.vue +234 -234
  260. package/src/components/tool/AStepItem.vue +60 -60
  261. package/src/config/CreateQueryConfig.js +325 -325
  262. package/src/config/default/antd.config.js +89 -89
  263. package/src/config/default/setting.config.js +55 -55
  264. package/src/font-style/font.css +4 -4
  265. package/src/layouts/CommonLayout.vue +56 -56
  266. package/src/layouts/GridView.vue +45 -45
  267. package/src/layouts/PageLayout.vue +151 -151
  268. package/src/layouts/SinglePageView.vue +136 -136
  269. package/src/layouts/header/AdminHeader.vue +132 -132
  270. package/src/layouts/header/HeaderNotice.vue +177 -177
  271. package/src/layouts/header/InstitutionDetail.vue +181 -181
  272. package/src/layouts/tabs/TabsHead.vue +189 -189
  273. package/src/layouts/tabs/TabsView.vue +389 -389
  274. package/src/lib.js +1 -1
  275. package/src/main.js +34 -34
  276. package/src/mock/extend/index.js +84 -84
  277. package/src/mock/goods/index.js +108 -108
  278. package/src/pages/AMisDemo/AMisDemo.vue +325 -325
  279. package/src/pages/AMisDemo/AMisDemo2.vue +74 -74
  280. package/src/pages/DefaultExample/index.vue +77 -77
  281. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  282. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  283. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  284. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  285. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  286. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  287. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  288. package/src/pages/DynamicStatistics/index.vue +282 -282
  289. package/src/pages/Example/childIndex.vue +15 -15
  290. package/src/pages/Example/index.vue +30 -30
  291. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  292. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  293. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  294. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  295. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  296. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  297. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  298. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  299. package/src/pages/Recording/index.vue +77 -77
  300. package/src/pages/ServiceReview/index.vue +284 -284
  301. package/src/pages/SubExample/index.vue +26 -26
  302. package/src/pages/WorkflowDetail/WorkFlowDemo.vue +32 -32
  303. package/src/pages/WorkflowDetail/WorkflowDetail.vue +230 -230
  304. package/src/pages/WorkflowDetail/WorkflowPageDetail/LeaveMessage.vue +131 -131
  305. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  306. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformation.vue +302 -302
  307. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformationDetails.vue +276 -276
  308. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +864 -864
  309. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandleReso.vue +997 -997
  310. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +222 -222
  311. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkOrderParentDetails.vue +233 -233
  312. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowDetailResso.vue +261 -261
  313. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowListResolution.vue +248 -248
  314. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowLog.vue +73 -73
  315. package/src/pages/XPageViewExample/index.vue +38 -38
  316. package/src/pages/XReportView/index.vue +64 -64
  317. package/src/pages/XTreeOneProExample/index.vue +67 -67
  318. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  319. package/src/pages/login/Login.vue +378 -378
  320. package/src/pages/login/LoginV3.vue +389 -389
  321. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  322. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  323. package/src/pages/report/ReportTable.js +124 -124
  324. package/src/pages/resourceManage/orgListManage.vue +98 -98
  325. package/src/pages/system/dictionary/index.vue +44 -44
  326. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  327. package/src/pages/system/monitor/operLog/index.vue +37 -37
  328. package/src/pages/system/settings/modifyPassword.vue +117 -117
  329. package/src/pages/system/ticket/index.vue +480 -480
  330. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  331. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  332. package/src/pages/userInfoDetailManage/FillCardRecordQuery/index.vue +76 -76
  333. package/src/pages/userInfoDetailManage/FillGasRecordQuery/index.vue +74 -74
  334. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  335. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  336. package/src/pages/userInfoDetailManage/MachineRecordQuery/index.vue +74 -74
  337. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  338. package/src/pages/userInfoDetailManage/OtherChargeRecordQuery/index.vue +74 -74
  339. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  340. package/src/pages/userInfoDetailManage/UserChargeRecordQuery/index.vue +92 -92
  341. package/src/pages/userInfoDetailManage/UserHandRecordQuery/index.vue +86 -86
  342. package/src/pages/userInfoDetailManage/UserRecordQuery/index.vue +73 -73
  343. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  344. package/src/pages/userInfoDetailManage/userInfoDetailQueryTabs.vue +132 -132
  345. package/src/plugins/EventLogPlugin.js +33 -33
  346. package/src/plugins/FindParentsData.js +17 -17
  347. package/src/plugins/HiPrintPlugin.js +132 -132
  348. package/src/router/async/config.async.js +35 -35
  349. package/src/router/async/router.map.js +117 -116
  350. package/src/router/index.js +27 -27
  351. package/src/router.js +19 -19
  352. package/src/services/DataModel.js +30 -30
  353. package/src/services/LodopFuncs.js +137 -137
  354. package/src/services/api/TicketDetailsViewApi.js +46 -46
  355. package/src/services/api/cas.js +79 -79
  356. package/src/services/api/common.js +346 -346
  357. package/src/services/api/entity.js +18 -18
  358. package/src/services/api/index.js +17 -17
  359. package/src/services/api/restTools.js +145 -145
  360. package/src/services/api/workFlow.js +63 -63
  361. package/src/services/apiService.js +16 -16
  362. package/src/services/v3Api.js +116 -116
  363. package/src/store/modules/account.js +115 -115
  364. package/src/store/modules/index.js +5 -5
  365. package/src/store/modules/lowCode.js +33 -33
  366. package/src/store/modules/setting.js +119 -119
  367. package/src/theme/default/style.less +58 -58
  368. package/src/theme/global.less +159 -159
  369. package/src/utils/authority-utils.js +85 -85
  370. package/src/utils/errorCode.js +6 -6
  371. package/src/utils/formatter.js +74 -74
  372. package/src/utils/htmlToPDF.js +108 -108
  373. package/src/utils/htmlToPDFApi.js +5 -5
  374. package/src/utils/login.js +188 -188
  375. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  376. package/src/utils/lowcode/lowcodeLog.js +29 -29
  377. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  378. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  379. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  380. package/src/utils/map-utils.js +47 -47
  381. package/src/utils/reg.js +95 -95
  382. package/src/utils/runEvalFunction.js +14 -14
  383. package/src/utils/theme-color-replacer-extend.js +92 -92
  384. package/src/utils/util.js +329 -329
  385. package/src/utils/waterMark.js +31 -31
  386. package/test/Amis.spec.js +164 -164
  387. package/test/Tree.spec.js +168 -168
  388. package/test/myDialog.spec.js +47 -47
  389. package/test/util.test.js +53 -53
  390. package/test/v3Api.test.js +1984 -1984
  391. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
@@ -1,398 +1,398 @@
1
- <template>
2
- <!-- 自定义事件弹框 -->
3
- <a-modal
4
- title="事件编辑器"
5
- width="60%"
6
- :z-index="1001"
7
- :destroyOnClose="true"
8
- @ok="handleEventEditorOk"
9
- @cancel="handleEventEditorCancel"
10
- v-if="showEventEditor"
11
- :visible="showEventEditor">
12
- <a-form :label-col="{ span: 6 }" :wrapper-col="{ span: 14 }" v-if="showForm">
13
- <!-- 事件触发类型 -->
14
- <a-form-item label="事件触发类型">
15
- <a-select @change="handleEventEditorTypeChange" :default-value="eventEditorContent.emitType">
16
- <a-select-option
17
- v-for="(eventType, eventTypeIndex) in editorPropertiesConfig.selfEvent"
18
- :key="eventTypeIndex"
19
- :value="eventType">
20
- {{ eventType }}
21
- </a-select-option>
22
- <a-select-option value="customEmitType">
23
- 自定义触发类型
24
- </a-select-option>
25
- <a-select-option value="lifeCycle">
26
- 生命周期函数
27
- </a-select-option>
28
- </a-select>
29
- </a-form-item>
30
- <!-- 自定义事件触发类型 -->
31
- <a-form-item label="自定义事件触发名" v-if="eventEditorContent.emitType === 'customEmitType'">
32
- <a-input v-model="eventEditorContent.customEmitType"/>
33
- </a-form-item>
34
- <!-- 事件类型 -->
35
- <a-form-item label="事件类型" v-if="eventEditorContent.emitType && eventEditorContent.emitType !== 'lifeCycle'">
36
- <a-select @change="handleEventEditorEventTypeChange" :default-value="eventEditorContent.eventType">
37
- <a-select-option value="runFunction">
38
- 调用组件方法
39
- </a-select-option>
40
- <a-select-option value="changeProps">
41
- 修改组件的Props
42
- </a-select-option>
43
- <a-select-option value="runLogic">
44
- 发送后端请求
45
- </a-select-option>
46
- <a-select-option value="log">
47
- 调试日志
48
- </a-select-option>
49
- <a-select-option value="showModal" v-if="this.config.page.filter(page => page.type === 'modal').length > 0">
50
- 修改弹框可见
51
- </a-select-option>
52
- <a-select-option value="showDraw" v-if="this.config.page.filter(page => page.type === 'draw').length > 0">
53
- 修改抽屉可见
54
- </a-select-option>
55
- <a-select-option value="customJSFunction" v-if="eventEditorContent.emitType !== 'lifeCycle'">
56
- 自定义JS
57
- </a-select-option>
58
- </a-select>
59
- </a-form-item>
60
- <!-- 生命周期函数 -->
61
- <a-form-item label="生命周期名" v-if="eventEditorContent.emitType === 'lifeCycle'">
62
- <a-select @change="handleEventEditorLifeCycleChange" :default-value="eventEditorContent.lifeCycle">
63
- <a-select-option value="created">
64
- created
65
- </a-select-option>
66
- <a-select-option value="beforeMount">
67
- beforeMount
68
- </a-select-option>
69
- <a-select-option value="mounted">
70
- mounted
71
- </a-select-option>
72
- <a-select-option value="beforeUpdate">
73
- beforeUpdate
74
- </a-select-option>
75
- <a-select-option value="updated">
76
- updated
77
- </a-select-option>
78
- <a-select-option value="beforeDestroy">
79
- beforeDestroy
80
- </a-select-option>
81
- <a-select-option value="destroyed">
82
- destroyed
83
- </a-select-option>
84
- </a-select>
85
- </a-form-item>
86
- <!-- 修改弹框可见 or 修改抽屉可见 -->
87
- <a-form-item label="修改可见" v-if="eventEditorContent.eventType === 'showModal' || eventEditorContent.eventType === 'showDraw'">
88
- <a-radio-group v-model="eventEditorContent.visible" button-style="solid">
89
- <a-radio-button value="open">
90
- 显示
91
- </a-radio-button>
92
- <a-radio-button value="close">
93
- 隐藏
94
- </a-radio-button>
95
- </a-radio-group>
96
- </a-form-item>
97
- <!-- 弹框容器ID -->
98
- <a-form-item label="弹框容器ID" v-if="eventEditorContent.eventType === 'showModal'">
99
- <a-select v-model="eventEditorContent.containerId">
100
- <a-select-option
101
- v-for="(modal) in config.page.filter(page => page.type === 'modal')"
102
- :key="modal.id"
103
- :value="modal.id">
104
- 弹框_{{ modal.id }}
105
- </a-select-option>
106
- </a-select>
107
- </a-form-item>
108
- <!-- 抽屉容器ID -->
109
- <a-form-item label="抽屉容器ID" v-if="eventEditorContent.eventType === 'showDraw'">
110
- <a-select v-model="eventEditorContent.containerId">
111
- <a-select-option
112
- v-for="(draw) in config.page.filter(page => page.type === 'draw')"
113
- :key="draw.id"
114
- :value="draw.id">
115
- 抽屉_{{ draw.id }}
116
- </a-select-option>
117
- </a-select>
118
- </a-form-item>
119
- <!-- Logic名 -->
120
- <a-form-item label="后端Api" v-if="eventEditorContent.eventType === 'runLogic'">
121
- <a-input v-model="eventEditorContent.logicName"/>
122
- </a-form-item>
123
- <!-- 自定义Logic参数 -->
124
- <a-form-item label="自定义Logic参数" v-if="eventEditorContent.eventType === 'runLogic'">
125
- <a-button type="primary" @click="openLogicParamJSEditor">
126
- 打开编辑器
127
- </a-button>
128
- </a-form-item>
129
- <!-- 自定义Logic回调 -->
130
- <a-form-item label="自定义Logic回调" v-if="eventEditorContent.eventType === 'runLogic'" >
131
- <a-button type="primary" @click="openLogicCallbackEditor">
132
- 打开编辑器
133
- </a-button>
134
- </a-form-item>
135
- <!-- 修改组件的值 才会显示的其余参数 -->
136
- <template v-if="eventEditorContent.eventType === 'runFunction' || eventEditorContent.eventType === 'changeProps' || eventEditorContent.eventType === 'customJSFunction'">
137
- <!-- 目标组件 -->
138
- <a-form-item label="目标组件">
139
- <a-select @change="handleEventEditorTargetChange" :default-value="eventEditorContent.target">
140
- <a-select-option
141
- v-for="(targetId, targetIndex) in getAllRenderedComponents()"
142
- :key="targetIndex"
143
- :value="targetId">
144
- {{ targetId }}
145
- </a-select-option>
146
- </a-select>
147
- </a-form-item>
148
- <!-- 目标组件执行事件 -->
149
- <a-form-item label="目标组件执行事件" v-if="eventEditorContent.eventType === 'runFunction' && eventEditorContent.target !== undefined">
150
- <a-select @change="handleEventEditorTargetEventTypeChange" :default-value="eventEditorContent.eventName">
151
- <a-select-option :value="eventType.name" v-for="(eventType,eventTypeIndex) in targetComponentMethods" :key="'eventType_' + eventTypeIndex">
152
- {{ eventType.str }}
153
- </a-select-option>
154
- </a-select>
155
- <p v-if="targetComponentEventDesc !== undefined">{{ targetComponentEventDesc }}</p>
156
- </a-form-item>
157
- <!-- 目标组件修改值对应的key -->
158
- <a-form-item label="对应的key" v-if="eventEditorContent.target !== undefined && eventEditorContent.eventType === 'changeProps'">
159
- <a-input v-model="eventEditorContent.targetKey"/>
160
- </a-form-item>
161
- </template>
162
- <!-- 自定义执行方法的参数 -->
163
- <a-form-item label="自定义执行方法参数" v-if="eventEditorContent.eventType === 'runFunction'">
164
- <a-button type="primary" @click="openRunFunctionParamEditor">
165
- 打开编辑器
166
- </a-button>
167
- </a-form-item>
168
- <!-- 自定义JS方法 -->
169
- <a-form-item label="自定义JS方法" v-if="eventEditorContent.emitType !== 'lifeCycle' && eventEditorContent.eventType === 'customJSFunction'">
170
- <a-button type="primary" @click="openEventJSEditor">打开编辑器</a-button>
171
- </a-form-item>
172
- <!-- 自定义钩子函数 -->
173
- <a-form-item label="自定义生命周期函数" v-if="eventEditorContent.emitType === 'lifeCycle'">
174
- <a-button type="primary" @click="openEventLifeCycleJSEditor">打开编辑器</a-button>
175
- </a-form-item>
176
- </a-form>
177
- </a-modal>
178
- </template>
179
-
180
- <script>
181
- import * as lowcodeUtils from '@vue2-client/utils/lowcode/lowcodeUtils'
182
-
183
- // 函数编辑器显示的模板
184
- const JSEventFunctionTemplate = 'function(eventType, data, targetKey, sourceVM, targetVM) {\n \n return {\n "eventType": eventType,\n "data": data,\n "targetKey": targetKey\n }\n}'
185
- const LogicParamFunctionTemplate = 'function(componentData, data) {\n \n return {\n \n }\n}'
186
- const LogicCallBackFunctionTemplate = 'function(componentsMap, responseData) {\n \n}'
187
- const LifeCycleFunctionTemplate = 'function(vm) {\n \n}'
188
- const RunFunctionParamTemplate = 'function(vm, data) {\n\n return [\n\n ]\n}'
189
-
190
- export default {
191
- name: 'LowCodeEventEditorModal',
192
- props: {
193
- // 用于保存右侧编辑组件的属性
194
- // eslint-disable-next-line vue/require-default-prop
195
- editorPropertiesConfig: {
196
- type: Object,
197
- require: true
198
- },
199
- // 用于事件编辑的回显,在点击事件编辑按钮后,会将此变量赋值
200
- eventEditorCurrent: {
201
- type: Object,
202
- default: undefined
203
- }
204
- },
205
- inject: [
206
- 'componentsMap'
207
- ],
208
- data () {
209
- return {
210
- // 目标组件暴露出的事件
211
- targetComponentMethods: [],
212
- // 目标组件已选择的事件描述
213
- targetComponentEventDesc: undefined,
214
- // 控制事件编辑器弹框显隐
215
- showEventEditor: false,
216
- // 控制表单更新
217
- showForm: true
218
- }
219
- },
220
- methods: {
221
- changeVisible () {
222
- this.showEventEditor = !this.showEventEditor
223
- },
224
- changeOuterValue (key, value) {
225
- this.$emit('changeOuterValue', key, value)
226
- },
227
- // 事件编辑器点击完成
228
- handleEventEditorOk () {
229
- let emitTypeKey = this.eventEditorContent.emitType
230
- // 是否是自定义事件触发
231
- if (this.eventEditorContent.customEmitType) {
232
- emitTypeKey = this.eventEditorContent.customEmitType
233
- }
234
- // 如果当前是回显事件
235
- if (this.eventEditorCurrent) {
236
- const targetConfig = lowcodeUtils.getComponentConfig(this.editorPropertiesConfig.id, this.config.page)
237
- targetConfig.onEvent[this.eventEditorCurrent.type][this.eventEditorCurrent.index] = { ...this.eventEditorContent }
238
- } else {
239
- // 当前是新增事件
240
- const target = lowcodeUtils.getComponentConfig(this.editorPropertiesConfig.id, this.config.page)
241
- // 如果没有onEvent属性则初始化
242
- if (!target.onEvent) {
243
- target.onEvent = {}
244
- }
245
- // 如果当前触发类型没有初始化,则初始化
246
- if (!target.onEvent[emitTypeKey]) {
247
- target.onEvent[emitTypeKey] = []
248
- }
249
- // 将缓存的事件属性赋值
250
- target.onEvent[emitTypeKey].push({
251
- ...this.eventEditorContent
252
- })
253
- }
254
- this.targetComponentMethods = []
255
- this.targetComponentEventDesc = undefined
256
- this.changeVisible()
257
- this.$store.commit('setEventEditorContent', {})
258
- this.$store.commit('setConfig', this.config)
259
- this.changeOuterValue('eventEditorCurrent', undefined)
260
- this.$emit('refresh', 'eventEditor')
261
- },
262
- // 关闭事件编辑器弹框
263
- handleEventEditorCancel () {
264
- this.targetComponentMethods = []
265
- this.targetComponentEventDesc = undefined
266
- this.changeVisible()
267
- this.$store.commit('setEventEditorContent', {})
268
- this.changeOuterValue('eventEditorCurrent', undefined)
269
- },
270
- // 事件编辑器中,触发类型改变
271
- handleEventEditorTypeChange (type) {
272
- this.$store.commit('setEventEditorContent', {})
273
- this.eventEditorContent.emitType = type
274
- this.refreshForm()
275
- },
276
- // 刷新表单
277
- refreshForm () {
278
- this.showForm = false
279
- this.$nextTick(() => {
280
- this.showForm = true
281
- })
282
- },
283
- // 事件编辑器中,目标组件改变
284
- handleEventEditorTargetChange (target) {
285
- this.targetComponentMethods = []
286
- this.eventEditorContent.target = target
287
- // 将目标组件暴露的方法,填入单选框
288
- const targetType = target.split('_')[0]
289
- const editorConfig = lowcodeUtils.getEditorConfigByType(targetType)
290
- if (editorConfig.selfMethods) {
291
- editorConfig.selfMethods.forEach(eachMethod => {
292
- // str用于下拉框中显示,包含函数名和形参
293
- const methodStr = eachMethod.name + '(' + eachMethod.params + ')'
294
- this.targetComponentMethods.push({
295
- str: methodStr,
296
- desc: eachMethod.desc,
297
- name: eachMethod.name
298
- })
299
- })
300
- }
301
- this.$forceUpdate()
302
- },
303
- handleEventEditorLifeCycleChange (lifeCycleName) {
304
- this.eventEditorContent.lifeCycle = lifeCycleName
305
- },
306
- // 事件编辑器中,事件类型改变
307
- handleEventEditorEventTypeChange (type) {
308
- const temp = {
309
- emitType: this.eventEditorContent.emitType
310
- }
311
- temp.eventType = type
312
- if (this.eventEditorContent.customEmitType) {
313
- temp.customEmitType = this.eventEditorContent.customEmitType
314
- }
315
- this.$store.commit('setEventEditorContent', temp)
316
- this.refreshForm()
317
- },
318
- // 事件编辑器中,目标组件执行事件类型改变
319
- handleEventEditorTargetEventTypeChange (type) {
320
- this.targetComponentMethods.forEach(eachMethod => {
321
- if (eachMethod.name === type) {
322
- this.targetComponentEventDesc = eachMethod.desc
323
- }
324
- })
325
- this.eventEditorContent.eventName = type
326
- this.$forceUpdate()
327
- },
328
- // 打开执行方法参数编辑弹框
329
- openRunFunctionParamEditor () {
330
- if (!this.eventEditorContent.runFunctionParam) {
331
- this.eventEditorContent.runFunctionParam = RunFunctionParamTemplate
332
- }
333
- this.$store.commit('setEventEditorContent', this.eventEditorContent)
334
- this.$emit('openModal', 'functionParam')
335
- },
336
- // 打开logic回调编辑弹框
337
- openLogicCallbackEditor () {
338
- if (!this.eventEditorContent.logicCallBackFunction) {
339
- this.eventEditorContent.logicCallBackFunction = LogicCallBackFunctionTemplate
340
- }
341
- this.$store.commit('setEventEditorContent', this.eventEditorContent)
342
- this.$emit('openModal', 'logicCallBack')
343
- },
344
- // 打开logic参数JS编辑器弹框
345
- openLogicParamJSEditor () {
346
- if (!this.eventEditorContent.logicParamJSFunction) {
347
- this.eventEditorContent.logicParamJSFunction = LogicParamFunctionTemplate
348
- }
349
- this.$store.commit('setEventEditorContent', this.eventEditorContent)
350
- this.$emit('openModal', 'logicParam')
351
- },
352
- // 打开JS函数编辑器
353
- openEventJSEditor () {
354
- if (!this.eventEditorContent.JSFunction) {
355
- this.eventEditorContent.JSFunction = JSEventFunctionTemplate
356
- }
357
- this.$store.commit('setEventEditorContent', this.eventEditorContent)
358
- this.$emit('openModal', 'customJS')
359
- },
360
- // 打开钩子函数编辑器
361
- openEventLifeCycleJSEditor () {
362
- if (!this.eventEditorContent.LifeCycleFunction) {
363
- this.eventEditorContent.LifeCycleFunction = LifeCycleFunctionTemplate
364
- }
365
- this.$store.commit('setEventEditorContent', this.eventEditorContent)
366
- this.$emit('openModal', 'lifeCycle')
367
- },
368
- // 获取所有注册组件
369
- getAllRenderedComponents () {
370
- const IDs = Object.keys(this.componentsMap)
371
- const result = []
372
- IDs.forEach(id => {
373
- const config = lowcodeUtils.getConfig(id, this.config)
374
- if (config.name) {
375
- result.push(config.name)
376
- } else {
377
- result.push(config.id)
378
- }
379
- })
380
- return result
381
- },
382
- },
383
- mounted () {
384
- },
385
- computed: {
386
- config () {
387
- return this.$store.state.lowCode.config
388
- },
389
- eventEditorContent () {
390
- return this.$store.state.lowCode.eventEditorContent
391
- }
392
- }
393
- }
394
- </script>
395
-
396
- <style scoped lang="less">
397
-
398
- </style>
1
+ <template>
2
+ <!-- 自定义事件弹框 -->
3
+ <a-modal
4
+ title="事件编辑器"
5
+ width="60%"
6
+ :z-index="1001"
7
+ :destroyOnClose="true"
8
+ @ok="handleEventEditorOk"
9
+ @cancel="handleEventEditorCancel"
10
+ v-if="showEventEditor"
11
+ :visible="showEventEditor">
12
+ <a-form :label-col="{ span: 6 }" :wrapper-col="{ span: 14 }" v-if="showForm">
13
+ <!-- 事件触发类型 -->
14
+ <a-form-item label="事件触发类型">
15
+ <a-select @change="handleEventEditorTypeChange" :default-value="eventEditorContent.emitType">
16
+ <a-select-option
17
+ v-for="(eventType, eventTypeIndex) in editorPropertiesConfig.selfEvent"
18
+ :key="eventTypeIndex"
19
+ :value="eventType">
20
+ {{ eventType }}
21
+ </a-select-option>
22
+ <a-select-option value="customEmitType">
23
+ 自定义触发类型
24
+ </a-select-option>
25
+ <a-select-option value="lifeCycle">
26
+ 生命周期函数
27
+ </a-select-option>
28
+ </a-select>
29
+ </a-form-item>
30
+ <!-- 自定义事件触发类型 -->
31
+ <a-form-item label="自定义事件触发名" v-if="eventEditorContent.emitType === 'customEmitType'">
32
+ <a-input v-model="eventEditorContent.customEmitType"/>
33
+ </a-form-item>
34
+ <!-- 事件类型 -->
35
+ <a-form-item label="事件类型" v-if="eventEditorContent.emitType && eventEditorContent.emitType !== 'lifeCycle'">
36
+ <a-select @change="handleEventEditorEventTypeChange" :default-value="eventEditorContent.eventType">
37
+ <a-select-option value="runFunction">
38
+ 调用组件方法
39
+ </a-select-option>
40
+ <a-select-option value="changeProps">
41
+ 修改组件的Props
42
+ </a-select-option>
43
+ <a-select-option value="runLogic">
44
+ 发送后端请求
45
+ </a-select-option>
46
+ <a-select-option value="log">
47
+ 调试日志
48
+ </a-select-option>
49
+ <a-select-option value="showModal" v-if="this.config.page.filter(page => page.type === 'modal').length > 0">
50
+ 修改弹框可见
51
+ </a-select-option>
52
+ <a-select-option value="showDraw" v-if="this.config.page.filter(page => page.type === 'draw').length > 0">
53
+ 修改抽屉可见
54
+ </a-select-option>
55
+ <a-select-option value="customJSFunction" v-if="eventEditorContent.emitType !== 'lifeCycle'">
56
+ 自定义JS
57
+ </a-select-option>
58
+ </a-select>
59
+ </a-form-item>
60
+ <!-- 生命周期函数 -->
61
+ <a-form-item label="生命周期名" v-if="eventEditorContent.emitType === 'lifeCycle'">
62
+ <a-select @change="handleEventEditorLifeCycleChange" :default-value="eventEditorContent.lifeCycle">
63
+ <a-select-option value="created">
64
+ created
65
+ </a-select-option>
66
+ <a-select-option value="beforeMount">
67
+ beforeMount
68
+ </a-select-option>
69
+ <a-select-option value="mounted">
70
+ mounted
71
+ </a-select-option>
72
+ <a-select-option value="beforeUpdate">
73
+ beforeUpdate
74
+ </a-select-option>
75
+ <a-select-option value="updated">
76
+ updated
77
+ </a-select-option>
78
+ <a-select-option value="beforeDestroy">
79
+ beforeDestroy
80
+ </a-select-option>
81
+ <a-select-option value="destroyed">
82
+ destroyed
83
+ </a-select-option>
84
+ </a-select>
85
+ </a-form-item>
86
+ <!-- 修改弹框可见 or 修改抽屉可见 -->
87
+ <a-form-item label="修改可见" v-if="eventEditorContent.eventType === 'showModal' || eventEditorContent.eventType === 'showDraw'">
88
+ <a-radio-group v-model="eventEditorContent.visible" button-style="solid">
89
+ <a-radio-button value="open">
90
+ 显示
91
+ </a-radio-button>
92
+ <a-radio-button value="close">
93
+ 隐藏
94
+ </a-radio-button>
95
+ </a-radio-group>
96
+ </a-form-item>
97
+ <!-- 弹框容器ID -->
98
+ <a-form-item label="弹框容器ID" v-if="eventEditorContent.eventType === 'showModal'">
99
+ <a-select v-model="eventEditorContent.containerId">
100
+ <a-select-option
101
+ v-for="(modal) in config.page.filter(page => page.type === 'modal')"
102
+ :key="modal.id"
103
+ :value="modal.id">
104
+ 弹框_{{ modal.id }}
105
+ </a-select-option>
106
+ </a-select>
107
+ </a-form-item>
108
+ <!-- 抽屉容器ID -->
109
+ <a-form-item label="抽屉容器ID" v-if="eventEditorContent.eventType === 'showDraw'">
110
+ <a-select v-model="eventEditorContent.containerId">
111
+ <a-select-option
112
+ v-for="(draw) in config.page.filter(page => page.type === 'draw')"
113
+ :key="draw.id"
114
+ :value="draw.id">
115
+ 抽屉_{{ draw.id }}
116
+ </a-select-option>
117
+ </a-select>
118
+ </a-form-item>
119
+ <!-- Logic名 -->
120
+ <a-form-item label="后端Api" v-if="eventEditorContent.eventType === 'runLogic'">
121
+ <a-input v-model="eventEditorContent.logicName"/>
122
+ </a-form-item>
123
+ <!-- 自定义Logic参数 -->
124
+ <a-form-item label="自定义Logic参数" v-if="eventEditorContent.eventType === 'runLogic'">
125
+ <a-button type="primary" @click="openLogicParamJSEditor">
126
+ 打开编辑器
127
+ </a-button>
128
+ </a-form-item>
129
+ <!-- 自定义Logic回调 -->
130
+ <a-form-item label="自定义Logic回调" v-if="eventEditorContent.eventType === 'runLogic'" >
131
+ <a-button type="primary" @click="openLogicCallbackEditor">
132
+ 打开编辑器
133
+ </a-button>
134
+ </a-form-item>
135
+ <!-- 修改组件的值 才会显示的其余参数 -->
136
+ <template v-if="eventEditorContent.eventType === 'runFunction' || eventEditorContent.eventType === 'changeProps' || eventEditorContent.eventType === 'customJSFunction'">
137
+ <!-- 目标组件 -->
138
+ <a-form-item label="目标组件">
139
+ <a-select @change="handleEventEditorTargetChange" :default-value="eventEditorContent.target">
140
+ <a-select-option
141
+ v-for="(targetId, targetIndex) in getAllRenderedComponents()"
142
+ :key="targetIndex"
143
+ :value="targetId">
144
+ {{ targetId }}
145
+ </a-select-option>
146
+ </a-select>
147
+ </a-form-item>
148
+ <!-- 目标组件执行事件 -->
149
+ <a-form-item label="目标组件执行事件" v-if="eventEditorContent.eventType === 'runFunction' && eventEditorContent.target !== undefined">
150
+ <a-select @change="handleEventEditorTargetEventTypeChange" :default-value="eventEditorContent.eventName">
151
+ <a-select-option :value="eventType.name" v-for="(eventType,eventTypeIndex) in targetComponentMethods" :key="'eventType_' + eventTypeIndex">
152
+ {{ eventType.str }}
153
+ </a-select-option>
154
+ </a-select>
155
+ <p v-if="targetComponentEventDesc !== undefined">{{ targetComponentEventDesc }}</p>
156
+ </a-form-item>
157
+ <!-- 目标组件修改值对应的key -->
158
+ <a-form-item label="对应的key" v-if="eventEditorContent.target !== undefined && eventEditorContent.eventType === 'changeProps'">
159
+ <a-input v-model="eventEditorContent.targetKey"/>
160
+ </a-form-item>
161
+ </template>
162
+ <!-- 自定义执行方法的参数 -->
163
+ <a-form-item label="自定义执行方法参数" v-if="eventEditorContent.eventType === 'runFunction'">
164
+ <a-button type="primary" @click="openRunFunctionParamEditor">
165
+ 打开编辑器
166
+ </a-button>
167
+ </a-form-item>
168
+ <!-- 自定义JS方法 -->
169
+ <a-form-item label="自定义JS方法" v-if="eventEditorContent.emitType !== 'lifeCycle' && eventEditorContent.eventType === 'customJSFunction'">
170
+ <a-button type="primary" @click="openEventJSEditor">打开编辑器</a-button>
171
+ </a-form-item>
172
+ <!-- 自定义钩子函数 -->
173
+ <a-form-item label="自定义生命周期函数" v-if="eventEditorContent.emitType === 'lifeCycle'">
174
+ <a-button type="primary" @click="openEventLifeCycleJSEditor">打开编辑器</a-button>
175
+ </a-form-item>
176
+ </a-form>
177
+ </a-modal>
178
+ </template>
179
+
180
+ <script>
181
+ import * as lowcodeUtils from '@vue2-client/utils/lowcode/lowcodeUtils'
182
+
183
+ // 函数编辑器显示的模板
184
+ const JSEventFunctionTemplate = 'function(eventType, data, targetKey, sourceVM, targetVM) {\n \n return {\n "eventType": eventType,\n "data": data,\n "targetKey": targetKey\n }\n}'
185
+ const LogicParamFunctionTemplate = 'function(componentData, data) {\n \n return {\n \n }\n}'
186
+ const LogicCallBackFunctionTemplate = 'function(componentsMap, responseData) {\n \n}'
187
+ const LifeCycleFunctionTemplate = 'function(vm) {\n \n}'
188
+ const RunFunctionParamTemplate = 'function(vm, data) {\n\n return [\n\n ]\n}'
189
+
190
+ export default {
191
+ name: 'LowCodeEventEditorModal',
192
+ props: {
193
+ // 用于保存右侧编辑组件的属性
194
+ // eslint-disable-next-line vue/require-default-prop
195
+ editorPropertiesConfig: {
196
+ type: Object,
197
+ require: true
198
+ },
199
+ // 用于事件编辑的回显,在点击事件编辑按钮后,会将此变量赋值
200
+ eventEditorCurrent: {
201
+ type: Object,
202
+ default: undefined
203
+ }
204
+ },
205
+ inject: [
206
+ 'componentsMap'
207
+ ],
208
+ data () {
209
+ return {
210
+ // 目标组件暴露出的事件
211
+ targetComponentMethods: [],
212
+ // 目标组件已选择的事件描述
213
+ targetComponentEventDesc: undefined,
214
+ // 控制事件编辑器弹框显隐
215
+ showEventEditor: false,
216
+ // 控制表单更新
217
+ showForm: true
218
+ }
219
+ },
220
+ methods: {
221
+ changeVisible () {
222
+ this.showEventEditor = !this.showEventEditor
223
+ },
224
+ changeOuterValue (key, value) {
225
+ this.$emit('changeOuterValue', key, value)
226
+ },
227
+ // 事件编辑器点击完成
228
+ handleEventEditorOk () {
229
+ let emitTypeKey = this.eventEditorContent.emitType
230
+ // 是否是自定义事件触发
231
+ if (this.eventEditorContent.customEmitType) {
232
+ emitTypeKey = this.eventEditorContent.customEmitType
233
+ }
234
+ // 如果当前是回显事件
235
+ if (this.eventEditorCurrent) {
236
+ const targetConfig = lowcodeUtils.getComponentConfig(this.editorPropertiesConfig.id, this.config.page)
237
+ targetConfig.onEvent[this.eventEditorCurrent.type][this.eventEditorCurrent.index] = { ...this.eventEditorContent }
238
+ } else {
239
+ // 当前是新增事件
240
+ const target = lowcodeUtils.getComponentConfig(this.editorPropertiesConfig.id, this.config.page)
241
+ // 如果没有onEvent属性则初始化
242
+ if (!target.onEvent) {
243
+ target.onEvent = {}
244
+ }
245
+ // 如果当前触发类型没有初始化,则初始化
246
+ if (!target.onEvent[emitTypeKey]) {
247
+ target.onEvent[emitTypeKey] = []
248
+ }
249
+ // 将缓存的事件属性赋值
250
+ target.onEvent[emitTypeKey].push({
251
+ ...this.eventEditorContent
252
+ })
253
+ }
254
+ this.targetComponentMethods = []
255
+ this.targetComponentEventDesc = undefined
256
+ this.changeVisible()
257
+ this.$store.commit('setEventEditorContent', {})
258
+ this.$store.commit('setConfig', this.config)
259
+ this.changeOuterValue('eventEditorCurrent', undefined)
260
+ this.$emit('refresh', 'eventEditor')
261
+ },
262
+ // 关闭事件编辑器弹框
263
+ handleEventEditorCancel () {
264
+ this.targetComponentMethods = []
265
+ this.targetComponentEventDesc = undefined
266
+ this.changeVisible()
267
+ this.$store.commit('setEventEditorContent', {})
268
+ this.changeOuterValue('eventEditorCurrent', undefined)
269
+ },
270
+ // 事件编辑器中,触发类型改变
271
+ handleEventEditorTypeChange (type) {
272
+ this.$store.commit('setEventEditorContent', {})
273
+ this.eventEditorContent.emitType = type
274
+ this.refreshForm()
275
+ },
276
+ // 刷新表单
277
+ refreshForm () {
278
+ this.showForm = false
279
+ this.$nextTick(() => {
280
+ this.showForm = true
281
+ })
282
+ },
283
+ // 事件编辑器中,目标组件改变
284
+ handleEventEditorTargetChange (target) {
285
+ this.targetComponentMethods = []
286
+ this.eventEditorContent.target = target
287
+ // 将目标组件暴露的方法,填入单选框
288
+ const targetType = target.split('_')[0]
289
+ const editorConfig = lowcodeUtils.getEditorConfigByType(targetType)
290
+ if (editorConfig.selfMethods) {
291
+ editorConfig.selfMethods.forEach(eachMethod => {
292
+ // str用于下拉框中显示,包含函数名和形参
293
+ const methodStr = eachMethod.name + '(' + eachMethod.params + ')'
294
+ this.targetComponentMethods.push({
295
+ str: methodStr,
296
+ desc: eachMethod.desc,
297
+ name: eachMethod.name
298
+ })
299
+ })
300
+ }
301
+ this.$forceUpdate()
302
+ },
303
+ handleEventEditorLifeCycleChange (lifeCycleName) {
304
+ this.eventEditorContent.lifeCycle = lifeCycleName
305
+ },
306
+ // 事件编辑器中,事件类型改变
307
+ handleEventEditorEventTypeChange (type) {
308
+ const temp = {
309
+ emitType: this.eventEditorContent.emitType
310
+ }
311
+ temp.eventType = type
312
+ if (this.eventEditorContent.customEmitType) {
313
+ temp.customEmitType = this.eventEditorContent.customEmitType
314
+ }
315
+ this.$store.commit('setEventEditorContent', temp)
316
+ this.refreshForm()
317
+ },
318
+ // 事件编辑器中,目标组件执行事件类型改变
319
+ handleEventEditorTargetEventTypeChange (type) {
320
+ this.targetComponentMethods.forEach(eachMethod => {
321
+ if (eachMethod.name === type) {
322
+ this.targetComponentEventDesc = eachMethod.desc
323
+ }
324
+ })
325
+ this.eventEditorContent.eventName = type
326
+ this.$forceUpdate()
327
+ },
328
+ // 打开执行方法参数编辑弹框
329
+ openRunFunctionParamEditor () {
330
+ if (!this.eventEditorContent.runFunctionParam) {
331
+ this.eventEditorContent.runFunctionParam = RunFunctionParamTemplate
332
+ }
333
+ this.$store.commit('setEventEditorContent', this.eventEditorContent)
334
+ this.$emit('openModal', 'functionParam')
335
+ },
336
+ // 打开logic回调编辑弹框
337
+ openLogicCallbackEditor () {
338
+ if (!this.eventEditorContent.logicCallBackFunction) {
339
+ this.eventEditorContent.logicCallBackFunction = LogicCallBackFunctionTemplate
340
+ }
341
+ this.$store.commit('setEventEditorContent', this.eventEditorContent)
342
+ this.$emit('openModal', 'logicCallBack')
343
+ },
344
+ // 打开logic参数JS编辑器弹框
345
+ openLogicParamJSEditor () {
346
+ if (!this.eventEditorContent.logicParamJSFunction) {
347
+ this.eventEditorContent.logicParamJSFunction = LogicParamFunctionTemplate
348
+ }
349
+ this.$store.commit('setEventEditorContent', this.eventEditorContent)
350
+ this.$emit('openModal', 'logicParam')
351
+ },
352
+ // 打开JS函数编辑器
353
+ openEventJSEditor () {
354
+ if (!this.eventEditorContent.JSFunction) {
355
+ this.eventEditorContent.JSFunction = JSEventFunctionTemplate
356
+ }
357
+ this.$store.commit('setEventEditorContent', this.eventEditorContent)
358
+ this.$emit('openModal', 'customJS')
359
+ },
360
+ // 打开钩子函数编辑器
361
+ openEventLifeCycleJSEditor () {
362
+ if (!this.eventEditorContent.LifeCycleFunction) {
363
+ this.eventEditorContent.LifeCycleFunction = LifeCycleFunctionTemplate
364
+ }
365
+ this.$store.commit('setEventEditorContent', this.eventEditorContent)
366
+ this.$emit('openModal', 'lifeCycle')
367
+ },
368
+ // 获取所有注册组件
369
+ getAllRenderedComponents () {
370
+ const IDs = Object.keys(this.componentsMap)
371
+ const result = []
372
+ IDs.forEach(id => {
373
+ const config = lowcodeUtils.getConfig(id, this.config)
374
+ if (config.name) {
375
+ result.push(config.name)
376
+ } else {
377
+ result.push(config.id)
378
+ }
379
+ })
380
+ return result
381
+ },
382
+ },
383
+ mounted () {
384
+ },
385
+ computed: {
386
+ config () {
387
+ return this.$store.state.lowCode.config
388
+ },
389
+ eventEditorContent () {
390
+ return this.$store.state.lowCode.eventEditorContent
391
+ }
392
+ }
393
+ }
394
+ </script>
395
+
396
+ <style scoped lang="less">
397
+
398
+ </style>