cloud-web-corejs 1.0.54-dev.65 → 1.0.54-dev.651

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 (491) hide show
  1. package/package.json +22 -14
  2. package/src/App.vue +30 -34
  3. package/src/api/user.js +64 -40
  4. package/src/components/Qrcode/fileParse.vue +0 -1
  5. package/src/components/Tinymce/index.vue +112 -71
  6. package/src/components/VabUpload/image-viewer.vue +2 -2
  7. package/src/components/VabUpload/index.js +49 -1
  8. package/src/components/VabUpload/mixins.js +1822 -2
  9. package/src/components/VabUpload/propertiesDialog.vue +1 -1
  10. package/src/components/VabUpload/view.vue +209 -120
  11. package/src/components/advancedSearchDialog/mixins.js +28 -1
  12. package/src/components/base-textarea/index.vue +104 -0
  13. package/src/components/baseAlert/index.js +44 -1
  14. package/src/components/baseAlert/index.vue +24 -20
  15. package/src/components/baseAlert/mixins.js +61 -1
  16. package/src/components/baseAttachment/index.vue +49 -40
  17. package/src/components/baseAttachment/install.js +21 -5
  18. package/src/components/baseAttachment/mixins.js +310 -1
  19. package/src/components/baseInputBatch/mixins.js +58 -1
  20. package/src/components/baseInputExport/index.vue +21 -14
  21. package/src/components/baseInputExport/mixins.js +391 -1
  22. package/src/components/baseTabs/index.vue +16 -8
  23. package/src/components/baseTabs/mixins.js +166 -1
  24. package/src/components/cnPrint/index.js +44 -1
  25. package/src/components/cnPrint/mixins.js +189 -1
  26. package/src/components/code-editor/index.vue +102 -63
  27. package/src/components/confirmDialog/index.js +41 -1
  28. package/src/components/confirmDialog/index.vue +24 -17
  29. package/src/components/confirmDialog/mixins.js +31 -1
  30. package/src/components/errorMsg/index.js +1 -1
  31. package/src/components/errorMsg/index.vue +78 -70
  32. package/src/components/errorMsg/mixins.js +6 -5
  33. package/src/components/excelExport/button.vue +86 -24
  34. package/src/components/excelExport/exportFieldDialog.vue +215 -81
  35. package/src/components/excelExport/index.js +6 -6
  36. package/src/components/excelExport/index.vue +108 -26
  37. package/src/components/excelExport/mixins.js +2 -2
  38. package/src/components/excelImport/index.js +13 -13
  39. package/src/components/excelImport/mixins.js +2 -1
  40. package/src/components/fileLibrary/fileObjAuthDialog.vue +179 -89
  41. package/src/components/fileLibrary/fileObjAuthEditDialog.vue +6 -0
  42. package/src/components/fileLibrary/filterDialog.vue +454 -0
  43. package/src/components/fileLibrary/index.vue +605 -262
  44. package/src/components/fileLibrary/mixins/categoryMoveDialogMixins.js +1 -1
  45. package/src/components/fileLibrary/mixins/fileCategoryDialogMixins.js +1 -1
  46. package/src/components/fileLibrary/mixins/fileHistoryDialogMixins.js +2 -2
  47. package/src/components/fileLibrary/mixins/fileObjAuthDialogMixin.js +339 -211
  48. package/src/components/fileLibrary/mixins/fileObjAuthEditDialogMixin.js +31 -27
  49. package/src/components/fileLibrary/mixins/fileObjAuthEditMixin.js +4 -4
  50. package/src/components/fileLibrary/mixins/indexMixins.js +220 -101
  51. package/src/components/fileLibrary/mixins/propertiesDialogMixins.js +64 -4
  52. package/src/components/fileLibrary/mixins/recycleBinDialogMixins.js +3 -3
  53. package/src/components/fileLibrary/propertiesDialog.vue +113 -74
  54. package/src/components/fileLibrary/shareDialog.vue +1 -1
  55. package/src/components/formOplog/mixins.js +85 -4
  56. package/src/components/hiprint/css/bootstrap.min.css +6 -0
  57. package/src/components/hiprint/fonts/glyphicons-halflings-regular.eot +0 -0
  58. package/src/components/hiprint/fonts/glyphicons-halflings-regular.svg +288 -0
  59. package/src/components/hiprint/fonts/glyphicons-halflings-regular.ttf +0 -0
  60. package/src/components/hiprint/fonts/glyphicons-halflings-regular.woff +0 -0
  61. package/src/components/hiprint/fonts/glyphicons-halflings-regular.woff2 +0 -0
  62. package/src/components/hiprint/hiprint.bundle.js +15 -3
  63. package/src/components/hiprint/view/design/index.vue +140 -47
  64. package/src/components/hiprint/view/design/mixins.js +611 -1
  65. package/src/components/hiprint/view/design/preview.vue +75 -52
  66. package/src/components/hiprint/view/json-view.vue +31 -31
  67. package/src/components/jdPrint/index.js +44 -1
  68. package/src/components/jdPrint/mixins.js +208 -1
  69. package/src/components/jsonImport/index.js +187 -17
  70. package/src/components/jsonImport/mixins.js +333 -1
  71. package/src/components/langImport/index.js +80 -1
  72. package/src/components/langImport/mixins.js +500 -16
  73. package/src/components/langTag/mixins/addButton.js +51 -5
  74. package/src/components/langTag/mixins/deleteButton.js +55 -5
  75. package/src/components/langTag/mixins/view.js +47 -5
  76. package/src/components/luckysheet/dialog.vue +159 -0
  77. package/src/components/luckysheet/export.js +595 -0
  78. package/src/components/luckysheet/fileUtils.js +147 -0
  79. package/src/components/luckysheet/index.js +72 -0
  80. package/src/components/luckysheet/templateJson.js +12078 -0
  81. package/src/components/luckysheet/view.vue +210 -0
  82. package/src/components/obsUpload/index.js +34 -0
  83. package/src/components/obsUpload/index.vue +231 -0
  84. package/src/components/obsUpload/mixins.js +1476 -0
  85. package/src/components/onlineTalk/index.vue +1 -1
  86. package/src/components/onlineTalk/mixins.js +852 -1
  87. package/src/components/onlineTalk/talkUserDialog.vue +280 -0
  88. package/src/components/oplogTable/mixins.js +83 -4
  89. package/src/components/pddPrint/index.js +44 -1
  90. package/src/components/pddPrint/mixins.js +252 -1
  91. package/src/components/projectTag/mixins/addButton.js +52 -1
  92. package/src/components/projectTag/mixins/deleteButton.js +52 -1
  93. package/src/components/projectTag/mixins/view.js +43 -1
  94. package/src/components/scriptDescription/button.vue +12 -4
  95. package/src/components/scriptDescription/mixins.js +30 -1
  96. package/src/components/scriptTest/mixins.js +90 -1
  97. package/src/components/statusTag/mixins.js +66 -1
  98. package/src/components/table/CellSlot.vue +1 -0
  99. package/src/components/table/config.js +1 -1
  100. package/src/components/table/index.js +12 -11
  101. package/src/components/table/plugins/extend-cell-area/vxe-table-extend-cell-area.es6.min.js +11028 -0
  102. package/src/components/table/plugins/extend-cell-area/vxe-table-extend-cell-area.min.css +200 -0
  103. package/src/components/table/tableForm.vue +99 -63
  104. package/src/components/table/tableFormMixin.js +1 -1
  105. package/src/components/table/util/index.js +339 -0
  106. package/src/components/table/vxeFilter/index.js +2 -1
  107. package/src/components/table/vxeFilter/mixin.js +8 -6
  108. package/src/components/tempStorage/index.vue +76 -55
  109. package/src/components/tempStorage/tempStorageDialog.vue +179 -54
  110. package/src/components/vb-tabs/x-tabs.vue +56 -30
  111. package/src/components/vipPrint/index.js +44 -1
  112. package/src/components/vipPrint/mixins.js +268 -1
  113. package/src/components/wf/addOpinionButton.vue +57 -0
  114. package/src/components/wf/content.vue +834 -362
  115. package/src/components/wf/mixins/addOpinionButton.js +53 -0
  116. package/src/components/wf/mixins/setCandidateButton.js +161 -0
  117. package/src/components/wf/mixins/setCandidateDialog.js +213 -1
  118. package/src/components/wf/mixins/setCandidateDialog2.js +252 -0
  119. package/src/components/wf/mixins/wfFlowEleScriptDialog.js +131 -0
  120. package/src/components/wf/mixins/wfTaskUserRangeDialog.js +69 -0
  121. package/src/components/wf/setCandidateButton.vue +40 -0
  122. package/src/components/wf/setCandidateDialog.vue +10 -0
  123. package/src/components/wf/setCandidateDialog2.vue +105 -0
  124. package/src/components/wf/wf.js +2156 -1
  125. package/src/components/wf/wfFlowEleScriptDialog.vue +89 -0
  126. package/src/components/wf/wfStartDialog.vue +66 -42
  127. package/src/components/wf/wfTaskUserRangeDialog.vue +65 -0
  128. package/src/components/wf/wfUtil.js +279 -1
  129. package/src/components/xform/form-designer/designer.js +1995 -9
  130. package/src/components/xform/form-designer/form-widget/components/gantt/index.vue +434 -0
  131. package/src/components/xform/form-designer/form-widget/container-widget/containerMixin.js +1 -1
  132. package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js +9 -8
  133. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +4 -1
  134. package/src/components/xform/form-designer/form-widget/container-widget/detail-pane-widget.vue +3 -2
  135. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +3 -3
  136. package/src/components/xform/form-designer/form-widget/dialog/baseFormulaDialog copy.vue +971 -0
  137. package/src/components/xform/form-designer/form-widget/dialog/baseFormulaDialog.vue +971 -0
  138. package/src/components/xform/form-designer/form-widget/dialog/exportDialog.vue +13 -0
  139. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +301 -0
  140. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +85 -48
  141. package/src/components/xform/form-designer/form-widget/dialog/formDrawer.vue +5 -1
  142. package/src/components/xform/form-designer/form-widget/dialog/formulaDialog.vue +799 -0
  143. package/src/components/xform/form-designer/form-widget/dialog/importDialog.vue +30 -7
  144. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1762 -9
  145. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +222 -75
  146. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +2 -2
  147. package/src/components/xform/form-designer/form-widget/field-widget/a-text-widget.vue +1 -1
  148. package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +32 -4
  149. package/src/components/xform/form-designer/form-widget/field-widget/button-widget.vue +1 -1
  150. package/src/components/xform/form-designer/form-widget/field-widget/cascader-widget.vue +19 -1
  151. package/src/components/xform/form-designer/form-widget/field-widget/census-widget.vue +40 -28
  152. package/src/components/xform/form-designer/form-widget/field-widget/checkbox-widget.vue +18 -7
  153. package/src/components/xform/form-designer/form-widget/field-widget/color-widget.vue +4 -1
  154. package/src/components/xform/form-designer/form-widget/field-widget/copy_button-widget.vue +95 -0
  155. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +13 -2
  156. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +30 -4
  157. package/src/components/xform/form-designer/form-widget/field-widget/download-button-widget.vue +133 -0
  158. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +86 -0
  159. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-widget.vue +170 -0
  160. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1654 -16
  161. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +705 -379
  162. package/src/components/xform/form-designer/form-widget/field-widget/gantt-widget.vue +964 -0
  163. package/src/components/xform/form-designer/form-widget/field-widget/html-text-widget.vue +6 -2
  164. package/src/components/xform/form-designer/form-widget/field-widget/import-button-widget.vue +22 -11
  165. package/src/components/xform/form-designer/form-widget/field-widget/import2-button-widget.vue +90 -0
  166. package/src/components/xform/form-designer/form-widget/field-widget/input-widget.vue +7 -2
  167. package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-bar-mixin.js +2 -1
  168. package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-category-mixin.js +3 -2
  169. package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-pie-mixin.js +1 -1
  170. package/src/components/xform/form-designer/form-widget/field-widget/mixins/vabsearch-mixin.js +179 -0
  171. package/src/components/xform/form-designer/form-widget/field-widget/multiSearch-widget.vue +53 -0
  172. package/src/components/xform/form-designer/form-widget/field-widget/number-widget.vue +114 -81
  173. package/src/components/xform/form-designer/form-widget/field-widget/oplog-widget.vue +186 -0
  174. package/src/components/xform/form-designer/form-widget/field-widget/print-button-widget.vue +55 -28
  175. package/src/components/xform/form-designer/form-widget/field-widget/print-detail-button-widget.vue +119 -0
  176. package/src/components/xform/form-designer/form-widget/field-widget/project-tag-widget.vue +154 -47
  177. package/src/components/xform/form-designer/form-widget/field-widget/radio-widget.vue +26 -6
  178. package/src/components/xform/form-designer/form-widget/field-widget/search_button-widget.vue +2 -2
  179. package/src/components/xform/form-designer/form-widget/field-widget/select-export-button-widget.vue +86 -0
  180. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +92 -0
  181. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +24 -9
  182. package/src/components/xform/form-designer/form-widget/field-widget/singerSearch-widget.vue +53 -0
  183. package/src/components/xform/form-designer/form-widget/field-widget/singleUpload-widget.vue +145 -0
  184. package/src/components/xform/form-designer/form-widget/field-widget/static-content-wrapper.vue +12 -1
  185. package/src/components/xform/form-designer/form-widget/field-widget/static-text-widget.vue +8 -3
  186. package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +82 -49
  187. package/src/components/xform/form-designer/form-widget/field-widget/table-export-button-widget.vue +38 -38
  188. package/src/components/xform/form-designer/form-widget/field-widget/tableexportbuttonwidget.vue +99 -0
  189. package/src/components/xform/form-designer/form-widget/field-widget/tempStorage-widget.vue +147 -0
  190. package/src/components/xform/form-designer/form-widget/field-widget/text-widget.vue +106 -33
  191. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +2 -2
  192. package/src/components/xform/form-designer/form-widget/field-widget/vabSearch-widget.vue +3 -171
  193. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +191 -66
  194. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload2-widget.vue +753 -0
  195. package/src/components/xform/form-designer/form-widget/indexMixin.js +1 -1
  196. package/src/components/xform/form-designer/indexMixin.js +3 -2
  197. package/src/components/xform/form-designer/refMixinDesign.js +1 -28
  198. package/src/components/xform/form-designer/setting-panel/form-setting.vue +981 -172
  199. package/src/components/xform/form-designer/setting-panel/index.vue +41 -32
  200. package/src/components/xform/form-designer/setting-panel/indexMixin.js +1 -1
  201. package/src/components/xform/form-designer/setting-panel/option-items-setting.vue +537 -302
  202. package/src/components/xform/form-designer/setting-panel/property-editor/a-link-editor.vue +4 -4
  203. package/src/components/xform/form-designer/setting-panel/property-editor/a-text-editor.vue +3 -3
  204. package/src/components/xform/form-designer/setting-panel/property-editor/autoValueEnabled-editor.vue +38 -0
  205. package/src/components/xform/form-designer/setting-panel/property-editor/censusClass-editor.vue +6 -0
  206. package/src/components/xform/form-designer/setting-panel/property-editor/colorClass-editor.vue +28 -0
  207. package/src/components/xform/form-designer/setting-panel/property-editor/commonAttributeEnabled-editor.vue +41 -0
  208. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/columnRenderDialog.vue +125 -0
  209. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +991 -1042
  210. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/edit-tree-button-group-config-dialog.vue +281 -0
  211. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +432 -0
  212. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/onCheckboxChange-editor.vue +1 -1
  213. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +1222 -529
  214. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +3 -3
  215. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail-pane/detail-pane-editor.vue +3 -3
  216. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-offset-editor.vue +1 -1
  217. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-pull-editor.vue +1 -1
  218. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-push-editor.vue +1 -1
  219. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +0 -8
  220. package/src/components/xform/form-designer/setting-panel/property-editor/container-tree/tree-customClass-editor.vue +31 -2
  221. package/src/components/xform/form-designer/setting-panel/property-editor/copyButton-editor.vue +36 -0
  222. package/src/components/xform/form-designer/setting-panel/property-editor/downloadButtonFlag-editor.vue +32 -0
  223. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +133 -0
  224. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/eventMixin.js +2 -2
  225. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onAfterConfirmFile-editor.vue +5 -3
  226. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +23 -8
  227. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/clickBindEvent-editor.vue +35 -20
  228. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +64 -5
  229. package/src/components/xform/form-designer/setting-panel/property-editor/field-dropdown-menu/dropdown-item-editor.vue +21 -0
  230. package/src/components/xform/form-designer/setting-panel/property-editor/field-dropdown-menu/dropdown-menu-editor.vue +59 -0
  231. package/src/components/xform/form-designer/setting-panel/property-editor/field-gantt/gantt-editor.vue +36 -0
  232. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +77 -20
  233. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -0
  234. package/src/components/xform/form-designer/setting-panel/property-editor/field-print-button/print-button-editor.vue +44 -15
  235. package/src/components/xform/form-designer/setting-panel/property-editor/field-print-button/print-detail-button-editor.vue +115 -0
  236. package/src/components/xform/form-designer/setting-panel/property-editor/field-rate/rate-defaultValue-editor.vue +1 -1
  237. package/src/components/xform/form-designer/setting-panel/property-editor/field-static-text/preWrap-editor.vue +23 -0
  238. package/src/components/xform/form-designer/setting-panel/property-editor/field-static-text/textContent-editor.vue +1 -1
  239. package/src/components/xform/form-designer/setting-panel/property-editor/field-status/field-status-editor.vue +67 -41
  240. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-button-editor.vue +56 -0
  241. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +71 -0
  242. package/src/components/xform/form-designer/setting-panel/property-editor/field-vabSearch/vabSearchName-editor.vue +13 -1
  243. package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload/field-vabUpload-editor.vue +33 -1
  244. package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload2/field-vabUpload2-editor.vue +66 -0
  245. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +89 -19
  246. package/src/components/xform/form-designer/setting-panel/property-editor/formatType-editor.vue +137 -0
  247. package/src/components/xform/form-designer/setting-panel/property-editor/formula-editor.vue +721 -466
  248. package/src/components/xform/form-designer/setting-panel/property-editor/labelColor-editor.vue +20 -11
  249. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +1 -1
  250. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +1 -1
  251. package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +1 -1
  252. package/src/components/xform/form-designer/setting-panel/property-editor/limit-editor.vue +1 -1
  253. package/src/components/xform/form-designer/setting-panel/property-editor/multiple-editor.vue +19 -14
  254. package/src/components/xform/form-designer/setting-panel/property-editor/multipleLimit-editor.vue +1 -1
  255. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +126 -50
  256. package/src/components/xform/form-designer/setting-panel/property-editor/oplog-editor.vue +31 -0
  257. package/src/components/xform/form-designer/setting-panel/property-editor/precision-editor.vue +1 -1
  258. package/src/components/xform/form-designer/setting-panel/property-editor/project-tag-editor.vue +349 -0
  259. package/src/components/xform/form-designer/setting-panel/property-editor/required-editor.vue +10 -6
  260. package/src/components/xform/form-designer/setting-panel/property-editor/requiredHint-editor.vue +3 -3
  261. package/src/components/xform/form-designer/setting-panel/property-editor/tempStorage-editor.vue +42 -0
  262. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +305 -19
  263. package/src/components/xform/form-designer/setting-panel/property-editor/validation-editor.vue +2 -2
  264. package/src/components/xform/form-designer/setting-panel/property-editor/validationHint-editor.vue +2 -2
  265. package/src/components/xform/form-designer/setting-panel/property-editor/wfFlag-editor.vue +372 -50
  266. package/src/components/xform/form-designer/setting-panel/property-editor/widgetShowRuleFlag-editor.vue +263 -0
  267. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +33 -11
  268. package/src/components/xform/form-designer/setting-panel/widgetPropertyDialogMixin.js +173 -0
  269. package/src/components/xform/form-designer/toolbar-panel/index.vue +267 -103
  270. package/src/components/xform/form-designer/toolbar-panel/indexMixin.js +1 -1
  271. package/src/components/xform/form-designer/widget-panel/index.vue +21 -1
  272. package/src/components/xform/form-designer/widget-panel/indexMixin.js +19 -18
  273. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +1733 -950
  274. package/src/components/xform/form-render/container-item/containerItemMixin.js +1237 -11
  275. package/src/components/xform/form-render/container-item/data-table-item.vue +209 -196
  276. package/src/components/xform/form-render/container-item/data-table-mixin.js +3404 -18
  277. package/src/components/xform/form-render/container-item/detail-item.vue +72 -48
  278. package/src/components/xform/form-render/container-item/detail-pane-item.vue +17 -3
  279. package/src/components/xform/form-render/container-item/grid-col-item.vue +10 -3
  280. package/src/components/xform/form-render/container-item/grid-item.vue +1 -1
  281. package/src/components/xform/form-render/container-item/list-h5-item.vue +1118 -403
  282. package/src/components/xform/form-render/container-item/tab-item.vue +62 -25
  283. package/src/components/xform/form-render/container-item/table-cell-item.vue +38 -32
  284. package/src/components/xform/form-render/container-item/table-item.vue +4 -2
  285. package/src/components/xform/form-render/container-item/table2-cell-item.vue +53 -34
  286. package/src/components/xform/form-render/container-item/table2-item.vue +182 -91
  287. package/src/components/xform/form-render/container-item/tree-item.vue +32 -11
  288. package/src/components/xform/form-render/dynamicDialogRender.js +1 -1
  289. package/src/components/xform/form-render/index.vue +77 -20
  290. package/src/components/xform/form-render/indexMixin.js +3719 -12
  291. package/src/components/xform/form-render/refMixin.js +3 -3
  292. package/src/components/xform/lang/zh-CN.js +29 -4
  293. package/src/components/xform/mixins/defaultHandle.js +367 -2
  294. package/src/components/xform/mixins/scriptHttp.js +3 -1
  295. package/src/components/xform/utils/emitter.js +4 -4
  296. package/src/components/xform/utils/formHttp.js +162 -0
  297. package/src/components/xform/utils/format.js +41 -34
  298. package/src/components/xform/utils/formula-util.js +969 -0
  299. package/src/components/xform/utils/smart-vue-i18n/index.js +2 -1
  300. package/src/components/xform/utils/util.js +1475 -1
  301. package/src/components/xform/utils/validators.js +2 -5
  302. package/src/components/xform/utils/vue2js-generator.js +2 -2
  303. package/src/components/xhsPrint/index.js +44 -1
  304. package/src/components/xhsPrint/mixins.js +269 -1
  305. package/src/directive/LimitNumber/index.js +125 -1
  306. package/src/directive/el-dialog-center/index.js +34 -1
  307. package/src/directive/el-drag-dialog/drag.js +86 -1
  308. package/src/directive/el-readonly/index.js +15 -1
  309. package/src/directive/permission/hasPermi.js +34 -1
  310. package/src/index.js +215 -190
  311. package/src/lang/index.js +56 -51
  312. package/src/lang/locale/en/login.js +27 -0
  313. package/src/lang/locale/zh/login.js +26 -0
  314. package/src/layout/components/AppMain.vue +8 -1
  315. package/src/layout/components/Sidebar/default.vue +1604 -1222
  316. package/src/layout/components/Sidebar/index.vue +6 -1
  317. package/src/layout/components/TagsView/index.vue +43 -12
  318. package/src/layout/components/createCompany/createCompanyDialog.vue +157 -0
  319. package/src/layout/components/extractedCode/createDialog.vue +92 -0
  320. package/src/layout/components/extractedCode/queryDialog.vue +103 -0
  321. package/src/layout/components/extractedCode/viewDialog.vue +207 -0
  322. package/src/layout/components/langTool.vue +33 -30
  323. package/src/layout/components/watermark/index.vue +83 -0
  324. package/src/layout/defaultLayout.vue +17 -9
  325. package/src/mixins/selectDialog/index.js +266 -1
  326. package/src/mixins/tableTree/index.js +199 -4
  327. package/src/mixins/wf/index.js +33 -1
  328. package/src/permission.js +135 -18
  329. package/src/resources/js/base/common.js +109 -109
  330. package/src/router/index.js +4 -7
  331. package/src/router/modules/customer.js +12 -18
  332. package/src/router/modules/system.js +4 -0
  333. package/src/store/config/index.js +83 -14
  334. package/src/store/getters.js +4 -1
  335. package/src/store/modules/permission.js +46 -41
  336. package/src/store/modules/settings.js +1 -1
  337. package/src/store/modules/tagsView.js +5 -8
  338. package/src/store/modules/user.js +367 -16
  339. package/src/utils/aes.js +2 -1
  340. package/src/utils/auth.js +1 -1
  341. package/src/utils/global.js +1 -1
  342. package/src/utils/index.js +2 -3
  343. package/src/utils/keepAlive.js +1 -1
  344. package/src/utils/pddLog.js +92 -0
  345. package/src/utils/pdfUtil.js +71 -0
  346. package/src/utils/request.js +1 -1
  347. package/src/utils/vab.js +1283 -27
  348. package/src/utils/validate.js +1 -1
  349. package/src/utils/wf.js +4 -4
  350. package/src/views/bd/setting/bd_attach_setting/edit.vue +5 -5
  351. package/src/views/bd/setting/bd_attach_setting/list.vue +28 -55
  352. package/src/views/bd/setting/bd_attach_setting/mixins/dialog.js +84 -1
  353. package/src/views/bd/setting/bd_attach_setting/mixins/edit.js +116 -5
  354. package/src/views/bd/setting/bd_attach_setting/mixins/list.js +239 -1
  355. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -0
  356. package/src/views/bd/setting/bd_company_env/edit.vue +193 -0
  357. package/src/views/bd/setting/bd_company_env/list.vue +175 -0
  358. package/src/views/bd/setting/config_manage/list.vue +83 -0
  359. package/src/views/bd/setting/formVersion/button.vue +55 -0
  360. package/src/views/bd/setting/formVersion/compareDialog.vue +287 -0
  361. package/src/views/bd/setting/formVersion/fieldCompare.vue +54 -0
  362. package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +400 -0
  363. package/src/views/bd/setting/formVersion/link.vue +58 -0
  364. package/src/views/bd/setting/formVersion/preformDialog.vue +86 -0
  365. package/src/views/bd/setting/formVersion/reverButton.vue +82 -0
  366. package/src/views/bd/setting/form_import_log/edit.vue +130 -0
  367. package/src/views/bd/setting/form_import_log/list.vue +211 -0
  368. package/src/views/bd/setting/form_script/edit.vue +196 -74
  369. package/src/views/bd/setting/form_script/edit1.vue +410 -187
  370. package/src/views/bd/setting/form_script/form_list.vue +118 -37
  371. package/src/views/bd/setting/form_script/list.vue +90 -21
  372. package/src/views/bd/setting/form_script/list1.vue +200 -118
  373. package/src/views/bd/setting/form_script/mixins/dialog.js +130 -1
  374. package/src/views/bd/setting/form_script/mixins/edit.js +265 -7
  375. package/src/views/bd/setting/form_script/mixins/edit1.js +259 -9
  376. package/src/views/bd/setting/form_script/mixins/form_list.js +322 -14
  377. package/src/views/bd/setting/form_script/mixins/list.js +278 -4
  378. package/src/views/bd/setting/form_script/mixins/list1.js +480 -14
  379. package/src/views/bd/setting/form_script/mixins/list2.js +10 -1
  380. package/src/views/bd/setting/form_script/mixins/otherAuthDialog.js +194 -0
  381. package/src/views/bd/setting/form_script/mixins/preformDialog.js +34 -1
  382. package/src/views/bd/setting/form_script/otherAuthDialog.vue +83 -0
  383. package/src/views/bd/setting/form_template/batchWfObjConfigDialog.vue +2 -2
  384. package/src/views/bd/setting/form_template/edit.vue +355 -184
  385. package/src/views/bd/setting/form_template/formDesignerDialog.vue +171 -0
  386. package/src/views/bd/setting/form_template/list.vue +296 -214
  387. package/src/views/bd/setting/form_template/mixins/batchWfObjConfigDialog.js +279 -1
  388. package/src/views/bd/setting/form_template/mixins/dialog.js +103 -1
  389. package/src/views/bd/setting/form_template/mixins/edit.js +277 -9
  390. package/src/views/bd/setting/form_template/mixins/editWfObjConfigDialog.js +92 -1
  391. package/src/views/bd/setting/form_template/mixins/ftHistoryDialog.js +91 -1
  392. package/src/views/bd/setting/form_template/mixins/itemEdit.js +104 -1
  393. package/src/views/bd/setting/form_template/mixins/itemList.js +234 -1
  394. package/src/views/bd/setting/form_template/mixins/list.js +672 -22
  395. package/src/views/bd/setting/form_template/mixins/list2.js +411 -0
  396. package/src/views/bd/setting/form_template/mixins/otherAuthDialog.js +193 -0
  397. package/src/views/bd/setting/form_template/mixins/preformDialog.js +28 -3
  398. package/src/views/bd/setting/form_template/mixins/wf_list.js +421 -3
  399. package/src/views/bd/setting/form_template/otherAuthDialog.vue +83 -0
  400. package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +2 -2
  401. package/src/views/bd/setting/form_template/wf_list.vue +161 -127
  402. package/src/views/bd/setting/logic_param/edit.vue +146 -0
  403. package/src/views/bd/setting/logic_param/edit1.vue +106 -0
  404. package/src/views/bd/setting/logic_param/edit2.vue +139 -0
  405. package/src/views/bd/setting/logic_param/list.vue +74 -0
  406. package/src/views/bd/setting/logic_param/list1.vue +12 -0
  407. package/src/views/bd/setting/logic_param/list2.vue +12 -0
  408. package/src/views/bd/setting/logic_param/mixins/edit.js +93 -0
  409. package/src/views/bd/setting/logic_param/mixins/list.js +376 -0
  410. package/src/views/bd/setting/menu_kind/list.vue +172 -83
  411. package/src/views/bd/setting/menu_kind/mixins/authDialog.js +300 -7
  412. package/src/views/bd/setting/menu_kind/mixins/dialog.js +139 -1
  413. package/src/views/bd/setting/menu_kind/mixins/list.js +201 -1
  414. package/src/views/bd/setting/push_data/edit.vue +139 -0
  415. package/src/views/bd/setting/push_data/list.vue +283 -0
  416. package/src/views/bd/setting/push_data_h/edit.vue +153 -0
  417. package/src/views/bd/setting/push_data_h/list.vue +293 -0
  418. package/src/views/bd/setting/request_async_setting/edit.vue +320 -0
  419. package/src/views/bd/setting/request_async_setting/list.vue +372 -0
  420. package/src/views/bd/setting/request_setting/edit.vue +300 -0
  421. package/src/views/bd/setting/request_setting/list.vue +311 -0
  422. package/src/views/bd/setting/table_model/edit.vue +1079 -426
  423. package/src/views/bd/setting/table_model/list.vue +213 -128
  424. package/src/views/bd/setting/table_model/mixins/dialog.js +71 -1
  425. package/src/views/bd/setting/table_model/mixins/edit.js +1309 -13
  426. package/src/views/bd/setting/table_model/mixins/list.js +429 -2
  427. package/src/views/bd/setting/table_model/mixins/otherAuthDialog.js +201 -0
  428. package/src/views/bd/setting/table_model/mixins/zdDialog.js +114 -3
  429. package/src/views/bd/setting/table_model/otherAuthDialog.vue +83 -0
  430. package/src/views/bd/setting/utils/index.js +60 -1
  431. package/src/views/user/access_log/list.vue +418 -349
  432. package/src/views/user/area/dialog.vue +223 -117
  433. package/src/views/user/area/list.vue +318 -0
  434. package/src/views/user/common_attribute/list.vue +4 -1
  435. package/src/views/user/company_info/dialog.vue +195 -163
  436. package/src/views/user/extend_datasource/dialog.vue +3 -0
  437. package/src/views/user/extend_datasource/edit.vue +2 -1
  438. package/src/views/user/extend_datasource/list.vue +3 -0
  439. package/src/views/user/fieldTranslation/editDialog.vue +8 -8
  440. package/src/views/user/fieldTranslation/list.vue +33 -33
  441. package/src/views/user/form/vform/designer.vue +790 -749
  442. package/src/views/user/form/vform/out_render.vue +1 -1
  443. package/src/views/user/form/vform/render.vue +67 -37
  444. package/src/views/user/form/view/edit.vue +38 -37
  445. package/src/views/user/form/view/list.vue +270 -49
  446. package/src/views/user/home/default.vue +1117 -979
  447. package/src/views/user/home/dev.vue +29 -0
  448. package/src/views/user/home/index.vue +18 -7
  449. package/src/views/user/login/default.vue +165 -36
  450. package/src/views/user/login/index.vue +4 -6
  451. package/src/views/user/login/indexMixin.js +329 -118
  452. package/src/views/user/menu/list.vue +27 -1
  453. package/src/views/user/notify_message/dialog.vue +44 -22
  454. package/src/views/user/notify_template/edit.vue +188 -187
  455. package/src/views/user/notify_template/edit2.vue +176 -0
  456. package/src/views/user/notify_template/list.vue +4 -1
  457. package/src/views/user/notify_template/list2.vue +190 -0
  458. package/src/views/user/outLink/form_view.vue +211 -211
  459. package/src/views/user/outLink/index.vue +67 -11
  460. package/src/views/user/position/list.vue +112 -72
  461. package/src/views/user/project_tag/dialog.vue +9 -4
  462. package/src/views/user/project_tag/edit.vue +2 -2
  463. package/src/views/user/project_tag/list.vue +9 -4
  464. package/src/views/user/request_setting/edit.vue +258 -0
  465. package/src/views/user/request_setting/list.vue +248 -0
  466. package/src/views/user/role/authConfig.vue +89 -0
  467. package/src/views/user/role/dialog.vue +70 -48
  468. package/src/views/user/role/edit.vue +609 -429
  469. package/src/views/user/role/list.vue +4 -4
  470. package/src/views/user/sale_org/dialog.vue +1 -1
  471. package/src/views/user/sale_org/list.vue +4 -1
  472. package/src/views/user/system_notice/infoDialog.vue +2 -1
  473. package/src/views/user/user/dialog.vue +46 -23
  474. package/src/views/user/user/edit.vue +1391 -1021
  475. package/src/views/user/user/form_dialog.vue +158 -0
  476. package/src/views/user/user/form_info.vue +210 -0
  477. package/src/views/user/user/info.vue +253 -140
  478. package/src/views/user/user/list.vue +652 -563
  479. package/src/views/user/user/modifyPasswordDialog.vue +64 -53
  480. package/src/views/user/wf/wfReport/index.vue +619 -0
  481. package/src/views/user/wf/wf_auto_submit_data/list.vue +2 -0
  482. package/src/views/user/wf/wf_manage/list.vue +379 -250
  483. package/src/views/user/wf/wf_manage/list2.vue +854 -0
  484. package/src/views/user/wf/wf_manage/wfContentDialog.vue +25 -22
  485. package/src/views/user/wf/wf_obj_config/importItemDialog.vue +109 -0
  486. package/src/views/user/wf/wf_obj_config/itemEdit.vue +25 -1
  487. package/src/views/user/wf/wf_obj_config/list.vue +114 -9
  488. package/src/views/user/wf/wf_transfer_setting/edit.vue +282 -0
  489. package/src/views/user/wf/wf_transfer_setting/list.vue +319 -0
  490. package/src/views/user/workbench_menu/list.vue +555 -0
  491. package/src/components/xform/form-render/container-item/list-h5-item2.vue +0 -1347
