n20-common-lib 1.3.20 → 1.3.24

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 (408) 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 +591 -591
  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 +330 -330
  154. package/nstc-g6/components/NstcUploadExcel/NstcUploadExcel.vue +145 -145
  155. package/nstc-g6/components/NstcWorkBench/NstcWorkBench.vue +176 -176
  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/parseTime.js +48 -48
  171. package/nstc-g6/utils/validate/index.js +6 -6
  172. package/nstc-g6/utils/vendor/Export2Excel.js +229 -229
  173. package/nstc-g6/utils/vendor/Export2Zip.js +24 -24
  174. package/nstc-g6/utils/vue-bus.js +4 -4
  175. package/package.json +116 -114
  176. package/src/_qiankun/index.js +113 -113
  177. package/src/_qiankun/postMessage.js +48 -48
  178. package/src/assets/css/_coreLib.scss +44 -44
  179. package/src/assets/css/alert.scss +31 -31
  180. package/src/assets/css/cl-anchor.scss +32 -32
  181. package/src/assets/css/cl-approve-card.scss +67 -67
  182. package/src/assets/css/cl-dialog.scss +113 -113
  183. package/src/assets/css/cl-drag-list.scss +24 -24
  184. package/src/assets/css/cl-empty.scss +10 -10
  185. package/src/assets/css/cl-expandable-pane.scss +37 -37
  186. package/src/assets/css/cl-expandable.scss +26 -26
  187. package/src/assets/css/cl-file-upload-table.scss +31 -31
  188. package/src/assets/css/cl-filter.scss +4 -4
  189. package/src/assets/css/cl-flow-step.scss +185 -185
  190. package/src/assets/css/cl-footer-box.scss +10 -10
  191. package/src/assets/css/cl-form-item.scss +710 -710
  192. package/src/assets/css/cl-general-card.scss +11 -11
  193. package/src/assets/css/cl-layout-aside.scss +92 -92
  194. package/src/assets/css/cl-layout-content.scss +16 -16
  195. package/src/assets/css/cl-layout-header.scss +89 -73
  196. package/src/assets/css/cl-layout-tabs.scss +87 -87
  197. package/src/assets/css/cl-layout.scss +97 -97
  198. package/src/assets/css/cl-login-temporary.scss +37 -37
  199. package/src/assets/css/cl-message.scss +159 -159
  200. package/src/assets/css/cl-more-tab.scss +98 -98
  201. package/src/assets/css/cl-nav-menu.scss +5 -5
  202. package/src/assets/css/cl-pagination.scss +130 -130
  203. package/src/assets/css/cl-secondary-tab.scss +53 -53
  204. package/src/assets/css/cl-showcolumn.scss +40 -40
  205. package/src/assets/css/cl-sifting.scss +51 -51
  206. package/src/assets/css/cl-statis.scss +54 -54
  207. package/src/assets/css/cl-step.scss +73 -73
  208. package/src/assets/css/cl-suspend.scss +19 -19
  209. package/src/assets/css/cl-tertiary-tab.scss +56 -56
  210. package/src/assets/css/cl-upload.scss +47 -47
  211. package/src/assets/css/cl-worn-pagination.scss +50 -50
  212. package/src/assets/css/el-button.scss +188 -188
  213. package/src/assets/css/el-table.scss +96 -96
  214. package/src/assets/css/element-variables.scss +1061 -1061
  215. package/src/assets/css/element.dev.scss +22 -22
  216. package/src/assets/css/font-icon.scss +26 -26
  217. package/src/assets/css/index.dev.scss +4 -4
  218. package/src/assets/css/index.scss +11 -11
  219. package/src/assets/css/normalize.scss +726 -726
  220. package/src/assets/css/plain-text.scss +137 -137
  221. package/src/assets/css/rootvar.scss +139 -139
  222. package/src/assets/css/select.scss +25 -25
  223. package/src/assets/css/title-pop.scss +23 -23
  224. package/src/assets/getJsonc.js +50 -50
  225. package/src/assets/iconFont/demo.css +539 -539
  226. package/src/assets/iconFont/demo_index.html +1614 -1614
  227. package/src/assets/iconFont/iconfont.css +263 -263
  228. package/src/assets/iconFont/iconfont.json +443 -443
  229. package/src/assets/realUrl.js +12 -12
  230. package/src/components/Anchor/AnchorItem.vue +29 -29
  231. package/src/components/Anchor/index.vue +185 -185
  232. package/src/components/ApprovalButtons/index.vue +240 -240
  233. package/src/components/ApprovalCard/index.vue +132 -132
  234. package/src/components/ApprovalRecord/approvalImg.vue +39 -39
  235. package/src/components/ApprovalRecord/flowDialog.vue +47 -47
  236. package/src/components/ApprovalRecord/index.vue +59 -59
  237. package/src/components/Button/button-group.vue +154 -154
  238. package/src/components/Button/icon-group-button.vue +63 -63
  239. package/src/components/Button/index.vue +56 -56
  240. package/src/components/CascaderArea/index.vue +103 -103
  241. package/src/components/ChildRange/index.vue +165 -165
  242. package/src/components/ChildRange/style.scss +34 -34
  243. package/src/components/ContentLoading/index.vue +41 -41
  244. package/src/components/ContentNull/index.vue +19 -19
  245. package/src/components/DatePicker/index.vue +27 -27
  246. package/src/components/DatePicker/por.vue +169 -169
  247. package/src/components/Dialog/index.vue +26 -26
  248. package/src/components/Dialog/indexO.vue +116 -116
  249. package/src/components/DragList/index.vue +75 -75
  250. package/src/components/ECharts/define.js +74 -74
  251. package/src/components/ECharts/index.vue +169 -169
  252. package/src/components/ECharts/mixins/resize.js +56 -56
  253. package/src/components/Empty/img/400.svg +101 -101
  254. package/src/components/Empty/img/401.svg +101 -101
  255. package/src/components/Empty/img/403.svg +101 -101
  256. package/src/components/Empty/img/405.svg +101 -101
  257. package/src/components/Empty/img/901.svg +95 -95
  258. package/src/components/Empty/img/902.svg +95 -95
  259. package/src/components/Empty/img/903.svg +95 -95
  260. package/src/components/Empty/img/904.svg +95 -95
  261. package/src/components/Empty/img/905.svg +95 -95
  262. package/src/components/Empty/img/906.svg +95 -95
  263. package/src/components/Empty/img/907.svg +95 -95
  264. package/src/components/Empty/img/abnormal.svg +108 -108
  265. package/src/components/Empty/img/dispose.svg +71 -71
  266. package/src/components/Empty/img/empty.svg +57 -57
  267. package/src/components/Empty/img/general.svg +58 -58
  268. package/src/components/Empty/img/lock.svg +57 -57
  269. package/src/components/Empty/img/network.svg +59 -59
  270. package/src/components/Empty/img/relevant.svg +68 -68
  271. package/src/components/Empty/img/search.svg +72 -72
  272. package/src/components/Empty/index.vue +147 -147
  273. package/src/components/Expandable/index.vue +49 -49
  274. package/src/components/Expandable/main.vue +64 -64
  275. package/src/components/FileExportAsync/index.vue +178 -178
  276. package/src/components/FileImport/_index.vue +201 -201
  277. package/src/components/FileImport/index.vue +9 -9
  278. package/src/components/FileUploadTable/index.vue +661 -661
  279. package/src/components/Filters/index.vue +372 -372
  280. package/src/components/Filters/indexO.vue +104 -104
  281. package/src/components/FlowStep/index.vue +68 -68
  282. package/src/components/FooterBox/index.vue +21 -21
  283. package/src/components/GeneralCard/index.vue +15 -15
  284. package/src/components/InputNumber/index.vue +169 -169
  285. package/src/components/InputNumber/numberRange.vue +47 -47
  286. package/src/components/InputSearch/index.vue +75 -75
  287. package/src/components/Layout/AsideNav/index.vue +120 -116
  288. package/src/components/Layout/AsideNav/menuItem.vue +34 -34
  289. package/src/components/Layout/AsideNav/submenuTitle.vue +26 -26
  290. package/src/components/Layout/HeaderWrap/changePwd.vue +215 -215
  291. package/src/components/Layout/HeaderWrap/index.vue +401 -371
  292. package/src/components/Layout/HeaderWrap/noticePop.vue +316 -316
  293. package/src/components/Layout/SubContent/index.vue +127 -127
  294. package/src/components/Layout/TabsNav/index.vue +170 -170
  295. package/src/components/Layout/index.vue +518 -518
  296. package/src/components/Layout/utils.js +12 -12
  297. package/src/components/LoginTemporary/form.vue +574 -566
  298. package/src/components/LoginTemporary/index.vue +139 -139
  299. package/src/components/LoginTemporary/qrcode.vue +90 -90
  300. package/src/components/LoginTemporary/retrievePw.vue +372 -372
  301. package/src/components/LoginTemporary/utils.js +73 -73
  302. package/src/components/MicroApp/index.js +67 -67
  303. package/src/components/MicroFrame/index.vue +95 -95
  304. package/src/components/MoreTab/index.vue +232 -232
  305. package/src/components/NavMenu/index.vue +60 -60
  306. package/src/components/PageHeader/index.vue +35 -35
  307. package/src/components/PageHeader/style.scss +39 -39
  308. package/src/components/PageLayout/page.vue +15 -15
  309. package/src/components/Pagination/index.vue +165 -165
  310. package/src/components/PlainText/PlainTextItem.vue +16 -16
  311. package/src/components/PlainText/index.vue +11 -11
  312. package/src/components/Search/index.vue +485 -485
  313. package/src/components/Search/style.scss +93 -93
  314. package/src/components/SecondaryTab/index.vue +58 -58
  315. package/src/components/SelectLazy/index.vue +75 -75
  316. package/src/components/SelectTree/SelectTreeLazy.vue +241 -241
  317. package/src/components/SelectTree/index.vue +206 -206
  318. package/src/components/ShowColumn/index.vue +213 -213
  319. package/src/components/Sifting/index.vue +99 -99
  320. package/src/components/Stamp/index.vue +75 -75
  321. package/src/components/Statis/index.vue +97 -97
  322. package/src/components/Statis/statisItem.vue +54 -54
  323. package/src/components/Statis/statisPopover.vue +56 -56
  324. package/src/components/Step/index.vue +38 -38
  325. package/src/components/Suspend/index.vue +72 -72
  326. package/src/components/Table/ThSelectHeader.vue +127 -127
  327. package/src/components/Table/index.vue +261 -261
  328. package/src/components/Table/indexO.vue +149 -149
  329. package/src/components/Task/index.vue +26 -26
  330. package/src/components/TertiaryTab/index.vue +63 -63
  331. package/src/components/TimePicker/index.vue +28 -28
  332. package/src/components/Upload/index.vue +258 -258
  333. package/src/components/WornPagination/index.vue +73 -73
  334. package/src/directives/VClickOutside/index.js +19 -19
  335. package/src/directives/VHas/index.js +58 -58
  336. package/src/directives/VMove/index.js +42 -42
  337. package/src/directives/VTitle/index.js +88 -86
  338. package/src/index.js +257 -257
  339. package/src/plugins/CompatibleOld/index.js +57 -57
  340. package/src/plugins/Print/index.js +4 -4
  341. package/src/plugins/Print/print-js/.babelrc +12 -12
  342. package/src/plugins/Print/print-js/LICENSE +21 -21
  343. package/src/plugins/Print/print-js/README.md +98 -98
  344. package/src/plugins/Print/print-js/dist/print.css +96 -96
  345. package/src/plugins/Print/print-js/dist/print.js +990 -990
  346. package/src/plugins/Print/print-js/package.json +60 -60
  347. package/src/plugins/Print/print-js/src/index.d.ts +45 -45
  348. package/src/plugins/Print/print-js/src/index.js +10 -10
  349. package/src/plugins/Print/print-js/src/js/browser.js +33 -33
  350. package/src/plugins/Print/print-js/src/js/functions.js +103 -103
  351. package/src/plugins/Print/print-js/src/js/html.js +70 -70
  352. package/src/plugins/Print/print-js/src/js/image.js +48 -48
  353. package/src/plugins/Print/print-js/src/js/init.js +168 -168
  354. package/src/plugins/Print/print-js/src/js/json.js +109 -109
  355. package/src/plugins/Print/print-js/src/js/modal.js +62 -62
  356. package/src/plugins/Print/print-js/src/js/pdf.js +62 -62
  357. package/src/plugins/Print/print-js/src/js/print.js +102 -102
  358. package/src/plugins/Print/print-js/src/js/raw-html.js +15 -15
  359. package/src/plugins/Print/print-js/src/sass/index.scss +13 -13
  360. package/src/plugins/Print/print-js/src/sass/modules/_colors.scss +9 -9
  361. package/src/plugins/Print/print-js/src/sass/partials/_modal.scss +40 -40
  362. package/src/plugins/Print/print-js/src/sass/partials/_spinner.scss +45 -45
  363. package/src/plugins/Print/print.js +2 -2
  364. package/src/plugins/Print/print.scss +1 -1
  365. package/src/plugins/SetMenuTree/index.vue +41 -41
  366. package/src/plugins/SetMenuTree/logoIcon.vue +37 -37
  367. package/src/plugins/SetMenuTree/setmenutree.vue +427 -427
  368. package/src/plugins/SetMenuTree/utils.js +74 -74
  369. package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2000 -2000
  370. package/src/plugins/Sign/bjca/XTXSAB.js +2395 -0
  371. package/src/plugins/Sign/bjca/index.js +73 -0
  372. package/src/plugins/Sign/index.js +28 -65
  373. package/src/plugins/Sign/sign.js +64 -1
  374. package/src/plugins/setTabsForSub.js +2 -2
  375. package/src/utils/auth.js +53 -53
  376. package/src/utils/axios.js +203 -203
  377. package/src/utils/downloadBlob.js +19 -19
  378. package/src/utils/forEachs.js +16 -16
  379. package/src/utils/getScrollContainer.js +43 -43
  380. package/src/utils/i18n/cn2hk.json +1270 -1270
  381. package/src/utils/i18n/index.js +50 -50
  382. package/src/utils/list2tree.js +36 -36
  383. package/src/utils/mapper_aims.js +809 -809
  384. package/src/utils/msgboxPor.js +26 -26
  385. package/src/utils/print.js +161 -161
  386. package/src/utils/relaNo.js +72 -72
  387. package/src/utils/repairElementUI.js +95 -95
  388. package/src/utils/theme.config.js +22 -0
  389. package/src/utils/theme.js +31 -0
  390. package/src/utils/urlToGo.js +82 -82
  391. package/style/index.css +1 -1
  392. package/style/index.css.map +1 -1
  393. package/{treme → theme}/blue.css +1 -1
  394. package/{treme → theme}/fonts/element-icons.535877f5.woff +0 -0
  395. package/{treme → theme}/fonts/element-icons.732389de.ttf +0 -0
  396. package/{treme → theme}/fonts/iconfont.022f36c4.woff2 +0 -0
  397. package/{treme → theme}/fonts/iconfont.4a1b2c93.woff +0 -0
  398. package/{treme → theme}/fonts/iconfont.a9febaa2.ttf +0 -0
  399. package/{treme → theme}/green.css +1 -1
  400. package/{treme → theme}/lightBlue.css +1 -1
  401. package/{treme → theme}/orange.css +1 -1
  402. package/theme/purple.css +3 -0
  403. package/{treme → theme}/red.css +1 -1
  404. package/{treme → theme}/yellow.css +1 -1
  405. package/src/components/.DS_Store +0 -0
  406. package/src/components/Empty/.DS_Store +0 -0
  407. package/src/components/Empty/img/.DS_Store +0 -0
  408. package/src/components/Layout/.DS_Store +0 -0
