n20-common-lib 1.3.46 → 1.3.49

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 (402) hide show
  1. package/README.md +2 -2
  2. package/g6.js +2 -2
  3. package/nstc-g6/assets/svg/addFile.svg +31 -31
  4. package/nstc-g6/assets/svg/deleteFile.svg +27 -27
  5. package/nstc-g6/assets/svg/filter.svg +15 -15
  6. package/nstc-g6/assets/svg/filterActive.svg +16 -16
  7. package/nstc-g6/assets/svg/hourglass.svg +18 -18
  8. package/nstc-g6/assets/svg/newsearch.svg +18 -18
  9. package/nstc-g6/assets/svg/searchActive.svg +18 -18
  10. package/nstc-g6/components/Calendar/index.js +8 -8
  11. package/nstc-g6/components/Calendar/src/basic/month-table.vue +129 -129
  12. package/nstc-g6/components/Calendar/src/basic/year-table.vue +126 -126
  13. package/nstc-g6/components/Calendar/src/main.vue +442 -442
  14. package/nstc-g6/components/DialogForm/index.js +8 -8
  15. package/nstc-g6/components/DialogForm/src/demo/index.vue +56 -56
  16. package/nstc-g6/components/DialogForm/src/main.vue +189 -189
  17. package/nstc-g6/components/Form/A_DEMO/component/originalForm.vue +280 -280
  18. package/nstc-g6/components/Form/A_DEMO/config/config_3.js +1222 -1222
  19. package/nstc-g6/components/Form/A_DEMO/index.vue +803 -803
  20. package/nstc-g6/components/Form/AutocompleteCustom/index.vue +72 -72
  21. package/nstc-g6/components/Form/BusinessSpecific/InputMultiple.vue +191 -191
  22. package/nstc-g6/components/Form/BusinessSpecific/InputWithUnit.vue +128 -128
  23. package/nstc-g6/components/Form/BusinessSpecific/SelectTreeDialog.vue +233 -233
  24. package/nstc-g6/components/Form/BusinessSpecific/readme.md +7 -7
  25. package/nstc-g6/components/Form/CascaderCustom/index.vue +101 -101
  26. package/nstc-g6/components/Form/CheckboxCustom/index.vue +84 -84
  27. package/nstc-g6/components/Form/Component.vue +661 -661
  28. package/nstc-g6/components/Form/ComponentSecond.vue +650 -650
  29. package/nstc-g6/components/Form/DatepickerCustom/index.vue +130 -130
  30. package/nstc-g6/components/Form/InputAndDialog/index.js +15 -15
  31. package/nstc-g6/components/Form/InputAndDialog/src/main.vue +394 -394
  32. package/nstc-g6/components/Form/InputCustom/demo/index.vue +65 -65
  33. package/nstc-g6/components/Form/InputCustom/index.vue +307 -307
  34. package/nstc-g6/components/Form/IntervalinputCustom/demo/index.vue +31 -31
  35. package/nstc-g6/components/Form/IntervalinputCustom/index.vue +118 -118
  36. package/nstc-g6/components/Form/Item.vue +330 -330
  37. package/nstc-g6/components/Form/ItemSecond.vue +269 -269
  38. package/nstc-g6/components/Form/List.vue +146 -146
  39. package/nstc-g6/components/Form/ListSecond.vue +130 -130
  40. package/nstc-g6/components/Form/RadioCustom/index.vue +73 -73
  41. package/nstc-g6/components/Form/SelectAccount/index.js +15 -15
  42. package/nstc-g6/components/Form/SelectAccount/src/demo/index.vue +57 -57
  43. package/nstc-g6/components/Form/SelectAccount/src/main.vue +282 -282
  44. package/nstc-g6/components/Form/SelectAndDialog/index.js +15 -15
  45. package/nstc-g6/components/Form/SelectAndDialog/src/main.vue +383 -383
  46. package/nstc-g6/components/Form/SelectCashFlow/index.js +15 -15
  47. package/nstc-g6/components/Form/SelectCashFlow/src/demo/index.vue +41 -41
  48. package/nstc-g6/components/Form/SelectCashFlow/src/main.vue +125 -125
  49. package/nstc-g6/components/Form/SelectCustom/demo/index.vue +82 -82
  50. package/nstc-g6/components/Form/SelectCustom/index.vue +488 -488
  51. package/nstc-g6/components/Form/SelectSubject/index.js +15 -15
  52. package/nstc-g6/components/Form/SelectSubject/src/demo/index.vue +84 -84
  53. package/nstc-g6/components/Form/SelectSubject/src/main.vue +181 -181
  54. package/nstc-g6/components/Form/SelectindialogCustom/demo/index.vue +188 -188
  55. package/nstc-g6/components/Form/SelectindialogCustom/index.vue +650 -650
  56. package/nstc-g6/components/Form/SelectindialogCustom/install.js +6 -6
  57. package/nstc-g6/components/Form/TableRadioCustom/demo/index.vue +53 -53
  58. package/nstc-g6/components/Form/TableRadioCustom/index.vue +183 -183
  59. package/nstc-g6/components/Form/TextCustom/index.vue +38 -38
  60. package/nstc-g6/components/Form/UploadCustom/demo/index.vue +31 -31
  61. package/nstc-g6/components/Form/UploadCustom/index.vue +506 -506
  62. package/nstc-g6/components/Form/configs.js +191 -191
  63. package/nstc-g6/components/Form/configsSecond.js +161 -161
  64. package/nstc-g6/components/Form/index.js +8 -8
  65. package/nstc-g6/components/Form/index.scss +29 -29
  66. package/nstc-g6/components/Form/payeePersonSelect/index.js +15 -15
  67. package/nstc-g6/components/Form/payeePersonSelect/src/demo/index.vue +163 -163
  68. package/nstc-g6/components/Form/payeePersonSelect/src/main.vue +184 -184
  69. package/nstc-g6/components/Form/readme.txt +4 -4
  70. package/nstc-g6/components/FormGroup/index.js +8 -8
  71. package/nstc-g6/components/FormGroup/src/demo/config.js +23 -23
  72. package/nstc-g6/components/FormGroup/src/demo/index.vue +85 -85
  73. package/nstc-g6/components/FormGroup/src/main.vue +639 -639
  74. package/nstc-g6/components/FormGroup/src/validate.js +22 -22
  75. package/nstc-g6/components/InputTag/InputTag.vue +269 -269
  76. package/nstc-g6/components/NstcApprovel/NstcApprovel.vue +24 -24
  77. package/nstc-g6/components/NstcBackToTop/NstcBackToTop.vue +150 -150
  78. package/nstc-g6/components/NstcBranchLazyLoad/NstcBranchLazyLoad.vue +123 -123
  79. package/nstc-g6/components/NstcCharts/NstcCharts.vue +162 -162
  80. package/nstc-g6/components/NstcCharts/define.js +74 -74
  81. package/nstc-g6/components/NstcCharts/mixins/resize.js +56 -56
  82. package/nstc-g6/components/NstcConfirm/NstcConfirm.vue +152 -152
  83. package/nstc-g6/components/NstcConfirm/index.js +24 -24
  84. package/nstc-g6/components/NstcDialog/NstcDialog.vue +184 -184
  85. package/nstc-g6/components/NstcDialogForm/NstcDialogForm.vue +175 -175
  86. package/nstc-g6/components/NstcDialogTable/NstcDialogTable.vue +280 -280
  87. package/nstc-g6/components/NstcDropdown/NstcDropdown.vue +52 -52
  88. package/nstc-g6/components/NstcDropdownTree/NstcDropdownTree.vue +396 -396
  89. package/nstc-g6/components/NstcElectronicFile/NstcElectronicFile.vue +711 -711
  90. package/nstc-g6/components/NstcExcelCustomImport/NstcExcelCustomImport.vue +475 -475
  91. package/nstc-g6/components/NstcExcelExport/NstcExcelExport.vue +145 -145
  92. package/nstc-g6/components/NstcExcelImport/NstcExcelImport.vue +1074 -1074
  93. package/nstc-g6/components/NstcExcelImportN/NstcExcelImportN.vue +1166 -1166
  94. package/nstc-g6/components/NstcExpandCollapse/NstcExpandCollapse.vue +130 -130
  95. package/nstc-g6/components/NstcExpandCollapse/index.scss +77 -77
  96. package/nstc-g6/components/NstcFileUpload/NstcFileUpload.vue +989 -989
  97. package/nstc-g6/components/NstcFileUpload/img/addFile.svg +31 -31
  98. package/nstc-g6/components/NstcFileUpload/img/delete.svg +23 -23
  99. package/nstc-g6/components/NstcFileUpload/img/deleteFile.svg +27 -27
  100. package/nstc-g6/components/NstcFileUpload/img/download.svg +23 -23
  101. package/nstc-g6/components/NstcFileUpload/img/inputUpload.svg +29 -29
  102. package/nstc-g6/components/NstcFileUpload/img/look-diabled.svg +23 -23
  103. package/nstc-g6/components/NstcFileUpload/img/look.svg +23 -23
  104. package/nstc-g6/components/NstcForm/A_DEMO/component/originalForm.vue +280 -280
  105. package/nstc-g6/components/NstcForm/A_DEMO/config/config_3.js +1222 -1222
  106. package/nstc-g6/components/NstcForm/A_DEMO/index.vue +796 -796
  107. package/nstc-g6/components/NstcForm/AutocompleteCustom/index.vue +68 -68
  108. package/nstc-g6/components/NstcForm/BusinessSpecific/InputMultiple.vue +189 -189
  109. package/nstc-g6/components/NstcForm/BusinessSpecific/InputWithUnit.vue +128 -128
  110. package/nstc-g6/components/NstcForm/BusinessSpecific/SelectTreeDialog.vue +233 -233
  111. package/nstc-g6/components/NstcForm/BusinessSpecific/readme.md +7 -7
  112. package/nstc-g6/components/NstcForm/CascaderCustom/index.vue +101 -101
  113. package/nstc-g6/components/NstcForm/CheckboxCustom/index.vue +84 -84
  114. package/nstc-g6/components/NstcForm/Component.vue +684 -684
  115. package/nstc-g6/components/NstcForm/ComponentSecond.vue +650 -650
  116. package/nstc-g6/components/NstcForm/DatepickerCustom/index.vue +130 -130
  117. package/nstc-g6/components/NstcForm/InputAndDialog/NstcInputAndDialog.vue +389 -389
  118. package/nstc-g6/components/NstcForm/InputCustom/index.vue +313 -313
  119. package/nstc-g6/components/NstcForm/IntervalInputCustom/index.vue +111 -111
  120. package/nstc-g6/components/NstcForm/Item.vue +327 -327
  121. package/nstc-g6/components/NstcForm/ItemSecond.vue +269 -269
  122. package/nstc-g6/components/NstcForm/List.vue +146 -146
  123. package/nstc-g6/components/NstcForm/ListSecond.vue +130 -130
  124. package/nstc-g6/components/NstcForm/RadioCustom/index.vue +73 -73
  125. package/nstc-g6/components/NstcForm/SelectAccount/NstcSelectAccount.vue +334 -334
  126. package/nstc-g6/components/NstcForm/SelectAndDialog/NstcSelectAndDialog.vue +377 -377
  127. package/nstc-g6/components/NstcForm/SelectCashFlow/NstcSelectCashFlow.vue +122 -122
  128. package/nstc-g6/components/NstcForm/SelectCustom/index.vue +460 -460
  129. package/nstc-g6/components/NstcForm/SelectSubject/NstcSelectSubject.vue +184 -184
  130. package/nstc-g6/components/NstcForm/SelectindialogCustom/index.vue +648 -648
  131. package/nstc-g6/components/NstcForm/TableRadioCustom/index.vue +183 -183
  132. package/nstc-g6/components/NstcForm/TextCustom/index.vue +38 -38
  133. package/nstc-g6/components/NstcForm/UploadCustom/index.vue +500 -500
  134. package/nstc-g6/components/NstcForm/configs.js +191 -191
  135. package/nstc-g6/components/NstcForm/configsSecond.js +161 -161
  136. package/nstc-g6/components/NstcForm/index.js +8 -8
  137. package/nstc-g6/components/NstcForm/index.scss +29 -29
  138. package/nstc-g6/components/NstcForm/payeePersonSelect/NstcPayeePerson.vue +187 -187
  139. package/nstc-g6/components/NstcForm/readme.txt +4 -4
  140. package/nstc-g6/components/NstcPagination/NstcPagination.vue +428 -428
  141. package/nstc-g6/components/NstcScreenFull/NstcScreenFull.vue +70 -70
  142. package/nstc-g6/components/NstcSelectTree/NstcSelectTree.vue +730 -730
  143. package/nstc-g6/components/NstcSelectTreeList/NstcSelectTreeList.vue +677 -677
  144. package/nstc-g6/components/NstcSticky/NstcSticky.vue +97 -97
  145. package/nstc-g6/components/NstcSvgIcon/NstcSvgIcon.vue +72 -72
  146. package/nstc-g6/components/NstcTab/NstcTab.vue +80 -80
  147. package/nstc-g6/components/NstcTabWithBadge/NstcTabWithBadge.vue +45 -45
  148. package/nstc-g6/components/NstcTabWithBadge/index.scss +31 -31
  149. package/nstc-g6/components/NstcTable/ElTableColumnCustom/index.vue +292 -292
  150. package/nstc-g6/components/NstcTable/NstcTable.vue +460 -460
  151. package/nstc-g6/components/NstcTableSet/NstcTableSet.vue +802 -802
  152. package/nstc-g6/components/NstcThemePicker/NstcThemePicker.vue +186 -186
  153. package/nstc-g6/components/NstcUploadCustomExcel/NstcUploadCustomExcel.vue +328 -328
  154. package/nstc-g6/components/NstcUploadExcel/NstcUploadExcel.vue +145 -145
  155. package/nstc-g6/components/NstcWorkBench/NstcWorkBench.vue +180 -180
  156. package/nstc-g6/components/Search/NstcSearch.vue +583 -583
  157. package/nstc-g6/components/Search/src/demo/index copy.vue +101 -101
  158. package/nstc-g6/components/Search/src/demo/index.vue +103 -103
  159. package/nstc-g6/components/Search/src/main copy.vue +607 -607
  160. package/nstc-g6/components/approvelTwo/main.vue +220 -220
  161. package/nstc-g6/components/approvelTwo/progress.vue +154 -154
  162. package/nstc-g6/directives/VCopy/index.js +59 -59
  163. package/nstc-g6/directives/VNstcNumber/index.js +14 -14
  164. package/nstc-g6/directives/VNstcNumber/temp.js +446 -446
  165. package/nstc-g6/index.js +193 -193
  166. package/nstc-g6/utils/auth.js +2 -2
  167. package/nstc-g6/utils/axios.js +2 -2
  168. package/nstc-g6/utils/dateAndValidator.js +649 -649
  169. package/nstc-g6/utils/debounce.js +40 -40
  170. package/nstc-g6/utils/mapper_aims.js +809 -809
  171. package/nstc-g6/utils/parseTime.js +48 -48
  172. package/nstc-g6/utils/validate/index.js +6 -6
  173. package/nstc-g6/utils/vendor/Export2Excel.js +229 -229
  174. package/nstc-g6/utils/vendor/Export2Zip.js +24 -24
  175. package/nstc-g6/utils/vue-bus.js +4 -4
  176. package/package.json +103 -103
  177. package/src/_qiankun/index.js +113 -113
  178. package/src/_qiankun/postMessage.js +24 -24
  179. package/src/assets/css/_coreLib.scss +43 -43
  180. package/src/assets/css/alert.scss +28 -28
  181. package/src/assets/css/cl-anchor.scss +70 -70
  182. package/src/assets/css/cl-approve-card.scss +68 -68
  183. package/src/assets/css/cl-dialog.scss +113 -113
  184. package/src/assets/css/cl-drag-list.scss +24 -24
  185. package/src/assets/css/cl-empty.scss +10 -10
  186. package/src/assets/css/cl-expandable-pane.scss +37 -37
  187. package/src/assets/css/cl-expandable.scss +27 -27
  188. package/src/assets/css/cl-file-upload-table.scss +31 -31
  189. package/src/assets/css/cl-filter.scss +4 -4
  190. package/src/assets/css/cl-flow-step.scss +185 -185
  191. package/src/assets/css/cl-footer-box.scss +10 -10
  192. package/src/assets/css/cl-form-item.scss +729 -729
  193. package/src/assets/css/cl-general-card.scss +11 -11
  194. package/src/assets/css/cl-layout-aside.scss +92 -92
  195. package/src/assets/css/cl-layout-content.scss +16 -16
  196. package/src/assets/css/cl-layout-header.scss +89 -89
  197. package/src/assets/css/cl-layout-tabs.scss +87 -87
  198. package/src/assets/css/cl-layout.scss +97 -97
  199. package/src/assets/css/cl-login-temporary.scss +37 -37
  200. package/src/assets/css/cl-message.scss +159 -159
  201. package/src/assets/css/cl-more-tab.scss +98 -98
  202. package/src/assets/css/cl-nav-menu.scss +5 -5
  203. package/src/assets/css/cl-pagination.scss +130 -130
  204. package/src/assets/css/cl-secondary-tab.scss +53 -53
  205. package/src/assets/css/cl-showcolumn.scss +40 -40
  206. package/src/assets/css/cl-sifting.scss +51 -51
  207. package/src/assets/css/cl-statis.scss +54 -54
  208. package/src/assets/css/cl-step.scss +73 -73
  209. package/src/assets/css/cl-suspend.scss +19 -19
  210. package/src/assets/css/cl-tertiary-tab.scss +56 -56
  211. package/src/assets/css/cl-upload.scss +52 -52
  212. package/src/assets/css/cl-worn-pagination.scss +50 -50
  213. package/src/assets/css/el-button.scss +186 -186
  214. package/src/assets/css/el-table.scss +88 -88
  215. package/src/assets/css/element-variables.scss +1061 -1061
  216. package/src/assets/css/element.dev.scss +22 -22
  217. package/src/assets/css/font-icon.scss +26 -26
  218. package/src/assets/css/index.dev.scss +4 -4
  219. package/src/assets/css/index.scss +11 -11
  220. package/src/assets/css/normalize.scss +845 -845
  221. package/src/assets/css/plain-text.scss +36 -36
  222. package/src/assets/css/rootvar.scss +143 -143
  223. package/src/assets/css/select.scss +25 -25
  224. package/src/assets/css/title-pop.scss +23 -23
  225. package/src/assets/getJsonc.js +53 -53
  226. package/src/assets/iconFont/demo.css +539 -539
  227. package/src/assets/iconFont/demo_index.html +1614 -1614
  228. package/src/assets/iconFont/iconfont.css +263 -263
  229. package/src/assets/iconFont/iconfont.json +443 -443
  230. package/src/assets/realUrl.js +13 -13
  231. package/src/components/Anchor/AnchorItem.vue +30 -30
  232. package/src/components/Anchor/index.vue +208 -208
  233. package/src/components/ApprovalButtons/index.vue +240 -240
  234. package/src/components/ApprovalCard/index.vue +132 -132
  235. package/src/components/ApprovalRecord/approvalImg.vue +39 -39
  236. package/src/components/ApprovalRecord/approvalImgPro.vue +424 -424
  237. package/src/components/ApprovalRecord/flowDialog.vue +47 -47
  238. package/src/components/ApprovalRecord/index.vue +63 -63
  239. package/src/components/Button/button-group.vue +148 -148
  240. package/src/components/Button/icon-group-button.vue +63 -63
  241. package/src/components/Button/index.vue +56 -56
  242. package/src/components/CascaderArea/index.vue +103 -103
  243. package/src/components/ChildRange/index.vue +169 -169
  244. package/src/components/ChildRange/style.scss +34 -34
  245. package/src/components/ContentLoading/index.vue +41 -41
  246. package/src/components/ContentNull/index.vue +19 -19
  247. package/src/components/DatePicker/index.vue +33 -33
  248. package/src/components/DatePicker/por.vue +171 -171
  249. package/src/components/Descriptions/index.vue +42 -42
  250. package/src/components/Dialog/index.vue +26 -26
  251. package/src/components/Dialog/indexO.vue +116 -116
  252. package/src/components/DragList/index.vue +79 -79
  253. package/src/components/ECharts/define.js +74 -74
  254. package/src/components/ECharts/index.vue +170 -170
  255. package/src/components/ECharts/mixins/resize.js +23 -23
  256. package/src/components/Empty/img/400.svg +101 -101
  257. package/src/components/Empty/img/401.svg +101 -101
  258. package/src/components/Empty/img/403.svg +101 -101
  259. package/src/components/Empty/img/405.svg +101 -101
  260. package/src/components/Empty/img/901.svg +95 -95
  261. package/src/components/Empty/img/902.svg +95 -95
  262. package/src/components/Empty/img/903.svg +95 -95
  263. package/src/components/Empty/img/904.svg +95 -95
  264. package/src/components/Empty/img/905.svg +95 -95
  265. package/src/components/Empty/img/906.svg +95 -95
  266. package/src/components/Empty/img/907.svg +95 -95
  267. package/src/components/Empty/img/abnormal.svg +108 -108
  268. package/src/components/Empty/img/dispose.svg +71 -71
  269. package/src/components/Empty/img/empty.svg +57 -57
  270. package/src/components/Empty/img/general.svg +58 -58
  271. package/src/components/Empty/img/lock.svg +57 -57
  272. package/src/components/Empty/img/network.svg +59 -59
  273. package/src/components/Empty/img/relevant.svg +68 -68
  274. package/src/components/Empty/img/search.svg +72 -72
  275. package/src/components/Empty/index.vue +147 -147
  276. package/src/components/EventBubble/demo/a.vue +29 -29
  277. package/src/components/EventBubble/demo/b.vue +12 -12
  278. package/src/components/EventBubble/demo/c.vue +18 -18
  279. package/src/components/EventBubble/index.vue +57 -57
  280. package/src/components/Expandable/index.vue +49 -49
  281. package/src/components/Expandable/main.vue +64 -64
  282. package/src/components/FileExportAsync/index.vue +191 -191
  283. package/src/components/FileImport/index.vue +108 -108
  284. package/src/components/FileUploadTable/index.vue +583 -583
  285. package/src/components/Filters/form-item-input.vue +185 -185
  286. package/src/components/Filters/index.vue +216 -216
  287. package/src/components/Filters/indexO.vue +106 -106
  288. package/src/components/FlowStep/index.vue +92 -92
  289. package/src/components/FooterBox/index.vue +21 -21
  290. package/src/components/GeneralCard/index.vue +15 -15
  291. package/src/components/InputNumber/index.vue +184 -184
  292. package/src/components/InputNumber/numberRange.vue +62 -62
  293. package/src/components/InputSearch/index.vue +79 -75
  294. package/src/components/Layout/AsideNav/index.vue +120 -120
  295. package/src/components/Layout/AsideNav/menuItem.vue +34 -34
  296. package/src/components/Layout/AsideNav/submenuTitle.vue +26 -26
  297. package/src/components/Layout/HeaderWrap/changePwd.vue +215 -215
  298. package/src/components/Layout/HeaderWrap/index.vue +412 -412
  299. package/src/components/Layout/HeaderWrap/noticePop.vue +316 -316
  300. package/src/components/Layout/SubContent/index.vue +127 -127
  301. package/src/components/Layout/TabsNav/index.vue +169 -169
  302. package/src/components/Layout/index.vue +518 -518
  303. package/src/components/Layout/utils.js +12 -12
  304. package/src/components/LoginTemporary/form.vue +581 -581
  305. package/src/components/LoginTemporary/index.vue +198 -198
  306. package/src/components/LoginTemporary/qrcode.vue +92 -92
  307. package/src/components/LoginTemporary/retrievePw.vue +375 -375
  308. package/src/components/LoginTemporary/utils.js +73 -73
  309. package/src/components/MicroApp/index.js +67 -67
  310. package/src/components/MicroFrame/index.vue +95 -95
  311. package/src/components/MoreTab/index.vue +229 -229
  312. package/src/components/NavMenu/index.vue +60 -60
  313. package/src/components/PageHeader/index.vue +39 -39
  314. package/src/components/PageHeader/style.scss +44 -44
  315. package/src/components/PageLayout/page.vue +15 -15
  316. package/src/components/Pagination/index.vue +165 -165
  317. package/src/components/SecondaryTab/index.vue +57 -57
  318. package/src/components/SelectLazy/index.vue +75 -75
  319. package/src/components/SelectTree/SelectTreeLazy.vue +241 -241
  320. package/src/components/SelectTree/index.vue +206 -206
  321. package/src/components/ShowColumn/index.vue +252 -252
  322. package/src/components/Sifting/index.vue +98 -98
  323. package/src/components/Stamp/index.vue +75 -75
  324. package/src/components/Statis/index.vue +113 -113
  325. package/src/components/Statis/statisItem.vue +65 -65
  326. package/src/components/Statis/statisPopover.vue +63 -63
  327. package/src/components/Step/index.vue +37 -37
  328. package/src/components/Suspend/index.vue +72 -72
  329. package/src/components/Table/filters.js +60 -60
  330. package/src/components/Table/index.vue +89 -89
  331. package/src/components/Table/indexO.vue +149 -149
  332. package/src/components/TableOperateColumn/OperateBtns.vue +86 -86
  333. package/src/components/TableOperateColumn/index.vue +26 -26
  334. package/src/components/Task/index.vue +26 -26
  335. package/src/components/TertiaryTab/index.vue +62 -62
  336. package/src/components/TimePicker/index.vue +28 -28
  337. package/src/components/Upload/index.vue +280 -280
  338. package/src/components/Upload/uploadMsg.vue +114 -114
  339. package/src/components/WornPagination/index.vue +73 -73
  340. package/src/directives/VClickOutside/index.js +27 -27
  341. package/src/directives/VHas/index.js +58 -58
  342. package/src/directives/VMove/index.js +42 -42
  343. package/src/directives/VRuleKey/index.js +201 -201
  344. package/src/directives/VTitle/index.js +109 -109
  345. package/src/index.js +265 -265
  346. package/src/plugins/CompatibleOld/index.js +11 -11
  347. package/src/plugins/Print/index.js +4 -4
  348. package/src/plugins/Print/print-js/.babelrc +12 -12
  349. package/src/plugins/Print/print-js/LICENSE +21 -21
  350. package/src/plugins/Print/print-js/README.md +98 -98
  351. package/src/plugins/Print/print-js/dist/print.css +96 -96
  352. package/src/plugins/Print/print-js/dist/print.js +990 -990
  353. package/src/plugins/Print/print-js/package.json +60 -60
  354. package/src/plugins/Print/print-js/src/index.d.ts +45 -45
  355. package/src/plugins/Print/print-js/src/index.js +10 -10
  356. package/src/plugins/Print/print-js/src/js/browser.js +33 -33
  357. package/src/plugins/Print/print-js/src/js/functions.js +103 -103
  358. package/src/plugins/Print/print-js/src/js/html.js +70 -70
  359. package/src/plugins/Print/print-js/src/js/image.js +48 -48
  360. package/src/plugins/Print/print-js/src/js/init.js +168 -168
  361. package/src/plugins/Print/print-js/src/js/json.js +109 -109
  362. package/src/plugins/Print/print-js/src/js/modal.js +62 -62
  363. package/src/plugins/Print/print-js/src/js/pdf.js +62 -62
  364. package/src/plugins/Print/print-js/src/js/print.js +102 -102
  365. package/src/plugins/Print/print-js/src/js/raw-html.js +15 -15
  366. package/src/plugins/Print/print-js/src/sass/index.scss +13 -13
  367. package/src/plugins/Print/print-js/src/sass/modules/_colors.scss +9 -9
  368. package/src/plugins/Print/print-js/src/sass/partials/_modal.scss +40 -40
  369. package/src/plugins/Print/print-js/src/sass/partials/_spinner.scss +45 -45
  370. package/src/plugins/Print/print.js +2 -2
  371. package/src/plugins/Print/print.scss +1 -1
  372. package/src/plugins/SetMenuTree/index.vue +41 -41
  373. package/src/plugins/SetMenuTree/logoIcon.vue +37 -37
  374. package/src/plugins/SetMenuTree/setmenutree.vue +427 -427
  375. package/src/plugins/SetMenuTree/utils.js +74 -74
  376. package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2000 -2000
  377. package/src/plugins/Sign/bjca/XTXSAB.js +2395 -2395
  378. package/src/plugins/Sign/bjca/index.js +129 -129
  379. package/src/plugins/Sign/index.js +28 -28
  380. package/src/plugins/Sign/sign.js +108 -64
  381. package/src/plugins/setTabsForSub.js +2 -2
  382. package/src/utils/auth.js +56 -56
  383. package/src/utils/axios.js +205 -205
  384. package/src/utils/downloadBlob.js +19 -19
  385. package/src/utils/forEachs.js +16 -16
  386. package/src/utils/getScrollContainer.js +43 -43
  387. package/src/utils/handleTab.js +109 -109
  388. package/src/utils/i18n/cn2hk.json +1270 -1270
  389. package/src/utils/i18n/index.js +50 -50
  390. package/src/utils/importGlobal.js +16 -16
  391. package/src/utils/list2tree.js +36 -36
  392. package/src/utils/msgboxPor.js +26 -26
  393. package/src/utils/print.js +161 -161
  394. package/src/utils/relaNo.js +72 -72
  395. package/src/utils/repairElementUI.js +169 -169
  396. package/src/utils/tableheaderFilterpanel.vue +248 -248
  397. package/src/utils/theme.config.js +22 -22
  398. package/src/utils/theme.js +31 -31
  399. package/src/utils/toExcel.js +103 -103
  400. package/src/utils/urlToGo.js +82 -82
  401. package/src/utils/xls2json.js +44 -44
  402. package/src/utils/xlsx2json.js +28 -28