@@ -1,214 +1,291 @@
1
1
  <template>
2
- <div>
3
- <el-dialog
4
- custom-class="dialog-style list-dialog"
5
- :title="i18nt('designer.setting.tableColEdit')"
6
- :visible.sync="showDialog"
7
- :modal="false"
8
- :show-close="!0"
9
- :close-on-click-modal="!1"
10
- :close-on-press-escape="!1"
11
- :destroy-on-close="!0"
12
- top="5vh"
13
- width="1220px"
14
- v-dialog-drag
15
- @closed="closeHandle"
16
- >
17
- <div class="cont">
18
- <el-table
19
- ref="singleTable"
20
- width="100%"
21
- :data="tableData"
22
- height="500"
23
- border=""
24
- row-key="columnId"
25
- stripe=""
26
- :tree-props="{ children: 'children' }"
27
- default-expand-all
2
+ <el-dialog
3
+ custom-class="dialog-style list-dialog"
4
+ :title="i18nt('designer.setting.tableColEdit')"
5
+ :visible.sync="showDialog"
6
+ :modal="false"
7
+ :show-close="!0"
8
+ :close-on-click-modal="!1"
9
+ :close-on-press-escape="!1"
10
+ :destroy-on-close="!0"
11
+ top="5vh"
12
+ width="1220px"
13
+ v-dialog-drag
14
+ :before-close="closeHandle"
15
+ >
16
+ <div class="cont">
17
+ <el-table
18
+ ref="singleTable"
19
+ width="100%"
20
+ :data="tableData"
21
+ height="500"
22
+ border=""
23
+ row-key="columnId"
24
+ stripe=""
25
+ :tree-props="{ children: 'children' }"
26
+ default-expand-all
27
+ v-loading="pictLoading"
28
+ element-loading-background="rgba(0, 0, 0, 0)"
29
+ element-loading-text="数据正在加载中"
30
+ element-loading-spinner="el-icon-loading"
31
+ >
32
+ <el-table-column label="" width="80" fixed="left">
33
+ <template #default="scope">
34
+ <span>{{ scope.$index + 1 }}</span>
35
+ </template>
36
+ </el-table-column>
37
+ <el-table-column label="" width="35" fixed="left"
38
+ ><i class="el-icon-s-operation drag-option"></i>
39
+ </el-table-column>
40
+ <el-table-column
41
+ :label="i18nt('designer.setting.columnLabel')"
42
+ width="150"
43
+ prop="label"
44
+ fixed="left"
28
45
  >