@@ -1,591 +1,591 @@
1
- <template>
2
- <div>
3
- <!-- <el-dialog :visible.sync="VisibleAdd" :close-on-click-modal="false" width='1140px'> -->
4
- <!-- 新增 -->
5
- <div class="uploadfiletip">
6
- <div>附件信息</div>
7
- <div>
8
- <el-button type="primary" size="small" @click="createRow"
9
- >新增</el-button
10
- >
11
- <el-button size="small" plain @click="batchload">下载</el-button>
12
- <el-button size="small" type="danger" plain @click="batchdel"
13
- >删除</el-button
14
- >
15
- </div>
16
- </div>
17
- <el-table
18
- :data="files"
19
- header-row-class-name="customHeader"
20
- size="small"
21
- class="uploadtable mb20"
22
- :header-cell-style="{ 'text-align': 'center' }"
23
- @selection-change="handleSelectionChange"
24
- >
25
- <el-table-column type="selection" width="55" />
26
- <el-table-column label="附件类型">
27
- <template slot-scope="scope">
28
- <el-select
29
- v-model="scope.row.attnoadd"
30
- placeholder="请选择"
31
- size="small"
32
- clearable
33
- >
34
- <el-option
35
- v-for="item in eamsAttachfiles"
36
- :key="item.index"
37
- :label="item.attname"
38
- :value="item.attno"
39
- />
40
- </el-select>
41
- </template>
42
- </el-table-column>
43
- <el-table-column label="附件名称" width="200">
44
- <template slot-scope="scope">
45
- <el-input
46
- v-model="scope.row.memo"
47
- size="small"
48
- autocomplete="off"
49
- placeholder="请输入"
50
- clearable
51
- />
52
- </template>
53
- </el-table-column>
54
- <el-table-column label="附件上传">
55
- <template slot-scope="scope">
56
- <div class="cantpick">
57
- <div
58
- v-show="!scope.row.attnoadd"
59
- class="canttip"
60
- @click="cantTip"
61
- ></div>
62
- <div
63
- v-show="!scope.row.memo"
64
- class="canttip"
65
- @click="cantTip1"
66
- ></div>
67
- <div
68
- v-show="scope.row.canupload == 0"
69
- class="canttip"
70
- @click="cantTip2"
71
- ></div>
72
- <el-upload
73
- ref="upload"
74
- class="upload"
75
- action="string"
76
- :http-request="uploadFile"
77
- :on-change="handleChange"
78
- :show-file-list="false"
79
- >
80
- <div
81
- class="changeindex"
82
- @click="curRowIndex = scope.$index"
83
- ></div>
84
- <el-input
85
- v-if="scope.row.file != null"
86
- v-model="scope.row.file.name"
87
- size="small"
88
- class="uploadinput"
89
- placeholder="请选择附件"
90
- >
91
- <i
92
- v-show="scope.row.canupload == 1"
93
- slot="suffix"
94
- class="el-icon-upload2"
95
- style="color: #242424"
96
- ></i>
97
- <i
98
- v-show="scope.row.canupload == 0"
99
- slot="suffix"
100
- class="el-icon-upload2"
101
- style="color: #d8d8d8"
102
- ></i>
103
- </el-input>
104
- </el-upload>
105
- </div>
106
- </template>
107
- </el-table-column>
108
- <el-table-column label="文件大小">
109
- <template slot-scope="scope">
110
- <span v-if="scope.row.file != null">{{ scope.row.file.size }}</span>
111
- </template>
112
- </el-table-column>
113
- <el-table-column label="上传时间" align="left">
114
- <template slot-scope="scope">
115
- <span v-if="scope.row.file != null">{{ uploadDate }}</span>
116
- </template>
117
- </el-table-column>
118
- <el-table-column label="上传进度">
119
- <template slot-scope="scope">
120
- <div class="loadcol">
121
- <div class="loadtotal">
122
- <div
123
- class="loaded"
124
- :style="{ width: scope.row.loadprogress }"
125
- :class="'loadbg' + scope.row.upstatus"
126
- ></div>
127
- </div>
128
- <div v-show="scope.row.upstatus == 0">
129
- <i class="el-icon-time" style="color: #606266"></i>
130
- </div>
131
- <div v-show="scope.row.upstatus == 1" class="">
132
- {{ scope.row.loadprogress }}
133
- <el-button
134
- v-show="scope.row.upstatus == 1"
135
- class="ml10 p0"
136
- type="text"
137
- @click="cancelupload(scope.$index)"
138
- >取消</el-button
139
- >
140
- </div>
141
- <div v-show="scope.row.upstatus == 2">
142
- <i class="el-icon-success" style="color: #48d2a0"></i>
143
- </div>
144
- <div v-show="scope.row.upstatus == 3">
145
- <i class="el-icon-error" style="color: #fb5555"></i>
146
- <el-button
147
- v-show="scope.row.upstatus == 3"
148
- class="ml10 p0"
149
- type="text"
150
- @click="reupload(scope.$index)"
151
- >重新上传</el-button
152
- >
153
- </div>
154
- </div>
155
- </template>
156
- </el-table-column>
157
- <el-table-column label="操作" type="index" width="100">
158
- <template slot-scope="scope">
159
- <i
160
- v-show="scope.row.recordno"
161
- class="el-icon-view"
162
- @click="handleDownload(scope.row.recordno)"
163
- ></i>
164
- </template>
165
- </el-table-column>
166
- </el-table>
167
- <!-- </el-dialog> -->
168
- <!-- 修改 -->
169
- </div>
170
- </template>
171
-
172
- <script>
173
- import axios from 'axios'
174
- var CancelToken = axios.CancelToken
175
- export default {
176
- name: 'NstcElectronicFile',
177
- props: {
178
- paramVal: {
179
- default: null,
180
- type: Object
181
- },
182
- sysno: {
183
- default: '',
184
- type: String
185
- },
186
- appno: {
187
- default: '',
188
- type: String
189
- },
190
- bussValue: {
191
- default: '',
192
- type: String
193
- },
194
- bussId: {
195
- default: '',
196
- type: String
197
- },
198
- cltno: {
199
- default: '',
200
- type: String
201
- },
202
- cltname: {
203
- default: '',
204
- type: String
205
- },
206
- propList: {
207
- default: null,
208
- type: Array
209
- }
210
- },
211
- data() {
212
- return {
213
- VisibleAdd: true,
214
- files: [],
215
- eamsAttachfiles: [],
216
- eamsBaseRecord: {},
217
- attno: '',
218
- attnoadd: '',
219
- recordname: '',
220
- value2: '',
221
- fileList: [],
222
- multiple: true,
223
- memo: '',
224
- multipleSelection: [],
225
- curRowIndex: 0,
226
- recordarr: [],
227
- axios: axios
228
- }
229
- },
230
- watch: {},
231
- created() {
232
- this.getUploadDate()
233
- axios.defaults.timeout = 60000
234
- },
235
- mounted: function () {
236
- this.getBussTypeSetting()
237
- },
238
- methods: {
239
- handleSelectionChange(val) {
240
- this.multipleSelection = val
241
- },
242
- getUploadDate() {
243
- let date = new Date()
244
- this.uploadDate =
245
- date.getFullYear() +
246
- '-' +
247
- ('00' + (date.getMonth() + 1)).slice(-2) +
248
- '-' +
249
- ('00' + date.getDate()).slice(-2)
250
- },
251
- createRow() {
252
- this.getAlleamsAttachfile()
253
- // 创建行
254
- var row = {
255
- loadprogress: 0,
256
- upstatus: 0,
257
- file: {
258
- name: ''
259
- },
260
- canupload: 1
261
- }
262
- this.files.push(row)
263
- },
264
- batchload() {
265
- this.$confirm('确定下载选中的附件?', {
266
- confirmButtonText: '确定',
267
- cancelButtonText: '取消',
268
- type: 'warning'
269
- }).then(() => {
270
- let multipleSelection = this.multipleSelection
271
- multipleSelection.forEach((_) => {
272
- if (_.recordno) {
273
- this.handleDownload(_.recordno)
274
- }
275
- })
276
- })
277
- },
278
- batchdel() {
279
- this.$confirm('确定删除选中的附件?', {
280
- confirmButtonText: '确定',
281
- cancelButtonText: '取消',
282
- type: 'warning'
283
- }).then(() => {
284
- let files = this.files
285
- while (this.multipleSelection.length > 0) {
286
- let pop = this.multipleSelection.pop()
287
- for (let i = 0; i < files.length; i++) {
288
- if (files[i] == pop) {
289
- files.splice(i, 1)
290
- }
291
- }
292
- }
293
- this.files = files
294
- })
295
- },
296
- handleDelete(index) {
297
- // 模态框删除按钮
298
- this.files.splice(index, 1)
299
- },
300
- init() {
301
- this.VisibleAdd = true
302
- },
303
- getBussTypeSetting() {
304
- this.axios
305
- .get(
306
- '/neams/eamsattachfile/queryByBussValue/' +
307
- this.$props.paramVal.bussValue
308
- )
309
- .then((response) => {
310
- this.eamsAttachfiles = response.data.data
311
- })
312
- .catch(function (error) {
313
- console.log(error)
314
- })
315
- },
316
- getAlleamsAttachfile() {
317
- this.axios
318
- .get('/neams/eamsbaserecord/all')
319
- .then((response) => {
320
- this.eamsAttachfiles = response.data.data
321
- })
322
- .catch(function (error) {
323
- console.log(error)
324
- })
325
- },
326
- getAlleamsSystem() {
327
- this.axios
328
- .get('/neams/eamssystem/all')
329
- .then((response) => {
330
- this.eamsSystems = response.data.data
331
- })
332
- .catch(function (error) {
333
- console.log(error)
334
- })
335
- },
336
- delFile() {
337
- this.fileList = []
338
- },
339
- handleChange(file, fileList) {
340
- this.fileList = fileList
341
- },
342
- cantTip() {
343
- this.$message({
344
- showClose: true,
345
- message: '请选择附件类型'
346
- })
347
- },
348
- cantTip1() {
349
- this.$message({
350
- showClose: true,
351
- message: '请输入附件名称'
352
- })
353
- },
354
- cantTip2() {
355
- this.$message({
356
- showClose: true,
357
- message: '没有上传完成,不能再次上传'
358
- })
359
- },
360
- uploadFile(params) {
361
- let isFind = this.files.find((_) => {
362
- return _.file.name == params.file.name
363
- })
364
- if (!isFind) {
365
- // this.$message({
366
- // showClose: true,
367
- // message: params.file.name+'已经上传过了'
368
- // });
369
- // }else{
370
- let _file = this.files[this.curRowIndex]
371
- _file.file = params.file
372
- _file.loadprogress = 0
373
- _file.upstatus = 1 //1上传中蓝底,2上传成功绿底,3上传失败红底
374
- _file.recordno = ''
375
- _file.canupload = 0
376
- this.$set(this.files, this.curRowIndex, _file)
377
- this.submitUpload()
378
- }
379
- },
380
- handlePreview(file) {
381
- console.log(file)
382
- },
383
- reupload(index) {
384
- this.curRowIndex = index
385
- this.files[this.curRowIndex].loadprogress = 0
386
- this.files[this.curRowIndex].upstatus = 1
387
- this.files[this.curRowIndex].recordno = ''
388
- this.files[this.curRowIndex].canupload = 0
389
- this.submitUpload()
390
- },
391
- submitUpload() {
392
- let _file = this.files[this.curRowIndex]
393
- let formData = new FormData()
394
-
395
- this.eamsAttachfiles.forEach((item) => {
396
- if (_file.attnoadd == item.attno) {
397
- if (item.attSize * 1024 < _file.size) {
398
- this.$message.error(
399
- '附件超过设置大小,目前附件限制大小为' + item.attSize + 'M'
400
- )
401
- return
402
- }
403
- }
404
- })
405
- let reqParam = this.paramVal
406
- reqParam.attno = _file.attnoadd
407
- reqParam.memo = _file.memo
408
- // reqParam.propList = this.propList
409
- formData.append('file', _file.file)
410
- formData.append('data', JSON.stringify(this.paramVal))
411
- formData.append('date', '2021-08-02 12:33:33,2023-08-23 12:33:33')
412
- _file.cancel = ''
413
- axios({
414
- url: '/neams/eamsbaserecord/batchSavejson',
415
- method: 'post',
416
- data: formData,
417
- contentType: false,
418
- headers: {
419
- 'Content-Type': 'multipart/form-data;charset=utf-8'
420
- },
421
- onUploadProgress(progressEvent) {
422
- _file.loadprogress =
423
- Math.round((progressEvent.loaded / progressEvent.total) * 100) + '%'
424
- },
425
- cancelToken: new CancelToken(function executor(c) {
426
- // executor 函数接收一个 cancel 函数作为参数
427
- _file.cancel = c
428
- })
429
- })
430
- .then((res) => {
431
- if (res.data.code != 200) {
432
- _file.upstatus = 3
433
- this.$message.error(res.data.msg)
434
- } else {
435
- _file.upstatus = 2
436
- this.$message.success('上传成功!')
437
- let recordno = res.data.data.replace(',', '')
438
- _file.recordno = recordno
439
- if (this.recordarr.indexOf(recordno) === -1) {
440
- this.recordarr.push(recordno)
441
- this.$emit('refreshDataList', this.recordarr)
442
- }
443
- }
444
- })
445
- .catch((err) => {
446
- _file.upstatus = 3
447
- console.log(err)
448
- })
449
- .finally(() => {
450
- _file.canupload = 1
451
- })
452
- },
453
- cancelupload(index) {
454
- this.files[index].cancel()
455
- },
456
- handleDownload(row) {
457
- this.axios({
458
- method: 'GET',
459
- url: `/neams/eamsbaserecord/download/${row}/${0}`,
460
- responseType: 'blob'
461
- })
462
- .then((response) => {
463
- if (response.data.type === 'application/octet-stream') {
464
- // 获取http头部的文件名信息,若无需重命名文件,将下面这行删去
465
- const fileName =
466
- response.headers['content-disposition'].split('=')[1]
467
- /* 兼容ie内核,360浏览器的兼容模式 */
468
- if (window.navigator && window.navigator.msSaveOrOpenBlob) {
469
- const blob = new Blob([response.data], {
470
- type: 'application/zip'
471
- })
472
- window.navigator.msSaveOrOpenBlob(blob, fileName)
473
- } else {
474
- /* 火狐谷歌的文件下载方式 */
475
- const blob = new Blob([response.data], {
476
- type: 'application/zip'
477
- })
478
- const url = window.URL.createObjectURL(blob)
479
- const link = document.createElement('a') // 创建a标签
480
- link.href = url
481
- link.download = fileName // 文件重命名,若无需重命名,将该行删去
482
- link.click()
483
- URL.revokeObjectURL(url) // 释放内存
484
- }
485
- // resolve(response)
486
- } else {
487
- this.$message.error('下载失败数据已删除!')
488
- }
489
- })
490
- .catch((error) => this.$message.error(error))
491
- }
492
- }
493
- }
494
- </script>
495
- <style>
496
- .uploadfiletip {
497
- display: flex;
498
- justify-content: space-between;
499
- width: 100%;
500
- height: 51px;
501
- font-size: 16px;
502
- line-height: 50px;
503
- padding: 0 20px;
504
- border: 1px solid #ebeef5;
505
- box-sizing: border-box;
506
- }
507
- .uploadtable {
508
- border-right: 1px solid #ebeef5;
509
- border-left: 1px solid #ebeef5;
510
- }
511
- .upload {
512
- position: relative;
513
- }
514
- .cantpick {
515
- position: relative;
516
- }
517
- .canttip {
518
- position: absolute;
519
- top: 0;
520
- left: 0;
521
- width: 100%;
522
- height: 100%;
523
- z-index: 2;
524
- }
525
- .changeindex {
526
- position: absolute;
527
- top: 0;
528
- left: 0;
529
- width: 100%;
530
- height: 100%;
531
- z-index: 1;
532
- }
533
- .el-icon-delete {
534
- background-color: transparent;
535
- cursor: pointer;
536
- font-size: 16px;
537
- line-height: 23px;
538
- }
539
- .el-icon-upload2 {
540
- font-size: 16px;
541
- line-height: 34px;
542
- }
543
- .loadcol {
544
- display: flex;
545
- flex-direction: row;
546
- align-items: center;
547
- }
548
- .loadtotal {
549
- width: 80px;
550
- height: 6px;
551
- border-radius: 3px;
552
- background-color: #dfe6ee;
553
- position: relative;
554
- margin-right: 10px;
555
- }
556
- .loaded {
557
- position: absolute;
558
- top: 0;
559
- left: 0;
560
- height: 100%;
561
- border-radius: 3px;
562
- }
563
- .loadbg1 {
564
- background-color: #007aff;
565
- }
566
- .loadbg2 {
567
- background-color: #48d2a0;
568
- }
569
- .loadbg3 {
570
- background-color: #fb5555;
571
- }
572
- .vertical_m {
573
- vertical-align: middle;
574
- }
575
- .uploadbtn {
576
- float: right;
577
- margin-top: 13px;
578
- margin-right: 20px;
579
- cursor: pointer;
580
- }
581
- .ml10 {
582
- margin-left: 10px;
583
- }
584
- .p0 {
585
- padding: 0;
586
- }
587
-
588
- .uploadinput .el-input__inner {
589
- cursor: pointer !important;
590
- }
591
- </style>
1
+ <template>
2
+ <div>
3
+ <!-- <el-dialog :visible.sync="VisibleAdd" :close-on-click-modal="false" width='1140px'> -->
4
+ <!-- 新增 -->
5
+ <div class="uploadfiletip">
6
+ <div>附件信息</div>
7
+ <div>
8
+ <el-button type="primary" size="small" @click="createRow"
9
+ >新增</el-button
10
+ >
11
+ <el-button size="small" plain @click="batchload">下载</el-button>
12
+ <el-button size="small" type="danger" plain @click="batchdel"
13
+ >删除</el-button
14
+ >
15
+ </div>
16
+ </div>
17
+ <el-table
18
+ :data="files"
19
+ header-row-class-name="customHeader"
20
+ size="small"
21
+ class="uploadtable mb20"
22
+ :header-cell-style="{ 'text-align': 'center' }"
23
+ @selection-change="handleSelectionChange"
24
+ >
25
+ <el-table-column type="selection" width="55" />
26
+ <el-table-column label="附件类型">
27
+ <template slot-scope="scope">
28
+ <el-select
29
+ v-model="scope.row.attnoadd"
30
+ placeholder="请选择"
31
+ size="small"
32
+ clearable
33
+ >
34
+ <el-option
35
+ v-for="item in eamsAttachfiles"
36
+ :key="item.index"
37
+ :label="item.attname"
38
+ :value="item.attno"
39
+ />
40
+ </el-select>
41
+ </template>
42
+ </el-table-column>
43
+ <el-table-column label="附件名称" width="200">
44
+ <template slot-scope="scope">
45
+ <el-input
46
+ v-model="scope.row.memo"
47
+ size="small"
48
+ autocomplete="off"
49
+ placeholder="请输入"
50
+ clearable
51
+ />
52
+ </template>
53
+ </el-table-column>
54
+ <el-table-column label="附件上传">
55
+ <template slot-scope="scope">
56
+ <div class="cantpick">
57
+ <div
58
+ v-show="!scope.row.attnoadd"
59
+ class="canttip"
60
+ @click="cantTip"
61
+ ></div>
62
+ <div
63
+ v-show="!scope.row.memo"
64
+ class="canttip"
65
+ @click="cantTip1"
66
+ ></div>
67
+ <div
68
+ v-show="scope.row.canupload == 0"
69
+ class="canttip"
70
+ @click="cantTip2"
71
+ ></div>
72
+ <el-upload
73
+ ref="upload"
74
+ class="upload"
75
+ action="string"
76
+ :http-request="uploadFile"
77
+ :on-change="handleChange"
78
+ :show-file-list="false"
79
+ >
80
+ <div
81
+ class="changeindex"
82
+ @click="curRowIndex = scope.$index"
83
+ ></div>
84
+ <el-input
85
+ v-if="scope.row.file != null"
86
+ v-model="scope.row.file.name"
87
+ size="small"
88
+ class="uploadinput"
89
+ placeholder="请选择附件"
90
+ >
91
+ <i
92
+ v-show="scope.row.canupload == 1"
93
+ slot="suffix"
94
+ class="el-icon-upload2"
95
+ style="color: #242424"
96
+ ></i>
97
+ <i
98
+ v-show="scope.row.canupload == 0"
99
+ slot="suffix"
100
+ class="el-icon-upload2"
101
+ style="color: #d8d8d8"
102
+ ></i>
103
+ </el-input>
104
+ </el-upload>
105
+ </div>
106
+ </template>
107
+ </el-table-column>
108
+ <el-table-column label="文件大小">
109
+ <template slot-scope="scope">
110
+ <span v-if="scope.row.file != null">{{ scope.row.file.size }}</span>
111
+ </template>
112
+ </el-table-column>
113
+ <el-table-column label="上传时间" align="left">
114
+ <template slot-scope="scope">
115
+ <span v-if="scope.row.file != null">{{ uploadDate }}</span>
116
+ </template>
117
+ </el-table-column>
118
+ <el-table-column label="上传进度">
119
+ <template slot-scope="scope">
120
+ <div class="loadcol">
121
+ <div class="loadtotal">
122
+ <div
123
+ class="loaded"
124
+ :style="{ width: scope.row.loadprogress }"
125
+ :class="'loadbg' + scope.row.upstatus"
126
+ ></div>
127
+ </div>
128
+ <div v-show="scope.row.upstatus == 0">
129
+ <i class="el-icon-time" style="color: #606266"></i>
130
+ </div>
131
+ <div v-show="scope.row.upstatus == 1" class="">
132
+ {{ scope.row.loadprogress }}
133
+ <el-button
134
+ v-show="scope.row.upstatus == 1"
135
+ class="ml10 p0"
136
+ type="text"
137
+ @click="cancelupload(scope.$index)"
138
+ >取消</el-button
139
+ >
140
+ </div>
141
+ <div v-show="scope.row.upstatus == 2">
142
+ <i class="el-icon-success" style="color: #48d2a0"></i>
143
+ </div>
144
+ <div v-show="scope.row.upstatus == 3">
145
+ <i class="el-icon-error" style="color: #fb5555"></i>
146
+ <el-button
147
+ v-show="scope.row.upstatus == 3"
148
+ class="ml10 p0"
149
+ type="text"
150
+ @click="reupload(scope.$index)"
151
+ >重新上传</el-button
152
+ >
153
+ </div>
154
+ </div>
155
+ </template>
156
+ </el-table-column>
157
+ <el-table-column label="操作" type="index" width="100">
158
+ <template slot-scope="scope">
159
+ <i
160
+ v-show="scope.row.recordno"
161
+ class="el-icon-view"
162
+ @click="handleDownload(scope.row.recordno)"
163
+ ></i>
164
+ </template>
165
+ </el-table-column>
166
+ </el-table>
167
+ <!-- </el-dialog> -->
168
+ <!-- 修改 -->
169
+ </div>
170
+ </template>
171
+
172
+ <script>
173
+ import axios from 'axios'
174
+ var CancelToken = axios.CancelToken
175
+ export default {
176
+ name: 'NstcElectronicFile',
177
+ props: {
178
+ paramVal: {
179
+ default: null,
180
+ type: Object
181
+ },
182
+ sysno: {
183
+ default: '',
184
+ type: String
185
+ },
186
+ appno: {
187
+ default: '',
188
+ type: String
189
+ },
190
+ bussValue: {
191
+ default: '',
192
+ type: String
193
+ },
194
+ bussId: {
195
+ default: '',
196
+ type: String
197
+ },
198
+ cltno: {
199
+ default: '',
200
+ type: String
201
+ },
202
+ cltname: {
203
+ default: '',
204
+ type: String
205
+ },
206
+ propList: {
207
+ default: null,
208
+ type: Array
209
+ }
210
+ },
211
+ data() {
212
+ return {
213
+ VisibleAdd: true,
214
+ files: [],
215
+ eamsAttachfiles: [],
216
+ eamsBaseRecord: {},
217
+ attno: '',
218
+ attnoadd: '',
219
+ recordname: '',
220
+ value2: '',
221
+ fileList: [],
222
+ multiple: true,
223
+ memo: '',
224
+ multipleSelection: [],
225
+ curRowIndex: 0,
226
+ recordarr: [],
227
+ axios: axios
228
+ }
229
+ },
230
+ watch: {},
231
+ created() {
232
+ this.getUploadDate()
233
+ axios.defaults.timeout = 60000
234
+ },
235
+ mounted: function () {
236
+ this.getBussTypeSetting()
237
+ },
238
+ methods: {
239
+ handleSelectionChange(val) {
240
+ this.multipleSelection = val
241
+ },
242
+ getUploadDate() {
243
+ let date = new Date()
244
+ this.uploadDate =
245
+ date.getFullYear() +
246
+ '-' +
247
+ ('00' + (date.getMonth() + 1)).slice(-2) +
248
+ '-' +
249
+ ('00' + date.getDate()).slice(-2)
250
+ },
251
+ createRow() {
252
+ this.getAlleamsAttachfile()
253
+ // 创建行
254
+ var row = {
255
+ loadprogress: 0,
256
+ upstatus: 0,
257
+ file: {
258
+ name: ''
259
+ },
260
+ canupload: 1
261
+ }
262
+ this.files.push(row)
263
+ },
264
+ batchload() {
265
+ this.$confirm('确定下载选中的附件?', {
266
+ confirmButtonText: '确定',
267
+ cancelButtonText: '取消',
268
+ type: 'warning'
269
+ }).then(() => {
270
+ let multipleSelection = this.multipleSelection
271
+ multipleSelection.forEach((_) => {
272
+ if (_.recordno) {
273
+ this.handleDownload(_.recordno)
274
+ }
275
+ })
276
+ })
277
+ },
278
+ batchdel() {
279
+ this.$confirm('确定删除选中的附件?', {
280
+ confirmButtonText: '确定',
281
+ cancelButtonText: '取消',
282
+ type: 'warning'
283
+ }).then(() => {
284
+ let files = this.files
285
+ while (this.multipleSelection.length > 0) {
286
+ let pop = this.multipleSelection.pop()
287
+ for (let i = 0; i < files.length; i++) {
288
+ if (files[i] == pop) {
289
+ files.splice(i, 1)
290
+ }
291
+ }
292
+ }
293
+ this.files = files
294
+ })
295
+ },
296
+ handleDelete(index) {
297
+ // 模态框删除按钮
298
+ this.files.splice(index, 1)
299
+ },
300
+ init() {
301
+ this.VisibleAdd = true
302
+ },
303
+ getBussTypeSetting() {
304
+ this.axios
305
+ .get(
306
+ '/neams/eamsattachfile/queryByBussValue/' +
307
+ this.$props.paramVal.bussValue
308
+ )
309
+ .then((response) => {
310
+ this.eamsAttachfiles = response.data.data
311
+ })
312
+ .catch(function (error) {
313
+ console.log(error)
314
+ })
315
+ },
316
+ getAlleamsAttachfile() {
317
+ this.axios
318
+ .get('/neams/eamsbaserecord/all')
319
+ .then((response) => {
320
+ this.eamsAttachfiles = response.data.data
321
+ })
322
+ .catch(function (error) {
323
+ console.log(error)
324
+ })
325
+ },
326
+ getAlleamsSystem() {
327
+ this.axios
328
+ .get('/neams/eamssystem/all')
329
+ .then((response) => {
330
+ this.eamsSystems = response.data.data
331
+ })
332
+ .catch(function (error) {
333
+ console.log(error)
334
+ })
335
+ },
336
+ delFile() {
337
+ this.fileList = []
338
+ },
339
+ handleChange(file, fileList) {
340
+ this.fileList = fileList
341
+ },
342
+ cantTip() {
343
+ this.$message({
344
+ showClose: true,
345
+ message: '请选择附件类型'
346
+ })
347
+ },
348
+ cantTip1() {
349
+ this.$message({
350
+ showClose: true,
351
+ message: '请输入附件名称'
352
+ })
353
+ },
354
+ cantTip2() {
355
+ this.$message({
356
+ showClose: true,
357
+ message: '没有上传完成,不能再次上传'
358
+ })
359
+ },
360
+ uploadFile(params) {
361
+ let isFind = this.files.find((_) => {
362
+ return _.file.name == params.file.name
363
+ })
364
+ if (!isFind) {
365
+ // this.$message({
366
+ // showClose: true,
367
+ // message: params.file.name+'已经上传过了'
368
+ // });
369
+ // }else{
370
+ let _file = this.files[this.curRowIndex]
371
+ _file.file = params.file
372
+ _file.loadprogress = 0
373
+ _file.upstatus = 1 //1上传中蓝底,2上传成功绿底,3上传失败红底
374
+ _file.recordno = ''
375
+ _file.canupload = 0
376
+ this.$set(this.files, this.curRowIndex, _file)
377
+ this.submitUpload()
378
+ }
379
+ },
380
+ handlePreview(file) {
381
+ console.log(file)
382
+ },
383
+ reupload(index) {
384
+ this.curRowIndex = index
385
+ this.files[this.curRowIndex].loadprogress = 0
386
+ this.files[this.curRowIndex].upstatus = 1
387
+ this.files[this.curRowIndex].recordno = ''
388
+ this.files[this.curRowIndex].canupload = 0
389
+ this.submitUpload()
390
+ },
391
+ submitUpload() {
392
+ let _file = this.files[this.curRowIndex]
393
+ let formData = new FormData()
394
+
395
+ this.eamsAttachfiles.forEach((item) => {
396
+ if (_file.attnoadd == item.attno) {
397
+ if (item.attSize * 1024 < _file.size) {
398
+ this.$message.error(
399
+ '附件超过设置大小,目前附件限制大小为' + item.attSize + 'M'
400
+ )
401
+ return
402
+ }
403
+ }
404
+ })
405
+ let reqParam = this.paramVal
406
+ reqParam.attno = _file.attnoadd
407
+ reqParam.memo = _file.memo
408
+ // reqParam.propList = this.propList
409
+ formData.append('file', _file.file)
410
+ formData.append('data', JSON.stringify(this.paramVal))
411
+ formData.append('date', '2021-08-02 12:33:33,2023-08-23 12:33:33')
412
+ _file.cancel = ''
413
+ axios({
414
+ url: '/neams/eamsbaserecord/batchSavejson',
415
+ method: 'post',
416
+ data: formData,
417
+ contentType: false,
418
+ headers: {
419
+ 'Content-Type': 'multipart/form-data;charset=utf-8'
420
+ },
421
+ onUploadProgress(progressEvent) {
422
+ _file.loadprogress =
423
+ Math.round((progressEvent.loaded / progressEvent.total) * 100) + '%'
424
+ },
425
+ cancelToken: new CancelToken(function executor(c) {
426
+ // executor 函数接收一个 cancel 函数作为参数
427
+ _file.cancel = c
428
+ })
429
+ })
430
+ .then((res) => {
431
+ if (res.data.code != 200) {
432
+ _file.upstatus = 3
433
+ this.$message.error(res.data.msg)
434
+ } else {
435
+ _file.upstatus = 2
436
+ this.$message.success('上传成功!')
437
+ let recordno = res.data.data.replace(',', '')
438
+ _file.recordno = recordno
439
+ if (this.recordarr.indexOf(recordno) === -1) {
440
+ this.recordarr.push(recordno)
441
+ this.$emit('refreshDataList', this.recordarr)
442
+ }
443
+ }
444
+ })
445
+ .catch((err) => {
446
+ _file.upstatus = 3
447
+ console.log(err)
448
+ })
449
+ .finally(() => {
450
+ _file.canupload = 1
451
+ })
452
+ },
453
+ cancelupload(index) {
454
+ this.files[index].cancel()
455
+ },
456
+ handleDownload(row) {
457
+ this.axios({
458
+ method: 'GET',
459
+ url: `/neams/eamsbaserecord/download/${row}/${0}`,
460
+ responseType: 'blob'
461
+ })
462
+ .then((response) => {
463
+ if (response.data.type === 'application/octet-stream') {
464
+ // 获取http头部的文件名信息,若无需重命名文件,将下面这行删去
465
+ const fileName =
466
+ response.headers['content-disposition'].split('=')[1]
467
+ /* 兼容ie内核,360浏览器的兼容模式 */
468
+ if (window.navigator && window.navigator.msSaveOrOpenBlob) {
469
+ const blob = new Blob([response.data], {
470
+ type: 'application/zip'
471
+ })
472
+ window.navigator.msSaveOrOpenBlob(blob, fileName)
473
+ } else {
474
+ /* 火狐谷歌的文件下载方式 */
475
+ const blob = new Blob([response.data], {
476
+ type: 'application/zip'
477
+ })
478
+ const url = window.URL.createObjectURL(blob)
479
+ const link = document.createElement('a') // 创建a标签
480
+ link.href = url
481
+ link.download = fileName // 文件重命名,若无需重命名,将该行删去
482
+ link.click()
483
+ URL.revokeObjectURL(url) // 释放内存
484
+ }
485
+ // resolve(response)
486
+ } else {
487
+ this.$message.error('下载失败数据已删除!')
488
+ }
489
+ })
490
+ .catch((error) => this.$message.error(error))
491
+ }
492
+ }
493
+ }
494
+ </script>
495
+ <style>
496
+ .uploadfiletip {
497
+ display: flex;
498
+ justify-content: space-between;
499
+ width: 100%;
500
+ height: 51px;
501
+ font-size: 16px;
502
+ line-height: 50px;
503
+ padding: 0 20px;
504
+ border: 1px solid #ebeef5;
505
+ box-sizing: border-box;
506
+ }
507
+ .uploadtable {
508
+ border-right: 1px solid #ebeef5;
509
+ border-left: 1px solid #ebeef5;
510
+ }
511
+ .upload {
512
+ position: relative;
513
+ }
514
+ .cantpick {
515
+ position: relative;
516
+ }
517
+ .canttip {
518
+ position: absolute;
519
+ top: 0;
520
+ left: 0;
521
+ width: 100%;
522
+ height: 100%;
523
+ z-index: 2;
524
+ }
525
+ .changeindex {
526
+ position: absolute;
527
+ top: 0;
528
+ left: 0;
529
+ width: 100%;
530
+ height: 100%;
531
+ z-index: 1;
532
+ }
533
+ .el-icon-delete {
534
+ background-color: transparent;
535
+ cursor: pointer;
536
+ font-size: 16px;
537
+ line-height: 23px;
538
+ }
539
+ .el-icon-upload2 {
540
+ font-size: 16px;
541
+ line-height: 34px;
542
+ }
543
+ .loadcol {
544
+ display: flex;
545
+ flex-direction: row;
546
+ align-items: center;
547
+ }
548
+ .loadtotal {
549
+ width: 80px;
550
+ height: 6px;
551
+ border-radius: 3px;
552
+ background-color: #dfe6ee;
553
+ position: relative;
554
+ margin-right: 10px;
555
+ }
556
+ .loaded {
557
+ position: absolute;
558
+ top: 0;
559
+ left: 0;
560
+ height: 100%;
561
+ border-radius: 3px;
562
+ }
563
+ .loadbg1 {
564
+ background-color: #007aff;
565
+ }
566
+ .loadbg2 {
567
+ background-color: #48d2a0;
568
+ }
569
+ .loadbg3 {
570
+ background-color: #fb5555;
571
+ }
572
+ .vertical_m {
573
+ vertical-align: middle;
574
+ }
575
+ .uploadbtn {
576
+ float: right;
577
+ margin-top: 13px;
578
+ margin-right: 20px;
579
+ cursor: pointer;
580
+ }
581
+ .ml10 {
582
+ margin-left: 10px;
583
+ }
584
+ .p0 {
585
+ padding: 0;
586
+ }
587
+
588
+ .uploadinput .el-input__inner {
589
+ cursor: pointer !important;
590
+ }
591
+ </style>