@@ -1,802 +1,802 @@
1
- <template>
2
- <NstcDialog
3
- v-model="_value"
4
- :title="pageTitle"
5
- :custom-class="cName"
6
- :show-footer="false"
7
- :width="dialogWidth"
8
- >
9
- <div :class="`${cName}-inner`">
10
- <div :class="{ [`${cName}-left`]: true }">
11
- <!-- 顶部标题以及全选按钮 -->
12
- <div :class="`${cName}-inner-title`">
13
- <div class="title-temp">
14
- <span>{{ titleObj[type] }}</span>
15
- <span>已选</span>
16
- <span>{{ result.length || 0 }}</span>
17
- </div>
18
- <!-- <div class="choose-all" @click="chooseAllOrCancel">{{ isChkAll ? "取消全选": "全部选中" }}</div>-->
19
- <div class="choose-all" @click="chooseAllOrCancel">全部选中</div>
20
- </div>
21
- <!-- checkBox -->
22
- <div :class="`${cName}-inner-content`">
23
- <div
24
- v-for="(group, index) in options"
25
- :key="index"
26
- class="table-columns-set-group"
27
- >
28
- <div :class="`${cName}-group-name`">
29
- {{ group.groupName }}
30
- <!-- <i v-if="showCollapse" :class="['el-icon-arrow-up', 'arrow-up',arrowStates[index]?'arrow-down':'']" @click="upDown(index)"></i> -->
31
- </div>
32
- <CheckboxCustom
33
- v-model="model[index]"
34
- :class="[
35
- arrowStates[index] ? 'arrowwz-change' : '',
36
- 'show-group'
37
- ]"
38
- :options="group.children"
39
- hover-show-title
40
- @change="(_) => handleLeftChange(group.children)"
41
- />
42
- </div>
43
- </div>
44
- </div>
45
- <!-- 右边排序部分 -->
46
- <div
47
- v-show="['set', 'export', 'condition'].includes(type)"
48
- :class="`${cName}-right`"
49
- >
50
- <div :class="`${cName}-inner-title`">当前选定项</div>
51
- <div ref="table_columns_set_result" :class="`${cName}-inner-content`">
52
- <div
53
- v-for="(item, index) in result"
54
- :key="item.id"
55
- :class="`${cName}-result-item`"
56
- >
57
- <span>{{ item.name }}</span>
58
- <!-- <el-button
59
- v-if="!item.isRequired"
60
- type="text"
61
- style="padding:0;"
62
- icon="el-icon-close"
63
- @click="handleDel(item, index)"
64
- style="color:#007AFF"
65
- /> -->
66
- <div class="close">
67
- <i class="el-icon-close" @click="handleDel(item, index)"></i>
68
- </div>
69
- </div>
70
- </div>
71
- </div>
72
- </div>
73
- <!-- 下面按钮部分 -->
74
- <template slot="after">
75
- <div slot="footer" class="dialog-footer">
76
- <el-button
77
- v-if="footerHandlers.confirm"
78
- type="primary"
79
- :class="footerHandlers.confirm.className || ''"
80
- @click="handleConfirm"
81
- >
82
- {{ footerHandlers.confirm.text }}
83
- </el-button>
84
- <el-tooltip
85
- class="item"
86
- effect="dark"
87
- content="重置本次操作"
88
- placement="top-start"
89
- >
90
- <el-button
91
- v-if="footerHandlers.cancel"
92
- :class="footerHandlers.cancel.className || ''"
93
- @click="handleReset"
94
- >
95
- {{ footerHandlers.cancel.text }}
96
- </el-button>
97
- </el-tooltip>
98
- </div>
99
- </template>
100
- </NstcDialog>
101
- </template>
102
-
103
- <script>
104
- import NstcDialog from '../NstcDialog/NstcDialog'
105
- import CheckboxCustom from '../NstcForm/CheckboxCustom/index.vue'
106
- import axios from '../../utils/axios'
107
- import Sortable from 'sortablejs'
108
-
109
- export default {
110
- name: 'NstcTableSet',
111
-
112
- components: {
113
- NstcDialog,
114
- CheckboxCustom
115
- },
116
-
117
- props: {
118
- showCollapse: {
119
- type: Boolean,
120
- default: true
121
- },
122
- value: {
123
- // 控制显示隐藏
124
- type: Boolean,
125
- default: false
126
- },
127
-
128
- type: {
129
- // set - 列设置 export - 导出 condition - 筛选条件
130
- type: String,
131
- default: 'set'
132
- },
133
-
134
- exportExcelConfig: {
135
- type: Object,
136
- default: function () {
137
- return {
138
- url: '',
139
- httpMethod: 'get',
140
- formatData: (i) => {
141
- return i
142
- },
143
- searchObj: {},
144
- exportFileName: '导出'
145
- }
146
- }
147
- },
148
-
149
- title: {
150
- type: String,
151
- default: function () {
152
- return '设置显示字段'
153
- }
154
- },
155
-
156
- config: {
157
- type: Object,
158
- default: () => {
159
- return {
160
- pageUUID: '',
161
- moduleNo: ''
162
- }
163
- }
164
- }
165
- },
166
-
167
- data() {
168
- return {
169
- arrowStates: [],
170
- hasInit: false,
171
-
172
- footerHandlers: {
173
- confirm: {
174
- text: '确定',
175
- className: {
176
- 'nstc-g6-common-btn-1': true,
177
- 'nstc-g6-common-btn-size-b': true
178
- }
179
- },
180
- cancel: {
181
- text: '重置',
182
- className: {
183
- 'nstc-g6-common-btn-1': true,
184
- 'nstc-g6-common-btn-size-b': true
185
- }
186
- }
187
- },
188
-
189
- titleObj: {
190
- set: '列设置',
191
- export: '导出',
192
- condition: '筛选'
193
- },
194
-
195
- options: [],
196
- model: [],
197
-
198
- result: [],
199
- sortableInstance: null,
200
- searchObj: {},
201
- saveObj: {
202
- userUnit: '',
203
- userCondition: '',
204
- pageUUID: '',
205
- userId: '',
206
- userExportUnit: ''
207
- },
208
- // 列表的
209
- defaultSet: [],
210
- cName: 'table-columns-global-set',
211
-
212
- columns: [],
213
-
214
- // 不能操作的选择项
215
- isRequiredArr: [],
216
-
217
- typeObj: {
218
- set: 'userUnit',
219
- export: 'userCondition',
220
- condition: 'userExportUnit'
221
- },
222
-
223
- // 自定义表单和筛选的默认条件
224
- defaultList: []
225
- }
226
- },
227
-
228
- computed: {
229
- _value: {
230
- get() {
231
- return this.value
232
- },
233
- set(val) {
234
- this.$emit('input', val)
235
- }
236
- },
237
- // 是否全选
238
- isChkAll() {
239
- let sum = 0
240
- this.options.map((i) => {
241
- i[`children`] && (sum += i[`children`].length)
242
- })
243
- return sum === this.result.length
244
- },
245
- // 页面名称
246
- pageTitle() {
247
- return this.titleObj[this.type]
248
- },
249
- dialogWidth() {
250
- return '914px'
251
- }
252
- },
253
-
254
- watch: {
255
- value(val) {
256
- // && !this[`hasInit_${this.type}`]
257
- val && this.init()
258
- }
259
- },
260
-
261
- methods: {
262
- upDown(index) {
263
- this.$set(this.arrowStates, index, !this.arrowStates[index])
264
- },
265
- /**
266
- * 当左侧变化时, 左侧跟着变化
267
- * options
268
- * val
269
- */
270
- handleLeftChange(options) {
271
- const resultIds = this.result.map((item) => item.id)
272
- const leftCheckedArr = this.model.reduce(
273
- (total, next) => [...total, ...next],
274
- []
275
- )
276
-
277
- if (leftCheckedArr.length > resultIds.length) {
278
- // 添加列
279
- const id = leftCheckedArr.find((id) => !resultIds.includes(id))
280
- const changeItem = options.find((item) => item.id === id)
281
-
282
- this.result.push(changeItem)
283
- } else {
284
- // 删除列
285
- const changeIndex = resultIds.findIndex(
286
- (id) => !leftCheckedArr.includes(id)
287
- )
288
-
289
- this.result.splice(changeIndex, 1)
290
- }
291
- },
292
-
293
- /**
294
- * 左侧删除按钮
295
- */
296
- handleDel(item, index) {
297
- this.result.splice(index, 1)
298
-
299
- for (let i in this.model) {
300
- const idx = this.model[i].findIndex((id) => id === item.id)
301
-
302
- if (~idx) {
303
- this.model[i].splice(idx, 1)
304
- break
305
- }
306
- }
307
- },
308
-
309
- /**
310
- * 保存自定义列
311
- * @returns {Promise<void>}
312
- */
313
- async handleConfirm() {
314
- if (['condition', 'set'].includes(this.type)) {
315
- const k = this.type === 'set' ? 'userUnit' : 'userCondition'
316
- if (this.result.length == 0) {
317
- return this.$message.warning('至少勾选一个字段')
318
- }
319
- this.saveObj[k] = this.result.map((item) => item.id).join(',')
320
- if (k == 'userUnit') {
321
- this.saveObj['userCondition'] = null //防止设置自定义列或设置自定义筛选后,自定义列与自定义筛选相互影响
322
- } else if (k == 'userCondition') {
323
- this.saveObj['userUnit'] = null //防止设置自定义列或设置自定义筛选后,自定义列与自定义筛选相互影响
324
- }
325
- await axios
326
- .put(`/bems/1.0/dynamicUnit/userUnit`, {
327
- ...this.saveObj,
328
- ...this.config
329
- })
330
- .then(() => {
331
- this.$emit('update:defaultSet', this.result)
332
- this.$emit('confirm', this.result)
333
- this._value = false
334
- // this.$message({
335
- // type: 'success',
336
- // message: '保存成功'
337
- // })
338
- // update Date
339
- // this.init()
340
- })
341
- .catch((e) => {
342
- this.$message({
343
- type: 'error',
344
- message: e.msg || '保存失败'
345
- })
346
- })
347
- } else {
348
- if (this.result.length == 0) {
349
- return this.$message.warning('至少勾选一个字段')
350
- }
351
- await this.exportAction()
352
- }
353
- },
354
-
355
- /**
356
- * 重置选项
357
- */
358
- handleReset() {
359
- this.init('reset')
360
- },
361
-
362
- handleDefaultSet(val) {
363
- const ids = val.map((item) => item.id)
364
-
365
- this.result = JSON.parse(JSON.stringify(val))
366
- console.log('__log_result', this.result)
367
- this.model = this.options.map((group) => {
368
- let model = []
369
-
370
- if (group.children) {
371
- model = group.children
372
- .map((item) => item.id)
373
- .filter((id) => ids.includes(id))
374
- }
375
-
376
- return model
377
- })
378
- },
379
-
380
- /**
381
- * 初始化
382
- * @param reset reset重置
383
- * @returns {Promise<void>}
384
- */
385
- async init(reset) {
386
- this.isRequiredArr = []
387
- const { data } = await axios.get(`/bems/1.0/dynamicUnit`, this.config)
388
- try {
389
- // 全量的table列
390
- let allUnit = []
391
- if (this.type === 'set' || this.type === 'export') {
392
- allUnit = JSON.parse(data[`allUnit`] || '[]')
393
- } else if (this.type === 'condition') {
394
- allUnit = JSON.parse(data[`allCondition`] || '[]')
395
- }
396
-
397
- // 用户默认选择的 userUnit
398
- let key = ''
399
- if (this.type === 'set') {
400
- reset == 'reset' ? (data['userUnitList'] = data['userUnitList']) : ''
401
- key = data[`userUnitList`] ? 'userUnitList' : 'defaultUnitList'
402
- reset == 'reset' ? (key = 'userUnitList') : ''
403
- this.defaultList = data[`defaultUnitList`]
404
- } else if (this.type === 'condition') {
405
- key = data[`userConditionList`]
406
- ? 'userConditionList'
407
- : 'defaultConditionList'
408
- this.defaultList = data[`defaultConditionList`]
409
- } else if (this.type === 'export') {
410
- // 导出的字段在付款这边默认勾选是列显示的字段
411
- key = data[`userUnitList`] ? 'userUnitList' : 'defaultUnitList'
412
- reset == 'reset' ? (key = 'userUnitList') : ''
413
- this.defaultList = data[`defaultUnitList`]
414
- }
415
- let userUnit = data[key]
416
- console.log('__log_用户选择的', userUnit)
417
-
418
- this.options = allUnit.map((group) => {
419
- this.model.push([])
420
-
421
- if (group.children) {
422
- group.children = group.children.map((item) => {
423
- !!item.isRequired && this.isRequiredArr.push(item.id)
424
- return {
425
- ...item,
426
- label: item.name,
427
- value: item.id,
428
- disabled: false // 导出都可以勾选
429
- }
430
- })
431
- }
432
- this.arrowStates.push(false)
433
- return group
434
- })
435
-
436
- this.handleDefaultSet(userUnit || [])
437
-
438
- this.sortableInstance = new Sortable(
439
- this.$refs[`table_columns_set_result`],
440
- {
441
- setData(dataTransfer) {
442
- // to avoid Firefox bug
443
- // Detail see : https://github.com/RubaXa/Sortable/issues/1012
444
- dataTransfer.setData('Text', '')
445
- },
446
- onEnd: (evt) => {
447
- const targetRow = this.result.splice(evt.oldIndex, 1)[0]
448
-
449
- this.$nextTick(() => {
450
- this.result.splice(evt.newIndex, 0, targetRow)
451
- })
452
- }
453
- }
454
- )
455
- // type
456
- this[`hasInit_${this.type}`] = true
457
- //
458
- } catch (e) {
459
- console.log('__log_custom_column', e)
460
- }
461
- },
462
-
463
- /**
464
- * 全选 或 取消全选
465
- */
466
- chooseAllOrCancel() {
467
- if (this.isChkAll) {
468
- // this.model.map(i => {
469
- // i.length = 0
470
- // })
471
- // this.handleDefaultSet([])
472
- } else {
473
- let arr = []
474
- this.options.map((item, index) => {
475
- if (item[`children`]) {
476
- arr = arr.concat(item.children)
477
- item.children.map((i) => {
478
- !this.model[index].includes(i.id) && this.model[index].push(i.id)
479
- })
480
- }
481
- })
482
- this.handleDefaultSet(arr)
483
- this.$forceUpdate()
484
- console.log('__log_this.model', this.model)
485
- }
486
- },
487
-
488
- /**
489
- * 导出动作
490
- */
491
- async exportAction() {
492
- // 导出默认10000
493
- this.exportExcelConfig.searchObj[`page.size`] = 10000
494
-
495
- let result = await axios({
496
- url: this.exportExcelConfig.url,
497
- method: this.exportExcelConfig.httpMethod,
498
- [`${this.exportExcelConfig.httpMethod === 'get' ? 'params' : 'data'}`]:
499
- this.exportExcelConfig.searchObj
500
- })
501
-
502
- this._value = false
503
- console.log('返回结果', result)
504
- result = result[`list`] || result
505
-
506
- // 格式化导出数据
507
- this.exportExcelConfig.formatData &&
508
- (result = this.exportExcelConfig.formatData(result))
509
-
510
- // 拼接导出结构
511
- console.log('result', this.result)
512
-
513
- this.excelExportAction(result)
514
- },
515
-
516
- /**
517
- * 导出excel
518
- * @param data 列表数据
519
- */
520
- excelExportAction(data) {
521
- console.log('返回数据', data)
522
- this.excelExportList = data
523
- this.excelDownloadLoading = true
524
- let that = this
525
- import('../../utils/vendor/Export2Excel').then((excel) => {
526
- const tHeader = this.result.map((i) => {
527
- return i[`name`]
528
- })
529
- const keys = this.result.map((i) => {
530
- return i[`id`]
531
- })
532
-
533
- // 格式化导出数据格式
534
- const exportData = that.excelExportList.map((i) => {
535
- const temp = []
536
- keys.map((k) => {
537
- temp.push(i[k])
538
- })
539
- return temp
540
- })
541
-
542
- console.log('___格式化数据', data, {
543
- header: tHeader,
544
- data: exportData,
545
- filename: that.exportExcelConfig.exportFileName
546
- })
547
- let cellStyle = {}
548
- if (that.exportExcelConfig.cellStyle) {
549
- let cellStyleColName = this.result.filter(
550
- (i) => that.exportExcelConfig.cellStyle[i.id]
551
- )
552
- let cellStyleMap = {}
553
- cellStyleColName.forEach((i) => {
554
- if (that.exportExcelConfig.cellStyle[i.id]) {
555
- cellStyleMap[[i.name]] = that.exportExcelConfig.cellStyle[i.id]
556
- }
557
- })
558
- let headerWs = excel.sheet_from_array_of_arrays([tHeader])
559
- for (let colKey in headerWs) {
560
- if (headerWs[colKey].v && cellStyleMap[headerWs[colKey].v]) {
561
- let colName = colKey.slice(0, 1)
562
- cellStyle[colName] = cellStyleMap[headerWs[colKey].v]
563
- }
564
- }
565
- }
566
-
567
- excel.export_json_to_excel(
568
- {
569
- header: tHeader,
570
- data: exportData,
571
- filename: that.exportExcelConfig.exportFileName,
572
- merges: that.exportExcelConfig.merges
573
- },
574
- cellStyle
575
- )
576
- that.excelDownloadLoading = false
577
- })
578
- }
579
- }
580
- }
581
- </script>
582
-
583
- <style lang="scss">
584
- .show-group {
585
- max-height: 800px;
586
- overflow: hidden;
587
- transition: all 0.25s ease;
588
- }
589
-
590
- .arrowwz-change {
591
- max-height: 0px;
592
- }
593
-
594
- .arrow-up {
595
- font-size: 15px;
596
- display: inline-block;
597
- margin: 0px 3px;
598
- cursor: pointer;
599
- transition: all 0.25s linear;
600
- }
601
-
602
- .arrow-down {
603
- transform: rotateZ(+90deg);
604
- }
605
-
606
- .export-excel {
607
- .el-checkbox {
608
- margin-right: 50px !important;
609
- }
610
-
611
- .el-checkbox:nth-child(5n) {
612
- margin-right: 0;
613
- }
614
- }
615
-
616
- // 导出模板
617
-
618
- .table-columns-global-set {
619
- &-group-name {
620
- font-size: 14px;
621
- color: #262d34;
622
- }
623
-
624
- .dialog-footer {
625
- text-align: center;
626
- }
627
-
628
- // 弹框按钮样式
629
- .nstc-dialog-footer-btn {
630
- width: 90px;
631
- height: 34px;
632
- }
633
-
634
- .nstc-dialog-footer-btn-clear {
635
- margin-left: 15px;
636
- }
637
-
638
- padding: 15px 19px;
639
-
640
- .el-dialog__header {
641
- padding: 0 0 8px 0 !important;
642
- text-align: left;
643
-
644
- .el-icon-close {
645
- transform: scale(1.4);
646
- }
647
- }
648
-
649
- .el-dialog__body {
650
- //border-top: 1px solid #dfe6ee;
651
- padding: 15px 0;
652
-
653
- .el-checkbox {
654
- width: 15%;
655
- margin-bottom: 20px;
656
- }
657
- }
658
-
659
- .export-excel {
660
- // border: none !important;
661
- }
662
-
663
- .el-checkbox__input {
664
- transform: scale(1.2855);
665
- }
666
-
667
- .el-checkbox__label {
668
- overflow: hidden;
669
- vertical-align: middle;
670
- text-overflow: ellipsis;
671
- white-space: nowrap;
672
- width: 100%;
673
- }
674
-
675
- .el-checkbox-group {
676
- box-sizing: border-box;
677
- padding-left: 2px;
678
- margin-top: 12px;
679
- padding-top: 4px;
680
- }
681
-
682
- &-inner {
683
- display: flex;
684
- height: 500px;
685
-
686
- &-title {
687
- padding: 0 10px 20px 0;
688
- color: #8a8a8a;
689
- display: flex;
690
- justify-content: space-between;
691
- font-weight: 700;
692
-
693
- .title-temp {
694
- span:nth-child(1) {
695
- }
696
-
697
- span:nth-child(2) {
698
- color: #bac4cf;
699
- font-size: 14px;
700
- margin: 0 3px 0 13px;
701
- }
702
-
703
- span:nth-child(3) {
704
- color: #007aff;
705
- font-size: 14px;
706
- }
707
- }
708
-
709
- .choose-all {
710
- color: #007aff;
711
- font-size: 14px;
712
-
713
- &:hover {
714
- cursor: pointer;
715
- }
716
- }
717
- }
718
-
719
- &-content {
720
- flex: 1;
721
- overflow-x: hidden;
722
- overflow-y: auto;
723
- }
724
- }
725
-
726
- &-left {
727
- flex: 1;
728
- border-right: 1px solid #dfe6ee;
729
- }
730
-
731
- &-right {
732
- width: 180px;
733
- padding-left: 10px;
734
- margin: 0 0 0 10px;
735
- }
736
-
737
- &-left,
738
- &-right {
739
- display: flex;
740
- flex-direction: column;
741
- }
742
-
743
- &-group {
744
- & + & {
745
- margin-top: 20px;
746
- }
747
-
748
- &-name {
749
- color: #3d4a57;
750
- font-weight: bold;
751
- margin-bottom: 10px;
752
- text-align: left;
753
- }
754
-
755
- .el-checkbox__label {
756
- width: 92px;
757
- white-space: nowrap;
758
- overflow: hidden;
759
- text-overflow: ellipsis;
760
- vertical-align: middle;
761
- line-height: 30px;
762
- }
763
- }
764
-
765
- &-result-item {
766
- padding: 9px 9px 0 0;
767
- display: flex;
768
- cursor: move;
769
- align-items: center;
770
- margin-right: 10px;
771
-
772
- &:hover {
773
- .close {
774
- color: #007aff;
775
- }
776
- }
777
-
778
- &:first-of-type {
779
- margin-top: -7px;
780
- }
781
-
782
- & > span {
783
- flex: 1;
784
- overflow: hidden;
785
- white-space: nowrap;
786
- margin-right: 5px;
787
- }
788
-
789
- .el-button--mini {
790
- padding: 0px;
791
- }
792
-
793
- .close {
794
- z-index: 999;
795
- }
796
-
797
- .close:hover {
798
- cursor: pointer;
799
- }
800
- }
801
- }
802
- </style>
1
+ <template>
2
+ <NstcDialog
3
+ v-model="_value"
4
+ :title="pageTitle"
5
+ :custom-class="cName"
6
+ :show-footer="false"
7
+ :width="dialogWidth"
8
+ >
9
+ <div :class="`${cName}-inner`">
10
+ <div :class="{ [`${cName}-left`]: true }">
11
+ <!-- 顶部标题以及全选按钮 -->
12
+ <div :class="`${cName}-inner-title`">
13
+ <div class="title-temp">
14
+ <span>{{ titleObj[type] }}</span>
15
+ <span>已选</span>
16
+ <span>{{ result.length || 0 }}</span>
17
+ </div>
18
+ <!-- <div class="choose-all" @click="chooseAllOrCancel">{{ isChkAll ? "取消全选": "全部选中" }}</div>-->
19
+ <div class="choose-all" @click="chooseAllOrCancel">全部选中</div>
20
+ </div>
21
+ <!-- checkBox -->
22
+ <div :class="`${cName}-inner-content`">
23
+ <div
24
+ v-for="(group, index) in options"
25
+ :key="index"
26
+ class="table-columns-set-group"
27
+ >
28
+ <div :class="`${cName}-group-name`">
29
+ {{ group.groupName }}
30
+ <!-- <i v-if="showCollapse" :class="['el-icon-arrow-up', 'arrow-up',arrowStates[index]?'arrow-down':'']" @click="upDown(index)"></i> -->
31
+ </div>
32
+ <CheckboxCustom
33
+ v-model="model[index]"
34
+ :class="[
35
+ arrowStates[index] ? 'arrowwz-change' : '',
36
+ 'show-group'
37
+ ]"
38
+ :options="group.children"
39
+ hover-show-title
40
+ @change="(_) => handleLeftChange(group.children)"
41
+ />
42
+ </div>
43
+ </div>
44
+ </div>
45
+ <!-- 右边排序部分 -->
46
+ <div
47
+ v-show="['set', 'export', 'condition'].includes(type)"
48
+ :class="`${cName}-right`"
49
+ >
50
+ <div :class="`${cName}-inner-title`">当前选定项</div>
51
+ <div ref="table_columns_set_result" :class="`${cName}-inner-content`">
52
+ <div
53
+ v-for="(item, index) in result"
54
+ :key="item.id"
55
+ :class="`${cName}-result-item`"
56
+ >
57
+ <span>{{ item.name }}</span>
58
+ <!-- <el-button
59
+ v-if="!item.isRequired"
60
+ type="text"
61
+ style="padding:0;"
62
+ icon="el-icon-close"
63
+ @click="handleDel(item, index)"
64
+ style="color:#007AFF"
65
+ /> -->
66
+ <div class="close">
67
+ <i class="el-icon-close" @click="handleDel(item, index)"></i>
68
+ </div>
69
+ </div>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ <!-- 下面按钮部分 -->
74
+ <template slot="after">
75
+ <div slot="footer" class="dialog-footer">
76
+ <el-button
77
+ v-if="footerHandlers.confirm"
78
+ type="primary"
79
+ :class="footerHandlers.confirm.className || ''"
80
+ @click="handleConfirm"
81
+ >
82
+ {{ footerHandlers.confirm.text }}
83
+ </el-button>
84
+ <el-tooltip
85
+ class="item"
86
+ effect="dark"
87
+ content="重置本次操作"
88
+ placement="top-start"
89
+ >
90
+ <el-button
91
+ v-if="footerHandlers.cancel"
92
+ :class="footerHandlers.cancel.className || ''"
93
+ @click="handleReset"
94
+ >
95
+ {{ footerHandlers.cancel.text }}
96
+ </el-button>
97
+ </el-tooltip>
98
+ </div>
99
+ </template>
100
+ </NstcDialog>
101
+ </template>
102
+
103
+ <script>
104
+ import NstcDialog from '../NstcDialog/NstcDialog'
105
+ import CheckboxCustom from '../NstcForm/CheckboxCustom/index.vue'
106
+ import axios from '../../utils/axios'
107
+ import Sortable from 'sortablejs'
108
+
109
+ export default {
110
+ name: 'NstcTableSet',
111
+
112
+ components: {
113
+ NstcDialog,
114
+ CheckboxCustom
115
+ },
116
+
117
+ props: {
118
+ showCollapse: {
119
+ type: Boolean,
120
+ default: true
121
+ },
122
+ value: {
123
+ // 控制显示隐藏
124
+ type: Boolean,
125
+ default: false
126
+ },
127
+
128
+ type: {
129
+ // set - 列设置 export - 导出 condition - 筛选条件
130
+ type: String,
131
+ default: 'set'
132
+ },
133
+
134
+ exportExcelConfig: {
135
+ type: Object,
136
+ default: function () {
137
+ return {
138
+ url: '',
139
+ httpMethod: 'get',
140
+ formatData: (i) => {
141
+ return i
142
+ },
143
+ searchObj: {},
144
+ exportFileName: '导出'
145
+ }
146
+ }
147
+ },
148
+
149
+ title: {
150
+ type: String,
151
+ default: function () {
152
+ return '设置显示字段'
153
+ }
154
+ },
155
+
156
+ config: {
157
+ type: Object,
158
+ default: () => {
159
+ return {
160
+ pageUUID: '',
161
+ moduleNo: ''
162
+ }
163
+ }
164
+ }
165
+ },
166
+
167
+ data() {
168
+ return {
169
+ arrowStates: [],
170
+ hasInit: false,
171
+
172
+ footerHandlers: {
173
+ confirm: {
174
+ text: '确定',
175
+ className: {
176
+ 'nstc-g6-common-btn-1': true,
177
+ 'nstc-g6-common-btn-size-b': true
178
+ }
179
+ },
180
+ cancel: {
181
+ text: '重置',
182
+ className: {
183
+ 'nstc-g6-common-btn-1': true,
184
+ 'nstc-g6-common-btn-size-b': true
185
+ }
186
+ }
187
+ },
188
+
189
+ titleObj: {
190
+ set: '列设置',
191
+ export: '导出',
192
+ condition: '筛选'
193
+ },
194
+
195
+ options: [],
196
+ model: [],
197
+
198
+ result: [],
199
+ sortableInstance: null,
200
+ searchObj: {},
201
+ saveObj: {
202
+ userUnit: '',
203
+ userCondition: '',
204
+ pageUUID: '',
205
+ userId: '',
206
+ userExportUnit: ''
207
+ },
208
+ // 列表的
209
+ defaultSet: [],
210
+ cName: 'table-columns-global-set',
211
+
212
+ columns: [],
213
+
214
+ // 不能操作的选择项
215
+ isRequiredArr: [],
216
+
217
+ typeObj: {
218
+ set: 'userUnit',
219
+ export: 'userCondition',
220
+ condition: 'userExportUnit'
221
+ },
222
+
223
+ // 自定义表单和筛选的默认条件
224
+ defaultList: []
225
+ }
226
+ },
227
+
228
+ computed: {
229
+ _value: {
230
+ get() {
231
+ return this.value
232
+ },
233
+ set(val) {
234
+ this.$emit('input', val)
235
+ }
236
+ },
237
+ // 是否全选
238
+ isChkAll() {
239
+ let sum = 0
240
+ this.options.map((i) => {
241
+ i[`children`] && (sum += i[`children`].length)
242
+ })
243
+ return sum === this.result.length
244
+ },
245
+ // 页面名称
246
+ pageTitle() {
247
+ return this.titleObj[this.type]
248
+ },
249
+ dialogWidth() {
250
+ return '914px'
251
+ }
252
+ },
253
+
254
+ watch: {
255
+ value(val) {
256
+ // && !this[`hasInit_${this.type}`]
257
+ val && this.init()
258
+ }
259
+ },
260
+
261
+ methods: {
262
+ upDown(index) {
263
+ this.$set(this.arrowStates, index, !this.arrowStates[index])
264
+ },
265
+ /**
266
+ * 当左侧变化时, 左侧跟着变化
267
+ * options
268
+ * val
269
+ */
270
+ handleLeftChange(options) {
271
+ const resultIds = this.result.map((item) => item.id)
272
+ const leftCheckedArr = this.model.reduce(
273
+ (total, next) => [...total, ...next],
274
+ []
275
+ )
276
+
277
+ if (leftCheckedArr.length > resultIds.length) {
278
+ // 添加列
279
+ const id = leftCheckedArr.find((id) => !resultIds.includes(id))
280
+ const changeItem = options.find((item) => item.id === id)
281
+
282
+ this.result.push(changeItem)
283
+ } else {
284
+ // 删除列
285
+ const changeIndex = resultIds.findIndex(
286
+ (id) => !leftCheckedArr.includes(id)
287
+ )
288
+
289
+ this.result.splice(changeIndex, 1)
290
+ }
291
+ },
292
+
293
+ /**
294
+ * 左侧删除按钮
295
+ */
296
+ handleDel(item, index) {
297
+ this.result.splice(index, 1)
298
+
299
+ for (let i in this.model) {
300
+ const idx = this.model[i].findIndex((id) => id === item.id)
301
+
302
+ if (~idx) {
303
+ this.model[i].splice(idx, 1)
304
+ break
305
+ }
306
+ }
307
+ },
308
+
309
+ /**
310
+ * 保存自定义列
311
+ * @returns {Promise<void>}
312
+ */
313
+ async handleConfirm() {
314
+ if (['condition', 'set'].includes(this.type)) {
315
+ const k = this.type === 'set' ? 'userUnit' : 'userCondition'
316
+ if (this.result.length == 0) {
317
+ return this.$message.warning('至少勾选一个字段')
318
+ }
319
+ this.saveObj[k] = this.result.map((item) => item.id).join(',')
320
+ if (k == 'userUnit') {
321
+ this.saveObj['userCondition'] = null //防止设置自定义列或设置自定义筛选后,自定义列与自定义筛选相互影响
322
+ } else if (k == 'userCondition') {
323
+ this.saveObj['userUnit'] = null //防止设置自定义列或设置自定义筛选后,自定义列与自定义筛选相互影响
324
+ }
325
+ await axios
326
+ .put(`/bems/1.0/dynamicUnit/userUnit`, {
327
+ ...this.saveObj,
328
+ ...this.config
329
+ })
330
+ .then(() => {
331
+ this.$emit('update:defaultSet', this.result)
332
+ this.$emit('confirm', this.result)
333
+ this._value = false
334
+ // this.$message({
335
+ // type: 'success',
336
+ // message: '保存成功'
337
+ // })
338
+ // update Date
339
+ // this.init()
340
+ })
341
+ .catch((e) => {
342
+ this.$message({
343
+ type: 'error',
344
+ message: e.msg || '保存失败'
345
+ })
346
+ })
347
+ } else {
348
+ if (this.result.length == 0) {
349
+ return this.$message.warning('至少勾选一个字段')
350
+ }
351
+ await this.exportAction()
352
+ }
353
+ },
354
+
355
+ /**
356
+ * 重置选项
357
+ */
358
+ handleReset() {
359
+ this.init('reset')
360
+ },
361
+
362
+ handleDefaultSet(val) {
363
+ const ids = val.map((item) => item.id)
364
+
365
+ this.result = JSON.parse(JSON.stringify(val))
366
+ console.log('__log_result', this.result)
367
+ this.model = this.options.map((group) => {
368
+ let model = []
369
+
370
+ if (group.children) {
371
+ model = group.children
372
+ .map((item) => item.id)
373
+ .filter((id) => ids.includes(id))
374
+ }
375
+
376
+ return model
377
+ })
378
+ },
379
+
380
+ /**
381
+ * 初始化
382
+ * @param reset reset重置
383
+ * @returns {Promise<void>}
384
+ */
385
+ async init(reset) {
386
+ this.isRequiredArr = []
387
+ const { data } = await axios.get(`/bems/1.0/dynamicUnit`, this.config)
388
+ try {
389
+ // 全量的table列
390
+ let allUnit = []
391
+ if (this.type === 'set' || this.type === 'export') {
392
+ allUnit = JSON.parse(data[`allUnit`] || '[]')
393
+ } else if (this.type === 'condition') {
394
+ allUnit = JSON.parse(data[`allCondition`] || '[]')
395
+ }
396
+
397
+ // 用户默认选择的 userUnit
398
+ let key = ''
399
+ if (this.type === 'set') {
400
+ reset == 'reset' ? (data['userUnitList'] = data['userUnitList']) : ''
401
+ key = data[`userUnitList`] ? 'userUnitList' : 'defaultUnitList'
402
+ reset == 'reset' ? (key = 'userUnitList') : ''
403
+ this.defaultList = data[`defaultUnitList`]
404
+ } else if (this.type === 'condition') {
405
+ key = data[`userConditionList`]
406
+ ? 'userConditionList'
407
+ : 'defaultConditionList'
408
+ this.defaultList = data[`defaultConditionList`]
409
+ } else if (this.type === 'export') {
410
+ // 导出的字段在付款这边默认勾选是列显示的字段
411
+ key = data[`userUnitList`] ? 'userUnitList' : 'defaultUnitList'
412
+ reset == 'reset' ? (key = 'userUnitList') : ''
413
+ this.defaultList = data[`defaultUnitList`]
414
+ }
415
+ let userUnit = data[key]
416
+ console.log('__log_用户选择的', userUnit)
417
+
418
+ this.options = allUnit.map((group) => {
419
+ this.model.push([])
420
+
421
+ if (group.children) {
422
+ group.children = group.children.map((item) => {
423
+ !!item.isRequired && this.isRequiredArr.push(item.id)
424
+ return {
425
+ ...item,
426
+ label: item.name,
427
+ value: item.id,
428
+ disabled: false // 导出都可以勾选
429
+ }
430
+ })
431
+ }
432
+ this.arrowStates.push(false)
433
+ return group
434
+ })
435
+
436
+ this.handleDefaultSet(userUnit || [])
437
+
438
+ this.sortableInstance = new Sortable(
439
+ this.$refs[`table_columns_set_result`],
440
+ {
441
+ setData(dataTransfer) {
442
+ // to avoid Firefox bug
443
+ // Detail see : https://github.com/RubaXa/Sortable/issues/1012
444
+ dataTransfer.setData('Text', '')
445
+ },
446
+ onEnd: (evt) => {
447
+ const targetRow = this.result.splice(evt.oldIndex, 1)[0]
448
+
449
+ this.$nextTick(() => {
450
+ this.result.splice(evt.newIndex, 0, targetRow)
451
+ })
452
+ }
453
+ }
454
+ )
455
+ // type
456
+ this[`hasInit_${this.type}`] = true
457
+ //
458
+ } catch (e) {
459
+ console.log('__log_custom_column', e)
460
+ }
461
+ },
462
+
463
+ /**
464
+ * 全选 或 取消全选
465
+ */
466
+ chooseAllOrCancel() {
467
+ if (this.isChkAll) {
468
+ // this.model.map(i => {
469
+ // i.length = 0
470
+ // })
471
+ // this.handleDefaultSet([])
472
+ } else {
473
+ let arr = []
474
+ this.options.map((item, index) => {
475
+ if (item[`children`]) {
476
+ arr = arr.concat(item.children)
477
+ item.children.map((i) => {
478
+ !this.model[index].includes(i.id) && this.model[index].push(i.id)
479
+ })
480
+ }
481
+ })
482
+ this.handleDefaultSet(arr)
483
+ this.$forceUpdate()
484
+ console.log('__log_this.model', this.model)
485
+ }
486
+ },
487
+
488
+ /**
489
+ * 导出动作
490
+ */
491
+ async exportAction() {
492
+ // 导出默认10000
493
+ this.exportExcelConfig.searchObj[`page.size`] = 10000
494
+
495
+ let result = await axios({
496
+ url: this.exportExcelConfig.url,
497
+ method: this.exportExcelConfig.httpMethod,
498
+ [`${this.exportExcelConfig.httpMethod === 'get' ? 'params' : 'data'}`]:
499
+ this.exportExcelConfig.searchObj
500
+ })
501
+
502
+ this._value = false
503
+ console.log('返回结果', result)
504
+ result = result[`list`] || result
505
+
506
+ // 格式化导出数据
507
+ this.exportExcelConfig.formatData &&
508
+ (result = this.exportExcelConfig.formatData(result))
509
+
510
+ // 拼接导出结构
511
+ console.log('result', this.result)
512
+
513
+ this.excelExportAction(result)
514
+ },
515
+
516
+ /**
517
+ * 导出excel
518
+ * @param data 列表数据
519
+ */
520
+ excelExportAction(data) {
521
+ console.log('返回数据', data)
522
+ this.excelExportList = data
523
+ this.excelDownloadLoading = true
524
+ let that = this
525
+ import('../../utils/vendor/Export2Excel').then((excel) => {
526
+ const tHeader = this.result.map((i) => {
527
+ return i[`name`]
528
+ })
529
+ const keys = this.result.map((i) => {
530
+ return i[`id`]
531
+ })
532
+
533
+ // 格式化导出数据格式
534
+ const exportData = that.excelExportList.map((i) => {
535
+ const temp = []
536
+ keys.map((k) => {
537
+ temp.push(i[k])
538
+ })
539
+ return temp
540
+ })
541
+
542
+ console.log('___格式化数据', data, {
543
+ header: tHeader,
544
+ data: exportData,
545
+ filename: that.exportExcelConfig.exportFileName
546
+ })
547
+ let cellStyle = {}
548
+ if (that.exportExcelConfig.cellStyle) {
549
+ let cellStyleColName = this.result.filter(
550
+ (i) => that.exportExcelConfig.cellStyle[i.id]
551
+ )
552
+ let cellStyleMap = {}
553
+ cellStyleColName.forEach((i) => {
554
+ if (that.exportExcelConfig.cellStyle[i.id]) {
555
+ cellStyleMap[[i.name]] = that.exportExcelConfig.cellStyle[i.id]
556
+ }
557
+ })
558
+ let headerWs = excel.sheet_from_array_of_arrays([tHeader])
559
+ for (let colKey in headerWs) {
560
+ if (headerWs[colKey].v && cellStyleMap[headerWs[colKey].v]) {
561
+ let colName = colKey.slice(0, 1)
562
+ cellStyle[colName] = cellStyleMap[headerWs[colKey].v]
563
+ }
564
+ }
565
+ }
566
+
567
+ excel.export_json_to_excel(
568
+ {
569
+ header: tHeader,
570
+ data: exportData,
571
+ filename: that.exportExcelConfig.exportFileName,
572
+ merges: that.exportExcelConfig.merges
573
+ },
574
+ cellStyle
575
+ )
576
+ that.excelDownloadLoading = false
577
+ })
578
+ }
579
+ }
580
+ }
581
+ </script>
582
+
583
+ <style lang="scss">
584
+ .show-group {
585
+ max-height: 800px;
586
+ overflow: hidden;
587
+ transition: all 0.25s ease;
588
+ }
589
+
590
+ .arrowwz-change {
591
+ max-height: 0px;
592
+ }
593
+
594
+ .arrow-up {
595
+ font-size: 15px;
596
+ display: inline-block;
597
+ margin: 0px 3px;
598
+ cursor: pointer;
599
+ transition: all 0.25s linear;
600
+ }
601
+
602
+ .arrow-down {
603
+ transform: rotateZ(+90deg);
604
+ }
605
+
606
+ .export-excel {
607
+ .el-checkbox {
608
+ margin-right: 50px !important;
609
+ }
610
+
611
+ .el-checkbox:nth-child(5n) {
612
+ margin-right: 0;
613
+ }
614
+ }
615
+
616
+ // 导出模板
617
+
618
+ .table-columns-global-set {
619
+ &-group-name {
620
+ font-size: 14px;
621
+ color: #262d34;
622
+ }
623
+
624
+ .dialog-footer {
625
+ text-align: center;
626
+ }
627
+
628
+ // 弹框按钮样式
629
+ .nstc-dialog-footer-btn {
630
+ width: 90px;
631
+ height: 34px;
632
+ }
633
+
634
+ .nstc-dialog-footer-btn-clear {
635
+ margin-left: 15px;
636
+ }
637
+
638
+ padding: 15px 19px;
639
+
640
+ .el-dialog__header {
641
+ padding: 0 0 8px 0 !important;
642
+ text-align: left;
643
+
644
+ .el-icon-close {
645
+ transform: scale(1.4);
646
+ }
647
+ }
648
+
649
+ .el-dialog__body {
650
+ //border-top: 1px solid #dfe6ee;
651
+ padding: 15px 0;
652
+
653
+ .el-checkbox {
654
+ width: 15%;
655
+ margin-bottom: 20px;
656
+ }
657
+ }
658
+
659
+ .export-excel {
660
+ // border: none !important;
661
+ }
662
+
663
+ .el-checkbox__input {
664
+ transform: scale(1.2855);
665
+ }
666
+
667
+ .el-checkbox__label {
668
+ overflow: hidden;
669
+ vertical-align: middle;
670
+ text-overflow: ellipsis;
671
+ white-space: nowrap;
672
+ width: 100%;
673
+ }
674
+
675
+ .el-checkbox-group {
676
+ box-sizing: border-box;
677
+ padding-left: 2px;
678
+ margin-top: 12px;
679
+ padding-top: 4px;
680
+ }
681
+
682
+ &-inner {
683
+ display: flex;
684
+ height: 500px;
685
+
686
+ &-title {
687
+ padding: 0 10px 20px 0;
688
+ color: #8a8a8a;
689
+ display: flex;
690
+ justify-content: space-between;
691
+ font-weight: 700;
692
+
693
+ .title-temp {
694
+ span:nth-child(1) {
695
+ }
696
+
697
+ span:nth-child(2) {
698
+ color: #bac4cf;
699
+ font-size: 14px;
700
+ margin: 0 3px 0 13px;
701
+ }
702
+
703
+ span:nth-child(3) {
704
+ color: #007aff;
705
+ font-size: 14px;
706
+ }
707
+ }
708
+
709
+ .choose-all {
710
+ color: #007aff;
711
+ font-size: 14px;
712
+
713
+ &:hover {
714
+ cursor: pointer;
715
+ }
716
+ }
717
+ }
718
+
719
+ &-content {
720
+ flex: 1;
721
+ overflow-x: hidden;
722
+ overflow-y: auto;
723
+ }
724
+ }
725
+
726
+ &-left {
727
+ flex: 1;
728
+ border-right: 1px solid #dfe6ee;
729
+ }
730
+
731
+ &-right {
732
+ width: 180px;
733
+ padding-left: 10px;
734
+ margin: 0 0 0 10px;
735
+ }
736
+
737
+ &-left,
738
+ &-right {
739
+ display: flex;
740
+ flex-direction: column;
741
+ }
742
+
743
+ &-group {
744
+ & + & {
745
+ margin-top: 20px;
746
+ }
747
+
748
+ &-name {
749
+ color: #3d4a57;
750
+ font-weight: bold;
751
+ margin-bottom: 10px;
752
+ text-align: left;
753
+ }
754
+
755
+ .el-checkbox__label {
756
+ width: 92px;
757
+ white-space: nowrap;
758
+ overflow: hidden;
759
+ text-overflow: ellipsis;
760
+ vertical-align: middle;
761
+ line-height: 30px;
762
+ }
763
+ }
764
+
765
+ &-result-item {
766
+ padding: 9px 9px 0 0;
767
+ display: flex;
768
+ cursor: move;
769
+ align-items: center;
770
+ margin-right: 10px;
771
+
772
+ &:hover {
773
+ .close {
774
+ color: #007aff;
775
+ }
776
+ }
777
+
778
+ &:first-of-type {
779
+ margin-top: -7px;
780
+ }
781
+
782
+ & > span {
783
+ flex: 1;
784
+ overflow: hidden;
785
+ white-space: nowrap;
786
+ margin-right: 5px;
787
+ }
788
+
789
+ .el-button--mini {
790
+ padding: 0px;
791
+ }
792
+
793
+ .close {
794
+ z-index: 999;
795
+ }
796
+
797
+ .close:hover {
798
+ cursor: pointer;
799
+ }
800
+ }
801
+ }
802
+ </style>