29
- <el-table-column label="" min-width="80" fixed="left">
30
- <template slot-scope="scope">
31
- <span>{{ scope.$index + 1 }}</span>
32
- </template>
33
- </el-table-column>
34
- <el-table-column label="" width="35" fixed="left"><i class="el-icon-s-operation drag-option"></i>
35
- </el-table-column>
36
- <el-table-column :label="i18nt('designer.setting.columnLabel')" width="150" prop="label" fixed="left">
37
- <template slot-scope="scope">
38
- <el-input v-model="scope.row.label"></el-input>
39
- </template>
40
- </el-table-column>
41
- <el-table-column :label="i18nt('designer.setting.columnName')" width="150" prop="prop">
42
- <template slot-scope="scope">
43
- <el-input v-model="scope.row.prop" :disabled="'editAttachment' == scope.row.formatS"></el-input>
44
- </template>
45
- </el-table-column>
46
- <el-table-column :label="i18nt('designer.setting.columnWidth')" width="100" prop="width">
47
- <template slot-scope="scope">
48
- <el-input v-model="scope.row.width"></el-input>
49
- </template>
50
- </el-table-column>
51
- <el-table-column :label="i18nt('designer.setting.visibleColumn')" width="70" prop="show">
52
- <template slot-scope="scope">
53
- <el-switch v-model="scope.row.show"></el-switch>
54
- </template>
55
- </el-table-column>
56
- <el-table-column :label="i18nt('必填')" width="70" prop="required">
57
- <template slot-scope="scope">
58
- <el-switch v-model="scope.row.required"></el-switch>
59
- </template>
60
- </el-table-column>
61
- <el-table-column :label="i18nt('designer.setting.sortableColumn')" width="70" prop="sortable">
62
- <template slot-scope="scope">
63
- <el-switch v-model="scope.row.sortable"></el-switch>
64
- </template>
65
- </el-table-column>
66
- <el-table-column :label="i18nt('designer.setting.fixedColumn')" width="100" prop="fixed">
67
- <template slot-scope="scope">
68
- <el-select v-model="scope.row.fixed" clearable>
69
- <el-option value="left">left</el-option>
70
- <el-option value="right">right</el-option>
71
- </el-select>
72
- </template>
73
- </el-table-column>
74
- <!-- <el-table-column :label="i18nt('designer.setting.alignTypeOfColumn')" width="100" prop="align">
75
- <template slot-scope="scope">
76
- <el-select v-model="scope.row.align">
77
- <el-option v-for="(e,index) in alignOptions" :key="index" :value="e.value" :label="e.label"></el-option>
78
- </el-select>
79
- </template>
80
- </el-table-column>-->
81
- <el-table-column :label="i18nt('designer.setting.formatOfColumn')" width="200" prop="formatS">
82
- <template slot-scope="scope">
83
- <el-select v-model="scope.row.formatS" @change="changeFormatS(scope.row)" clearable>
84
- <el-option-group :label="i18nt('designer.setting.customRenderGroup')">
85
- <el-option value="render" label="render"></el-option>
86
- </el-option-group>
87
- <el-option-group v-for="t in op" :key="t.label" :label="t.label">
88
- <el-option v-for="e in t.options" :key="e.value" :value="e.value" :label="e.label"></el-option>
89
- </el-option-group>
90
- </el-select>
91
- </template>
92
- </el-table-column>
93
- <el-table-column :label="i18nt('自定义表格列配置')" width="150">
94
- <template slot-scope="scope">
95
- <a href="javascript:void(0);" class="a-link link-oneLind"
96
- @click="openTableColumnConfigDialog(scope.row,scope.$index)">
97
- <span>{{ scope.row.tableColumnConfig }}</span>
98
- <i class="el-icon-edit"></i>
99
- </a>
100
- </template>
101
- </el-table-column>
102
- <el-table-column :label="i18nt('编辑下拉列')" width="70" prop="sortable">
103
- <template slot-scope="scope">
104
- <el-switch v-model="scope.row.treeNode"></el-switch>
105
- </template>
106
- </el-table-column>
107
- <el-table-column :label="i18nt('编辑插槽类型')" width="200" prop="editFormatS">
108
- <template slot-scope="scope">
109
- <el-select v-model="scope.row.editFormatS" @change="changeFormatS(scope.row)" clearable>
110
- <el-option v-for="e in editOp" :key="e.value" :value="e.value" :label="e.label"></el-option>
111
- </el-select>
112
- </template>
113
- </el-table-column>
114
- <el-table-column label="编辑插槽配置" width="70" align="center">
115
- <template slot-scope="scope">
116
- <el-button size="mini" plain="" round="" icon="el-icon-edit"
117
- @click="openEditFormatConfigDialog(scope.row,scope.$index)"
118
- :disabled="!scope.row.editFormatS"></el-button>
119
- </template>
120
- </el-table-column>
121
- <el-table-column :label="i18nt('导出类型')" width="200" prop="formatS">
122
- <template slot-scope="scope">
123
- <el-select v-model="scope.row.exportType" clearable>
124
- <el-option value="Image2" label="图片"></el-option>
125
- <el-option value="Number" label="数值"></el-option>
126
- </el-select>
127
- </template>
128
- </el-table-column>
129
- <el-table-column label="格式化配置" width="90" fixed="right" align="center">
130
- <template slot-scope="scope">
131
- <el-button size="mini" plain="" round="" icon="el-icon-edit"
132
- @click="openFormatConfigDialog(scope.row,scope.$index)"
133
- :disabled="!columnFormatMap[scope.row.formatS]"></el-button>
134
- </template>
135
- </el-table-column>
136
- <el-table-column :label="i18nt('designer.setting.renderFunction')" width="70" fixed="right" align="center">
137
- <template slot-scope="scope">
138
- <el-button :disabled="'render' !== scope.row.formatS" size="mini" plain="" round="" icon="el-icon-edit"
139
- @click="showRenderDialog(scope.row)"></el-button>
140
- </template>
141
- </el-table-column>
142
- <el-table-column label="操作" width="150" fixed="right">
143
- <template slot="header">
144
- <el-tooltip
145
- :hide-after="500"
146
- class="item"
147
- effect="dark"
148
- content="添加根节点"
149
- placement="top"
150
- >
151
- <el-button
152
- size="mini" type="" circle=""
153
- icon="el-icon-plus"
154
- @click="onAddRoot"
155
- />
156
- </el-tooltip>
157
- </template>
158
- <template #default="{ row, $index }">
159
- <el-tooltip
160
- :hide-after="hideAfter"
161
- :open-delay="openDelay"
162
- effect="dark"
163
- content="添加兄弟节点"
164
- placement="top"
165
- >
166
- <el-button
167
- size="mini" type="" circle=""
168
- icon="el-icon-plus"
169
- @click="onAddSibling(row, $index)"
170
- />
171
- </el-tooltip>
46
+ <template #default="scope">
47
+ <el-input
48
+ v-model="scope.row.label"
49
+ @change="changeRowLabel(scope.row)"
50
+ ></el-input>
51
+ </template>
52
+ </el-table-column>
53
+ <el-table-column
54
+ :label="i18nt('designer.setting.columnName')"
55
+ width="150"
56
+ prop="prop"
57
+ >
58
+ <template #default="scope">
59
+ <el-input
60
+ v-model="scope.row.prop"
61
+ @change="changeRowProp(scope.row)"
62
+ :disabled="'editAttachment' == scope.row.formatS"
63
+ ></el-input>
64
+ </template>
65
+ </el-table-column>
66
+ <el-table-column
67
+ :label="i18nt('designer.setting.columnWidth')"
68
+ width="100"
69
+ prop="width"
70
+ >
71
+ <template #default="scope">
72
+ <el-input v-model="scope.row.width"></el-input>
73
+ </template>
74
+ </el-table-column>
172
75
 
