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,729 @@
1
+ import {$emit} from '../../utils/gogocodeTransfer'
2
+ /* eslint-disable no-undef */
3
+ import Sortable from 'sortablejs'
4
+ import {packageEnumAndBeanColumnValueSets} from '../../utils/value-set'
5
+ import store from './store'
6
+ import {isHasOptionFunction} from './utils'
7
+
8
+ const superGridService = {
9
+ initialize() {
10
+ const a = new Date().getTime()
11
+ return new Promise((resolve, reject) => {
12
+ const gridParams = store.get(this.code)
13
+ if (this.options.isAdministerListView) {
14
+ // 要从配置中实时获取页面的配置
15
+ // 根据this.options.showColumns设置显示的字段
16
+ this.getShowColumns(this.options.SuperGrid)
17
+ Object.assign(this, this.options.SuperGrid)
18
+ gridParams.isSql = this.isSql
19
+ gridParams.columns = this.columns
20
+ gridParams.query = this.query
21
+ gridParams.pagination = this.pagination
22
+ this.createBackgroundColorMap()
23
+ this.hasLoadedColumns = true
24
+ this.fetchData(null, null, null, null)
25
+ resolve()
26
+ } else {
27
+ const url =
28
+ window.$vueApp.config.globalProperties.baseAPI +
29
+ '/component/super-grids/' +
30
+ this.code
31
+ const param = {}
32
+ const isSqlSetting = this.options.isSql
33
+ if (this.options && typeof isSqlSetting !== 'undefined') {
34
+ this.isSql = isSqlSetting
35
+ param.isSql = isSqlSetting + ''
36
+ }
37
+ param.publishVersion = this.publishVersion
38
+ if (
39
+ this.options &&
40
+ typeof this.options.isAdministerListView !== 'undefined' &&
41
+ this.options.isAdministerListView
42
+ ) {
43
+ param.isAdminister = this.options.isAdministerListView + ''
44
+ }
45
+ let additionalParams
46
+ const additionalParamMap =
47
+ window.sessionStorage.getItem('additionalParamMap')
48
+ if (additionalParamMap) {
49
+ console.log('进入判断', additionalParamMap)
50
+ if (additionalParamMap && typeof additionalParamMap === 'object') {
51
+ additionalParams = JSON.stringify(additionalParamMap)
52
+ } else if (additionalParamMap && additionalParamMap !== '') {
53
+ additionalParams = additionalParamMap
54
+ }
55
+ }
56
+ if (
57
+ this.options.additionalParamMap &&
58
+ typeof this.options.additionalParamMap === 'object'
59
+ ) {
60
+ const optionParam = JSON.stringify(this.options.additionalParamMap)
61
+ if (additionalParams) {
62
+ Object.assign(additionalParams, optionParam)
63
+ } else {
64
+ additionalParams = optionParam
65
+ }
66
+ } else if (
67
+ this.options.additionalParamMap &&
68
+ this.options.additionalParamMap !== ''
69
+ ) {
70
+ const optionParam = this.options.additionalParamMap
71
+ if (additionalParams) {
72
+ Object.assign(additionalParams, optionParam)
73
+ } else {
74
+ additionalParams = optionParam
75
+ }
76
+ }
77
+ if (additionalParams) {
78
+ param.additionalParamMap = additionalParams
79
+ }
80
+ if (this.options.extraParam && this.options.extraParam.entityMap) {
81
+ this.parentFormData = this.options.extraParam.entityMap
82
+ }
83
+ this.isLoading = true
84
+ // 初始化组件时先获取元信息再获取数据,以后翻页、排序、查询不再去获取元数据了
85
+ this.$http
86
+ .post(url, param)
87
+ .then((data) => {
88
+ const p1 = new Date().getTime()
89
+ // 判断是否查询组件渲染完之后查询
90
+ this.isLoadCompleteQuery(data.columns)
91
+ // 行编辑设置所有字段的默认值null时使用,优化行编辑性能
92
+ let allColumns = []
93
+ allColumns = allColumns.concat(
94
+ JSON.parse(JSON.stringify(data.columns))
95
+ )
96
+ // 根据this.options.showColumns设置显示的字段
97
+ this.getShowColumns(data)
98
+ // 将列表信息存入store缓存中,用来导出时获取国际化名
99
+ if (data.basicInfo) {
100
+ store.set(this.code + 'basicInfo', data.basicInfo)
101
+ }
102
+ if (this.options.pageSizes && data.pagination) {
103
+ // 组件的options属性配置中配置“可选行数”,已该配置为准
104
+ let pageSizeArr = null
105
+ const pageSizeStrs = this.options.pageSizes.split(',')
106
+ if (pageSizeStrs && pageSizeStrs.length > 0) {
107
+ pageSizeArr = []
108
+ for (var i = 0; i < pageSizeStrs.length; i++) {
109
+ pageSizeArr.push(pageSizeStrs[i] * 1)
110
+ }
111
+ data.pagination.pageSize = pageSizeArr[0]
112
+ }
113
+ data.pagination.layout = 'total, sizes,prev, pager, next, jumper'
114
+ data.pagination.pageSizes = pageSizeArr
115
+ }
116
+ if (typeof this.options.initSortInfo !== 'undefined') {
117
+ // 组件的options属性配置中配置“排序信息”,以该配置为准
118
+ if (Array.isArray(this.options.initSortInfo)) {
119
+ data.sortInfo = this.options.initSortInfo
120
+ } else {
121
+ data.sortInfo = []
122
+ data.sortInfo.push(this.options.initSortInfo)
123
+ }
124
+ }
125
+
126
+ // 需要多个组件共享的数据放到store中,避免组件定义一堆props来接收这些共享数据
127
+ packageEnumAndBeanColumnValueSets(data.columns, this.code)
128
+ .then(() => {
129
+ return this.getDynamicColumnByBean(
130
+ additionalParams,
131
+ data.dynamicColumnInfo,
132
+ data.columns,
133
+ gridParams
134
+ )
135
+ })
136
+ .then((dynamicColumns) => {
137
+ const b = new Date().getTime()
138
+ let showColumns = []
139
+ if (typeof this.options.showColumns !== 'undefined') {
140
+ showColumns = this.options.showColumns.split(',')
141
+ }
142
+ let customDynamicColumns = dynamicColumns
143
+ if (
144
+ !customDynamicColumns ||
145
+ customDynamicColumns.length === 0
146
+ ) {
147
+ if (
148
+ this.options.dynamicColumns &&
149
+ this.options.dynamicColumns.length > 0
150
+ ) {
151
+ customDynamicColumns = this.options.dynamicColumns
152
+ }
153
+ }
154
+ if (customDynamicColumns && customDynamicColumns.length > 0) {
155
+ allColumns = allColumns.concat(
156
+ JSON.parse(JSON.stringify(customDynamicColumns))
157
+ )
158
+ if (showColumns && showColumns.length > 0) {
159
+ for (let i = 0; i < customDynamicColumns.length; i++) {
160
+ const prop = customDynamicColumns[i].prop
161
+ customDynamicColumns[i].dynamic = true
162
+ if (showColumns.indexOf(prop) >= 0) {
163
+ customDynamicColumns[i].show = true
164
+ } else {
165
+ customDynamicColumns[i].show = false
166
+ }
167
+ }
168
+ }
169
+ data.columns = data.columns.concat(customDynamicColumns)
170
+ // 按照排序字段的值升序排列字段
171
+ data.columns = data.columns.sort(
172
+ (col1, col2) => col1.displayOrder - col2.displayOrder
173
+ )
174
+ }
175
+ Object.assign(this, data)
176
+ if (this.options && typeof isSqlSetting === 'undefined') {
177
+ // 如果options中没有配置,则以后台传过来的为准,在有动态列配置时,该值会赋值为true
178
+ this.isSql = this.basicInfo.sql
179
+ }
180
+ gridParams.isSql = this.isSql
181
+ // 行编辑时使用
182
+ gridParams.allColumns = allColumns
183
+ gridParams.columns = this.columns
184
+ // 存放map,prop-columnOption。方便直接通过prop 获取对应的配置
185
+ this.packageColumnOptionMap(gridParams)
186
+ // const columnOptionMap = {}
187
+ // if (gridParams.columns && gridParams.columns.length > 0) {
188
+ // gridParams.columns.forEach(item => {
189
+ // if (item && item.prop) {
190
+ // columnOptionMap[item.prop] = item
191
+ // }
192
+ // })
193
+ // }
194
+ // gridParams.columnOptionMap = columnOptionMap
195
+ this.judgeIsFormSubTable()
196
+ gridParams.colSetting = this.colSetting
197
+ gridParams.lineEdit = this.lineEdit
198
+ gridParams.basicInfo = this.basicInfo
199
+ gridParams.pagination = this.pagination
200
+ if (this.pagination) {
201
+ // 监控每行显示多少条变量使用
202
+ this.pageSize = this.pagination.pageSize
203
+ }
204
+ gridParams.query = this.query
205
+ gridParams.dynamicColumnInfo = this.dynamicColumnInfo
206
+ gridParams.mainDefaultValueColumns =
207
+ this.mainDefaultValueColumns
208
+ gridParams.contextParameter = this.contextParameter
209
+ // 是否显示分页区域
210
+ this.isShowPage = this.isShowPageArea()
211
+ // 子表是否分页
212
+ this.isSubTableShowPage = this.isFormSubTable
213
+ ? this.isShowPage
214
+ : false
215
+ gridParams.isSubTableShowPage = this.isSubTableShowPage
216
+ this.hasLoadedColumns = true
217
+ let canFetchData = true
218
+ if (isHasOptionFunction('loadBeforeSend', this.code)) {
219
+ canFetchData = gridParams.options.loadBeforeSend.call(this, {
220
+ columns: this.columns,
221
+ gridParams,
222
+ additionalParamMap: gridParams.additionalParamMap,
223
+ })
224
+ }
225
+ if (canFetchData === undefined || canFetchData === true) {
226
+ // 表示初始化时查询记录
227
+ if (this.options.isPageInfo) {
228
+ // 表示是页面展示模式
229
+ } else if (typeof this.options.initSearch === 'undefined') {
230
+ if (
231
+ typeof gridParams.basicInfo.initializationQuery ===
232
+ 'undefined' ||
233
+ gridParams.basicInfo.initializationQuery
234
+ ) {
235
+ // 判断是否初始化完查询条件后再查询数据
236
+ if (this.loadCompleteQuery) {
237
+ this.isLoading = false
238
+ } else {
239
+ this.fetchData()
240
+ }
241
+ }
242
+ } else if (this.options.initSearch !== false) {
243
+ // 判断是否初始化完查询条件后再查询数据
244
+ if (this.loadCompleteQuery) {
245
+ this.isLoading = false
246
+ } else {
247
+ this.fetchData()
248
+ }
249
+ }
250
+ }
251
+ this.createBackgroundColorMap()
252
+ const p2 = new Date().getTime()
253
+ console.log('拿到共享数据并存储p2-p1=', p2 - p1)
254
+ console.log('拿到共享数据并存储p2-b=', p2 - b)
255
+ resolve()
256
+ })
257
+ .catch((error) => {
258
+ reject(error)
259
+ })
260
+ })
261
+ .catch((error) => {
262
+ reject(error)
263
+ })
264
+ }
265
+ const a1 = new Date().getTime()
266
+ console.log('初始化所耗时间', a1 - a)
267
+ })
268
+ },
269
+ isLoadCompleteQuery(columns) {
270
+ if (columns !== null) {
271
+ let queryParameterSize = 0
272
+ columns.forEach((column) => {
273
+ if (
274
+ column.hasOwnProperty('queryType') &&
275
+ column.hasOwnProperty('prop')
276
+ ) {
277
+ if (column.prop !== '$index' && column.prop !== '$selection') {
278
+ if (column.queryType && column.queryType !== 'no') {
279
+ // 配置了默认值
280
+ if (column.controlConfig) {
281
+ queryParameterSize++
282
+ }
283
+ }
284
+ }
285
+ }
286
+ })
287
+ if (queryParameterSize > 0) {
288
+ this.loadCompleteQuery = true
289
+ }
290
+ }
291
+ },
292
+ packageColumnOptionMap(gridParams) {
293
+ const columnOptionMap = {}
294
+ if (gridParams.columns && gridParams.columns.length > 0) {
295
+ this.packageColumnOptionMapItems(gridParams.columns, columnOptionMap)
296
+ }
297
+ gridParams.columnOptionMap = columnOptionMap
298
+ },
299
+ packageColumnOptionMapItems(columns, columnOptionMap) {
300
+ columns.forEach((item) => {
301
+ if (item.children && item.children.length > 0) {
302
+ this.packageColumnOptionMapItems(item.children, columnOptionMap)
303
+ }
304
+ if (item && item.prop) {
305
+ columnOptionMap[item.prop] = item
306
+ }
307
+ })
308
+ },
309
+ getDynamicColumnByBean(
310
+ additionalParams,
311
+ dynamicColumnInfos,
312
+ columns,
313
+ gridParams
314
+ ) {
315
+ return new Promise((resolve, reject) => {
316
+ if (
317
+ gridParams.options.extraParam &&
318
+ gridParams.options.extraParam.entityMap
319
+ ) {
320
+ this.parentFormData = gridParams.options.extraParam.entityMap
321
+ }
322
+ if (
323
+ !this.options.isPageInfo &&
324
+ dynamicColumnInfos &&
325
+ dynamicColumnInfos.length > 0
326
+ ) {
327
+ const totalDynamicColumns = []
328
+ this.getDynamicColumnByBeanWithOneSet(
329
+ additionalParams,
330
+ dynamicColumnInfos[0],
331
+ columns,
332
+ 0,
333
+ dynamicColumnInfos,
334
+ totalDynamicColumns,
335
+ gridParams
336
+ )
337
+ .then((totalDynamicColumns) => {
338
+ resolve(totalDynamicColumns)
339
+ })
340
+ .catch((error) => {
341
+ reject(error)
342
+ })
343
+ } else {
344
+ resolve([])
345
+ }
346
+ })
347
+ },
348
+ getDynamicColumnByBeanWithOneSet(
349
+ additionalParams,
350
+ dynamicColumnInfo,
351
+ columns,
352
+ index,
353
+ dynamicColumnInfos,
354
+ totalDynamicColumns,
355
+ gridParams
356
+ ) {
357
+ return new Promise((resolve, reject) => {
358
+ if (dynamicColumnInfo && dynamicColumnInfo.beanName) {
359
+ const url =
360
+ window.$vueApp.config.globalProperties.baseURL +
361
+ '/common/dynamic-columns'
362
+ const param = {
363
+ additionalParams, // 附加参数对象
364
+ listCode: this.code,
365
+ columns,
366
+ beanName: dynamicColumnInfo.beanName,
367
+ }
368
+ if (this.parentFormData) {
369
+ // 初始化表单时,加载动态列需要
370
+ if (gridParams.dynamicTemp) {
371
+ param.parent = gridParams.dynamicTemp.parent
372
+ param.watchParentAttrValues =
373
+ gridParams.dynamicTemp.watchParentAttrValues
374
+ } else {
375
+ param.parent = this.parentFormData
376
+ }
377
+ // 监听主表字段的值
378
+ if (dynamicColumnInfo.watchParentAttr) {
379
+ const watchParentAttrs =
380
+ dynamicColumnInfo.watchParentAttr.split(',')
381
+ watchParentAttrs.forEach((watchParentAttr) => {
382
+ if (watchParentAttr) {
383
+ // 存储属性对应的值
384
+ if (!param.watchParentAttrValues) {
385
+ param.watchParentAttrValues = {}
386
+ }
387
+ param.watchParentAttrValues[watchParentAttr] =
388
+ this.parentFormData[watchParentAttr]
389
+ const unWatch = this.$watch(
390
+ 'parentFormData.' + watchParentAttr,
391
+ function (newValue, oldValue) {
392
+ // 重新加载表格及表格数据
393
+ if (!gridParams.dynamicTemp) {
394
+ gridParams.dynamicTemp = {}
395
+ }
396
+ gridParams.dynamicTemp.parent = this.parentFormData
397
+ if (!gridParams.dynamicTemp.watchParentAttrValues) {
398
+ gridParams.dynamicTemp.watchParentAttrValues = {}
399
+ }
400
+ gridParams.dynamicTemp.watchParentAttrValues[
401
+ watchParentAttr
402
+ ] = newValue
403
+ if (this.$refs && this.$refs.superGrid) {
404
+ // 手动注销watch,否则会调用多次watch
405
+ unWatch()
406
+ // 重新加载表格及表格数据
407
+ $emit(this, 'reload-grid')
408
+ }
409
+ }
410
+ )
411
+ }
412
+ })
413
+ }
414
+ }
415
+ this.$http
416
+ .post(url, param)
417
+ .then((dynamicColumns) => {
418
+ // 给动态列分组。如果是后台接口返回的动态列,保存时要自己实现动态列的保存
419
+ dynamicColumnInfo.dynamicColumns = dynamicColumns
420
+ totalDynamicColumns = totalDynamicColumns.concat(dynamicColumns)
421
+ if (index + 1 < dynamicColumnInfos.length) {
422
+ this.getDynamicColumnByBeanWithOneSet(
423
+ additionalParams,
424
+ dynamicColumnInfos[index + 1],
425
+ columns,
426
+ index + 1,
427
+ dynamicColumnInfos,
428
+ totalDynamicColumns
429
+ )
430
+ } else {
431
+ resolve(totalDynamicColumns)
432
+ }
433
+ })
434
+ .catch(() => {
435
+ resolve([])
436
+ })
437
+ } else {
438
+ resolve([])
439
+ }
440
+ })
441
+ },
442
+ // 列拖拽
443
+ columnDrop() {
444
+ const vm = this
445
+ // 作用于实际展示列表数据时拖拽列
446
+ let isDragColumnFlag = false
447
+ if (
448
+ typeof this.options.isDragColumnFlag !== 'undefined' &&
449
+ this.options.isDragColumn != null &&
450
+ this.options.isDragColumn === true
451
+ ) {
452
+ isDragColumnFlag = true
453
+ const wrapperTr = document.querySelector('.el-table__header-wrapper tr')
454
+ if (wrapperTr != null) {
455
+ this.sortable = Sortable.create(wrapperTr, {
456
+ animation: 180,
457
+ delay: 0,
458
+ onEnd: (evt) => {
459
+ let oldIndex = evt.oldIndex
460
+ let newIndex = evt.newIndex
461
+ // 判断冻结列,获取真实index
462
+ const frozenArr = []
463
+ // const columns = this.listColumnList.filter(listColumn => {
464
+ // return listColumn.listColumnFixed === 'left' || listColumn.listColumnFixed === 'right'
465
+ // })
466
+ for (var r = 0; r < vm.columns.length; r++) {
467
+ if (
468
+ vm.columns[r].fixed === 'left' ||
469
+ vm.columns[r].fixed === 'right'
470
+ ) {
471
+ frozenArr.push(r)
472
+ }
473
+ }
474
+ if (frozenArr && frozenArr.length > 0) {
475
+ for (var m = 0; m < frozenArr.length; m++) {
476
+ if (frozenArr[m] >= newIndex) {
477
+ newIndex--
478
+ }
479
+ if (frozenArr[m] >= oldIndex) {
480
+ oldIndex--
481
+ }
482
+ }
483
+ }
484
+ if (
485
+ oldIndex !== null &&
486
+ oldIndex !== undefined &&
487
+ oldIndex !== -1 &&
488
+ newIndex !== null &&
489
+ newIndex !== undefined &&
490
+ newIndex !== -1
491
+ ) {
492
+ if (oldIndex > newIndex) {
493
+ // 从后往前
494
+ if (vm.columns && vm.columns.length > 0) {
495
+ const item = vm.columns[oldIndex]
496
+ for (var i = oldIndex - 1; i >= newIndex; i--) {
497
+ const col = vm.columns[i]
498
+ col.displayOrderType = 'custom'
499
+ vm.columns[i + 1] = col
500
+ }
501
+ vm.columns[newIndex] = item
502
+ }
503
+ } else {
504
+ // 从前往后
505
+ if (vm.columns && vm.columns.length > 0) {
506
+ const item = vm.columns[oldIndex]
507
+ for (var k = oldIndex + 1; k <= newIndex; k++) {
508
+ const col = vm.columns[k]
509
+ col.displayOrderType = 'custom'
510
+ vm.columns[k - 1] = col
511
+ }
512
+ vm.columns[newIndex] = item
513
+ }
514
+ }
515
+ }
516
+ vm.indexAfterTheChangeUpdateDisplayOrder(
517
+ vm.columns,
518
+ oldIndex,
519
+ newIndex,
520
+ 'displayOrder'
521
+ )
522
+ let splitArr = []
523
+ if (oldIndex > newIndex) {
524
+ // 从后往前
525
+ splitArr = vm.columns.slice(newIndex, oldIndex + 1)
526
+ } else {
527
+ // 从前往后
528
+ splitArr = vm.columns.slice(oldIndex, newIndex + 1)
529
+ }
530
+ const params = {
531
+ listCode: vm.code,
532
+ columns: splitArr,
533
+ }
534
+ vm.$http
535
+ .post(
536
+ window.$vueApp.config.globalProperties.baseAPI +
537
+ '/component/super-grids/drag-columns',
538
+ params
539
+ )
540
+ .then((data) => {
541
+ console.log('移动成功')
542
+ })
543
+ // const oldIndex = evt.oldIndex
544
+ // const newIndex = evt.newIndex
545
+ // const currentItem = vm.columns[evt.oldIndex]
546
+ // const targetItem = vm.columns[evt.newIndex]
547
+ // const currentDisplayOrder = vm.getDisplayOrder(currentItem, oldIndex + 1)
548
+ // const targetDisplayOrder = vm.getDisplayOrder(targetItem, newIndex + 1)
549
+ // const params = {
550
+ // 'listCode': vm.code,
551
+ // 'oldIndex': currentDisplayOrder,
552
+ // 'newIndex': targetDisplayOrder,
553
+ // 'currentProp': currentItem.prop, // 当前拖动的列的属性名
554
+ // 'targetProp': targetItem.prop // 拖动的列的原属性名
555
+ // }
556
+ // vm.$http.post(window.$vueApp.config.globalProperties.baseAPI + '/component/super-grids/drag-columns', params).then(data => {
557
+ // vm.columns.splice(oldIndex, 1)
558
+ // vm.columns.splice(newIndex, 0, currentItem)
559
+ // vm.$set(currentItem, 'displayOrder', targetDisplayOrder)
560
+ // vm.$set(currentItem, 'displayOrderType', 'custom')
561
+ // vm.$set(targetItem, 'displayOrder', currentDisplayOrder)
562
+ // vm.$set(targetItem, 'displayOrderType', 'custom')
563
+ // })
564
+ },
565
+ })
566
+ }
567
+ }
568
+ // 作用于列表管理编辑模式
569
+ // 作用于列表管理编辑模式
570
+ if (
571
+ typeof this.options.isAdministerListView !== 'undefined' &&
572
+ this.options.isAdministerListView != null &&
573
+ this.options.isAdministerListView === true &&
574
+ !isDragColumnFlag
575
+ ) {
576
+ const wrapperTr = document.querySelector('.el-table__header-wrapper tr')
577
+ if (wrapperTr != null) {
578
+ this.sortable = Sortable.create(wrapperTr, {
579
+ animation: 180,
580
+ delay: 0,
581
+ onEnd: (evt) => {
582
+ const oldIndex = evt.oldIndex
583
+ const newIndex = evt.newIndex
584
+ const oldItem = this.columns[evt.oldIndex]
585
+ const that = this
586
+ that.columns.splice(oldIndex, 1)
587
+ that.columns.splice(newIndex, 0, oldItem)
588
+ $emit(this, 'columnDrop', oldIndex, newIndex)
589
+ },
590
+ })
591
+ }
592
+ }
593
+ },
594
+ // 移动完成后的displayOrder设置
595
+ indexAfterTheChangeUpdateDisplayOrder(dataList, oldIndex, newIndex, prop) {
596
+ if (dataList && dataList.length > 0) {
597
+ if (oldIndex != null && oldIndex !== undefined && oldIndex !== -1) {
598
+ if (newIndex !== null && newIndex !== undefined && newIndex !== -1) {
599
+ if (prop && prop !== '') {
600
+ const selectCol = dataList[newIndex]
601
+ if (newIndex > oldIndex) {
602
+ // 表示向后移动
603
+ // 位置已经移动,所以参数要赋值给原始位置的下一个
604
+ const afProp = dataList[newIndex - 1][prop]
605
+ const arr = dataList.slice(oldIndex, newIndex)
606
+ if (arr && arr.length > 0) {
607
+ for (let i = arr.length - 1; i > -1; i--) {
608
+ const col = arr[i]
609
+ if (i === 0) {
610
+ // 紧靠原始位置的上一个
611
+ col[prop] = selectCol[prop]
612
+ } else {
613
+ col[prop] = arr[i - 1][prop]
614
+ }
615
+ }
616
+ }
617
+ selectCol[prop] = afProp
618
+ } else {
619
+ const befProp = dataList[newIndex + 1][prop]
620
+ // 表示向前移动
621
+ // 位置已经移动,所以参数要赋值给原始位置的上一个
622
+ const arr = dataList.slice(newIndex + 1, oldIndex + 1)
623
+ if (arr && arr.length > 0) {
624
+ for (let i = 0; i < arr.length; i++) {
625
+ const col = arr[i]
626
+ if (i === arr.length - 1) {
627
+ // 紧靠原始位置的上一个
628
+ col[prop] = selectCol[prop]
629
+ } else {
630
+ col[prop] = arr[i + 1][prop]
631
+ }
632
+ }
633
+ }
634
+ selectCol[prop] = befProp
635
+ }
636
+ }
637
+ }
638
+ }
639
+ }
640
+ },
641
+ getDisplayOrder(column, dragIndex) {
642
+ if (
643
+ column &&
644
+ column.displayOrder !== undefined &&
645
+ column.displayOrder !== null
646
+ ) {
647
+ return column.displayOrder
648
+ } else {
649
+ return dragIndex + 1
650
+ }
651
+ },
652
+ getShowColumns(data) {
653
+ let showColumns = []
654
+ if (typeof this.options.showColumns !== 'undefined') {
655
+ showColumns = this.options.showColumns.split(',')
656
+ }
657
+ if (showColumns.length > 0) {
658
+ const columns = []
659
+ for (let i = 0; i < data.columns.length; i++) {
660
+ const column = data.columns[i]
661
+ const prop = column.prop
662
+ if (prop === '$index' || prop === '$selection') {
663
+ columns.push(column)
664
+ continue
665
+ }
666
+ if (column.hasOwnProperty('children')) {
667
+ // 表示是组合表头,需要判断子表头是否显示
668
+ const children = this.getChildrenColumns(column.children, showColumns)
669
+ column.children = children
670
+ if (children.length > 0) {
671
+ columns.push(column)
672
+ }
673
+ } else {
674
+ if (showColumns.indexOf(prop) >= 0) {
675
+ columns.push(column)
676
+ }
677
+ }
678
+ }
679
+ data.columns = columns
680
+ }
681
+ },
682
+ getChildrenColumns(children, showColumns) {
683
+ const columns = []
684
+ for (let i = 0; i < children.length; i++) {
685
+ const column = children[i]
686
+ const prop = column.prop
687
+ if (column.hasOwnProperty('children')) {
688
+ // 表示是组合表头,需要判断子表头是否显示
689
+ const children = this.getChildrenColumns(column.children, showColumns)
690
+ column.children = children
691
+ if (children.length > 0) {
692
+ columns.push(column)
693
+ }
694
+ } else {
695
+ if (showColumns.indexOf(prop) >= 0) {
696
+ columns.push(column)
697
+ }
698
+ }
699
+ }
700
+ return columns
701
+ },
702
+ // 保存拖动列宽
703
+ saveColumnWidth(prop, width) {
704
+ return new Promise((resolve, reject) => {
705
+ if (width !== undefined) {
706
+ const params = {
707
+ prop: prop,
708
+ width: width + '',
709
+ }
710
+ this.$http
711
+ .post(
712
+ window.$vueApp.config.globalProperties.baseAPI +
713
+ '/component/super-grids/setting-column-widths/' +
714
+ this.code,
715
+ params
716
+ )
717
+ .then((data) => {
718
+ resolve(width)
719
+ })
720
+ .catch((error) => {
721
+ reject(error)
722
+ })
723
+ } else {
724
+ resolve()
725
+ }
726
+ })
727
+ },
728
+ }
729
+ export default superGridService