agilebuilder-ui 1.0.0

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 (392) hide show
  1. package/README.md +7 -0
  2. package/index.html +13 -0
  3. package/package.json +36 -0
  4. package/packages/IntervalSelection/index.js +6 -0
  5. package/packages/IntervalSelection/src/quarterScope.vue +405 -0
  6. package/packages/IntervalSelection/src/sectionDate.vue +475 -0
  7. package/packages/breadcrumb/index.js +6 -0
  8. package/packages/breadcrumb/src/breadcrumb.vue +81 -0
  9. package/packages/department-tree/index.js +6 -0
  10. package/packages/department-tree/src/department-tree.vue +114 -0
  11. package/packages/department-tree-inline/index.js +6 -0
  12. package/packages/department-tree-inline/src/department-multi-tree-inline.vue +494 -0
  13. package/packages/department-tree-inline/src/department-single-tree-inline.vue +367 -0
  14. package/packages/department-tree-inline/src/department-tree-inline.vue +86 -0
  15. package/packages/department-tree-inline/src/department-tree-service.js +344 -0
  16. package/packages/department-tree-inline/src/search-result.vue +238 -0
  17. package/packages/department-user-tree/index.js +6 -0
  18. package/packages/department-user-tree/src/department-user-multiple-tree.vue +133 -0
  19. package/packages/department-user-tree/src/department-user-single-tree.vue +96 -0
  20. package/packages/department-user-tree/src/department-user-tree.vue +115 -0
  21. package/packages/department-user-tree-inline/index.js +9 -0
  22. package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +758 -0
  23. package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +358 -0
  24. package/packages/department-user-tree-inline/src/department-user-tree-inline.vue +87 -0
  25. package/packages/department-user-tree-inline/src/department-user-tree-multi-service.js +309 -0
  26. package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +180 -0
  27. package/packages/department-user-tree-inline/src/search-result.vue +286 -0
  28. package/packages/directives/prevent-reclick.js +22 -0
  29. package/packages/dynamic-source-select/index.js +6 -0
  30. package/packages/dynamic-source-select/src/dynamic-source-select-service.js +124 -0
  31. package/packages/dynamic-source-select/src/dynamic-source-select.vue +857 -0
  32. package/packages/dynamic-source-select/src/events.js +77 -0
  33. package/packages/fs-preview/index.js +6 -0
  34. package/packages/fs-preview/src/fs-preview.vue +303 -0
  35. package/packages/fs-upload/index.js +6 -0
  36. package/packages/fs-upload/src/fs-upload-multi.vue +458 -0
  37. package/packages/fs-upload/src/fs-upload-single.vue +365 -0
  38. package/packages/fs-upload/src/fs-upload.vue +191 -0
  39. package/packages/fs-upload/src/see-big-picture.vue +67 -0
  40. package/packages/fs-upload-list/index.js +6 -0
  41. package/packages/fs-upload-list/src/fs-upload-list.vue +387 -0
  42. package/packages/hamburger/index.js +6 -0
  43. package/packages/hamburger/src/hamburger.vue +50 -0
  44. package/packages/index.js +124 -0
  45. package/packages/multipart-upload/index.js +6 -0
  46. package/packages/multipart-upload/src/index.vue +66 -0
  47. package/packages/multipart-upload/src/multipart-upload-form.vue +395 -0
  48. package/packages/multipart-upload/src/multipart-upload-list.vue +539 -0
  49. package/packages/organization-input/index.js +6 -0
  50. package/packages/organization-input/src/organization-input.vue +579 -0
  51. package/packages/plugins/export-data-new.js +630 -0
  52. package/packages/plugins/export-data.js +431 -0
  53. package/packages/plugins/index.js +15 -0
  54. package/packages/plugins/public-method.js +47 -0
  55. package/packages/remove-department/index.js +6 -0
  56. package/packages/remove-department/src/remove-department.vue +201 -0
  57. package/packages/remove-department/src/remove-dept-service.js +31 -0
  58. package/packages/remove-user/index.js +6 -0
  59. package/packages/remove-user/src/remove-user-service.js +31 -0
  60. package/packages/remove-user/src/remove-user.vue +227 -0
  61. package/packages/remove-workgroup/index.js +6 -0
  62. package/packages/remove-workgroup/src/remove-workgroup-service.js +31 -0
  63. package/packages/remove-workgroup/src/remove-workgroup.vue +184 -0
  64. package/packages/rich-editor/index.js +7 -0
  65. package/packages/rich-editor/index.vue +314 -0
  66. package/packages/rich-editor/tinymce/icons/default/icons.min.js +1 -0
  67. package/packages/rich-editor/tinymce/langs/README.md +3 -0
  68. package/packages/rich-editor/tinymce/langs/zh-Hans.js +1 -0
  69. package/packages/rich-editor/tinymce/license.txt +21 -0
  70. package/packages/rich-editor/tinymce/models/dom/model.min.js +4 -0
  71. package/packages/rich-editor/tinymce/plugins/accordion/plugin.min.js +4 -0
  72. package/packages/rich-editor/tinymce/plugins/advlist/plugin.min.js +4 -0
  73. package/packages/rich-editor/tinymce/plugins/anchor/plugin.min.js +4 -0
  74. package/packages/rich-editor/tinymce/plugins/autolink/plugin.min.js +4 -0
  75. package/packages/rich-editor/tinymce/plugins/autoresize/plugin.min.js +4 -0
  76. package/packages/rich-editor/tinymce/plugins/autosave/plugin.min.js +4 -0
  77. package/packages/rich-editor/tinymce/plugins/charmap/plugin.min.js +4 -0
  78. package/packages/rich-editor/tinymce/plugins/code/plugin.min.js +4 -0
  79. package/packages/rich-editor/tinymce/plugins/codesample/plugin.min.js +4 -0
  80. package/packages/rich-editor/tinymce/plugins/directionality/plugin.min.js +4 -0
  81. package/packages/rich-editor/tinymce/plugins/emoticons/js/emojiimages.js +1 -0
  82. package/packages/rich-editor/tinymce/plugins/emoticons/js/emojiimages.min.js +3 -0
  83. package/packages/rich-editor/tinymce/plugins/emoticons/js/emojis.js +1 -0
  84. package/packages/rich-editor/tinymce/plugins/emoticons/js/emojis.min.js +2 -0
  85. package/packages/rich-editor/tinymce/plugins/emoticons/plugin.min.js +4 -0
  86. package/packages/rich-editor/tinymce/plugins/fullscreen/plugin.min.js +4 -0
  87. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ar.js +90 -0
  88. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +90 -0
  89. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ca.js +90 -0
  90. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/cs.js +90 -0
  91. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/da.js +90 -0
  92. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/de.js +90 -0
  93. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/el.js +90 -0
  94. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/en.js +90 -0
  95. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/es.js +90 -0
  96. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/eu.js +90 -0
  97. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/fa.js +90 -0
  98. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/fi.js +90 -0
  99. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +90 -0
  100. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/he_IL.js +90 -0
  101. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/hi.js +90 -0
  102. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/hr.js +90 -0
  103. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +90 -0
  104. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/id.js +90 -0
  105. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/it.js +90 -0
  106. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ja.js +90 -0
  107. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/kk.js +90 -0
  108. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +90 -0
  109. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ms.js +90 -0
  110. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +90 -0
  111. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/nl.js +90 -0
  112. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/pl.js +90 -0
  113. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +90 -0
  114. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +90 -0
  115. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ro.js +90 -0
  116. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/ru.js +90 -0
  117. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/sk.js +90 -0
  118. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +90 -0
  119. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +90 -0
  120. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/th_TH.js +90 -0
  121. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/tr.js +90 -0
  122. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/uk.js +90 -0
  123. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/vi.js +90 -0
  124. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +84 -0
  125. package/packages/rich-editor/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +90 -0
  126. package/packages/rich-editor/tinymce/plugins/help/plugin.min.js +4 -0
  127. package/packages/rich-editor/tinymce/plugins/image/plugin.min.js +4 -0
  128. package/packages/rich-editor/tinymce/plugins/importcss/plugin.min.js +4 -0
  129. package/packages/rich-editor/tinymce/plugins/insertdatetime/plugin.min.js +4 -0
  130. package/packages/rich-editor/tinymce/plugins/link/plugin.min.js +4 -0
  131. package/packages/rich-editor/tinymce/plugins/lists/plugin.min.js +4 -0
  132. package/packages/rich-editor/tinymce/plugins/media/plugin.min.js +4 -0
  133. package/packages/rich-editor/tinymce/plugins/nonbreaking/plugin.min.js +4 -0
  134. package/packages/rich-editor/tinymce/plugins/pagebreak/plugin.min.js +4 -0
  135. package/packages/rich-editor/tinymce/plugins/preview/plugin.min.js +4 -0
  136. package/packages/rich-editor/tinymce/plugins/quickbars/plugin.min.js +4 -0
  137. package/packages/rich-editor/tinymce/plugins/save/plugin.min.js +4 -0
  138. package/packages/rich-editor/tinymce/plugins/searchreplace/plugin.min.js +4 -0
  139. package/packages/rich-editor/tinymce/plugins/table/plugin.min.js +4 -0
  140. package/packages/rich-editor/tinymce/plugins/template/plugin.min.js +4 -0
  141. package/packages/rich-editor/tinymce/plugins/visualblocks/plugin.min.js +4 -0
  142. package/packages/rich-editor/tinymce/plugins/visualchars/plugin.min.js +4 -0
  143. package/packages/rich-editor/tinymce/plugins/wordcount/plugin.min.js +4 -0
  144. package/packages/rich-editor/tinymce/skins/content/dark/content.js +2 -0
  145. package/packages/rich-editor/tinymce/skins/content/dark/content.min.css +1 -0
  146. package/packages/rich-editor/tinymce/skins/content/default/content.js +2 -0
  147. package/packages/rich-editor/tinymce/skins/content/default/content.min.css +1 -0
  148. package/packages/rich-editor/tinymce/skins/content/document/content.js +2 -0
  149. package/packages/rich-editor/tinymce/skins/content/document/content.min.css +1 -0
  150. package/packages/rich-editor/tinymce/skins/content/tinymce-5/content.js +2 -0
  151. package/packages/rich-editor/tinymce/skins/content/tinymce-5/content.min.css +1 -0
  152. package/packages/rich-editor/tinymce/skins/content/tinymce-5-dark/content.js +2 -0
  153. package/packages/rich-editor/tinymce/skins/content/tinymce-5-dark/content.min.css +1 -0
  154. package/packages/rich-editor/tinymce/skins/content/writer/content.js +2 -0
  155. package/packages/rich-editor/tinymce/skins/content/writer/content.min.css +1 -0
  156. package/packages/rich-editor/tinymce/skins/ui/oxide/content.inline.js +2 -0
  157. package/packages/rich-editor/tinymce/skins/ui/oxide/content.inline.min.css +1 -0
  158. package/packages/rich-editor/tinymce/skins/ui/oxide/content.js +2 -0
  159. package/packages/rich-editor/tinymce/skins/ui/oxide/content.min.css +1 -0
  160. package/packages/rich-editor/tinymce/skins/ui/oxide/skin.js +2 -0
  161. package/packages/rich-editor/tinymce/skins/ui/oxide/skin.min.css +1 -0
  162. package/packages/rich-editor/tinymce/skins/ui/oxide/skin.shadowdom.js +2 -0
  163. package/packages/rich-editor/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -0
  164. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/content.inline.js +2 -0
  165. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -0
  166. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/content.js +2 -0
  167. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/content.min.css +1 -0
  168. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/skin.js +2 -0
  169. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/skin.min.css +1 -0
  170. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/skin.shadowdom.js +2 -0
  171. package/packages/rich-editor/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -0
  172. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/content.inline.js +2 -0
  173. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -0
  174. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/content.js +2 -0
  175. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/content.min.css +1 -0
  176. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/skin.js +2 -0
  177. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/skin.min.css +1 -0
  178. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/skin.shadowdom.js +2 -0
  179. package/packages/rich-editor/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -0
  180. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/content.inline.js +2 -0
  181. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -0
  182. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/content.js +2 -0
  183. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -0
  184. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/skin.js +2 -0
  185. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -0
  186. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js +2 -0
  187. package/packages/rich-editor/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -0
  188. package/packages/rich-editor/tinymce/themes/silver/theme.min.js +4 -0
  189. package/packages/rich-editor/tinymce/tinymce.d.ts +3238 -0
  190. package/packages/rich-editor/tinymce/tinymce.min.js +4 -0
  191. package/packages/rich-editor/tinymce/zh_CN.js +418 -0
  192. package/packages/rich-editor/viewer.vue +105 -0
  193. package/packages/scan-code-input/index.js +6 -0
  194. package/packages/scan-code-input/src/events.js +34 -0
  195. package/packages/scan-code-input/src/scan-code-input-colse.vue +140 -0
  196. package/packages/scan-code-input/src/scan-code-input.vue +132 -0
  197. package/packages/secret-info/index.js +7 -0
  198. package/packages/secret-info/index.vue +100 -0
  199. package/packages/super-grid/index.js +7 -0
  200. package/packages/super-grid/src/apis.js +1193 -0
  201. package/packages/super-grid/src/columns-config.vue +429 -0
  202. package/packages/super-grid/src/components/grid-icon.vue +162 -0
  203. package/packages/super-grid/src/components/hyperlinks.vue +114 -0
  204. package/packages/super-grid/src/custom-formatter.js +430 -0
  205. package/packages/super-grid/src/dynamic-input.vue +1473 -0
  206. package/packages/super-grid/src/eventBus.js +10 -0
  207. package/packages/super-grid/src/events.js +56 -0
  208. package/packages/super-grid/src/formValidatorUtil.js +300 -0
  209. package/packages/super-grid/src/formatter.js +196 -0
  210. package/packages/super-grid/src/group-column.vue +99 -0
  211. package/packages/super-grid/src/header-context-menu.vue +82 -0
  212. package/packages/super-grid/src/index-column.vue +69 -0
  213. package/packages/super-grid/src/normal-column.vue +1239 -0
  214. package/packages/super-grid/src/public-methods.js +30 -0
  215. package/packages/super-grid/src/row-operation.vue +193 -0
  216. package/packages/super-grid/src/search-button.vue +79 -0
  217. package/packages/super-grid/src/search-condition-input.vue +74 -0
  218. package/packages/super-grid/src/search-condition-list.vue +70 -0
  219. package/packages/super-grid/src/search-form-advancedQuery.vue +833 -0
  220. package/packages/super-grid/src/search-form-dialog.vue +77 -0
  221. package/packages/super-grid/src/search-form-item.vue +496 -0
  222. package/packages/super-grid/src/search-form-number.vue +111 -0
  223. package/packages/super-grid/src/search-form-open.vue +178 -0
  224. package/packages/super-grid/src/search-form-ordinarySearch.vue +248 -0
  225. package/packages/super-grid/src/search-form.vue +767 -0
  226. package/packages/super-grid/src/search-methods.js +591 -0
  227. package/packages/super-grid/src/selection-column.vue +46 -0
  228. package/packages/super-grid/src/store.js +3 -0
  229. package/packages/super-grid/src/super-grid-service.js +729 -0
  230. package/packages/super-grid/src/super-grid.vue +3025 -0
  231. package/packages/super-grid/src/utils.js +880 -0
  232. package/packages/super-grid/src/view-image-dialog.vue +190 -0
  233. package/packages/super-nine-grid/index.js +7 -0
  234. package/packages/super-nine-grid/src/apis.js +108 -0
  235. package/packages/super-nine-grid/src/custom-formatter.js +73 -0
  236. package/packages/super-nine-grid/src/formatter.js +134 -0
  237. package/packages/super-nine-grid/src/search-form-number.vue +35 -0
  238. package/packages/super-nine-grid/src/search-form.vue +704 -0
  239. package/packages/super-nine-grid/src/search-methods.js +151 -0
  240. package/packages/super-nine-grid/src/store.js +3 -0
  241. package/packages/super-nine-grid/src/super-grid-service.js +108 -0
  242. package/packages/super-nine-grid/src/super-nine-grid.vue +1211 -0
  243. package/packages/super-nine-grid/src/utils.js +264 -0
  244. package/packages/svg-icon/index.js +6 -0
  245. package/packages/svg-icon/src/svg-icon.vue +43 -0
  246. package/packages/utils/date-util.js +292 -0
  247. package/packages/utils/dom.js +227 -0
  248. package/packages/utils/gogocodeTransfer.js +59 -0
  249. package/packages/utils/memory-cache-utils.js +117 -0
  250. package/packages/utils/utils.js +180 -0
  251. package/packages/utils/value-set.js +97 -0
  252. package/packages/valid-code/index.js +7 -0
  253. package/packages/valid-code/src/valid-code.vue +104 -0
  254. package/packages/workflow-button/index.js +6 -0
  255. package/packages/workflow-button/src/workflow-button.vue +569 -0
  256. package/packages/workflow-history-list/index.js +6 -0
  257. package/packages/workflow-history-list/src/api.js +7 -0
  258. package/packages/workflow-history-list/src/workflow-history-list.vue +302 -0
  259. package/packages/workgroup-tree/index.js +6 -0
  260. package/packages/workgroup-tree/src/workgroup-tree.vue +87 -0
  261. package/packages/workgroup-tree-inline/index.js +6 -0
  262. package/packages/workgroup-tree-inline/src/search-result.vue +226 -0
  263. package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +539 -0
  264. package/packages/workgroup-tree-inline/src/workgroup-tree-service.js +93 -0
  265. package/packages/workgroup-user-tree/index.js +6 -0
  266. package/packages/workgroup-user-tree/src/workgroup-user-tree.vue +104 -0
  267. package/packages/workgroup-user-tree-inline/index.js +9 -0
  268. package/packages/workgroup-user-tree-inline/src/search-result.vue +270 -0
  269. package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +239 -0
  270. package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +681 -0
  271. package/packages/year-range-picker/index.js +6 -0
  272. package/packages/year-range-picker/src/year-range-picker.vue +53 -0
  273. package/public/vite.svg +1 -0
  274. package/src/api/sso-service.js +193 -0
  275. package/src/api/tab.js +36 -0
  276. package/src/api/user-service.js +11 -0
  277. package/src/assets/401/401.gif +0 -0
  278. package/src/assets/404/404-cloud.png +0 -0
  279. package/src/assets/404/404.png +0 -0
  280. package/src/assets/cloud.png +0 -0
  281. package/src/assets/nonemessage.png +0 -0
  282. package/src/directives/permission/index.js +13 -0
  283. package/src/directives/permission/permission.js +20 -0
  284. package/src/i18n/i18n.js +16 -0
  285. package/src/i18n/langs/cn.js +266 -0
  286. package/src/i18n/langs/en.js +276 -0
  287. package/src/index.js +93 -0
  288. package/src/permission.js +242 -0
  289. package/src/plugins.js +18 -0
  290. package/src/router/index.js +92 -0
  291. package/src/store/getters.js +15 -0
  292. package/src/store/index.js +19 -0
  293. package/src/store/modules/app.js +54 -0
  294. package/src/store/modules/permission.js +143 -0
  295. package/src/store/modules/tab-content.js +36 -0
  296. package/src/store/modules/user.js +365 -0
  297. package/src/styles/display-layout.scss +34 -0
  298. package/src/styles/element-ui.scss +29 -0
  299. package/src/styles/index.scss +157 -0
  300. package/src/styles/mixin.scss +27 -0
  301. package/src/styles/theme/black/font-style.scss +70 -0
  302. package/src/styles/theme/black/index.scss +306 -0
  303. package/src/styles/theme/black/sidebar.scss +189 -0
  304. package/src/styles/theme/blue/font-style.scss +46 -0
  305. package/src/styles/theme/blue/index.scss +172 -0
  306. package/src/styles/theme/blue/sidebar.scss +171 -0
  307. package/src/styles/theme/blue2/font-style.scss +70 -0
  308. package/src/styles/theme/blue2/index.scss +188 -0
  309. package/src/styles/theme/blue2/sidebar.scss +201 -0
  310. package/src/styles/theme/dark-blue/button.scss +78 -0
  311. package/src/styles/theme/dark-blue/card.scss +63 -0
  312. package/src/styles/theme/dark-blue/checkbox.scss +10 -0
  313. package/src/styles/theme/dark-blue/dark-blue-var.scss +9 -0
  314. package/src/styles/theme/dark-blue/dialog.scss +17 -0
  315. package/src/styles/theme/dark-blue/element-variables.scss +7 -0
  316. package/src/styles/theme/dark-blue/font.scss +71 -0
  317. package/src/styles/theme/dark-blue/form.scss +51 -0
  318. package/src/styles/theme/dark-blue/index.scss +277 -0
  319. package/src/styles/theme/dark-blue/input.scss +15 -0
  320. package/src/styles/theme/dark-blue/message.scss +8 -0
  321. package/src/styles/theme/dark-blue/pagination.scss +18 -0
  322. package/src/styles/theme/dark-blue/radio.scss +13 -0
  323. package/src/styles/theme/dark-blue/scrollbar-style.scss +32 -0
  324. package/src/styles/theme/dark-blue/sidebar.scss +268 -0
  325. package/src/styles/theme/dark-blue/tab.scss +83 -0
  326. package/src/styles/theme/dark-blue/table.scss +60 -0
  327. package/src/styles/theme/dark-blue/tree.scss +57 -0
  328. package/src/styles/theme/dark-blue/var.scss +1028 -0
  329. package/src/styles/theme/gray/card-style.scss +54 -0
  330. package/src/styles/theme/gray/font-style.scss +70 -0
  331. package/src/styles/theme/gray/index.scss +172 -0
  332. package/src/styles/theme/gray/input-style.scss +19 -0
  333. package/src/styles/theme/gray/scrollbar-style.scss +32 -0
  334. package/src/styles/theme/gray/sidebar.scss +243 -0
  335. package/src/styles/theme/gray/tab-style.scss +81 -0
  336. package/src/styles/transition.scss +47 -0
  337. package/src/utils/auth-api.js +259 -0
  338. package/src/utils/auth.js +98 -0
  339. package/src/utils/calculator/calculator-factory-wf.js +558 -0
  340. package/src/utils/calculator/calculator-factory.js +145 -0
  341. package/src/utils/calculator/calculator-util.js +166 -0
  342. package/src/utils/common-util.js +474 -0
  343. package/src/utils/eventBus.js +10 -0
  344. package/src/utils/iconUtils.js +37 -0
  345. package/src/utils/index.js +102 -0
  346. package/src/utils/jump-page-utils.js +824 -0
  347. package/src/utils/local-storage.js +33 -0
  348. package/src/utils/menu.js +19 -0
  349. package/src/utils/permission.js +31 -0
  350. package/src/utils/permissionAuth.js +121 -0
  351. package/src/utils/range-selector.js +204 -0
  352. package/src/utils/request.js +280 -0
  353. package/src/utils/restful-interface-utils.js +57 -0
  354. package/src/utils/util.js +910 -0
  355. package/src/utils/validate.js +34 -0
  356. package/src/utils/watermark.js +108 -0
  357. package/src/utils/workflow-util.js +104 -0
  358. package/src/views/404.vue +248 -0
  359. package/src/views/dsc-component/Sidebar/Item.vue +81 -0
  360. package/src/views/dsc-component/Sidebar/Link.vue +38 -0
  361. package/src/views/dsc-component/Sidebar/SidebarItem.vue +197 -0
  362. package/src/views/dsc-component/Sidebar/index.vue +229 -0
  363. package/src/views/dsc-component/tabs/tab-content.vue +215 -0
  364. package/src/views/error-page/401.vue +106 -0
  365. package/src/views/error-page/404.vue +248 -0
  366. package/src/views/layout/EmptyLayout.vue +3 -0
  367. package/src/views/layout/Layout.vue +81 -0
  368. package/src/views/layout/NewLayout.vue +18 -0
  369. package/src/views/layout/components/AppMain.vue +39 -0
  370. package/src/views/layout/components/Breadcrumb/index.vue +158 -0
  371. package/src/views/layout/components/Menubar/Item.vue +79 -0
  372. package/src/views/layout/components/Menubar/Link.vue +38 -0
  373. package/src/views/layout/components/Menubar/SidebarItem.vue +261 -0
  374. package/src/views/layout/components/Menubar/index.vue +210 -0
  375. package/src/views/layout/components/Sidebar/Item.vue +53 -0
  376. package/src/views/layout/components/Sidebar/Link.vue +38 -0
  377. package/src/views/layout/components/Sidebar/SidebarItem.vue +135 -0
  378. package/src/views/layout/components/Sidebar/index.vue +141 -0
  379. package/src/views/layout/components/iframe-page.vue +38 -0
  380. package/src/views/layout/components/index.js +4 -0
  381. package/src/views/layout/components/tabs/tab-content.vue +214 -0
  382. package/src/views/layout/mixin/ResizeHandler.js +41 -0
  383. package/src/views/layout/tab-content-iframe-index.vue +38 -0
  384. package/src/views/layout/tab-content-index.vue +92 -0
  385. package/src/views/login/authredirect.vue +10 -0
  386. package/src/views/login/index.vue +296 -0
  387. package/src/views/login/update-password.vue +243 -0
  388. package/src/views/redirect/index.vue +14 -0
  389. package/src/views/svg-icon/index.js +6 -0
  390. package/src/views/svg-icon/src/svg-icon.vue +46 -0
  391. package/src/views/wf-history/tache-subprocess-history.vue +45 -0
  392. package/vite.config.js +37 -0