173
- <el-tooltip
174
- :hide-after="hideAfter"
175
- :open-delay="openDelay"
176
- effect="dark"
177
- content="添加子节点"
178
- placement="top"
179
- >
180
- <el-button
181
- size="mini" type="" circle=""
182
- icon="el-icon-circle-plus-outline"
183
- @click="onAddChild(row, $index)"
184
- />
185
- </el-tooltip>
186
- <el-tooltip
187
- :hide-after="hideAfter"
188
- :open-delay="openDelay"
189
- effect="dark"
190
- content="删除"
191
- placement="top"
76
+ <el-table-column :label="i18nt('必填')" width="70" prop="required">
77
+ <template #default="scope">
78
+ <el-switch
79
+ v-model="scope.row.required"
80
+ @change="changeRowRequired(scope.row)"
81
+ ></el-switch>
82
+ </template>
83
+ </el-table-column>
84
+ <el-table-column
85
+ :label="i18nt('designer.setting.fixedColumn')"
86
+ width="100"
87
+ prop="fixed"
88
+ >
89
+ <template #default="scope">
90
+ <el-select v-model="scope.row.fixed" clearable>
91
+ <el-option value="left">left</el-option>
92
+ <el-option value="right">right</el-option>
93
+ </el-select>
94
+ </template>
95
+ </el-table-column>
96
+ <el-table-column
97
+ :label="i18nt('designer.setting.formatOfColumn')"
98
+ width="200"
99
+ prop="formatS"
100
+ >
101
+ <template #default="scope">
102
+ <el-select
103
+ v-model="scope.row.formatS"
104
+ @change="changeFormatS(scope.row, false)"
105
+ clearable
106
+ >
107
+ <el-option-group
108
+ :label="i18nt('designer.setting.customRenderGroup')"
192
109
  >
193
- <el-button
194
- size="mini" type="" circle=""
195
- icon="el-icon-delete"
196
- @click="onDelete(row, $index)"
197
- />
198
- </el-tooltip>
199
- </template>
200
- </el-table-column>
201
- </el-table>
202
- </div>
203
- <div class="dialog-footer" slot="footer">
204
- <el-button @click="closeHandle" class="button-sty" icon="el-icon-close">
205
- {{ i18nt('designer.hint.cancel') }}
206
- </el-button>
207
- <el-button type="primary" @click="colSubmit" class="button-sty" icon="el-icon-check">
208
- {{ i18nt('designer.hint.confirm') }}
209
- </el-button>
210
- </div>
211
- </el-dialog>
110
+ <el-option value="render" label="render"></el-option>
111
+ </el-option-group>
112
+ <el-option-group v-for="t in op" :key="t.label" :label="t.label">
113
+ <el-option
114
+ v-for="e in t.options"
115
+ :key="e.value"
116
+ :value="e.value"
117
+ :label="e.label"
118
+ ></el-option>
119
+ </el-option-group>
120
+ </el-select>
121
+ </template>
122
+ </el-table-column>
123
+ <el-table-column label="格式化配置" width="90" align="center">
124
+ <template #default="scope">
125
+ <el-button
126
+ size="mini"
127
+ plain=""
128
+ round=""
129
+ icon="el-icon-edit"
130
+ @click="openFormatConfigDialog(scope.row, scope.$index)"
131
+ :disabled="
132
+ !columnFormatMap[scope.row.formatS] &&
133
+ 'widgetRender' !== scope.row.formatS &&
134
+ 'editTreeButtonGroup' !== scope.row.formatS
135
+ "
136
+ ></el-button>
137
+ </template>
138
+ </el-table-column>
139
+ <el-table-column
140
+ :label="i18nt('designer.setting.renderFunction')"
141
+ width="70"
142
+ align="center"
143
+ >
144
+ <template #default="scope">
145
+ <el-button
146
+ :disabled="'render' !== scope.row.formatS"
147
+ size="mini"
148
+ plain=""
149
+ round=""
150
+ icon="el-icon-edit"
151
+ @click="showRenderDialog(scope.row)"
152
+ ></el-button>
153
+ </template>
154
+ </el-table-column>
155
+ <el-table-column
156
+ :label="i18nt('designer.setting.visibleColumn')"
157
+ width="70"
158
+ prop="show"
159
+ >
160
+ <template #default="scope">
161
+ <el-switch v-model="scope.row.show"></el-switch>
162
+ </template>
163
+ </el-table-column>
164
+ <el-table-column
165
+ :label="i18nt('designer.setting.sortableColumn')"
166
+ width="70"
167
+ prop="sortable"
168
+ >
169
+ <template #default="scope">
170
+ <el-switch v-model="scope.row.sortable"></el-switch>
171
+ </template>
172
+ </el-table-column>
173
+ <el-table-column label="显示筛选" width="70" prop="filterable">
174
+ <template #default="scope">
175
+ <el-switch v-model="scope.row.filterable"></el-switch>
176
+ </template>
177
+ </el-table-column>
178
+ <el-table-column
179
+ label="编辑更多属性"
180
+ width="100"
181
+ align="center"
182
+ fixed="right"
183
+ >
184
+ <template #default="scope">
185
+ <el-button
186
+ size="mini"
187
+ plain=""
188
+ round=""
189
+ icon="el-icon-edit"
190
+ @click="openRowEditDialog(scope.row, scope.$index)"
191
+ ></el-button>
192
+ </template>
193
+ </el-table-column>
194
+ <el-table-column label="操作" width="150" fixed="right">
195
+ <template slot="header">
196
+ <el-tooltip
197
+ :hide-after="500"
198
+ class="item"
199
+ effect="dark"
200
+ content="添加根节点"
201
+ placement="top"
202
+ >
203
+ <el-button
204
+ size="mini"
205
+ type=""
206
+ circle=""
207
+ icon="el-icon-plus"
208
+ @click="onAddRoot"
209
+ />
210
+ </el-tooltip>
211
+ </template>
212
+ <template #default="{ row, $index }">
213
+ <el-tooltip
214
+ :hide-after="hideAfter"
215
+ :open-delay="openDelay"
216
+ effect="dark"
217
+ content="添加兄弟节点"
218
+ placement="top"
219
+ >
220
+ <el-button
221
+ size="mini"
222
+ type=""
223
+ circle=""
224
+ icon="el-icon-plus"
225
+ @click="onAddSibling(row, $index)"
226
+ />
227
+ </el-tooltip>
228
+
229
+ <el-tooltip
230
+ :hide-after="hideAfter"
231
+ :open-delay="openDelay"
232
+ effect="dark"
233
+ content="添加子节点"
234
+ placement="top"
235
+ >
236
+ <el-button
237
+ size="mini"
238
+ type=""
239
+ circle=""
240
+ icon="el-icon-circle-plus-outline"
241
+ @click="onAddChild(row, $index)"
242
+ />
243
+ </el-tooltip>
244
+ <el-tooltip
245
+ :hide-after="hideAfter"
246
+ :open-delay="openDelay"
247
+ effect="dark"
248
+ content="删除"
249
+ placement="top"
250
+ >
251
+ <el-button
252
+ size="mini"
253
+ type=""
254
+ circle=""
255
+ icon="el-icon-delete"
256
+ @click="onDelete(row, $index)"
257
+ />
258
+ </el-tooltip>
259
+ </template>
260
+ </el-table-column>
261
+ </el-table>
262
+ <columnRenderDialog
263
+ :column="currentTableColumn"
264
+ :sourceData="sourceData"
265
+ v-if="showColumnRenderDialog"
266
+ :visiable.sync="showColumnRenderDialog"
267
+ @confirm="confirmWidgetRenderDialog"
268
+ ></columnRenderDialog>
269
+ <editTreeButtonGroupConfigDialog
270
+ v-if="showEditTreeButtonGroupConfigDialog && editTreeButtonGroupRowData"
271
+ :visible.sync="showEditTreeButtonGroupConfigDialog"
272
+ :row="editTreeButtonGroupRowData"
273
+ @confirm="confirmEditTreeButtonGroupConfig"
274
+ />
275
+ </div>
276
+ <div class="dialog-footer" slot="footer">
277
+ <el-button @click="closeHandle" class="button-sty" icon="el-icon-close">
278
+ {{ i18nt("designer.hint.cancel") }}
279
+ </el-button>
280
+ <el-button
281
+ type="primary"
282
+ @click="colSubmit"
283
+ class="button-sty"
284
+ icon="el-icon-check"
285
+ >
286
+ {{ i18nt("designer.hint.confirm") }}
287
+ </el-button>
288
+ </div>
212
289
  <el-dialog
213
290
  v-if="showRenderDialogFlag"
214
291
  :title="i18nt('designer.setting.renderFunction')"
@@ -221,16 +298,35 @@
221
298
  :destroy-on-close="!0"
222
299
  v-dialog-drag
223
300
  top="7vh"
301
+ :append-to-body="true"
224
302
  >
225
- <el-alert type="info" :closable="!1" title="function customRender(params,h) {"/>
226
- <code-editor ref="dsResultEditor" mode="javascript" :readonly="!1" v-model="renderJson"></code-editor>
227
- <el-alert type="info" :closable="!1" title="}"/>
303
+ <el-alert
304
+ type="info"
305
+ :closable="!1"
306
+ title="function customRender(params,h) {"
307
+ />
308
+ <code-editor
309
+ ref="dsResultEditor"
310
+ mode="javascript"
311
+ :readonly="!1"
312
+ v-model="renderJson"
313
+ ></code-editor>
314
+ <el-alert type="info" :closable="!1" title="}" />
228
315
  <div class="dialog-footer" slot="footer">
229
- <el-button @click="showRenderDialogFlag = !1" class="button-sty" icon="el-icon-close">
230
- {{ i18nt('designer.hint.cancel') }}
316
+ <el-button
317
+ @click="showRenderDialogFlag = !1"
318
+ class="button-sty"
319
+ icon="el-icon-close"
320
+ >
321
+ {{ i18nt("designer.hint.cancel") }}
231
322
  </el-button>
232
- <el-button type="primary" @click="saveColumnRender" class="button-sty" icon="el-icon-check">
233
- {{ i18nt('designer.hint.confirm') }}
323
+ <el-button
324
+ type="primary"
325
+ @click="saveColumnRender"
326
+ class="button-sty"
327
+ icon="el-icon-check"
328
+ >
329
+ {{ i18nt("designer.hint.confirm") }}
234
330
  </el-button>
235
331
  </div>
236
332
  </el-dialog>
@@ -249,305 +345,689 @@
249
345
  top="5vh"
250
346
  >
251
347
  <div class="cont">
252
- <el-alert type="info" :closable="false" :title="tableColumnConfigHeader"></el-alert>
253
- <code-editor :mode="'javascript'" :readonly="false" v-model="tableColumnConfigCode"
254
- ref="ecEditor"></code-editor>
348
+ <el-alert
349
+ type="info"
350
+ :closable="false"
351
+ :title="tableColumnConfigHeader"
352
+ ></el-alert>
353
+ <code-editor
354
+ :mode="'javascript'"
355
+ :readonly="false"
356
+ v-model="tableColumnConfigCode"
357
+ ref="ecEditor"
358
+ ></code-editor>
255
359
  <el-alert type="info" :closable="false" title="}"></el-alert>
256
360
  </div>
257
361
  <div slot="footer" class="dialog-footer">
258
- <el-button @click="showTableColumnConfigDialog = false" class="button-sty" icon="el-icon-close">
259
- {{ i18nt('designer.hint.cancel') }}
362
+ <el-button
363
+ @click="showTableColumnConfigDialog = false"
364
+ class="button-sty"
365
+ icon="el-icon-close"
366
+ >
367
+ {{ i18nt("designer.hint.cancel") }}
260
368
  </el-button>
261
- <el-button type="primary" @click="saveTableColumnConfigDialog" class="button-sty" icon="el-icon-check">
262
- {{ i18nt('designer.hint.confirm') }}
369
+ <el-button
370
+ type="primary"
371
+ @click="saveTableColumnConfigDialog"
372
+ class="button-sty"
373
+ icon="el-icon-check"
374
+ >
375
+ {{ i18nt("designer.hint.confirm") }}
376
+ </el-button>
377
+ </div>
378
+ </el-dialog>
379
+ <el-dialog
380
+ :title="i18nt('designer.setting.editFormEventHandler')"
381
+ :visible.sync="showFormEventDialogFlag"
382
+ v-if="showFormEventDialogFlag"
383
+ :show-close="true"
384
+ custom-class="dialog-style list-dialog"
385
+ v-dialog-drag
386
+ :close-on-click-modal="false"
387
+ :close-on-press-escape="false"
388
+ :destroy-on-close="true"
389
+ :append-to-body="true"
390
+ :modal-append-to-body="true"
391
+ top="5vh"
392
+ >
393
+ <div class="cont">
394
+ <el-alert
395
+ type="info"
396
+ :closable="false"
397
+ :title="'form.' + eventParamsMap[curEventName]"
398
+ ></el-alert>
399
+ <code-editor
400
+ :mode="'javascript'"
401
+ :readonly="false"
402
+ v-model="formEventHandlerCode"
403
+ ref="ecEditor"
404
+ ></code-editor>
405
+ <el-alert type="info" :closable="false" title="}"></el-alert>
406
+ </div>
407
+ <div slot="footer" class="dialog-footer">
408
+ <el-button
409
+ @click="showFormEventDialogFlag = false"
410
+ class="button-sty"
411
+ icon="el-icon-close"
412
+ >
413
+ {{ i18nt("designer.hint.cancel") }}
414
+ </el-button>
415
+ <el-button
416
+ type="primary"
417
+ @click="saveFormEventHandler"
418
+ class="button-sty"
419
+ icon="el-icon-check"
420
+ >
421
+ {{ i18nt("designer.hint.confirm") }}
263
422
  </el-button>
264
423
  </div>
265
424
  </el-dialog>
266
- </div>
267
425
 
426
+ <el-dialog
427
+ custom-class="dialog-style list-dialog"
428
+ :title="i18nt('designer.setting.tableColEdit')"
429
+ :visible.sync="showRowEditDialog"
430
+ v-if="showRowEditDialog"
431
+ :modal="false"
432
+ :show-close="!0"
433
+ :close-on-click-modal="!1"
434
+ :close-on-press-escape="!1"
435
+ :destroy-on-close="!0"
436
+ top="5vh"
437
+ width="409px"
438
+ v-dialog-drag
439
+ >
440
+ <div class="cont">
441
+ <el-form :model="rowData" class="form-m2" label-position="top">
442
+ <el-form-item :label="i18nt('designer.setting.columnLabel')">
443
+ <el-input
444
+ v-model="rowData.label"
445
+ @change="changeRowLabel(rowData)"
446
+ ></el-input>
447
+ </el-form-item>
448
+ <el-form-item :label="i18nt('designer.setting.columnName')">
449
+ <el-input
450
+ v-model="rowData.prop"
451
+ @change="changeRowProp(rowData)"
452
+ :disabled="'editAttachment' == rowData.formatS"
453
+ ></el-input>
454
+ </el-form-item>
455
+ <el-form-item :label="i18nt('designer.setting.columnWidth')">
456
+ <el-input v-model="rowData.width"></el-input>
457
+ </el-form-item>
458
+ <el-form-item :label="i18nt('必填')">
459
+ <el-switch
460
+ v-model="rowData.required"
461
+ @change="changeRowRequired(rowData)"
462
+ ></el-switch>
463
+ </el-form-item>
464
+ <el-form-item :label="i18nt('designer.setting.fixedColumn')">
465
+ <el-select v-model="rowData.fixed" clearable>
466
+ <el-option value="left">left</el-option>
467
+ <el-option value="right">right</el-option>
468
+ </el-select>
469
+ </el-form-item>
470
+ <el-form-item :label="i18nt('designer.setting.formatOfColumn')">
471
+ <el-select
472
+ v-model="rowData.formatS"
473
+ @change="changeFormatS(rowData, false)"
474
+ clearable
475
+ >
476
+ <el-option-group
477
+ :label="i18nt('designer.setting.customRenderGroup')"
478
+ >
479
+ <el-option value="render" label="render"></el-option>
480
+ </el-option-group>
481
+ <el-option-group v-for="t in op" :key="t.label" :label="t.label">
482
+ <el-option
483
+ v-for="e in t.options"
484
+ :key="e.value"
485
+ :value="e.value"
486
+ :label="e.label"
487
+ ></el-option>
488
+ </el-option-group>
489
+ </el-select>
490
+ </el-form-item>
491
+ <el-form-item label="格式化配置">
492
+ <el-button
493
+ size="mini"
494
+ plain=""
495
+ round=""
496
+ icon="el-icon-edit"
497
+ @click="openFormatConfigDialog(rowData, rowDataIndex)"
498
+ :disabled="
499
+ !columnFormatMap[rowData.formatS] &&
500
+ 'widgetRender' !== rowData.formatS &&
501
+ 'editTreeButtonGroup' !== rowData.formatS
502
+ "
503
+ ></el-button>
504
+ </el-form-item>
505
+ <el-form-item :label="i18nt('designer.setting.renderFunction')">
506
+ <el-button
507
+ :disabled="'render' !== rowData.formatS"
508
+ size="mini"
509
+ plain=""
510
+ round=""
511
+ icon="el-icon-edit"
512
+ @click="showRenderDialog(rowData)"
513
+ ></el-button>
514
+ </el-form-item>
515
+ <el-form-item :label="i18nt('designer.setting.visibleColumn')">
516
+ <el-switch v-model="rowData.show"></el-switch>
517
+ </el-form-item>
518
+ <el-form-item :label="i18nt('designer.setting.sortableColumn')">
519
+ <el-switch v-model="rowData.sortable"></el-switch>
520
+ </el-form-item>
521
+ <el-form-item label="显示筛选">
522
+ <el-switch v-model="rowData.filterable"></el-switch>
523
+ </el-form-item>
524
+ <el-form-item :label="i18nt('明细行')">
525
+ <el-switch v-model="rowData.isItemLine"></el-switch>
526
+ </el-form-item>
527
+
528
+ <el-form-item :label="i18nt('下拉列')">
529
+ <el-switch v-model="rowData.treeNode"></el-switch>
530
+ </el-form-item>
531
+ <el-form-item :label="i18nt('自定义表格列配置')">
532
+ <a
533
+ href="javascript:void(0);"
534
+ class="a-link link-oneLind"
535
+ @click="openTableColumnConfigDialog(rowData, rowDataIndex)"
536
+ >
537
+ <span>{{ rowData.tableColumnConfig }}</span>
538
+ <i class="el-icon-edit"></i>
539
+ </a>
540
+ </el-form-item>
541
+ <el-form-item :label="i18nt('编辑插槽类型')">
542
+ <el-select
543
+ v-model="rowData.editFormatS"
544
+ @change="changeFormatS(rowData, true)"
545
+ clearable
546
+ >
547
+ <el-option
548
+ v-for="e in editOp"
549
+ :key="e.value"
550
+ :value="e.value"
551
+ :label="e.label"
552
+ ></el-option>
553
+ </el-select>
554
+ </el-form-item>
555
+ <el-form-item label="编辑插槽配置">
556
+ <el-button
557
+ size="mini"
558
+ plain=""
559
+ round=""
560
+ icon="el-icon-edit"
561
+ @click="openEditFormatConfigDialog(rowData, rowDataIndex)"
562
+ :disabled="!rowData.editFormatS"
563
+ ></el-button>
564
+ </el-form-item>
565
+ <el-form-item :label="i18nt('导出类型')">
566
+ <el-select v-model="rowData.exportType" clearable>
567
+ <el-option value="Image2" label="图片"></el-option>
568
+ <el-option value="Number" label="数值"></el-option>
569
+ </el-select>
570
+ </el-form-item>
571
+ <el-form-item :label="i18nt('表尾统计行类型')">
572
+ <el-select v-model="rowData.footerDataType" clearable>
573
+ <el-option value="1" label="合计"></el-option>
574
+ <el-option value="2" label="平均"></el-option>
575
+ <el-option value="3" label="自定义"></el-option>
576
+ </el-select>
577
+ </el-form-item>
578
+ <el-form-item label="表尾统计行配置">
579
+ <el-button
580
+ size="mini"
581
+ plain=""
582
+ round=""
583
+ icon="el-icon-edit"
584
+ @click="
585
+ editFormEventHandler(rowData, rowDataIndex, 'footerMethodConfg')
586
+ "
587
+ :disabled="rowData.footerDataType !== '3'"
588
+ ></el-button>
589
+ </el-form-item>
590
+ <el-form-item :label="i18nt('显示名称颜色')">
591
+ <el-select v-model="rowData.labelColor" clearable>
592
+ <el-option value="#e6a23c" label="橙"></el-option>
593
+ <el-option value="#2a6494" label="蓝"></el-option>
594
+ <el-option value="#30b08f" label="绿"></el-option>
595
+ <el-option value="#909399" label="灰"></el-option>
596
+ <el-option value="#ea5353" label="红"></el-option>
597
+ </el-select>
598
+ </el-form-item>
599
+ </el-form>
600
+ </div>
601
+ <div class="dialog-footer" slot="footer">
602
+ <el-button
603
+ @click="closeRowEditDialog"
604
+ class="button-sty"
605
+ icon="el-icon-close"
606
+ >
607
+ {{ i18nt("designer.hint.cancel") }}
608
+ </el-button>
609
+ <el-button
610
+ type="primary"
611
+ @click="submitRowEditDialog"
612
+ class="button-sty"
613
+ icon="el-icon-check"
614
+ >
615
+ {{ i18nt("designer.hint.confirm") }}
616
+ </el-button>
617
+ </div>
618
+ </el-dialog>
619
+ </el-dialog>
268
620
  </template>
269
621
  <script>
270
622
  import i18n from "../../../../../../components/xform/utils/i18n";
271
623
  import Sortable from "sortablejs";
272
- import {generateId} from "../../../../../../components/xform/utils/util";
624
+ import {
625
+ generateId,
626
+ loopHandleWidget,
627
+ deepClone,
628
+ columnFormatMap,
629
+ } from "../../../../../../components/xform/utils/util";
630
+ import columnRenderDialog from "./columnRenderDialog.vue";
631
+ import editTreeButtonGroupConfigDialog from "./edit-tree-button-group-config-dialog.vue";
632
+
633
+ let businessOptions = [
634
+ {
635
+ value: "_createBy",
636
+ label: "创建人",
637
+ },
638
+ {
639
+ value: "_modifyBy",
640
+ label: "更新人",
641
+ },
642
+ {
643
+ value: "create_date",
644
+ label: "创建时间",
645
+ },
646
+ {
647
+ value: "modify_date",
648
+ label: "更新时间",
649
+ },
650
+ ];
651
+ let userFields = ["_createBy", "_modifyBy", "create_date", "modify_date"];
273
652
 
274
653
  export default {
275
654
  mixins: [i18n],
276
655
  props: {
277
656
  designer: Object,
278
657
  selectedWidget: Object,
279
- optionModel: Object
658
+ optionModel: Object,
280
659
  },
281
- components: {},
282
- inject: ['openWidgetPropertyDialog'],
660
+ components: { columnRenderDialog, editTreeButtonGroupConfigDialog },
661
+ inject: ["openWidgetPropertyDialog"],
283
662
  data() {
284
663
  return {
664
+ pictLoading: true,
285
665
  tableColumnConfigTitle: null,
286
666
  showTableColumnConfigDialog: false,
287
667
  tableColumnConfigHeader: null,
288
668
  tableColumnConfigCode: null,
289
669
  showDialog: true,
290
670
  dialogVisible: true,
671
+ showEditTreeButtonGroupConfigDialog: false,
672
+ currentEditTreeButtonGroupRow: null,
673
+ editTreeButtonGroupRowData: null,
291
674
  alignOptions: [
292
675
  {
293
- value: 'left',
294
- label: 'left'
676
+ value: "left",
677
+ label: "left",
295
678
  },
296
679
  {
297
- value: 'center',
298
- label: 'center'
680
+ value: "center",
681
+ label: "center",
299
682
  },
300
683
  {
301
- value: 'right',
302
- label: 'right'
303
- }
684
+ value: "right",
685
+ label: "right",
686
+ },
304
687
  ],
688
+ businessOptions,
689
+ userFields,
305
690
  op: [
306
691
  {
307
- label: 'edit Format',
692
+ label: "edit Format",
308
693
  options: [
309
694
  {
310
- value: 'editInput',
311
- label: '文本输入框'
695
+ value: "editInput",
696
+ label: "文本输入框",
312
697
  },
313
698
  {
314
- value: 'editNumber',
315
- label: '数字输入框'
699
+ value: "editNumber",
700
+ label: "数字输入框",
316
701
  },
317
702
  {
318
- value: 'editDate',
319
- label: '日期输入框'
703
+ value: "editDate",
704
+ label: "日期输入框",
320
705
  },
321
706
  {
322
- value: 'editSelect',
323
- label: '下拉框'
707
+ value: "textarea",
708
+ label: "多行文本输入框",
324
709
  },
325
710
  {
326
- value: 'editAttachment',
327
- label: '附件'
711
+ value: "editSelect",
712
+ label: "下拉框",
328
713
  },
329
714
  {
330
- value: 'editSearch',
331
- label: '搜索框'
715
+ value: "checkbox",
716
+ label: "复选框",
332
717
  },
333
718
  {
334
- value: 'editStatus',
335
- label: '状态'
719
+ value: "radio",
720
+ label: "单选框",
336
721
  },
337
722
  {
338
- value: 'editDelete',
339
- label: '删除按钮'
723
+ value: "editAttachment",
724
+ label: "附件",
340
725
  },
341
726
  {
342
- value: 'editButton',
343
- label: '查看按钮'
727
+ value: "editSearch",
728
+ label: "搜索框",
344
729
  },
345
730
  {
346
- value: 'aText',
347
- label: '超链接文本'
731
+ value: "editStatus",
732
+ label: "状态",
348
733
  },
349
734
  {
350
- value: 'aLink',
351
- label: '超链接按钮'
735
+ value: "text",
736
+ label: "文本",
352
737
  },
353
738
  {
354
- value: 'button',
355
- label: '按钮'
739
+ value: "aText",
740
+ label: "超链接文本",
356
741
  },
357
742
  {
358
- value: 'editTreeButtonGroup',
359
- label: '编辑行按钮组'
360
- }
361
- ]
743
+ value: "widgetRender",
744
+ label: "自定义组件",
745
+ },
746
+ ],
362
747
  },
363
748
  {
364
- label: '树控件',
749
+ label: "按钮控件",
365
750
  options: [
366
751
  {
367
- value: 'addSiblingEditRow',
368
- label: '新增兄弟节点'
752
+ value: "dropdown",
753
+ label: "下拉按钮",
369
754
  },
370
755
  {
371
- value: 'addChildTreeRow',
372
- label: '新增子节点'
756
+ value: "editDelete",
757
+ label: "删除按钮",
373
758
  },
374
759
  {
375
- value: 'moveUpRow',
376
- label: '上移'
760
+ value: "editButton",
761
+ label: "查看按钮",
377
762
  },
378
763
  {
379
- value: 'moveDownRow',
380
- label: '下移'
764
+ value: "aLink",
765
+ label: "超链接按钮",
381
766
  },
382
767
  {
383
- value: 'removeTreeRow',
384
- label: '删除树节点'
385
- }
386
- ]
768
+ value: "button",
769
+ label: "按钮",
770
+ },
771
+ {
772
+ value: "editTreeButtonGroup",
773
+ label: "编辑行按钮组",
774
+ },
775
+ ],
387
776
  },
388
777
  {
389
- label: 'Date Format',
778
+ label: "树控件",
390
779
  options: [
391
780
  {
392
- value: 'd1',
393
- label: 'yyyy-MM-dd'
781
+ value: "addSiblingEditRow",
782
+ label: "新增兄弟节点",
394
783
  },
395
784
  {
396
- value: 'd2',
397
- label: 'yyyy/MM/dd'
785
+ value: "addChildTreeRow",
786
+ label: "新增子节点",
398
787
  },
399
788
  {
400
- value: 'd3',
401
- label: 'yyyy年MM月dd日'
789
+ value: "moveUpRow",
790
+ label: "上移",
402
791
  },
403
792
  {
404
- value: 'd4',
405
- label: 'yyyy-MM-dd HH:mm:ss'
793
+ value: "moveDownRow",
794
+ label: "下移",
406
795
  },
407
796
  {
408
- value: 'd5',
409
- label: 'yyyy-MM-dd hh:mm:ss'
410
- }
411
- ]
797
+ value: "removeTreeRow",
798
+ label: "删除树节点",
799
+ },
800
+ ],
801
+ },
802
+
803
+ {
804
+ label: "业务模块",
805
+ options: businessOptions,
412
806
  },