@@ -0,0 +1,1193 @@
1
+ import { $on, $off, $once, $emit } from '../../utils/gogocodeTransfer'
2
+ import store from './store'
3
+ import {
4
+ setCurrentRow,
5
+ isEditOptionFunction,
6
+ isLastEditRowSave,
7
+ isHasEditOption,
8
+ scrollYToBottom,
9
+ getAdditionalParamMap,
10
+ isDynamicDataSourceSource
11
+ } from './utils'
12
+ import formValidatorService from './formValidatorUtil'
13
+ import * as Vue from 'vue'
14
+ import {
15
+ getEntityFieldValue,
16
+ getI18n,
17
+ setEntityFieldValue,
18
+ getPropValue,
19
+ } from '../../../src/utils/util'
20
+ import eventBus from './eventBus'
21
+ import { isPromise } from '../../../src/utils/common-util'
22
+ import { updateWithPageValue } from '../../../src/utils/jump-page-utils'
23
+ const apis = {
24
+ // 列表工具栏控件刷新列表数据。添加该方法解决工具栏值清空后,列表内容没有还原问题
25
+ toolbarRefresh(parentRowIds, isLineEdit, toolbarFieldParam, isDeleteSubTableData) {
26
+ this.toolbarFieldParam = toolbarFieldParam
27
+ return this.refresh(parentRowIds, isLineEdit, toolbarFieldParam, isDeleteSubTableData)
28
+ },
29
+ // 刷新列表数据
30
+ refresh(parentRowIds, isLineEdit, toolbarFieldParam, isDeleteSubTableData) {
31
+ return new Promise((resolve, reject) => {
32
+ if (isDeleteSubTableData) {
33
+ // 清空options.subTableData
34
+ const gridParams = store.get(this.code)
35
+ gridParams.options['subTableData'] = null
36
+ }
37
+ if (!toolbarFieldParam && this.toolbarFieldParam) {
38
+ toolbarFieldParam = this.toolbarFieldParam
39
+ }
40
+ if (this.$refs) {
41
+ if (
42
+ typeof parentRowIds !== 'undefined' &&
43
+ parentRowIds !== null &&
44
+ parentRowIds instanceof Array &&
45
+ parentRowIds.length > 0
46
+ ) {
47
+ // 树形数据时,刷新父记录对应的子记录集合时
48
+ if (this.$refs.sf) {
49
+ let param = this.$refs.sf.packageSearchParam()
50
+ if (param && param.length > 0) {
51
+ if (toolbarFieldParam && toolbarFieldParam.length > 0) {
52
+ if (param.length === 1) {
53
+ param[0].leftBracket = '('
54
+ param[0].rightBracket = ')'
55
+ }
56
+ if (param[param.length - 1].joinSign === 'or') {
57
+ param[param.length - 1].joinSign = 'and'
58
+ }
59
+ // 拼接
60
+ Array.prototype.push.apply(param, toolbarFieldParam)
61
+ }
62
+ } else {
63
+ if (toolbarFieldParam) {
64
+ param = []
65
+ param = toolbarFieldParam
66
+ }
67
+ }
68
+ this.search(param, false, parentRowIds)
69
+ .then(() => resolve())
70
+ .catch((error) => reject(error))
71
+ } else {
72
+ this.search(toolbarFieldParam, false, parentRowIds)
73
+ .then(() => resolve())
74
+ .catch((error) => reject(error))
75
+ }
76
+ } else {
77
+ // 刷新列表数据
78
+ if (this.$refs.sf) {
79
+ let param = this.$refs.sf.packageSearchParam()
80
+ if (param && param.length > 0) {
81
+ if (toolbarFieldParam && toolbarFieldParam.length > 0) {
82
+ if (param.length === 1) {
83
+ param[0].leftBracket = '('
84
+ param[0].rightBracket = ')'
85
+ }
86
+ if (param[param.length - 1].joinSign === 'or') {
87
+ param[param.length - 1].joinSign = 'and'
88
+ }
89
+ // 拼接
90
+ // param.concat(toolbarFieldParam)
91
+ Array.prototype.push.apply(param, toolbarFieldParam)
92
+ }
93
+ } else {
94
+ if (toolbarFieldParam) {
95
+ param = []
96
+ param = toolbarFieldParam
97
+ }
98
+ }
99
+ this.search(param, false)
100
+ .then(() => resolve())
101
+ .catch((error) => reject(error))
102
+ } else {
103
+ this.search(toolbarFieldParam, false)
104
+ .then(() => resolve())
105
+ .catch((error) => reject(error))
106
+ }
107
+ }
108
+ } else {
109
+ resolve()
110
+ }
111
+ })
112
+ },
113
+ // 显示查询
114
+ showSearchForm() {
115
+ this.showSearch = true
116
+ $emit(this, 'showSearch')
117
+ },
118
+ // 取消查询
119
+ cancelSearch() {
120
+ this.showSearch = false
121
+ $emit(this, 'cancelSearch')
122
+ },
123
+ // 获得查询条件
124
+ getSearchForm() {
125
+ const gridParams = store.get(this.code)
126
+ if (gridParams.searchForm) {
127
+ return gridParams.searchForm
128
+ } else {
129
+ return []
130
+ }
131
+ },
132
+ // 新建行
133
+ createRow(listCode, row) {
134
+ return new Promise((resolve, reject) => {
135
+ if (!listCode) {
136
+ listCode = store.get('_list_code')
137
+ }
138
+ const gridParams = store.get(listCode)
139
+ const gridData = gridParams.gridData
140
+ gridParams.superGrid.clearSort()
141
+ // console.log('创建行记录的条件1', gridParams.lineEdit)
142
+ // console.log('创建行记录的条件2', gridParams.lineEdit.editable)
143
+ // console.log('创建行记录的条件3', gridParams.loaded)
144
+ if (
145
+ gridParams.lineEdit &&
146
+ gridParams.lineEdit.editable &&
147
+ typeof gridParams.loaded !== 'undefined' &&
148
+ gridParams.loaded === true
149
+ ) {
150
+ // gridParams.loaded表示列表数据是否已加载成功,加载成功才允许新建记录
151
+ // 插入行前的回调
152
+ let canCreate = true
153
+ if (isEditOptionFunction('beforeInsertRow', listCode)) {
154
+ const isSubTableShowPage = gridParams.isSubTableShowPage
155
+ // 每页显示多少条
156
+ const pageSize = gridParams.pagination && gridParams.pagination.pageSize
157
+ const isMobile = false
158
+ canCreate = gridParams.options.lineEditOptions.beforeInsertRow.call(
159
+ this,
160
+ isSubTableShowPage ? gridParams.subTableData : gridParams.gridData,
161
+ gridParams.$rowIndex,
162
+ isMobile,
163
+ this.baseURL,
164
+ isSubTableShowPage ? gridParams.gridData : null,
165
+ pageSize,
166
+ gridParams.additionalParamMap,
167
+ row
168
+ )
169
+ }
170
+ // console.log('创建行记录执行前判断', canCreate)
171
+ // console.log('创建行记录gridParams.options.isFormSubTable=', gridParams.options.isFormSubTable)
172
+ if (canCreate === undefined || canCreate === true) {
173
+ if (gridParams.options && gridParams.options.isFormSubTable) {
174
+ // 如果是表单子表模式,则不需要判断上一行是否是编辑状态
175
+ // 取消上一行的编辑状态
176
+ let myGridData = gridParams.gridData
177
+ if (
178
+ gridParams.isSubTableShowPage !== undefined &&
179
+ gridParams.isSubTableShowPage === true
180
+ ) {
181
+ // 子表集合
182
+ myGridData = gridParams.subTableData
183
+ }
184
+ const editRows = myGridData.filter(
185
+ (row) => row.$editing !== undefined && row.$editing === true
186
+ )
187
+ if (editRows && editRows.length > 0) {
188
+ editRows.forEach((editRow) => {
189
+ setEntityFieldValue(editRow, '$editing', false)
190
+ // 取消上一行选中状态时,触发un-edit事件,处理下拉多选选项组问题
191
+ $emit(eventBus, 'un-edit', { row: editRow })
192
+ // Vue.set(editRow, '$editing', false)
193
+ })
194
+ }
195
+ gridParams.isEditRow = false
196
+ } else {
197
+ if (
198
+ !isLastEditRowSave(listCode) ||
199
+ (typeof gridParams.isCreateRow !== 'undefined' &&
200
+ gridParams.isCreateRow === true)
201
+ ) {
202
+ // 最后编辑的一行没有保存 或(说明刚刚新建的行还没有保存 或 撤销编辑),则提示
203
+ window.$vueApp.config.globalProperties.$message({
204
+ showClose: true,
205
+ message: getI18n().t('superGrid.pleaseSaveLine', {
206
+ row: gridParams.$rowIndex + 1,
207
+ }),
208
+ type: 'warning',
209
+ })
210
+ reject(new Error('please save line'))
211
+ return
212
+ }
213
+ // 取消上一行的编辑状态
214
+ if (
215
+ typeof gridParams.$rowIndex !== 'undefined' &&
216
+ gridParams.$rowIndex !== null &&
217
+ gridParams.$rowIndex < gridParams.gridData.length
218
+ ) {
219
+ // 表示是有效行
220
+ const lastEditRow = gridParams.gridData[gridParams.$rowIndex]
221
+ setEntityFieldValue(lastEditRow, '$editing', false)
222
+ // Vue.set(lastEditRow, '$editing', false)
223
+ gridParams.isEditRow = false
224
+ }
225
+ }
226
+ // 新建行
227
+ row = this.getNewRow(
228
+ gridParams.defaultValueColumns,
229
+ gridParams.additionalParamMap,
230
+ gridParams.contextParameter,
231
+ row
232
+ )
233
+
234
+ // console.log('创建行记录要添加的新行1', row)
235
+ setEntityFieldValue(row, '$editing', true)
236
+ // Vue.set(row, '$editing', true)
237
+ gridParams.isEditRow = true
238
+ // console.log('创建行记录要添加的新行2', row)
239
+ // console.log('创建行所属的list1', gridData)
240
+ if (gridParams.options && gridParams.options.isFormSubTable) {
241
+ // 表单的子表行编辑时显示是添加到最后面
242
+ if (
243
+ gridParams.isSubTableShowPage !== undefined &&
244
+ gridParams.isSubTableShowPage === true
245
+ ) {
246
+ // 子表集合添加该新建的行。会触发watch subTableData的监控
247
+ gridParams.isChangePage = true
248
+ gridParams.subTableData.splice(
249
+ gridParams.subTableData.length,
250
+ 0,
251
+ row
252
+ )
253
+ } else {
254
+ // 子表不分页
255
+ gridData.splice(gridData.length, 0, row)
256
+ if (gridParams.lineEdit.editingCell) {
257
+ gridParams.lineEdit.editingCell.row = gridData.length
258
+ }
259
+ }
260
+
261
+ gridParams.$rowIndex = gridData.length
262
+ // 滚动条滚到最后
263
+ this.$nextTick(() => {
264
+ scrollYToBottom(listCode)
265
+ })
266
+ } else {
267
+ // 表格行编辑新建时是添加到最前面
268
+ gridData.splice(0, 0, row)
269
+ if (gridParams.lineEdit.editingCell) {
270
+ gridParams.lineEdit.editingCell.row = 0
271
+ }
272
+
273
+ gridParams.$rowIndex = 0
274
+ }
275
+
276
+ // console.log('创建行所属的list2', gridData)
277
+ // console.log('创建行所属的打印gridParams.gridData', gridParams.gridData)
278
+ const orgRow = Object.assign({}, row)
279
+ gridParams.orgGridData.splice(0, 0, orgRow)
280
+ if (!gridParams.lineEdit.editingCell) {
281
+ gridParams.lineEdit.editingCell = {}
282
+ gridParams.lineEdit.validateErrorField = ''
283
+ }
284
+ // 插入行后的回调
285
+ if (isEditOptionFunction('afterInsertRow', listCode)) {
286
+ const isSubTableShowPage = gridParams.isSubTableShowPage
287
+ // 每页显示多少条
288
+ const pageSize =
289
+ gridParams.pagination && gridParams.pagination.pageSize
290
+ const isMobile = false
291
+ gridParams.options.lineEditOptions.afterInsertRow.call(
292
+ this,
293
+ isSubTableShowPage
294
+ ? gridParams.subTableData
295
+ : gridParams.gridData,
296
+ gridParams.$rowIndex,
297
+ isMobile,
298
+ this.baseURL,
299
+ isSubTableShowPage ? gridParams.gridData : null,
300
+ pageSize,
301
+ gridParams.additionalParamMap
302
+ )
303
+ }
304
+
305
+ gridParams.isCreateRow = true
306
+ resolve(row)
307
+ } else {
308
+ reject(new Error('can not create'))
309
+ }
310
+ } else {
311
+ reject(new Error('list not editable or data not loaded completely'))
312
+ }
313
+ })
314
+ },
315
+ // 获取一个新的对象,已经解析完默认值
316
+ getNewRow(
317
+ defaultValueColumns,
318
+ additionalParamMap,
319
+ contextParameter,
320
+ row,
321
+ listCode
322
+ ) {
323
+ if (!row) {
324
+ row = {}
325
+ }
326
+ if (!listCode) {
327
+ listCode = store.get('_list_code')
328
+ }
329
+ const gridParams = store.get(listCode)
330
+ if (gridParams && gridParams.allColumns) {
331
+ this.setColumnsDefaultValue(gridParams.allColumns, row)
332
+ }
333
+ if (defaultValueColumns && defaultValueColumns.length > 0) {
334
+ for (var i = 0; i < defaultValueColumns.length; i++) {
335
+ const col = defaultValueColumns[i]
336
+ if (col && col.prop) {
337
+ const propValue = getEntityFieldValue(row, col.prop)
338
+ if (col.prop !== '$selection' && col.prop !== '$index') {
339
+ if (
340
+ col.defaultValue &&
341
+ col.defaultValue !== '' &&
342
+ (propValue === undefined ||
343
+ propValue === '' ||
344
+ propValue === null)
345
+ ) {
346
+ const value = getPropValue(
347
+ col.defaultValue,
348
+ row,
349
+ additionalParamMap,
350
+ contextParameter
351
+ )
352
+ setEntityFieldValue(row, col.prop, value)
353
+ }
354
+ }
355
+ }
356
+ }
357
+ }
358
+ return row
359
+ },
360
+ // 设置默认值null
361
+ setColumnsDefaultValue(allColumns, row) {
362
+ for (let i = 0; i < allColumns.length; i++) {
363
+ const column = allColumns[i]
364
+ const prop = column.prop
365
+ if (prop === '$index' || prop === '$selection' || prop === 'operation') {
366
+ continue
367
+ }
368
+ if (column.hasOwnProperty('children')) {
369
+ // 表示是组合表头,需要判断子表头是否显示
370
+ this.setChildrenColumnsDefaultValue(column.children, row)
371
+ } else {
372
+ if (row[prop] === undefined) {
373
+ // 不是操作列,才需要设值
374
+ setEntityFieldValue(row, prop, null)
375
+ }
376
+ }
377
+ }
378
+ setEntityFieldValue(row, '$editing', false)
379
+ },
380
+ setChildrenColumnsDefaultValue(children, row) {
381
+ for (let i = 0; i < children.length; i++) {
382
+ const column = children[i]
383
+ const prop = column.prop
384
+ if (column.hasOwnProperty('children')) {
385
+ // 表示是组合表头,需要判断子表头是否显示
386
+ this.setChildrenColumnsDefaultValue(column.children, row)
387
+ } else {
388
+ if (row[prop] === undefined) {
389
+ if (prop !== 'operation') {
390
+ // 不是操作列,才需要设值
391
+ setEntityFieldValue(row, prop, null)
392
+ }
393
+ }
394
+ }
395
+ }
396
+ },
397
+ // 编辑行
398
+ editRow(rowIndex, listCode, isSaveCallback) {
399
+ if (!listCode) {
400
+ listCode = store.get('_list_code')
401
+ }
402
+ const gridParams = store.get(listCode)
403
+ if (gridParams && gridParams.lineEdit && gridParams.lineEdit.editable) {
404
+ if (
405
+ typeof gridParams.$rowIndex !== 'undefined' &&
406
+ gridParams.$rowIndex !== null &&
407
+ gridParams.$rowIndex !== rowIndex
408
+ ) {
409
+ // 不是当前编辑行时
410
+ if (
411
+ typeof gridParams.options.lineEditOptions.autoSave === 'undefined' ||
412
+ (isHasEditOption('autoSave', listCode) &&
413
+ gridParams.options.lineEditOptions.autoSave === true)
414
+ ) {
415
+ // 自动保存行数据
416
+ if (!isSaveCallback) {
417
+ // 点击了“编辑”按钮时需要走,不是自动保存行数据后回调方法中调用的editRow时
418
+ this.saveRow(gridParams.$rowIndex, listCode).then((res) => {
419
+ this.editRow(rowIndex, listCode, true)
420
+ })
421
+ return
422
+ }
423
+ } else {
424
+ // 如果不自动保存,则提示数据没有保存,让用户自己保存
425
+ if (!isLastEditRowSave(listCode)) {
426
+ // 最后编辑的一行没有保存,则提示
427
+ window.$vueApp.config.globalProperties.$message({
428
+ showClose: true,
429
+ message: getI18n().t('superGrid.pleaseSaveLine', {
430
+ row: gridParams.$rowIndex + 1,
431
+ }),
432
+ type: 'warning',
433
+ })
434
+ return
435
+ }
436
+ }
437
+ }
438
+
439
+ let canEdit = true
440
+ if (isEditOptionFunction('beforeEdit', listCode)) {
441
+ const isSubTableShowPage = gridParams.isSubTableShowPage
442
+ // 每页显示多少条
443
+ const pageSize = gridParams.pagination && gridParams.pagination.pageSize
444
+ canEdit = gridParams.options.lineEditOptions.beforeEdit.call(this, {
445
+ gridData: isSubTableShowPage
446
+ ? gridParams.subTableData
447
+ : gridParams.gridData,
448
+ listCode: listCode,
449
+ entity: gridParams.gridData[rowIndex],
450
+ row: gridParams.gridData[rowIndex],
451
+ rowIndex: rowIndex,
452
+ columns: gridParams.columns,
453
+ isMobile: false,
454
+ pageGridData: isSubTableShowPage ? gridParams.gridData : null,
455
+ pageSize,
456
+ additionalParamMap: getAdditionalParamMap(gridParams),
457
+ })
458
+ }
459
+ if (isPromise(canEdit)) {
460
+ canEdit.then((result) => {
461
+ if (result === undefined || result === true) {
462
+ this.doEditRow(gridParams, rowIndex)
463
+ }
464
+ })
465
+ } else {
466
+ if (canEdit === undefined || canEdit === true) {
467
+ this.doEditRow(gridParams, rowIndex)
468
+ }
469
+ }
470
+ }
471
+ },
472
+ doEditRow(gridParams, rowIndex) {
473
+ // 取消上一行的编辑状态
474
+ if (
475
+ typeof gridParams.$rowIndex !== 'undefined' &&
476
+ gridParams.$rowIndex !== null &&
477
+ gridParams.$rowIndex < gridParams.gridData.length
478
+ ) {
479
+ const lastEditRow = gridParams.gridData[gridParams.$rowIndex]
480
+ setEntityFieldValue(lastEditRow, '$editing', false)
481
+ // Vue.set(lastEditRow, '$editing', false)
482
+ gridParams.isEditRow = false
483
+ }
484
+ // 使指定行变为编辑状态
485
+ const row = gridParams.gridData[rowIndex]
486
+ setEntityFieldValue(row, '$editing', true)
487
+ // Vue.set(row, '$editing', true)
488
+ gridParams.$lastSaveRowIndex = null
489
+ gridParams.$rowIndex = rowIndex
490
+ gridParams.isEditRow = true
491
+ // 使指定行变为编辑状态,触发获得焦点
492
+ if (gridParams.lineEdit.editingCell) {
493
+ gridParams.lineEdit.editingCell.row = rowIndex
494
+ }
495
+ },
496
+ saveRow(rowIndex, listCode) {
497
+ return new Promise((resolve, reject) => {
498
+ const vm = this
499
+ // 添加setTimeout是因为保存时事件和input等组件的@blur冲突,导致保存需要保存两次
500
+ setTimeout(function () {
501
+ vm.saveCurrentRow(rowIndex, listCode).then((data) => {
502
+ resolve(data)
503
+ })
504
+ }, 100)
505
+ })
506
+ },
507
+ saveCurrentRow(rowIndex, listCode) {
508
+ return new Promise((resolve, reject) => {
509
+ if (!listCode) {
510
+ listCode = store.get('_list_code')
511
+ }
512
+ const gridParams = store.get(listCode)
513
+ if (gridParams.lineEdit && gridParams.lineEdit.editable) {
514
+ if (
515
+ typeof gridParams.gridData[rowIndex].$editing === 'undefined' ||
516
+ gridParams.gridData[rowIndex].$editing === false
517
+ ) {
518
+ window.$vueApp.config.globalProperties.$message({
519
+ showClose: true,
520
+ message: getI18n().t('superGrid.noNeedToSaveRow', {
521
+ row: rowIndex + 1,
522
+ }),
523
+ type: 'warning',
524
+ })
525
+ return
526
+ }
527
+ // console.log('gridParams', gridParams)
528
+ if (gridParams.$rowIndex !== rowIndex && !isLastEditRowSave(listCode)) {
529
+ // 最后编辑的一行没有保存,则提示
530
+ window.$vueApp.config.globalProperties.$message({
531
+ showClose: true,
532
+ message: getI18n().t('superGrid.pleaseSaveLine', {
533
+ row: gridParams.$rowIndex + 1,
534
+ }),
535
+ type: 'warning',
536
+ })
537
+ return
538
+ }
539
+ gridParams.$lastSaveRowIndex = null
540
+ if (
541
+ gridParams.isHasDynamic !== undefined &&
542
+ gridParams.isHasDynamic === false &&
543
+ !gridParams.lineEdit.urlToSaveRow &&
544
+ !isHasEditOption('urlToSaveRow', listCode) &&
545
+ !isEditOptionFunction('saveRow', listCode)
546
+ ) {
547
+ window.$vueApp.config.globalProperties.$message({
548
+ showClose: true,
549
+ message: getI18n().t('superGrid.pleaseSetURLToSaveRowInformation'),
550
+ type: 'warning',
551
+ })
552
+ return
553
+ }
554
+ if (!gridParams.canSaveRow) {
555
+ // 防止重复保存
556
+ return
557
+ }
558
+ gridParams.canSaveRow = false
559
+ const row = gridParams.gridData[rowIndex]
560
+ let needValidate = true
561
+ if (isHasEditOption('isEnableValidate', listCode)) {
562
+ // 表示配置了是否启用必填验证
563
+ needValidate = gridParams.options.lineEditOptions['isEnableValidate']
564
+ }
565
+ let validateResult = true
566
+ if (needValidate === true) {
567
+ validateResult = formValidatorService.validator(
568
+ row,
569
+ listCode,
570
+ rowIndex
571
+ )
572
+ }
573
+ if (validateResult === true) {
574
+ let canSave = true
575
+ if (isEditOptionFunction('beforeSave', listCode)) {
576
+ canSave = gridParams.options.lineEditOptions['beforeSave'].call(
577
+ this,
578
+ row,
579
+ gridParams.columns,
580
+ gridParams.additionalParamMap
581
+ )
582
+ }
583
+ if (canSave === undefined || canSave === true) {
584
+ // 触发点击保存时的事件线,在 normal-column 监听处对字段控件是选项组的字段的值进行处理
585
+ $emit(eventBus, 'un-edit', { row })
586
+ const additionalParamMap = getAdditionalParamMap(gridParams)
587
+ let saveRowRequest
588
+ if (isEditOptionFunction('saveRow', listCode)) {
589
+ // 表示保存方法,用户自己重写了
590
+ saveRowRequest = gridParams.options.lineEditOptions[
591
+ 'saveRow'
592
+ ].call(
593
+ this,
594
+ row,
595
+ gridParams.columns,
596
+ gridParams.$dataTypeMap,
597
+ gridParams.dynamicColumnInfo,
598
+ additionalParamMap,
599
+ gridParams.mainDefaultValueColumns
600
+ )
601
+ }
602
+ if (
603
+ !saveRowRequest &&
604
+ gridParams.lineEdit &&
605
+ gridParams.lineEdit.urlToSaveRow
606
+ ) {
607
+ // 使用默认的保存实现
608
+ let urlToSaveRow = gridParams.lineEdit.urlToSaveRow
609
+ if (isHasEditOption('urlToSaveRow', listCode)) {
610
+ // 表示手动配置了保存行记录的url
611
+ urlToSaveRow =
612
+ gridParams.options.lineEditOptions['urlToSaveRow']
613
+ }
614
+ saveRowRequest =
615
+ window.$vueApp.config.globalProperties.$http.post(
616
+ window.$vueApp.config.globalProperties.baseURL + urlToSaveRow,
617
+ row
618
+ )
619
+ }
620
+ if (
621
+ gridParams.isHasDynamic !== undefined &&
622
+ gridParams.isHasDynamic === true &&
623
+ !saveRowRequest
624
+ ) {
625
+ // 表示有动态列,保存时使用平台封装好的请求
626
+ const urlToSaveRow = '/common/dynamic-values'
627
+ const dynamicValueDTO = {
628
+ mainTableName:
629
+ gridParams.basicInfo && gridParams.basicInfo.tableName
630
+ ? gridParams.basicInfo.tableName
631
+ : '',
632
+ row: row,
633
+ dynamicColumnInfo: gridParams.dynamicColumnInfo,
634
+ additionalParamMap: additionalParamMap,
635
+ dataTypeMap: gridParams.$dataTypeMap,
636
+ dynamicServiceName: gridParams.dynamicServiceName,
637
+ mainDefaultValueColumns: gridParams.mainDefaultValueColumns,
638
+ }
639
+ saveRowRequest =
640
+ window.$vueApp.config.globalProperties.$http.post(
641
+ window.$vueApp.config.globalProperties.baseURL + urlToSaveRow,
642
+ dynamicValueDTO
643
+ )
644
+ }
645
+ if (saveRowRequest) {
646
+ saveRowRequest
647
+ .then((data) => {
648
+ this.afterSave(gridParams, rowIndex, listCode, data, row)
649
+ .then((data) => {
650
+ resolve(data)
651
+ })
652
+ .catch((error) => {
653
+ reject(error)
654
+ })
655
+ })
656
+ .catch((error) => {
657
+ gridParams.canSaveRow = true
658
+ if (isEditOptionFunction('saveError', listCode)) {
659
+ gridParams.options.lineEditOptions['saveError'].call(
660
+ this,
661
+ row,
662
+ gridParams.columns,
663
+ rowIndex,
664
+ error
665
+ )
666
+ }
667
+ reject(error)
668
+ })
669
+ } else {
670
+ gridParams.canSaveRow = true
671
+ reject(getI18n().t('saveRowRequest is undefined'))
672
+ }
673
+ } else {
674
+ gridParams.canSaveRow = true
675
+ reject(
676
+ getI18n().t(
677
+ 'superGrid.theReturnValueOfTheBeforesaveCallbackMethodIsFalse'
678
+ )
679
+ )
680
+ }
681
+ } else {
682
+ gridParams.canSaveRow = true
683
+ reject(getI18n().t('imatrixUIMessage.validationFailed'))
684
+ }
685
+ }
686
+ })
687
+ },
688
+ afterSave(gridParams, rowIndex, listCode, data, row) {
689
+ return new Promise((resolve, reject) => {
690
+ gridParams.isCreateRow = false
691
+ gridParams.canSaveRow = true
692
+ gridParams.$rowIndex = null
693
+ // 当前是否有正在编辑的行
694
+ gridParams.isEditRow = false
695
+ gridParams.$lastSaveRowIndex = rowIndex
696
+ window.$vueApp.config.globalProperties.$message({
697
+ showClose: true,
698
+ message: getI18n().t('superGrid.lineSavedSuccessfully', {
699
+ row: rowIndex + 1,
700
+ }),
701
+ type: 'success',
702
+ })
703
+ if (
704
+ typeof gridParams.options.lineEditOptions.aftersaveIsCancelEditState ===
705
+ 'undefined' ||
706
+ (isHasEditOption('aftersaveIsCancelEditState', listCode) &&
707
+ gridParams.options.lineEditOptions.aftersaveIsCancelEditState ===
708
+ true)
709
+ ) {
710
+ // 取消编辑状态
711
+ setEntityFieldValue(row, '$editing', false)
712
+ // Vue.set(row, '$editing', false)
713
+ gridParams.isEditRow = false
714
+ }
715
+
716
+ if (isEditOptionFunction('saveSuccess', listCode)) {
717
+ gridParams.options.lineEditOptions['saveSuccess'].call(
718
+ this,
719
+ data,
720
+ gridParams.columns,
721
+ rowIndex,
722
+ row,
723
+ gridParams.additionalParamMap
724
+ )
725
+ }
726
+ Object.assign(gridParams.orgGridData[rowIndex], data)
727
+ // 必须加这句,否则连续保存时报事务异常
728
+ Object.assign(gridParams.gridData[rowIndex], data)
729
+ // 必须调用这句话,刷新一下列表,否则当前页总条数和记录总条数都会显示错误
730
+ this.refresh(false, true)
731
+ .then(() => {
732
+ if (
733
+ typeof gridParams.options.lineEditOptions.aftersaveIsCreateRow ===
734
+ 'undefined' ||
735
+ gridParams.options.lineEditOptions.aftersaveIsCreateRow
736
+ ) {
737
+ this.createRow(listCode)
738
+ }
739
+ resolve({
740
+ rowIndex,
741
+ listCode,
742
+ })
743
+ })
744
+ .catch((error) => reject(error))
745
+ })
746
+ },
747
+ restoreRow(rowIndex, listCode) {
748
+ // 撤销当前行的编辑的信息
749
+ return new Promise((resolve, reject) => {
750
+ this.restoreCurrentRow(rowIndex, listCode)
751
+ resolve()
752
+ })
753
+ },
754
+ /**
755
+ * 撤销当前指定编辑行的信息
756
+ */
757
+ restoreCurrentRow(rowIndex, listCode) {
758
+ if (!listCode) {
759
+ listCode = store.get('_list_code')
760
+ }
761
+ const gridParams = store.get(listCode)
762
+ // console.log('restoreCurrentRow-gridParams.$rowIndex,rowIndex', gridParams.$rowIndex, rowIndex)
763
+ if (gridParams.lineEdit && gridParams.lineEdit.editable) {
764
+ if (
765
+ gridParams.$rowIndex !== null &&
766
+ gridParams.$rowIndex !== rowIndex &&
767
+ !isLastEditRowSave(listCode)
768
+ ) {
769
+ // 最后编辑的一行没有保存,则提示
770
+ window.$vueApp.config.globalProperties.$message({
771
+ showClose: true,
772
+ message: getI18n().t('superGrid.pleaseSaveLine', {
773
+ row: gridParams.$rowIndex + 1,
774
+ }),
775
+ type: 'warning',
776
+ })
777
+ return
778
+ }
779
+ // true表示没有编辑任何字段,false表示当前行有编辑的字段
780
+ const isUnEditing =
781
+ gridParams.$lastSaveRowIndex !== null &&
782
+ gridParams.$lastSaveRowIndex === rowIndex &&
783
+ typeof gridParams.gridData[rowIndex].id !== 'undefined'
784
+ let isValidate = true
785
+ // 撤销编辑前的回调
786
+ if (isEditOptionFunction('beforeRestoreValidate', listCode)) {
787
+ const isSubTableShowPage = gridParams.isSubTableShowPage
788
+ // 每页显示多少条
789
+ const pageSize = gridParams.pagination && gridParams.pagination.pageSize
790
+ const isMobile = false
791
+ isValidate =
792
+ gridParams.options.lineEditOptions.beforeRestoreValidate.call(this, {
793
+ rowIndex,
794
+ gridData: isSubTableShowPage
795
+ ? gridParams.subTableData
796
+ : gridParams.gridData,
797
+ entity: gridParams.gridData[rowIndex],
798
+ isMobile,
799
+ baseURL: this.baseURL,
800
+ isEditing: !isUnEditing,
801
+ pageGridData: isSubTableShowPage ? gridParams.gridData : null,
802
+ pageSize,
803
+ additionalParamMap: gridParams.additionalParamMap,
804
+ })
805
+ }
806
+ if (isValidate === undefined || isValidate === true) {
807
+ // 例如:自定义验证成功,再继续平台的验证
808
+ if (isUnEditing === true) {
809
+ // 当前行已保存,已是最新数据,无需再撤销编辑
810
+ // console.log('gridParams.gridData[rowIndex].id=', gridParams.gridData[rowIndex].id)
811
+ window.$vueApp.config.globalProperties.$message({
812
+ showClose: true,
813
+ message: getI18n().t('superGrid.lineNoNeedToUndoEdit', {
814
+ row: rowIndex + 1,
815
+ }),
816
+ type: 'warning',
817
+ })
818
+ return
819
+ }
820
+ } else {
821
+ return
822
+ }
823
+ let canRestore = true
824
+ // 撤销编辑前的回调
825
+ if (isEditOptionFunction('beforeRestore', listCode)) {
826
+ const isSubTableShowPage = gridParams.isSubTableShowPage
827
+ // 每页显示多少条
828
+ const pageSize = gridParams.pagination && gridParams.pagination.pageSize
829
+ const isMobile = false
830
+ canRestore = gridParams.options.lineEditOptions.beforeRestore.call(
831
+ this,
832
+ {
833
+ rowIndex,
834
+ gridData: isSubTableShowPage
835
+ ? gridParams.subTableData
836
+ : gridParams.gridData,
837
+ entity: gridParams.gridData[rowIndex],
838
+ isMobile,
839
+ baseURL: window.$vueApp.config.globalProperties.baseURL,
840
+ isEditing: !isUnEditing,
841
+ pageGridData: isSubTableShowPage ? gridParams.gridData : null,
842
+ pageSize,
843
+ additionalParamMap: gridParams.additionalParamMap,
844
+ }
845
+ )
846
+ }
847
+ if (canRestore === undefined || canRestore === true) {
848
+ // 如果没有编辑过任何行
849
+ if (
850
+ !gridParams.orgGridData[rowIndex].id &&
851
+ !gridParams.orgGridData[rowIndex].ID
852
+ ) {
853
+ // 表示没有保存行数据,需要删除该行记录
854
+ this.deleteRow(rowIndex, listCode, true)
855
+ } else {
856
+ // 这样写会导致“如果字段值原来是空的,输入了内容后,取消编辑没法把输入的值清空”问题
857
+ // Object.assign(gridParams.gridData[rowIndex], gridParams.orgGridData[rowIndex])
858
+ // 所以改成如下写法
859
+ gridParams.gridData[rowIndex] = JSON.parse(
860
+ JSON.stringify(gridParams.orgGridData[rowIndex])
861
+ )
862
+ if (
863
+ gridParams.isSubTableShowPage !== undefined &&
864
+ gridParams.isSubTableShowPage === true
865
+ ) {
866
+ // 子表集合移除该行。会触发watch subTableData的监控
867
+ const lastPageRowIndex = (this.currentPage - 1) * this.pageSize
868
+ const subTableRowIndex = lastPageRowIndex + rowIndex
869
+ gridParams.subTableData[subTableRowIndex] =
870
+ gridParams.gridData[rowIndex]
871
+ }
872
+ window.$vueApp.config.globalProperties.$message({
873
+ showClose: true,
874
+ message: getI18n().t('superGrid.lineCancelledSuccessfully', {
875
+ row: rowIndex + 1,
876
+ }),
877
+ type: 'success',
878
+ })
879
+
880
+ if (
881
+ typeof gridParams.options.lineEditOptions
882
+ .afterRestoreIsCancelEditState === 'undefined' ||
883
+ (isHasEditOption('afterRestoreIsCancelEditState', listCode) &&
884
+ gridParams.options.lineEditOptions
885
+ .afterRestoreIsCancelEditState === true)
886
+ ) {
887
+ // 取消编辑状态
888
+ setEntityFieldValue(
889
+ gridParams.gridData[rowIndex],
890
+ '$editing',
891
+ false
892
+ )
893
+ // Vue.set(gridParams.gridData[rowIndex], '$editing', false)
894
+ gridParams.isEditRow = false
895
+ }
896
+ }
897
+ gridParams.$rowIndex = null
898
+ gridParams.isCreateRow = false
899
+ // 撤销编辑后回调
900
+ if (isEditOptionFunction('afterRestore', listCode)) {
901
+ gridParams.options.lineEditOptions.afterRestore.call(
902
+ this,
903
+ rowIndex,
904
+ gridParams.orgGridData[rowIndex],
905
+ gridParams.additionalParamMap
906
+ )
907
+ }
908
+ }
909
+ }
910
+ },
911
+ deleteRow(rowIndex, listCode, isRestore) {
912
+ return new Promise((resolve, reject) => {
913
+ if (!listCode) {
914
+ listCode = store.get('_list_code')
915
+ }
916
+ const gridParams = store.get(listCode)
917
+ let canDelete = true
918
+ // 删除行记录前的回调
919
+ if (isEditOptionFunction('beforeDelete', listCode)) {
920
+ const isSubTableShowPage = gridParams.isSubTableShowPage
921
+ // 每页显示多少条
922
+ const pageSize = gridParams.pagination && gridParams.pagination.pageSize
923
+ const gridData = isSubTableShowPage
924
+ ? gridParams.subTableData
925
+ : gridParams.gridData
926
+ const isMobile = false
927
+ canDelete = gridParams.options.lineEditOptions.beforeDelete.call(
928
+ this,
929
+ rowIndex,
930
+ gridParams.gridData[rowIndex],
931
+ gridData,
932
+ isMobile,
933
+ this.baseURL,
934
+ isSubTableShowPage ? gridParams.gridData : null,
935
+ pageSize,
936
+ gridParams.additionalParamMap
937
+ )
938
+ }
939
+ if (canDelete === undefined || canDelete === true) {
940
+ if (
941
+ gridParams.isSubTableShowPage !== undefined &&
942
+ gridParams.isSubTableShowPage === true
943
+ ) {
944
+ // 子表集合添加该新建的行。会触发watch subTableData的监控
945
+ gridParams.isChangePage = true
946
+ const lastPageRowIndex = (this.currentPage - 1) * this.pageSize
947
+ const subTableRowIndex = lastPageRowIndex + rowIndex
948
+
949
+ gridParams.subTableData.splice(subTableRowIndex, 1)
950
+ } else {
951
+ gridParams.gridData.splice(rowIndex, 1)
952
+ gridParams.orgGridData.splice(rowIndex, 1)
953
+ }
954
+ // TODO 注释下面的代码,是因为表单子表删除记录时会造成未保存新增的记录的字段被清空的问题,不知道当时为什么要加这个代码
955
+ // Object.assign(gridParams.gridData, gridParams.orgGridData)
956
+ gridParams.$lastSaveRowIndex = null
957
+ gridParams.$rowIndex = null
958
+ gridParams.isEditRow = false
959
+ window.$vueApp.config.globalProperties.$message({
960
+ showClose: true,
961
+ message: getI18n().t('superGrid.deleteSuccessful'),
962
+ type: 'success',
963
+ })
964
+ if (gridParams.gridData.length === 0) {
965
+ if (
966
+ gridParams.options &&
967
+ gridParams.options.isDefaultShowEdit !== null &&
968
+ gridParams.options.isDefaultShowEdit !== undefined &&
969
+ gridParams.options.isDefaultShowEdit === true
970
+ ) {
971
+ // 表示没有记录时,需要创建新行
972
+ this.createRow(listCode)
973
+ }
974
+ }
975
+ if (gridParams.isMulitiSelect) {
976
+ gridParams.superGrid.clearSelection()
977
+ }
978
+ gridParams.isCreateRow = false
979
+ if (isRestore !== undefined && isRestore === true) {
980
+ // 表示是删除操作,执行删除记录后回调
981
+ if (isEditOptionFunction('afterDelete', listCode)) {
982
+ const isSubTableShowPage = gridParams.isSubTableShowPage
983
+ // 每页显示多少条
984
+ const pageSize =
985
+ gridParams.pagination && gridParams.pagination.pageSize
986
+ const isMobile = false
987
+ gridParams.options.lineEditOptions.afterDelete.call(
988
+ this,
989
+ rowIndex,
990
+ gridParams.orgGridData[rowIndex],
991
+ isSubTableShowPage
992
+ ? gridParams.subTableData
993
+ : gridParams.gridData,
994
+ isMobile,
995
+ this.baseURL,
996
+ isSubTableShowPage ? gridParams.gridData : null,
997
+ pageSize,
998
+ gridParams.additionalParamMap
999
+ )
1000
+ }
1001
+ }
1002
+ }
1003
+
1004
+ resolve()
1005
+ })
1006
+ },
1007
+ // 行编辑时,点击自定义组件时,使当前行获得焦点
1008
+ focus(rowIndex, listCode) {
1009
+ setCurrentRow(rowIndex, listCode)
1010
+ },
1011
+ // 获得列表所有数据
1012
+ getGridData(listCode) {
1013
+ if (!listCode) {
1014
+ listCode = store.get('_list_code')
1015
+ }
1016
+ const gridParams = store.get(listCode)
1017
+ const isSubTableShowPage = gridParams.isSubTableShowPage
1018
+ if (isSubTableShowPage) {
1019
+ return gridParams.subTableData
1020
+ } else {
1021
+ return gridParams.gridData
1022
+ }
1023
+ },
1024
+ // 获得字段配置
1025
+ getColumns(listCode) {
1026
+ if (!listCode) {
1027
+ listCode = store.get('_list_code')
1028
+ }
1029
+ const gridParams = store.get(listCode)
1030
+ return gridParams.columns
1031
+ },
1032
+ getPagination(listCode) {
1033
+ if (!listCode) {
1034
+ listCode = store.get('_list_code')
1035
+ }
1036
+ const gridParams = store.get(listCode)
1037
+ return gridParams.pagination
1038
+ },
1039
+ // 获得该列表中,下拉选是选项组的字段信息,返回的key是属性名,value是选项集合
1040
+ getOptionsValueSet(listCode) {
1041
+ const result = {}
1042
+ if (!listCode) {
1043
+ listCode = store.get('_list_code')
1044
+ }
1045
+ const gridParams = store.get(listCode)
1046
+ const columns = gridParams.columns
1047
+ columns.forEach(col => {
1048
+ const prop = col.prop
1049
+ const isDynamicDataSource = isDynamicDataSourceSource(col)
1050
+ if (!isDynamicDataSource && col.valueSet && col.valueSet.length > 0) {
1051
+ result[prop] = col.valueSet
1052
+ }
1053
+ })
1054
+ return result
1055
+ },
1056
+ // 取消列表的编辑状态
1057
+ restoreGridEdit(listCode) {
1058
+ if (!listCode) {
1059
+ listCode = store.get('_list_code')
1060
+ }
1061
+ const gridParams = store.get(listCode)
1062
+ if (gridParams.options && gridParams.options.isFormSubTable) {
1063
+ const isSubTableShowPage = gridParams.isSubTableShowPage
1064
+ let gridData = []
1065
+ if (isSubTableShowPage) {
1066
+ gridData = gridParams.subTableData
1067
+ } else {
1068
+ gridData = gridParams.gridData
1069
+ }
1070
+ if (gridData && gridData.length > 0) {
1071
+ for (let i = 0; i < gridData.length; i++) {
1072
+ const row = gridData[i]
1073
+ // 取消最后一个编辑行的状态
1074
+ if (row.$editing !== undefined && row.$editing === true) {
1075
+ setEntityFieldValue(row, '$editing', false)
1076
+ // 取消上一行选中状态时,触发un-edit事件,处理下拉多选选项组问题
1077
+ $emit(eventBus, 'un-edit', { row: row })
1078
+ break
1079
+ }
1080
+ }
1081
+ }
1082
+ }
1083
+ },
1084
+ // api方法,super-pages中有调用该方法
1085
+ closePageDialog(popParams) {
1086
+ // popParams格式为:{ entity, pageCode }
1087
+ console.log(
1088
+ '列表组件--closePageDialog---this.jumpPageSetting=',
1089
+ this.jumpPageSetting
1090
+ )
1091
+ if (this.jumpPageSetting) {
1092
+ // 调用关闭弹框事件
1093
+ const gridParams = store.get(this.code)
1094
+ const closeEventName = this.jumpPageSetting.closeEvent
1095
+ const row = this.jumpPageSetting.row
1096
+ let closeEvent
1097
+ if (
1098
+ gridParams.options.eventCallBack &&
1099
+ closeEventName &&
1100
+ closeEventName !== null &&
1101
+ gridParams.options.eventCallBack[closeEventName]
1102
+ ) {
1103
+ // 表单页面中子表自定义事件集合
1104
+ closeEvent = gridParams.options.eventCallBack[closeEventName]
1105
+ }
1106
+ if (closeEvent) {
1107
+ const params = {
1108
+ params: gridParams.additionalParamMap,
1109
+ additionalParamMap: gridParams.additionalParamMap,
1110
+ entity: row,
1111
+ }
1112
+ if (popParams) {
1113
+ params.eventParams = {
1114
+ popEntity: popParams.entity,
1115
+ popPageCode: popParams.pageCode,
1116
+ pageCode: this.pageCode,
1117
+ }
1118
+ }
1119
+ closeEvent.call(this, params)
1120
+ if (popParams.jumpInfo && popParams.jumpInfo.successOperation === 'closeWindowAndRefresh') {
1121
+ this.refresh()
1122
+ }
1123
+ }
1124
+ const isRefreshWhenClosePopup =
1125
+ this.jumpPageSetting.isRefreshWhenClosePopup
1126
+ if (
1127
+ isRefreshWhenClosePopup !== undefined &&
1128
+ isRefreshWhenClosePopup === true
1129
+ ) {
1130
+ // 关闭弹框时,刷新父页面列表
1131
+ const gridParams = store.get(this.code)
1132
+ this.search(gridParams.searchForm)
1133
+ }
1134
+ }
1135
+ this.isShowPageDialog = false
1136
+ this.jumpPageSetting = null
1137
+ },
1138
+ updateValues(sourceModel, sourceTableName, targetRowIndex) {
1139
+ // TODO 值更新
1140
+ const gridParams = store.get(this.code)
1141
+ const editRowIndex = targetRowIndex
1142
+ if (
1143
+ editRowIndex !== undefined &&
1144
+ editRowIndex !== null &&
1145
+ editRowIndex < this.gridData.length
1146
+ ) {
1147
+ // 返回true表示不需要替换字段,false表示需要替换字段
1148
+ const isNotNeedReplaceFieldName =
1149
+ this.isSql === false ||
1150
+ (gridParams.options &&
1151
+ ((gridParams.options.isAdministerListView !== undefined &&
1152
+ gridParams.options.isAdministerListView === true) ||
1153
+ (gridParams.options.isFormSubTable !== undefined &&
1154
+ gridParams.options.isFormSubTable === true)))
1155
+ const tableName = this.tableName
1156
+ updateWithPageValue(
1157
+ sourceModel,
1158
+ sourceTableName,
1159
+ this.jumpPageSetting,
1160
+ this.gridData[editRowIndex],
1161
+ tableName,
1162
+ !isNotNeedReplaceFieldName
1163
+ )
1164
+ const updateValueEventName =
1165
+ this.jumpPageSetting && this.jumpPageSetting.updateValueEvent
1166
+ ? this.jumpPageSetting.updateValueEvent
1167
+ : null
1168
+ let updateValueEvent
1169
+ if (
1170
+ gridParams.options.eventCallBack &&
1171
+ updateValueEventName &&
1172
+ updateValueEventName !== null &&
1173
+ gridParams.options.eventCallBack[updateValueEventName]
1174
+ ) {
1175
+ // 表单页面中子表自定义事件集合
1176
+ updateValueEvent =
1177
+ gridParams.options.eventCallBack[updateValueEventName]
1178
+ }
1179
+ if (updateValueEvent) {
1180
+ updateValueEvent.call(this, {
1181
+ sourceModel,
1182
+ sourceTableName,
1183
+ jumpPageSetting: this.jumpPageSetting,
1184
+ entity: this.gridData[editRowIndex],
1185
+ targetTableName: tableName,
1186
+ isNeedReplaceFieldName: !isNotNeedReplaceFieldName,
1187
+ additionalParamMap: gridParams.additionalParamMap,
1188
+ })
1189
+ }
1190
+ }
1191
+ },
1192
+ }
1193
+ export default apis