413
807
  {
414
- label: 'Number Format',
808
+ label: "日期格式化",
415
809
  options: [
416
810
  {
417
- value: 'n1',
418
- label: '###,###,###,##0.######'
811
+ value: "d1",
812
+ label: "yyyy-MM-dd",
419
813
  },
420
814
  {
421
- value: 'n2',
422
- label: '###,###,###,##0.00####'
815
+ value: "d2",
816
+ label: "yyyy/MM/dd",
423
817
  },
424
818
  {
425
- value: 'n3',
426
- label: '###,###,###,##0.000000'
819
+ value: "d3",
820
+ label: "yyyy年MM月dd日",
427
821
  },
428
822
  {
429
- value: 'n4',
430
- label: '###,###,###,##0.000'
823
+ value: "d4",
824
+ label: "yyyy-MM-dd HH:mm:ss",
431
825
  },
432
826
  {
433
- value: 'n5',
434
- label: '###,###,###,##0.00'
827
+ value: "d5",
828
+ label: "yyyy-MM-dd hh:mm:ss",
435
829
  },
830
+ ],
831
+ },
832
+ {
833
+ label: "数字格式化",
834
+ options: [
436
835
  {
437
- value: 'n6',
438
- label: '###,###,###,##0'
836
+ value: "n1",
837
+ label: "###,###,###,##0.######",
439
838
  },
440
839
  {
441
- value: 'n7',
442
- label: '###,##0.00##%'
443
- }
444
- ]
445
- }
840
+ value: "n2",
841
+ label: "###,###,###,##0.00####",
842
+ },
843
+ {
844
+ value: "n3",
845
+ label: "###,###,###,##0.000000",
846
+ },
847
+ {
848
+ value: "n4",
849
+ label: "###,###,###,##0.000",
850
+ },
851
+ {
852
+ value: "n5",
853
+ label: "###,###,###,##0.00",
854
+ },
855
+ {
856
+ value: "n6",
857
+ label: "###,###,###,##0",
858
+ },
859
+ {
860
+ value: "n7",
861
+ label: "###,##0.00##%",
862
+ },
863
+ ],
864
+ },
446
865
  ],
447
866
  editOp: [
448
867
  {
449
- value: 'editInput',
450
- label: '文本输入框'
868
+ value: "editInput",
869
+ label: "文本输入框",
451
870
  },
452
871
  {
453
- value: 'editNumber',
454
- label: '数字输入框'
872
+ value: "editNumber",
873
+ label: "数字输入框",
455
874
  },
456
875
  {
457
- value: 'editDate',
458
- label: '日期输入框'
876
+ value: "editDate",
877
+ label: "日期输入框",
459
878
  },
460
879
  {
461
- value: 'editSelect',
462
- label: '下拉框'
880
+ value: "editSelect",
881
+ label: "下拉框",
463
882
  },
464
883
  {
465
- value: 'editAttachment',
466
- label: '附件'
884
+ value: "editAttachment",
885
+ label: "附件",
467
886
  },
468
887
  {
469
- value: 'editSearch',
470
- label: '搜索框'
471
- }
888
+ value: "editSearch",
889
+ label: "搜索框",
890
+ },
472
891
  ],
473
892
  showRenderDialogFlag: !1,
474
- renderJson: '',
893
+ renderJson: "",
475
894
  currentTableColumn: null,
895
+ sourceData: null,
476
896
 
477
897
  hideAfter: 1500,
478
898
  openDelay: 500,
479
- tableData: [],//树形结构数据转的数组
899
+ tableData: [], //树形结构数据转的数组
480
900
  tableDataArray: [],
481
901
  dragSort: null,
482
- columnFormatMap: {
483
- editInput: 'input',
484
- editNumber: 'number',
485
- editDate: 'date',
486
- editSelect: 'select',
487
- editSearch: 'vabsearch',
488
- editAttachment: 'baseAttachment',
489
- editStatus: 'status',
490
- aText: 'a-text',
491
- aLink: 'a-link',
492
- editDelete: 'a-link',
493
- editButton: 'a-link',
494
- button: 'button',
495
- addSiblingEditRow: 'a-link',
496
- addChildTreeRow: 'a-link',
497
- moveUpRow: 'a-link',
498
- moveDownRow: 'a-link',
499
- removeTreeRow: 'a-link'
902
+ columnFormatMap,
903
+
904
+ showFormEventDialogFlag: false,
905
+ formEventHandlerCode: "",
906
+ curEventName: "",
907
+ curEventRow: null,
908
+
909
+ eventParamsMap: {
910
+ footerMethodConfg: "footerMethodConfg(dataId,formCode,param) {",
500
911
  },
501
- }
912
+
913
+ showColumnRenderDialog: false,
914
+
915
+ editRowData: null,
916
+ rowData: null,
917
+ rowDataIndex: 0,
918
+ showRowEditDialog: false,
919
+ };
502
920
  },
503
921
  beforeDestroy() {
504
- if (this.dragSort) this.dragSort.destroy()
505
- },
506
- created() {
507
-
922
+ if (this.dragSort) this.dragSort.destroy();
508
923
  },
924
+ created() {},
509
925
  mounted() {
510
926
  this.init();
511
927
  },
512
928
  methods: {
929
+ editFormEventHandler(row, index, eventName) {
930
+ this.curEventRow = row;
931
+ this.curEventName = eventName;
932
+ this.curEventIndex = index;
933
+ this.formEventHandlerCode = row[eventName];
934
+ this.showFormEventDialogFlag = true;
935
+ },
936
+
937
+ saveFormEventHandler() {
938
+ const codeHints = this.$refs.ecEditor.getEditorAnnotations();
939
+ let syntaxErrorFlag = false;
940
+ if (!!codeHints && codeHints.length > 0) {
941
+ codeHints.forEach((chItem) => {
942
+ if (chItem.type === "error") {
943
+ syntaxErrorFlag = true;
944
+ }
945
+ });
946
+
947
+ if (syntaxErrorFlag) {
948
+ this.$message.error(
949
+ this.i18nt("designer.setting.syntaxCheckWarning")
950
+ );
951
+ return;
952
+ }
953
+ }
954
+ this.curEventRow[this.curEventName] = this.formEventHandlerCode;
955
+ this.showFormEventDialogFlag = false;
956
+ },
513
957
  init() {
514
- this.tableData = this.$baseLodash.cloneDeep(this.optionModel.tableColumns);
515
- this.$nextTick(() => {
958
+ setTimeout(() => {
959
+ this.tableData = this.$baseLodash.cloneDeep(
960
+ this.optionModel.tableColumns
961
+ );
962
+ this.$nextTick(() => {
963
+ this.rowDrop();
964
+ setTimeout(() => {
965
+ this.pictLoading = false;
966
+ }, 200);
967
+ });
968
+ }, 10);
969
+
970
+ /*this.$nextTick(() => {
516
971
  this.rowDrop();
517
- });
972
+ });*/
518
973
  },
519
974
  colSubmit() {
520
975
  this.dialogVisible = !1;
521
976
  this.optionModel.tableColumns = this.tableData;
522
977
  this.closeHandle();
523
978
  },
979
+ openWidgetRenderDialog(row, sourceData) {
980
+ this.currentTableColumn = row;
981
+ this.sourceData = sourceData;
982
+
983
+ // this.widgetList =
984
+
985
+ // this.designer.widgetList
986
+
987
+ this.showColumnRenderDialog = true;
988
+ },
989
+ confirmWidgetRenderDialog(widgetList) {
990
+ this.currentTableColumn.widgetList = widgetList;
991
+ this.showColumnRenderDialog = false;
992
+ },
524
993
  showRenderDialog: function (e) {
525
- (this.currentTableColumn = e), (this.renderJson = e.render || ''), (this.showRenderDialogFlag = !0);
994
+ /*if(e.formatS == 'widgetRender'){
995
+ this.openWidgetRenderDialog(e);
996
+ return
997
+ }*/
998
+
999
+ (this.currentTableColumn = e),
1000
+ (this.renderJson = e.render || ""),
1001
+ (this.showRenderDialogFlag = !0);
526
1002
  },
527
1003
  saveColumnRender: function () {
528
- this.$set(this.currentTableColumn, 'render', this.renderJson), (this.showRenderDialogFlag = !1);
1004
+ this.$set(this.currentTableColumn, "render", this.renderJson),
1005
+ (this.showRenderDialogFlag = !1);
529
1006
  },
530
1007
  closeHandle() {
531
- this.$emit('update:visiable', false);
532
- this.$emit('close');
1008
+ this.$emit("update:visiable", false);
1009
+ this.$emit("close");
533
1010
  },
534
1011
  // 添加同级节点
535
1012
  onAddSibling(row, index) {
536
- console.log('onAddSibling', row, index)
537
- const parentId = row.parentId || null
1013
+ console.log("onAddSibling", row, index);
1014
+ const parentId = row.parentId || null;
538
1015
  // 先判断是不是根节点
539
1016
  if (!parentId) {
540
1017
  // 当前节点直接添加
541
1018
  // this.tableData.push(this.generateRow(parentId))
542
- let addIndex = this.tableData.filter(item => !item.parentId).findIndex(item => item.columnId == row.columnId) + 1;
543
- this.tableData.splice(addIndex, 0, this.generateRow(parentId))
1019
+ let addIndex =
1020
+ this.tableData
1021
+ .filter((item) => !item.parentId)
1022
+ .findIndex((item) => item.columnId == row.columnId) + 1;
1023
+ this.tableData.splice(addIndex, 0, this.generateRow(parentId));
544
1024
  } else {
545
- this.handleAddOneRow(row, index, 'SIBLING')
1025
+ this.handleAddOneRow(row, index, "SIBLING");
546
1026
  }
547
1027
  },
548
1028
  // 添加子节点 todo
549
1029
  onAddChild(row, index) {
550
- this.handleAddOneRow(row, index, 'CHILD')
1030
+ this.handleAddOneRow(row, index, "CHILD");
551
1031
  },
552
1032
  /**
553
1033
  * 处理添加一行数据
@@ -556,46 +1036,49 @@ export default {
556
1036
  * @param {string} type 操作类型 SIBLING 同级 / CHILD 子级
557
1037
  */
558
1038
  handleAddOneRow(row, index, type) {
559
-
560
- const {parentId, columnId} = row
561
- const curId = type === 'SIBLING' ? parentId : columnId
562
- let curRow = {}
1039
+ const { parentId, columnId } = row;
1040
+ const curId = type === "SIBLING" ? parentId : columnId;
1041
+ let curRow = {};
563
1042
  // 在 tableData 中,找到当前节点
564
1043
  const findRow = (data) => {
565
1044
  data.forEach((item) => {
566
1045
  if (item.columnId === curId) {
567
- curRow = item
1046
+ curRow = item;
568
1047
  }
569
1048
  if (item.children && item.children.length) {
570
- findRow(item.children)
1049
+ findRow(item.children);
571
1050
  }
572
- })
573
- }
1051
+ });
1052
+ };
574
1053
 
575
- findRow(this.tableData)
1054
+ findRow(this.tableData);
576
1055
 
577
- const {columnId: generateParentId, children} = curRow
1056
+ const { columnId: generateParentId, children } = curRow;
578
1057
 
579
- let newRow = this.generateRow(generateParentId)
1058
+ let newRow = this.generateRow(generateParentId);
580
1059
  if (children) {
581
- if (type === 'SIBLING') {
582
- let addIndex = children.findIndex(item => item.columnId == row.columnId) + 1;
583
- children.splice(addIndex, 0, newRow)
1060
+ if (type === "SIBLING") {
1061
+ let addIndex =
1062
+ children.findIndex((item) => item.columnId == row.columnId) + 1;
1063
+ children.splice(addIndex, 0, newRow);
584
1064
  } else {
585
- children.push(newRow)
1065
+ children.push(newRow);
586
1066
  }
587
1067
  } else {
588
- this.$set(curRow, 'children', [newRow])
1068
+ this.$set(curRow, "children", [newRow]);
589
1069
  }
590
1070
  },
591
1071
  getUuid() {
592
1072
  return new Date().getTime();
593
1073
  },
1074
+ createRowAuthName(type) {
1075
+ return `row${type}` + generateId();
1076
+ },
594
1077
  /**
595
1078
  * 生成一行数据
596
1079
  */
597
1080
  generateRow(parentId) {
598
- let tmpId = 'column' + generateId();
1081
+ let tmpId = "column" + generateId();
599
1082
  let uuid = this.getUuid();
600
1083
  var row = {
601
1084
  columnId: uuid,
@@ -605,46 +1088,58 @@ export default {
605
1088
  width: 150,
606
1089
  prop: tmpId,
607
1090
  label: tmpId,
608
- align: 'left',
1091
+ align: "left",
609
1092
  show: true,
610
1093
  sortable: true,
611
-
1094
+ filterable: true,
1095
+ exportType: null,
1096
+ footerDataType: null,
1097
+ footerMethodConfg: null,
1098
+ widgetList: [],
1099
+ labelColor: null,
1100
+ rowAddAuthName: this.createRowAuthName("Add"),
1101
+ rowEditAuthName: this.createRowAuthName("Edit"),
1102
+ rowAddShow: null,
1103
+ rowEditShow: null,
612
1104
  // treeNode: false,
613
-
614
1105
  };
615
1106
  return row;
616
1107
  },
617
1108
  // 添加根节点
618
1109
  onAddRoot() {
619
- this.tableData.push(this.generateRow())
1110
+ this.tableData.push(this.generateRow());
620
1111
  },
621
1112
  // 删除当前节点及对应子节点数据
622
1113
  onDelete(row) {
623
- const {parentId, columnId} = row
1114
+ const { parentId, columnId } = row;
624
1115
  // 根节点直接删除
625
1116
  if (!parentId) {
626
- const delIndex = this.tableData.findIndex((item) => item.columnId === columnId)
627
- this.tableData.splice(delIndex, 1)
1117
+ const delIndex = this.tableData.findIndex(
1118
+ (item) => item.columnId === columnId
1119
+ );
1120
+ this.tableData.splice(delIndex, 1);
628
1121
  } else {
629
1122
  // 找到父节点,通过父节点删除
630
- let parentRow = {}
1123
+ let parentRow = {};
631
1124
  const findRow = (data) => {
632
1125
  data.forEach((item) => {
633
1126
  if (item.columnId === parentId) {
634
- parentRow = {...item}
1127
+ parentRow = { ...item };
635
1128
  }
636
1129
  if (item.children && item.children.length) {
637
- findRow(item.children)
1130
+ findRow(item.children);
638
1131
  }
639
- })
640
- }
641
- findRow(this.tableData)
1132
+ });
1133
+ };
1134
+ findRow(this.tableData);
642
1135
 
643
- const {children} = parentRow
1136
+ const { children } = parentRow;
644
1137
 
645
- const delIndex = children.findIndex((item) => item.columnId === columnId)
1138
+ const delIndex = children.findIndex(
1139
+ (item) => item.columnId === columnId
1140
+ );
646
1141
 
647
- children.splice(delIndex, 1)
1142
+ children.splice(delIndex, 1);
648
1143
  }
649
1144
  },
650
1145
  // 数据准备 生成 id 和 parentId
@@ -652,30 +1147,34 @@ export default {
652
1147
  const tableFormat = (tableData, parentId) => {
653
1148
  tableData.forEach((item) => {
654
1149
  // item.parentId = parentId || null
655
- if (!item.kid) item.kid = item.columnId
1150
+ if (!item.kid) item.kid = item.columnId;
656
1151
  if (item.children && item.children.length > 0) {
657
- tableFormat(item.children, item.columnId)
1152
+ tableFormat(item.children, item.columnId);
658
1153
  }
659
- })
660
- }
1154
+ });
1155
+ };
661
1156
 
662
- tableFormat(data)
663
- return data
1157
+ tableFormat(data);
1158
+ return data;
664
1159
  },
665
1160
  //drag begin
666
1161
  //行拖拽
667
1162
  rowDrop() {
668
- if (this.dragSort) this.dragSort.destroy() // 防止在Dom上重复绑定事件
1163
+ if (this.dragSort) this.dragSort.destroy(); // 防止在Dom上重复绑定事件
669
1164
  // const tbody = document.querySelector('.drag .el-table__body-wrapper tbody');
670
- var tbody = this.$refs.singleTable.$el.querySelectorAll('.el-table__fixed-body-wrapper > table > tbody')[0];
1165
+ var tbody = this.$refs.singleTable.$el.querySelectorAll(
1166
+ ".el-table__fixed-body-wrapper > table > tbody"
1167
+ )[0];
671
1168
  const _this = this;
672
1169
  this.dragSort = Sortable.create(tbody, {
673
- ghostClass: 'sortable-ghost',
1170
+ ghostClass: "sortable-ghost",
1171
+ // draggable: ".drag-option", // 修改可拖拽元素
1172
+ handle: ".drag-option", // 指定拖动按钮
674
1173
  setData: function (e) {
675
- e.setData('Text', '');
1174
+ e.setData("Text", "");
676
1175
  },
677
- onEnd({newIndex, oldIndex}) {
678
- _this.rowDropEnd(newIndex, oldIndex)
1176
+ onEnd({ newIndex, oldIndex }) {
1177
+ _this.rowDropEnd(newIndex, oldIndex);
679
1178
  },
680
1179
  });
681
1180
  },
@@ -686,7 +1185,7 @@ export default {
686
1185
  data.forEach((item) => {
687
1186
  const loop = (data) => {
688
1187
  result.push({
689
- ...data
1188
+ ...data,
690
1189
  });
691
1190
  let child = data.children;
692
1191
  if (child) {
@@ -702,7 +1201,9 @@ export default {
702
1201
  //数组转树
703
1202
  arrToTree(arr, parentId) {
704
1203
  return arr
705
- .filter((item) => (!parentId ? !item.parentId : item.parentId === parentId))
1204
+ .filter((item) =>
1205
+ !parentId ? !item.parentId : item.parentId === parentId
1206
+ )
706
1207
  .map((item) => {
707
1208
  item.children = this.arrToTree(arr, item.columnId);
708
1209
  return item;
@@ -740,13 +1241,7 @@ export default {
740
1241
  let newRow = this.tableDataArray[newIndex];
741
1242
 
742
1243
  //判断是否把该行 拖拽到 自己的底级中
743
- if (
744
- this.isTreeBottom(
745
- this.tableData,
746
- oldRow.columnId,
747
- newRow.columnId
748
- )
749
- ) {
1244
+ if (this.isTreeBottom(this.tableData, oldRow.columnId, newRow.columnId)) {
750
1245
  this.$message({
751
1246
  type: "error",
752
1247
  message: "不能放到子节点",
@@ -792,72 +1287,115 @@ export default {
792
1287
  let isButtontCell = false;
793
1288
  let widgetType = this.columnFormatMap[formatS];
794
1289
  if (widgetType) {
795
- isButtontCell = widgetType === 'a-link' || widgetType === 'button';
1290
+ isButtontCell =
1291
+ widgetType === "a-link" ||
1292
+ widgetType === "button" ||
1293
+ widgetType === "dropdown";
796
1294
  }
797
1295
  return isButtontCell;
798
1296
  },
799
1297
  //drag end
800
- changeFormatS(row) {
801
- let isButtontCell = this.getIsButtontCell(row.formatS);
802
- let columnWidgetConfig = this.getColumnWidgetConfig(row, true);
803
- let {columnSelectedWidget, columnEditFields} = columnWidgetConfig;
804
- if (columnSelectedWidget) {
805
- row.columnOption = columnSelectedWidget.options;
806
- } else {
807
- row.columnOption = {}
808
- }
809
-
810
- if (row.formatS == 'editTreeButtonGroup') {
811
- row.prop = null;
812
- row.label = null;
813
- row.sortable = false;
814
- row.width = 150;
815
- } else if (isButtontCell) {
816
- if (row.formatS == 'aLink' || row.formatS == 'button') {
817
- if (!row.width || row.width == 47) row.width = 150;
1298
+ changeFormatS(row, isEdit) {
1299
+ let formatS = isEdit ? row.editFormatS : row.formatS;
1300
+ let isButtontCell = this.getIsButtontCell(formatS);
1301
+ // let columnWidgetConfig = this.getColumnWidgetConfig(row, true, isEdit);
1302
+ // let { columnSelectedWidget, columnEditFields } = columnWidgetConfig;
1303
+ let attachmentPrefix = this.designer.getAttachmentPrefix();
1304
+ let columnSelectedWidget = this.designer.createColumnWidget(row, isEdit);
1305
+ if (!isEdit) {
1306
+ //格式化类型
1307
+ if (columnSelectedWidget) {
1308
+ row.columnOption = columnSelectedWidget.options;
1309
+ row.widget = columnSelectedWidget;
818
1310
  } else {
819
- row.width = 47;
1311
+ row.columnOption = {};
1312
+ row.widget = null;
820
1313
  }
821
- row.prop = null;
822
- row.label = null;
823
- row.sortable = false;
824
1314
  } else {
825
- let tmpId = 'column' + generateId();
826
- if (!row.width || row.width == 47) row.width = 150;
827
- if (!row.prop) row.prop = tmpId;
828
- if (!row.label) row.label = tmpId;
829
- row.sortable = true;
1315
+ if (row.prop && row.prop.startsWith(attachmentPrefix)) {
1316
+ let suffix = row.prop.replace(attachmentPrefix, "");
1317
+ columnSelectedWidget.options.keyName = row.prop;
1318
+ columnSelectedWidget.options.keyNameSuffix = suffix;
1319
+ }
1320
+ //编辑插槽类型
1321
+ if (columnSelectedWidget) {
1322
+ row.columnOption = columnSelectedWidget.options;
1323
+ row.editWidget = columnSelectedWidget;
1324
+ } else {
1325
+ row.editColumnOption = {};
1326
+ row.editWidget = null;
1327
+ }
1328
+ }
830
1329
 
831
- if (row.formatS == 'editAttachment') {
832
- row.prop = this.designer.createAttachmentKeyName();
1330
+ if (!isEdit) {
1331
+ if (row.formatS == "editTreeButtonGroup") {
1332
+ row.prop = null;
1333
+ row.label = null;
1334
+ row.sortable = false;
1335
+ row.width = 150;
1336
+ row.columnOption = {};
1337
+ row.widget = null;
1338
+ } else if (isButtontCell) {
1339
+ if (row.formatS == "dropdown") {
1340
+ row.width = 100;
1341
+ } else if (row.formatS == "aLink" || row.formatS == "button") {
1342
+ if (!row.width || row.width == 47) row.width = 150;
1343
+ } else {
1344
+ row.width = 47;
1345
+ }
1346
+ row.prop = null;
1347
+ row.label = null;
1348
+ row.sortable = false;
833
1349
  } else {
834
- let attachmentPrefix = this.designer.getAttachmentPrefix();
835
- row.prop = row.prop.replaceAll(attachmentPrefix, "");
1350
+ let tmpId = "column" + generateId();
1351
+ if (!row.width || row.width == 47) row.width = 150;
1352
+ if (!row.prop) row.prop = tmpId;
1353
+ if (!row.label) row.label = tmpId;
1354
+
1355
+ if (this.userFields.includes(row.formatS)) {
1356
+ let item = this.businessOptions.find(
1357
+ (item) => item.value == row.formatS
1358
+ );
1359
+ if (item) {
1360
+ row.prop = item.value;
1361
+ row.label = item.label;
1362
+ }
1363
+ }
1364
+
1365
+ row.sortable = true;
1366
+
1367
+ if (!isEdit) {
1368
+ if (formatS == "editAttachment") {
1369
+ row.prop = columnSelectedWidget.options.keyName;
1370
+ } else {
1371
+ row.prop = row.prop.replaceAll(attachmentPrefix, "");
1372
+ }
1373
+ }
836
1374
  }
837
1375
  }
838
1376
  },
839
1377
  getColumnWidgetConfig(row, isChange, isEdit) {
840
- let formatS = isEdit ? row.editFormatS : row.formatS
1378
+ let formatS = isEdit ? row.editFormatS : row.formatS;
841
1379
  let columnSelectedWidget = null;
842
1380
  let columnEditFields = null;
843
1381
 
844
1382
  let type = this.columnFormatMap[formatS];
845
- /*if (type == 'date') {
846
- columnEditFields = ['type', 'format', 'valueFormat']
847
- } else if (type == 'select') {
848
-
849
- }
850
- if (type == 'vabsearch') {
851
- columnEditFields = ['vabSearchField', 'formCode', 'formVersion', 'required', 'showFormField', 'onSearchConfirm', 'onSearchClear']
852
- }*/
853
1383
 
854
1384
  if (type) {
855
1385
  // columnSelectedWidget = this.$baseLodash.cloneDeep(this.designer.getFieldWidgetByType(type));
856
- columnSelectedWidget = this.designer.copyNewFieldWidget(this.designer.getFieldWidgetByType(type));
1386
+ columnSelectedWidget = this.designer.copyNewFieldWidget(
1387
+ this.designer.getFieldWidgetByType(type)
1388
+ );
857
1389
  /*let tmpId = generateId();
858
1390
  let idVal = row.prop ? row.prop : (type + tmpId);*/
859
1391
  /*columnSelectedWidget.id = idVal;*/
860
1392
  // columnSelectedWidget.options.name = idVal;
1393
+ /*if (isEdit) {
1394
+ columnSelectedWidget.id = "edit_" + row.columnId;
1395
+ } else {
1396
+ columnSelectedWidget.id = row.columnId;
1397
+ }*/
1398
+ // columnSelectedWidget.id = row.columnId;
861
1399
  let columnOption;
862
1400
  if (!isEdit) {
863
1401
  columnOption = row.columnOption;
@@ -867,61 +1405,70 @@ export default {
867
1405
  if (!isChange && columnOption && Object.keys(columnOption).length) {
868
1406
  columnOption.required = row.required || false;
869
1407
  columnSelectedWidget.options = columnOption;
870
- if ('editDelete' == formatS) {
871
- columnSelectedWidget.options.hiddenByWf = columnSelectedWidget.options.hiddenByWf ?? true;
872
- columnSelectedWidget.options.prefixIcon = columnSelectedWidget.options.prefixIcon || "el-icon-delete";
873
- } else if ('editButton' == formatS) {
874
- columnSelectedWidget.options.prefixIcon = columnSelectedWidget.options.prefixIcon || "el-icon-edit";
1408
+ if ("editDelete" == formatS) {
1409
+ columnSelectedWidget.options.hiddenByWf =
1410
+ columnSelectedWidget.options.hiddenByWf ?? true;
1411
+ columnSelectedWidget.options.prefixIcon =
1412
+ columnSelectedWidget.options.prefixIcon || "el-icon-delete";
1413
+ } else if ("editButton" == formatS) {
1414
+ columnSelectedWidget.options.prefixIcon =
1415
+ columnSelectedWidget.options.prefixIcon || "el-icon-edit";
875
1416
  }
876
1417
  } else {
877
1418
  columnSelectedWidget.options.required = row.required || false;
878
1419
 
879
- if ('editDelete' == formatS) {
1420
+ if ("editDelete" == formatS) {
880
1421
  columnSelectedWidget.options.prefixIcon = "el-icon-delete";
881
1422
  columnSelectedWidget.options.label = "删除";
882
1423
  columnSelectedWidget.options.labelHidden = true;
883
1424
  columnSelectedWidget.options.hiddenByWf = true;
884
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nlet tableRef = this.getWidgetRef(this.parentWidget.options.name);\ntableRef.deleteRow(tableParam.row,tableParam.rowIndex);";
885
- } else if ('editButton' == formatS) {
1425
+ columnSelectedWidget.options.onClick =
1426
+ "let tableParam = this.tableParam;\nlet tableRef = this.getWidgetRef(this.parentWidget.options.name);\ntableRef.deleteRow(tableParam.row,tableParam.rowIndex);";
1427
+ } else if ("editButton" == formatS) {
886
1428
  columnSelectedWidget.options.prefixIcon = "el-icon-edit";
887
1429
  columnSelectedWidget.options.label = "查看";
888
1430
  columnSelectedWidget.options.labelHidden = true;
889
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nlet tableRef = this.getWidgetRef(this.parentWidget.options.name);\ntableRef.openEditDialog(tableParam.row)";
890
- } else if ('addSiblingEditRow' == formatS) {
1431
+ columnSelectedWidget.options.onClick =
1432
+ "let tableParam = this.tableParam;\nlet tableRef = this.getWidgetRef(this.parentWidget.options.name);\ntableRef.openEditDialog(tableParam.row)";
1433
+ } else if ("addSiblingEditRow" == formatS) {
891
1434
  columnSelectedWidget.options.prefixIcon = "el-icon-plus";
892
1435
  columnSelectedWidget.options.label = "新增兄弟节点";
893
1436
  columnSelectedWidget.options.labelHidden = false;
894
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nthis.getParentTarget().addSiblingTreeRow(null,tableParam);";
895
- } else if ('addChildTreeRow' == formatS) {
1437
+ columnSelectedWidget.options.onClick =
1438
+ "let tableParam = this.tableParam;\nthis.getParentTarget().addSiblingTreeRow(null,tableParam);";
1439
+ } else if ("addChildTreeRow" == formatS) {
896
1440
  columnSelectedWidget.options.prefixIcon = "el-icon-plus";
897
1441
  columnSelectedWidget.options.label = "新增子节点";
898
1442
  columnSelectedWidget.options.labelHidden = false;
899
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nthis.getParentTarget().addChildTreeRow(null,tableParam);";
900
- } else if ('moveUpRow' == formatS) {
1443
+ columnSelectedWidget.options.onClick =
1444
+ "let tableParam = this.tableParam;\nthis.getParentTarget().addChildTreeRow(null,tableParam);";
1445
+ } else if ("moveUpRow" == formatS) {
901
1446
  // columnSelectedWidget.options.prefixIcon = "el-icon-plus";
902
1447
  columnSelectedWidget.options.label = "↑上移";
903
1448
  columnSelectedWidget.options.labelHidden = false;
904
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nthis.getParentTarget().moveUpRow(tableParam);";
905
- } else if ('moveDownRow' == formatS) {
1449
+ columnSelectedWidget.options.onClick =
1450
+ "let tableParam = this.tableParam;\nthis.getParentTarget().moveUpRow(tableParam);";
1451
+ } else if ("moveDownRow" == formatS) {
906
1452
  // columnSelectedWidget.options.prefixIcon = "el-icon-plus";
907
1453
  columnSelectedWidget.options.label = "↓下移";
908
1454
  columnSelectedWidget.options.labelHidden = false;
909
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nthis.getParentTarget().moveDownRow(tableParam);";
910
- } else if ('removeTreeRow' == formatS) {
1455
+ columnSelectedWidget.options.onClick =
1456
+ "let tableParam = this.tableParam;\nthis.getParentTarget().moveDownRow(tableParam);";
1457
+ } else if ("removeTreeRow" == formatS) {
911
1458
  columnSelectedWidget.options.prefixIcon = "el-icon-delete";
912
1459
  columnSelectedWidget.options.label = "删除";
913
1460
  columnSelectedWidget.options.labelHidden = true;
914
- columnSelectedWidget.options.onClick = "let tableParam = this.tableParam;\nthis.getParentTarget().removeTreeRow(tableParam);";
1461
+ columnSelectedWidget.options.onClick =
1462
+ "let tableParam = this.tableParam;\nthis.getParentTarget().removeTreeRow(tableParam);";
915
1463
  }
916
1464
 
917
1465
  columnOption = columnSelectedWidget.options;
918
-
919
1466
  }
920
1467
 
921
1468
  // columnSelectedWidget.options.name = isEdit? (type + row.columnId) : row.prop;
922
1469
  // columnSelectedWidget.options.name = type + row.columnId;
923
1470
  // columnSelectedWidget.options.name = row.prop;
924
- if (columnSelectedWidget.options.hasOwnProperty('keyName')) {
1471
+ if (columnSelectedWidget.options.hasOwnProperty("keyName")) {
925
1472
  columnSelectedWidget.options.keyName = row.prop;
926
1473
  columnSelectedWidget.options.keyNameEnabled = true;
927
1474
  } else {
@@ -933,46 +1480,120 @@ export default {
933
1480
  columnSelectedWidget.options.labelHidden = true;
934
1481
  }
935
1482
  }
936
- return {columnSelectedWidget, columnEditFields};
1483
+ return { columnSelectedWidget, columnEditFields };
1484
+ },
1485
+ findColumnByColumnId(columnList, columnId) {
1486
+ let result = null;
1487
+ if (columnList) {
1488
+ let column = columnList.find((item) => item.columnId == columnId);
1489
+ if (!column) {
1490
+ }
1491
+ for (let column of columnList) {
1492
+ if (column.columnId == columnId) {
1493
+ result = column;
1494
+ break;
1495
+ } else if (column.children && column.children.length) {
1496
+ let subColumn = this.findColumnByColumnId(
1497
+ column.children,
1498
+ children
1499
+ );
1500
+ if (subColumn) {
1501
+ result = subColumn;
1502
+ break;
1503
+ }
1504
+ }
1505
+ }
1506
+ }
1507
+ return result;
1508
+ },
1509
+
1510
+ getRowWidget(row) {
1511
+ let widget = row.widget;
1512
+ if (!widget) {
1513
+ widget.options.a = a;
1514
+ widget.options.a = a;
1515
+ }
1516
+ return widget;
1517
+ },
1518
+ confirmEditTreeButtonGroupConfig(rowConfig) {
1519
+ if (this.currentEditTreeButtonGroupRow) {
1520
+ Object.assign(this.currentEditTreeButtonGroupRow, rowConfig);
1521
+ }
1522
+ this.currentEditTreeButtonGroupRow = null;
1523
+ this.editTreeButtonGroupRowData = null;
937
1524
  },
938
1525
  openFormatConfigDialog(row, index) {
939
- let option = row.columnOption;
940
- let selectedWidget;
941
- let columnWidgetConfig = this.getColumnWidgetConfig(row);
942
- let {columnSelectedWidget, columnEditFields} = columnWidgetConfig;
943
- if (columnSelectedWidget) {
944
- option = columnSelectedWidget.options;
945
- selectedWidget = columnSelectedWidget;
946
- } else {
947
- option = {}
948
- selectedWidget = {};
1526
+ if (row.formatS === "editTreeButtonGroup") {
1527
+ this.currentEditTreeButtonGroupRow = row;
1528
+ this.editTreeButtonGroupRowData = this.$baseLodash.cloneDeep(row);
1529
+ this.showEditTreeButtonGroupConfigDialog = true;
1530
+ return;
949
1531
  }
1532
+ if (row.formatS == "widgetRender") {
1533
+ let formWidgetList = deepClone(this.designer.widgetList);
1534
+ let tableData = deepClone(this.tableData);
1535
+ let columnId = row.columnId;
950
1536
 
951
- let columnOption = this.$baseLodash.cloneDeep(option);
952
- row.columnOption = columnOption;
1537
+ let dataTableName = this.optionModel.name;
1538
+
1539
+ let targetColumn = null;
1540
+ loopHandleWidget(formWidgetList, (item) => {
1541
+ if (item.options.name == dataTableName) {
1542
+ item.options.tableColumns = tableData;
1543
+ targetColumn = this.findColumnByColumnId(
1544
+ item.options.tableColumns,
1545
+ columnId
1546
+ );
1547
+ }
1548
+ });
1549
+ let getWidgetList = (subWidgetList = []) => {
1550
+ targetColumn.widgetList = this.$baseLodash.cloneDeep(subWidgetList);
1551
+ return formWidgetList;
1552
+ };
1553
+ let sourceData = {
1554
+ formWidgetList,
1555
+ dataTableName,
1556
+ columnId,
1557
+ getWidgetList,
1558
+ };
1559
+
1560
+ this.openWidgetRenderDialog(row, sourceData);
1561
+ return;
1562
+ }
1563
+
1564
+ let selectedWidget = row.widget;
953
1565
  this.operateIndex = index;
954
1566
 
1567
+ let tableColumns = this.tableData;
955
1568
  this.openWidgetPropertyDialog({
956
1569
  row: row,
957
1570
  columnSelectedWidget: selectedWidget,
1571
+ tableColumns,
958
1572
  index: index,
959
- columnEditFields: columnEditFields,
1573
+ // columnEditFields: columnEditFields,
960
1574
  callback: (columnOption) => {
961
- this.confirmFormatConfigDialog(columnOption);
962
- }
963
- })
1575
+ this.confirmFormatConfigDialog(columnOption, row);
1576
+ },
1577
+ });
964
1578
  },
965
1579
  getFieldKeyNameByOptions(options) {
966
1580
  let o = options.name;
967
- return (
968
- (options.keyNameEnabled
969
- && options.keyName)
970
- || o
971
- );
1581
+ return (options.keyNameEnabled && options.keyName) || o;
972
1582
  },
973
- confirmFormatConfigDialog(columnOption) {
974
- let row = this.tableData[this.operateIndex];
1583
+ confirmFormatConfigDialog(columnOption, row) {
1584
+ // let row = this.tableData[this.operateIndex];
975
1585
  row.columnOption = columnOption;
1586
+
1587
+ if (row.widget) {
1588
+ row.widget.options = columnOption;
1589
+ } else {
1590
+ let type = this.columnFormatMap[row.formatS];
1591
+ let fieldWidget = this.designer.createColumnWidget(row, false);
1592
+ fieldWidget.options = columnOption;
1593
+ row.widget = fieldWidget;
1594
+ this.$forceUpdate();
1595
+ }
1596
+
976
1597
  let isButtontCell = this.getIsButtontCell(row.formatS);
977
1598
  if (!isButtontCell) {
978
1599
  row.prop = this.getFieldKeyNameByOptions(columnOption);
@@ -981,74 +1602,146 @@ export default {
981
1602
  }
982
1603
  },
983
1604
  openEditFormatConfigDialog(row, index) {
984
- let option = row.columnOption;
985
- let selectedWidget;
986
- let columnWidgetConfig = this.getColumnWidgetConfig(row, null, true);
987
- let {columnSelectedWidget, columnEditFields} = columnWidgetConfig;
988
- if (columnSelectedWidget) {
989
- option = columnSelectedWidget.options;
990
- selectedWidget = columnSelectedWidget;
991
- } else {
992
- option = {}
993
- selectedWidget = {};
994
- }
995
-
996
- let columnOption = this.$baseLodash.cloneDeep(option);
997
- row.editColumnOption = columnOption;
1605
+ let selectedWidget = row.editWidget;
998
1606
  this.operateIndex = index;
999
1607
 
1608
+ let tableColumns = this.tableData;
1000
1609
  this.openWidgetPropertyDialog({
1001
1610
  row: row,
1611
+ tableColumns,
1002
1612
  columnSelectedWidget: selectedWidget,
1003
1613
  index: index,
1004
- columnEditFields: columnEditFields,
1614
+ // columnEditFields: columnEditFields,
1005
1615
  callback: (columnOption) => {
1006
- this.confirmEditFormatConfigDialog(columnOption);
1007
- }
1008
- })
1616
+ this.confirmEditFormatConfigDialog(columnOption, row);
1617
+ },
1618
+ });
1009
1619
  },
1010
- confirmEditFormatConfigDialog(columnOption) {
1011
- let row = this.tableData[this.operateIndex];
1620
+ confirmEditFormatConfigDialog(columnOption, row) {
1621
+ // let row = this.tableData[this.operateIndex];
1012
1622
  row.editColumnOption = columnOption;
1623
+ // row.editWidget.options = columnOption;
1624
+
1625
+ if (row.editWidget) {
1626
+ row.editWidget.options = columnOption;
1627
+ } else {
1628
+ let type = this.columnFormatMap[row.editFormatS];
1629
+ let fieldWidget = this.designer.createColumnWidget(row, true);
1630
+ fieldWidget.options = columnOption;
1631
+ row.editWidget = fieldWidget;
1632
+ this.$forceUpdate();
1633
+ }
1634
+
1013
1635
  /*row.prop = columnOption.name;
1014
1636
  row.label = columnOption.label;
1015
1637
  row.required = columnOption.required;*/
1016
1638
  },
1017
1639
  openTableColumnConfigDialog(row, index) {
1018
1640
  this.operateIndex = index;
1641
+ this.currentTableColumn = row;
1019
1642
  let eventName = "tableColumnConfig";
1020
- let eventParams = ["dataId", "formCode"]
1021
- this.tableColumnConfigHeader = `${this.optionModel.name}.${eventName}(${eventParams.join(', ')}) {`;
1022
- this.tableColumnConfigCode = this.$baseLodash.cloneDeep(row.tableColumnConfig || '');
1643
+ let eventParams = ["dataId", "formCode"];
1644
+ this.tableColumnConfigHeader = `${
1645
+ this.optionModel.name
1646
+ }.${eventName}(${eventParams.join(", ")}) {`;
1647
+ this.tableColumnConfigCode = this.$baseLodash.cloneDeep(
1648
+ row.tableColumnConfig || ""
1649
+ );
1023
1650
 
1024
1651
  this.tableColumnConfigTitle = `自定义表格列属性配置(${row.label})`;
1025
1652
  this.showTableColumnConfigDialog = true;
1026
1653
  },
1027
1654
  saveTableColumnConfigDialog() {
1028
- let row = this.tableData[this.operateIndex];
1655
+ // let row = this.tableData[this.operateIndex];
1656
+ let row = this.currentTableColumn;
1029
1657
  const codeHints = this.$refs.ecEditor.getEditorAnnotations();
1030
1658
  let syntaxErrorFlag = false;
1031
1659
  if (!!codeHints && codeHints.length > 0) {
1032
- codeHints.forEach(chItem => {
1033
- if (chItem.type === 'error') {
1660
+ codeHints.forEach((chItem) => {
1661
+ if (chItem.type === "error") {
1034
1662
  syntaxErrorFlag = true;
1035
1663
  }
1036
1664
  });
1037
1665
 
1038
1666
  if (syntaxErrorFlag) {
1039
- this.$message.error(this.i18nt('designer.setting.syntaxCheckWarning'));
1667
+ this.$message.error(
1668
+ this.i18nt("designer.setting.syntaxCheckWarning")
1669
+ );
1040
1670
  return;
1041
1671
  }
1042
1672
  }
1043
- this.$set(row, 'tableColumnConfig', this.$baseLodash.cloneDeep(this.tableColumnConfigCode))
1673
+ this.$set(
1674
+ row,
1675
+ "tableColumnConfig",
1676
+ this.$baseLodash.cloneDeep(this.tableColumnConfigCode)
1677
+ );
1044
1678
  this.showTableColumnConfigDialog = false;
1679
+ },
1680
+ changeRowLabel(row) {
1681
+ this.setRowWidgetAttars(row, "label", row.label);
1682
+ },
1683
+ changeRowProp(row) {
1684
+ this.setRowWidgetAttars(row, "keyName", row.prop);
1685
+ },
1686
+ changeRowRequired(row) {
1687
+ this.setRowWidgetAttars(row, "required", row.required);
1688
+ },
1689
+ setRowWidgetAttars(row, key, value) {
1690
+ let type1 = this.columnFormatMap[row.formatS];
1691
+ let type2 = this.columnFormatMap[row.editFormatS];
1692
+ let newWidget = type1
1693
+ ? this.designer.copyNewFieldWidget(
1694
+ this.designer.getFieldWidgetByType(type1)
1695
+ )
1696
+ : null;
1697
+
1698
+ let newEditWidget = type2
1699
+ ? this.designer.copyNewFieldWidget(
1700
+ this.designer.getFieldWidgetByType(type2)
1701
+ )
1702
+ : null;
1703
+
1704
+ if (newWidget.formItemFlag) {
1705
+ if (row.widget) {
1706
+ if (row.widget.options[key] !== undefined)
1707
+ row.widget.options[key] = value;
1708
+ }
1709
+ if (row.columnOption) {
1710
+ if (row.columnOption[key] !== undefined)
1711
+ row.columnOption[key] = value;
1712
+ }
1713
+ }
1045
1714
 
1715
+ if (newWidget.formItemFlag) {
1716
+ if (row.editWidget) {
1717
+ if (row.editWidget.options[key] !== undefined)
1718
+ row.editWidget.options[key] = value;
1719
+ }
1720
+ if (row.editColumnOption) {
1721
+ if (row.editColumnOption[key] !== undefined)
1722
+ row.editColumnOption[key] = value;
1723
+ }
1724
+ }
1046
1725
  },
1047
- }
1048
- }
1726
+ openRowEditDialog(row, index) {
1727
+ this.editRowData = row;
1728
+ this.rowData = this.$baseLodash.cloneDeep(row);
1729
+ this.rowDataIndex = index;
1730
+ this.showRowEditDialog = true;
1731
+ },
1732
+ submitRowEditDialog() {
1733
+ Object.assign(this.editRowData, this.$baseLodash.cloneDeep(this.rowData));
1734
+ // this.editRowData = this.$baseLodash.cloneDeep(this.rowData);
1735
+ this.showRowEditDialog = false;
1736
+ },
1737
+ closeRowEditDialog() {
1738
+ this.showRowEditDialog = false;
1739
+ },
1740
+ },
1741
+ };
1049
1742
  </script>
1050
1743
  <style scoped lang="scss">
1051
1744
  .icon-drag:before {
1052
- content: '\e61d';
1745
+ content: "\e61d";
1053
1746
  }
1054
1747
  </style>