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,446 +1,446 @@
1
-
2
- // import Vue from 'vue'
3
- const NULL_ARR = ['', null, undefined, NaN]
4
-
5
-
6
-
7
- /**
8
- * 金额格式化
9
- * @param num 金额
10
- * @param len 保留小数位数
11
- * @param magnitude 数量级 ( 5 代表万 )
12
- * @returns {*}
13
- */
14
- function amountFormat(num, len = 2, magnitude) {
15
- /**
16
- * input框的输入初始状态
17
- */
18
- if(num === '-') {
19
- return '-'
20
- }
21
-
22
- // 已经格式化的数据
23
- if (String(num).includes(',')) {
24
- num = num.replace(/,/g, '')
25
- }
26
-
27
- // let symbol = String(num).includes('-') ? '-' : ''
28
-
29
- // 非空校验
30
- if (isNaN(Number(num)) || [null, '', undefined].includes(num)) {
31
- return ''
32
- }
33
-
34
- const magnitudeObj = {
35
- 5: { label: '万元', value: 1E4 },
36
- 6: { label: '十万元', value: 1E5 },
37
- 7: { label: '百万元', value: 1E6 },
38
- 8: { label: '千万元', value: 1E7 },
39
- 9: { label: '亿元', value: 1E8 }
40
- }
41
- let temp = +num
42
-
43
- if (magnitude) {
44
- const t = magnitudeObj[magnitude]
45
-
46
- temp = (temp / (t.value))
47
- }
48
-
49
- temp = temp.toFixed(len)
50
-
51
- // 三点一逗
52
- function get_thousand_num(num) {
53
- return num.toString().replace(/\d+/, function(n) { // 先提取整数部分
54
- return n.replace(/(\d)(?=(\d{3})+$)/g, function($1) { // 对整数部分添加分隔符
55
- return $1 + ','
56
- })
57
- })
58
- }
59
-
60
- temp = get_thousand_num(temp)
61
- return temp
62
- }
63
-
64
- /** *
65
- * uuid
66
- */
67
- function generateUUID() {
68
- var d = new Date().getTime()
69
- if (window.performance && typeof window.performance.now === 'function') {
70
- d += performance.now() // use high-precision timer if available
71
- }
72
- let uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
73
- var r = (d + Math.random() * 16) % 16 | 0
74
- d = Math.floor(d / 16)
75
- return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16)
76
- })
77
- return uuid
78
- }
79
-
80
- let currentFocusUUID = ''
81
-
82
- /**
83
- * updateInput
84
- * el, binding, vnode, oldVnode
85
- */
86
- function updateInput(el, binding) {
87
- // 判断 input 是否是激活状态
88
- const inputEl = el.querySelectorAll('input')[0]
89
- if (!inputEl) {
90
- return
91
- }
92
- // const activeFlag = document.activeElement.tagName
93
- const currentUUID = inputEl.getAttribute('money-id')
94
- const disabledFlag = inputEl.getAttribute('disabled') === 'disabled'
95
- const screenEl = el.children[el.children.length - 1]
96
-
97
- // 延迟后的
98
- setTimeout(() => {
99
- // 只有金额才存在更新遮挡板 (activeFlag !== 'INPUT')
100
- // console.log('当前激活的元素', document.activeElement)
101
- if (binding.value[`isMoney`] && currentFocusUUID !== currentUUID) {
102
- const curValue = inputEl.value
103
-
104
- // 如果input框是disabled 状态, 遮挡层也因该是disabled状态
105
- if (!disabledFlag) {
106
- // el.classList.remove('nstc-amount-input-disabled')
107
- el.classList.add('nstc-amount-num')
108
- } else {
109
- // el.classList.add('nstc-amount-input-disabled')
110
- el.classList.add('nstc-amount-num')
111
- }
112
-
113
- // 当input值更新时, 遮挡层也要更新
114
- screenEl.innerText = amountFormat(curValue || '')
115
- if (binding.value.precision) {
116
- let word_ = Number(inputEl.value).toFixed(binding.value.precision)
117
- let after_ = word_.slice(-Number(binding.value.precision))
118
- if (amountFormat(inputEl.value || '', binding.value.precision).indexOf('.') !== -1) {
119
- let index = amountFormat(inputEl.value || '', binding.value.precision).indexOf('.')
120
- let before_ = amountFormat(inputEl.value || '', binding.value.precision).slice(0, index)
121
- el.children[el.children.length - 1].innerText = `${before_}.${after_}`
122
- }
123
- inputEl.value = Number(word_)
124
- }
125
-
126
- if (NULL_ARR.includes(curValue)) {
127
- el.classList.remove('nstc-amount-num-temp')
128
- inputEl.value = ''
129
- } else {
130
- // 当前的激活元素,进行输入时,不显示遮罩层
131
- currentFocusUUID !== currentUUID && el.classList.add('nstc-amount-num-temp')
132
- }
133
- //
134
- } else {
135
- // 保证遮罩层的text的内容,和 input 的内容一致
136
- // 金额模式下
137
- binding.value[`isMoney`] && (screenEl.innerText = amountFormat(inputEl.value || ''))
138
-
139
- }
140
- //处理刷新页面赋值带有小数点后几位问题
141
- // if (binding.value.precision) {
142
- // let word_ = Number(inputEl.value).toFixed(binding.value.precision)
143
- // el.children[el.children.length - 1].innerText = word_
144
- // inputEl.value = Number(inputEl.value)
145
- // }
146
- }, 30)
147
- }
148
-
149
- export default {
150
- bind: function (el, binding) {
151
- // 绑定uuid
152
- const inputEl = el.querySelectorAll('input')[0]
153
- // 将input的type 类型设置为 Number
154
- // inputEl && (inputEl.setAttribute('type', 'number'))
155
- inputEl && inputEl.setAttribute('money-id', generateUUID())
156
-
157
- if (binding.value[`isMoney`]) {
158
- inputEl && inputEl.setAttribute('style', 'text-align:right;')
159
- } else {
160
- inputEl && inputEl.setAttribute('style', 'text-align:left;')
161
- }
162
-
163
- inputEl && inputEl.addEventListener('input', function () {
164
- const curValue = el.querySelectorAll('input')[0].value
165
- const screenEl = el.children[el.children.length - 1]
166
- if (binding.value[`isMoney`]) {
167
-
168
- screenEl.innerText = amountFormat(curValue || '')
169
- }
170
-
171
- })
172
- },
173
- unbind: function (el) {
174
- el.removeEventListener('input', el.handler)
175
- },
176
-
177
- inserted(el, vDir) {
178
-
179
- // 禁止input滚动事件
180
- const ele = el.tagName === 'INPUT' ? el : el.querySelector('input')
181
- // el.type = 'number'
182
- ele && ele.addEventListener('mousewheel', () => {
183
- ele.blur()
184
- })
185
-
186
- // 当为金额时,浮框显示三点一逗
187
- if (vDir.value[`isMoney`]) {
188
-
189
- el.querySelector('input').parentElement.style.userSelect = 'none';
190
- const elDiv = document.createElement('div')
191
- elDiv.className = 'input-after-amount-num'
192
-
193
- // 添加金额class
194
- el.classList.add('nstc-amount-num')
195
-
196
- elDiv.innerText = ''
197
- el.append(elDiv)
198
-
199
- // 监听input聚焦事件
200
- el.addEventListener('click', () => {
201
- const inputEl = el.querySelectorAll('input')[0]
202
- const disabledFlag = inputEl.getAttribute('disabled') === 'disabled'
203
-
204
- if (!disabledFlag) {
205
- el.classList.remove('nstc-amount-num-temp')
206
- el.children[0].focus()
207
-
208
- currentFocusUUID = el.querySelectorAll('input')[0].getAttribute('money-id')
209
- //
210
- }
211
- //
212
- // eslint-disable-next-line no-debugger
213
- })
214
- } else {
215
- let inputEl = el.querySelectorAll('input')[0]
216
- let curValue = inputEl.value
217
- inputEl.value = curValue ? parseFloat(curValue).toFixed(vDir.value.precision || 0) : ""
218
- }
219
-
220
- // vDir.value 有指令的参数
221
- if (JSON.stringify(vDir.value) === '{}') {
222
- return null
223
- }
224
-
225
- let content
226
- // 按键按下=>只允许输入 数字/小数点
227
- el.addEventListener('keypress', event => {
228
- let e = event || window.event
229
- if (!Number(e.target.value) && e.target.value != 0) {
230
- e.target.value = ''
231
- return ''
232
- }
233
- if (!e.target.value) {
234
- return null
235
- }
236
- let inputKey = String.fromCharCode(e.keyCode || e.charCode)
237
- let re = /\d|\./
238
- let reP = /\d|\.|-/
239
- content = e.target.value
240
-
241
- // 定义方法,阻止输入
242
- function preventInput() {
243
- if (e.preventDefault) {
244
- e.preventDefault()
245
- } else {
246
- e.returnValue = false
247
- }
248
- }
249
-
250
- // 判断最小值是不是负数
251
- let arg_min = null
252
- let preventFlag = null
253
- if (vDir.value) {
254
- arg_min = vDir.value.min
255
- if (!NULL_ARR.includes(arg_min) && arg_min < 0) {
256
- preventFlag = !reP.test(inputKey) && !e.ctrlKey
257
- } else {
258
- preventFlag = !re.test(inputKey) && !e.ctrlKey
259
- }
260
- }
261
-
262
- if (preventFlag) {
263
- preventInput()
264
- } else if ((content.indexOf('.') > 0 && inputKey === '.') || (content.includes('-') && inputKey === '-')) {
265
- // 已有小数点,再次输入小数点
266
- preventInput()
267
- }
268
- })
269
- // 按键弹起=>并限制最大最小, 最大长度
270
- el.addEventListener('keyup', event => {
271
- let e = event || window.event
272
- if (!Number(e.target.value) && e.target.value != 0) {
273
- e.target.value = ''
274
- return ''
275
- }
276
- if (!e.target.value) {
277
- return null
278
- }
279
- content = e.target.value
280
- let inputKey = String.fromCharCode(e.keyCode || e.charCode)
281
- // 判断是不是才输入的初始状态
282
- vDir.value[`isMoney`] && (el.children[el.children.length - 1].innerText = amountFormat(content || ''))
283
-
284
- if (!content) {
285
- content = ''
286
- }
287
- let arg_max = ''
288
- let arg_min = ''
289
- let max = 9999999999999
290
- if (vDir.value) {
291
- arg_max = vDir.value.max
292
- arg_min = vDir.value.min // 没用到
293
- }
294
- if (!arg_max || arg_max >= max) {
295
- max = arg_max
296
- }
297
- if (arg_max && content > arg_max) {
298
- e.target.value = arg_max
299
- content = arg_max
300
- }
301
- let maxl = max.toString().length
302
-
303
- // console.log('判断结果', Number(arg_min) < 0, inputKey === '½')
304
-
305
- // 验证数字的最大长度
306
- if (!NULL_ARR.includes(vDir.value[`isMoney`])) {
307
-
308
- // 如果输入为负号, 不处理
309
- // console.log('判断结果', Number(arg_min) < 0, currentInputValue)
310
- if (Number(arg_min) < 0 && ['½', 'm', '\b', '-'].includes(inputKey)) {
311
- return null
312
- }
313
- let numPart = e.target.value.split('.')
314
- let intPart = numPart[0] || ''
315
- let decimalPart = numPart[1] || ''
316
- if (numPart.length === 1) {
317
- try {
318
- Number(arg_min) >= 0 ? (e.target.value = Math.abs(intPart.toString().slice(0, maxl))) : (e.target.value = intPart.toString().slice(0, maxl))
319
- } catch {
320
- e.target.value = intPart.toString().slice(0, maxl)
321
- }
322
-
323
- } else {
324
- try {
325
- Number(arg_min) >= 0 ? (e.target.value = Math.abs(intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2))) : (e.target.value = intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2))
326
- } catch {
327
- e.target.value = intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2)
328
- }
329
-
330
- }
331
- //同步修改vue v-model绑定值
332
- e.target.dispatchEvent(new Event('input'));
333
- // e.target.value = e.target.value
334
-
335
- } else if (!NULL_ARR.includes(vDir.value.maxLength)) {
336
- // console.log('验证数字的最大长度', vDir.value.maxLength, e.target.value)
337
- if (!isNaN(Number(vDir.value.maxLength))) {
338
- if (vDir.value.maxLength > maxl) {
339
- e.target.value = e.target.value.toString().slice(0, maxl)
340
- } else {
341
- e.target.value = e.target.value.toString().slice(0, vDir.value.maxLength)
342
- }
343
-
344
- }
345
- }
346
- })
347
- updateInput(el, vDir)
348
- // 失去焦点=>保留指定位小数
349
- el.addEventListener('focusout', event => { // 此处会在 el-input 的 @change 后执行
350
-
351
- let e = event || window.event
352
- let arg_precision = vDir.value.precision || 0 // 默认保留至整数
353
-
354
- currentFocusUUID = ''
355
- // 显示三点一抖的数字temp
356
- if (!Number(e.target.value) && e.target.value != 0) {
357
- e.target.value = ''
358
- return ''
359
- }
360
- if (!e.target.value) {
361
- return null
362
- } else {
363
- el.classList.add('nstc-amount-num-temp')
364
- }
365
- content = e.target.value
366
- if (NULL_ARR.includes(content)) {
367
- el.classList.add('nstc-amount-temp-transparent')
368
- } else {
369
- el.classList.remove('nstc-amount-temp-transparent')
370
- }
371
-
372
- if (!content) {
373
- content = ''
374
- }
375
- let arg_min = ''
376
- if (vDir.value) {
377
- arg_min = vDir.value.min
378
- }
379
- if (!NULL_ARR.includes(arg_min) && content < arg_min) {
380
- // 设置input的框的值
381
- e.target.value = arg_min
382
- content = arg_min
383
-
384
- // 还原遮罩层
385
- if (vDir.value[`isMoney`]) {
386
- el.children[el.children.length - 1].innerText = amountFormat(content, arg_precision);
387
-
388
- } else {
389
- el.children[el.children.length - 1].innerText = content
390
- }
391
- }
392
-
393
- if (vDir.value.precision) {
394
-
395
- let word_ = !NULL_ARR.includes(content) && (Number(content).toFixed(arg_precision))
396
- let after_ = word_.slice(-Number(arg_precision))
397
- if (amountFormat(word_ || '', arg_precision).indexOf('.') !== -1) {
398
- let index = amountFormat(word_ || '', arg_precision).indexOf('.')
399
- let before_ = amountFormat(word_ || '', arg_precision).slice(0, index)
400
- el.children[el.children.length - 1].innerText = `${before_}.${after_}`
401
- }
402
- e.target.value = Number(word_)
403
- // e.target.dispatchEvent(new Event('input'));
404
- }
405
- if (!vDir.value[`isMoney`]) {
406
- e.target.value = Number(e.target.value).toFixed(vDir.value.precision)
407
- }
408
- // !NULL_ARR.includes(content) && (e.target.value = Number(content))
409
- // e.target.dispatchEvent(new Event('input'));
410
- // updateInput(el, vDir)
411
-
412
- //更新遮罩层
413
- // e.target.dispatchEvent(new Event('input'));
414
- // updateInput(el, vDir)
415
- // -- callback写法1
416
- // vNode.data.model.callback = ()=>{
417
- // e.target.value = content.toFixed(arg_precision)
418
- // }
419
- // vNode.data.model.callback();
420
- // -- callback 写法2
421
- // vNode.data.model.callback(
422
- // e.target.value = content.toFixed(arg_precision)
423
- // )
424
- })
425
-
426
- // 当时去焦点时
427
- el.addEventListener('blur', () => {
428
-
429
- })
430
-
431
- // 聚焦事件
432
- el.addEventListener('focus', event => {
433
- let e = event || window.event
434
- if (!vDir.value[`isMoney`]) {
435
- if (e.target.value !== '') {
436
- e.target.value = Number(e.target.value)
437
- }
438
- }
439
- }, true)
440
- },
441
- componentUpdated(el, binding, vnode, oldVnode) {
442
- updateInput(el, binding, vnode, oldVnode)
443
- },
444
- update() {
445
- }
446
- }
1
+
2
+ // import Vue from 'vue'
3
+ const NULL_ARR = ['', null, undefined, NaN]
4
+
5
+
6
+
7
+ /**
8
+ * 金额格式化
9
+ * @param num 金额
10
+ * @param len 保留小数位数
11
+ * @param magnitude 数量级 ( 5 代表万 )
12
+ * @returns {*}
13
+ */
14
+ function amountFormat(num, len = 2, magnitude) {
15
+ /**
16
+ * input框的输入初始状态
17
+ */
18
+ if(num === '-') {
19
+ return '-'
20
+ }
21
+
22
+ // 已经格式化的数据
23
+ if (String(num).includes(',')) {
24
+ num = num.replace(/,/g, '')
25
+ }
26
+
27
+ // let symbol = String(num).includes('-') ? '-' : ''
28
+
29
+ // 非空校验
30
+ if (isNaN(Number(num)) || [null, '', undefined].includes(num)) {
31
+ return ''
32
+ }
33
+
34
+ const magnitudeObj = {
35
+ 5: { label: '万元', value: 1E4 },
36
+ 6: { label: '十万元', value: 1E5 },
37
+ 7: { label: '百万元', value: 1E6 },
38
+ 8: { label: '千万元', value: 1E7 },
39
+ 9: { label: '亿元', value: 1E8 }
40
+ }
41
+ let temp = +num
42
+
43
+ if (magnitude) {
44
+ const t = magnitudeObj[magnitude]
45
+
46
+ temp = (temp / (t.value))
47
+ }
48
+
49
+ temp = temp.toFixed(len)
50
+
51
+ // 三点一逗
52
+ function get_thousand_num(num) {
53
+ return num.toString().replace(/\d+/, function(n) { // 先提取整数部分
54
+ return n.replace(/(\d)(?=(\d{3})+$)/g, function($1) { // 对整数部分添加分隔符
55
+ return $1 + ','
56
+ })
57
+ })
58
+ }
59
+
60
+ temp = get_thousand_num(temp)
61
+ return temp
62
+ }
63
+
64
+ /** *
65
+ * uuid
66
+ */
67
+ function generateUUID() {
68
+ var d = new Date().getTime()
69
+ if (window.performance && typeof window.performance.now === 'function') {
70
+ d += performance.now() // use high-precision timer if available
71
+ }
72
+ let uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
73
+ var r = (d + Math.random() * 16) % 16 | 0
74
+ d = Math.floor(d / 16)
75
+ return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16)
76
+ })
77
+ return uuid
78
+ }
79
+
80
+ let currentFocusUUID = ''
81
+
82
+ /**
83
+ * updateInput
84
+ * el, binding, vnode, oldVnode
85
+ */
86
+ function updateInput(el, binding) {
87
+ // 判断 input 是否是激活状态
88
+ const inputEl = el.querySelectorAll('input')[0]
89
+ if (!inputEl) {
90
+ return
91
+ }
92
+ // const activeFlag = document.activeElement.tagName
93
+ const currentUUID = inputEl.getAttribute('money-id')
94
+ const disabledFlag = inputEl.getAttribute('disabled') === 'disabled'
95
+ const screenEl = el.children[el.children.length - 1]
96
+
97
+ // 延迟后的
98
+ setTimeout(() => {
99
+ // 只有金额才存在更新遮挡板 (activeFlag !== 'INPUT')
100
+ // console.log('当前激活的元素', document.activeElement)
101
+ if (binding.value[`isMoney`] && currentFocusUUID !== currentUUID) {
102
+ const curValue = inputEl.value
103
+
104
+ // 如果input框是disabled 状态, 遮挡层也因该是disabled状态
105
+ if (!disabledFlag) {
106
+ // el.classList.remove('nstc-amount-input-disabled')
107
+ el.classList.add('nstc-amount-num')
108
+ } else {
109
+ // el.classList.add('nstc-amount-input-disabled')
110
+ el.classList.add('nstc-amount-num')
111
+ }
112
+
113
+ // 当input值更新时, 遮挡层也要更新
114
+ screenEl.innerText = amountFormat(curValue || '')
115
+ if (binding.value.precision) {
116
+ let word_ = Number(inputEl.value).toFixed(binding.value.precision)
117
+ let after_ = word_.slice(-Number(binding.value.precision))
118
+ if (amountFormat(inputEl.value || '', binding.value.precision).indexOf('.') !== -1) {
119
+ let index = amountFormat(inputEl.value || '', binding.value.precision).indexOf('.')
120
+ let before_ = amountFormat(inputEl.value || '', binding.value.precision).slice(0, index)
121
+ el.children[el.children.length - 1].innerText = `${before_}.${after_}`
122
+ }
123
+ inputEl.value = Number(word_)
124
+ }
125
+
126
+ if (NULL_ARR.includes(curValue)) {
127
+ el.classList.remove('nstc-amount-num-temp')
128
+ inputEl.value = ''
129
+ } else {
130
+ // 当前的激活元素,进行输入时,不显示遮罩层
131
+ currentFocusUUID !== currentUUID && el.classList.add('nstc-amount-num-temp')
132
+ }
133
+ //
134
+ } else {
135
+ // 保证遮罩层的text的内容,和 input 的内容一致
136
+ // 金额模式下
137
+ binding.value[`isMoney`] && (screenEl.innerText = amountFormat(inputEl.value || ''))
138
+
139
+ }
140
+ //处理刷新页面赋值带有小数点后几位问题
141
+ // if (binding.value.precision) {
142
+ // let word_ = Number(inputEl.value).toFixed(binding.value.precision)
143
+ // el.children[el.children.length - 1].innerText = word_
144
+ // inputEl.value = Number(inputEl.value)
145
+ // }
146
+ }, 30)
147
+ }
148
+
149
+ export default {
150
+ bind: function (el, binding) {
151
+ // 绑定uuid
152
+ const inputEl = el.querySelectorAll('input')[0]
153
+ // 将input的type 类型设置为 Number
154
+ // inputEl && (inputEl.setAttribute('type', 'number'))
155
+ inputEl && inputEl.setAttribute('money-id', generateUUID())
156
+
157
+ if (binding.value[`isMoney`]) {
158
+ inputEl && inputEl.setAttribute('style', 'text-align:right;')
159
+ } else {
160
+ inputEl && inputEl.setAttribute('style', 'text-align:left;')
161
+ }
162
+
163
+ inputEl && inputEl.addEventListener('input', function () {
164
+ const curValue = el.querySelectorAll('input')[0].value
165
+ const screenEl = el.children[el.children.length - 1]
166
+ if (binding.value[`isMoney`]) {
167
+
168
+ screenEl.innerText = amountFormat(curValue || '')
169
+ }
170
+
171
+ })
172
+ },
173
+ unbind: function (el) {
174
+ el.removeEventListener('input', el.handler)
175
+ },
176
+
177
+ inserted(el, vDir) {
178
+
179
+ // 禁止input滚动事件
180
+ const ele = el.tagName === 'INPUT' ? el : el.querySelector('input')
181
+ // el.type = 'number'
182
+ ele && ele.addEventListener('mousewheel', () => {
183
+ ele.blur()
184
+ })
185
+
186
+ // 当为金额时,浮框显示三点一逗
187
+ if (vDir.value[`isMoney`]) {
188
+
189
+ el.querySelector('input').parentElement.style.userSelect = 'none';
190
+ const elDiv = document.createElement('div')
191
+ elDiv.className = 'input-after-amount-num'
192
+
193
+ // 添加金额class
194
+ el.classList.add('nstc-amount-num')
195
+
196
+ elDiv.innerText = ''
197
+ el.append(elDiv)
198
+
199
+ // 监听input聚焦事件
200
+ el.addEventListener('click', () => {
201
+ const inputEl = el.querySelectorAll('input')[0]
202
+ const disabledFlag = inputEl.getAttribute('disabled') === 'disabled'
203
+
204
+ if (!disabledFlag) {
205
+ el.classList.remove('nstc-amount-num-temp')
206
+ el.children[0].focus()
207
+
208
+ currentFocusUUID = el.querySelectorAll('input')[0].getAttribute('money-id')
209
+ //
210
+ }
211
+ //
212
+ // eslint-disable-next-line no-debugger
213
+ })
214
+ } else {
215
+ let inputEl = el.querySelectorAll('input')[0]
216
+ let curValue = inputEl.value
217
+ inputEl.value = curValue ? parseFloat(curValue).toFixed(vDir.value.precision || 0) : ""
218
+ }
219
+
220
+ // vDir.value 有指令的参数
221
+ if (JSON.stringify(vDir.value) === '{}') {
222
+ return null
223
+ }
224
+
225
+ let content
226
+ // 按键按下=>只允许输入 数字/小数点
227
+ el.addEventListener('keypress', event => {
228
+ let e = event || window.event
229
+ if (!Number(e.target.value) && e.target.value != 0) {
230
+ e.target.value = ''
231
+ return ''
232
+ }
233
+ if (!e.target.value) {
234
+ return null
235
+ }
236
+ let inputKey = String.fromCharCode(e.keyCode || e.charCode)
237
+ let re = /\d|\./
238
+ let reP = /\d|\.|-/
239
+ content = e.target.value
240
+
241
+ // 定义方法,阻止输入
242
+ function preventInput() {
243
+ if (e.preventDefault) {
244
+ e.preventDefault()
245
+ } else {
246
+ e.returnValue = false
247
+ }
248
+ }
249
+
250
+ // 判断最小值是不是负数
251
+ let arg_min = null
252
+ let preventFlag = null
253
+ if (vDir.value) {
254
+ arg_min = vDir.value.min
255
+ if (!NULL_ARR.includes(arg_min) && arg_min < 0) {
256
+ preventFlag = !reP.test(inputKey) && !e.ctrlKey
257
+ } else {
258
+ preventFlag = !re.test(inputKey) && !e.ctrlKey
259
+ }
260
+ }
261
+
262
+ if (preventFlag) {
263
+ preventInput()
264
+ } else if ((content.indexOf('.') > 0 && inputKey === '.') || (content.includes('-') && inputKey === '-')) {
265
+ // 已有小数点,再次输入小数点
266
+ preventInput()
267
+ }
268
+ })
269
+ // 按键弹起=>并限制最大最小, 最大长度
270
+ el.addEventListener('keyup', event => {
271
+ let e = event || window.event
272
+ if (!Number(e.target.value) && e.target.value != 0) {
273
+ e.target.value = ''
274
+ return ''
275
+ }
276
+ if (!e.target.value) {
277
+ return null
278
+ }
279
+ content = e.target.value
280
+ let inputKey = String.fromCharCode(e.keyCode || e.charCode)
281
+ // 判断是不是才输入的初始状态
282
+ vDir.value[`isMoney`] && (el.children[el.children.length - 1].innerText = amountFormat(content || ''))
283
+
284
+ if (!content) {
285
+ content = ''
286
+ }
287
+ let arg_max = ''
288
+ let arg_min = ''
289
+ let max = 9999999999999
290
+ if (vDir.value) {
291
+ arg_max = vDir.value.max
292
+ arg_min = vDir.value.min // 没用到
293
+ }
294
+ if (!arg_max || arg_max >= max) {
295
+ max = arg_max
296
+ }
297
+ if (arg_max && content > arg_max) {
298
+ e.target.value = arg_max
299
+ content = arg_max
300
+ }
301
+ let maxl = max.toString().length
302
+
303
+ // console.log('判断结果', Number(arg_min) < 0, inputKey === '½')
304
+
305
+ // 验证数字的最大长度
306
+ if (!NULL_ARR.includes(vDir.value[`isMoney`])) {
307
+
308
+ // 如果输入为负号, 不处理
309
+ // console.log('判断结果', Number(arg_min) < 0, currentInputValue)
310
+ if (Number(arg_min) < 0 && ['½', 'm', '\b', '-'].includes(inputKey)) {
311
+ return null
312
+ }
313
+ let numPart = e.target.value.split('.')
314
+ let intPart = numPart[0] || ''
315
+ let decimalPart = numPart[1] || ''
316
+ if (numPart.length === 1) {
317
+ try {
318
+ Number(arg_min) >= 0 ? (e.target.value = Math.abs(intPart.toString().slice(0, maxl))) : (e.target.value = intPart.toString().slice(0, maxl))
319
+ } catch {
320
+ e.target.value = intPart.toString().slice(0, maxl)
321
+ }
322
+
323
+ } else {
324
+ try {
325
+ Number(arg_min) >= 0 ? (e.target.value = Math.abs(intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2))) : (e.target.value = intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2))
326
+ } catch {
327
+ e.target.value = intPart.toString().slice(0, maxl) + '.' + decimalPart.slice(0, 2)
328
+ }
329
+
330
+ }
331
+ //同步修改vue v-model绑定值
332
+ e.target.dispatchEvent(new Event('input'));
333
+ // e.target.value = e.target.value
334
+
335
+ } else if (!NULL_ARR.includes(vDir.value.maxLength)) {
336
+ // console.log('验证数字的最大长度', vDir.value.maxLength, e.target.value)
337
+ if (!isNaN(Number(vDir.value.maxLength))) {
338
+ if (vDir.value.maxLength > maxl) {
339
+ e.target.value = e.target.value.toString().slice(0, maxl)
340
+ } else {
341
+ e.target.value = e.target.value.toString().slice(0, vDir.value.maxLength)
342
+ }
343
+
344
+ }
345
+ }
346
+ })
347
+ updateInput(el, vDir)
348
+ // 失去焦点=>保留指定位小数
349
+ el.addEventListener('focusout', event => { // 此处会在 el-input 的 @change 后执行
350
+
351
+ let e = event || window.event
352
+ let arg_precision = vDir.value.precision || 0 // 默认保留至整数
353
+
354
+ currentFocusUUID = ''
355
+ // 显示三点一抖的数字temp
356
+ if (!Number(e.target.value) && e.target.value != 0) {
357
+ e.target.value = ''
358
+ return ''
359
+ }
360
+ if (!e.target.value) {
361
+ return null
362
+ } else {
363
+ el.classList.add('nstc-amount-num-temp')
364
+ }
365
+ content = e.target.value
366
+ if (NULL_ARR.includes(content)) {
367
+ el.classList.add('nstc-amount-temp-transparent')
368
+ } else {
369
+ el.classList.remove('nstc-amount-temp-transparent')
370
+ }
371
+
372
+ if (!content) {
373
+ content = ''
374
+ }
375
+ let arg_min = ''
376
+ if (vDir.value) {
377
+ arg_min = vDir.value.min
378
+ }
379
+ if (!NULL_ARR.includes(arg_min) && content < arg_min) {
380
+ // 设置input的框的值
381
+ e.target.value = arg_min
382
+ content = arg_min
383
+
384
+ // 还原遮罩层
385
+ if (vDir.value[`isMoney`]) {
386
+ el.children[el.children.length - 1].innerText = amountFormat(content, arg_precision);
387
+
388
+ } else {
389
+ el.children[el.children.length - 1].innerText = content
390
+ }
391
+ }
392
+
393
+ if (vDir.value.precision) {
394
+
395
+ let word_ = !NULL_ARR.includes(content) && (Number(content).toFixed(arg_precision))
396
+ let after_ = word_.slice(-Number(arg_precision))
397
+ if (amountFormat(word_ || '', arg_precision).indexOf('.') !== -1) {
398
+ let index = amountFormat(word_ || '', arg_precision).indexOf('.')
399
+ let before_ = amountFormat(word_ || '', arg_precision).slice(0, index)
400
+ el.children[el.children.length - 1].innerText = `${before_}.${after_}`
401
+ }
402
+ e.target.value = Number(word_)
403
+ // e.target.dispatchEvent(new Event('input'));
404
+ }
405
+ if (!vDir.value[`isMoney`]) {
406
+ e.target.value = Number(e.target.value).toFixed(vDir.value.precision)
407
+ }
408
+ // !NULL_ARR.includes(content) && (e.target.value = Number(content))
409
+ // e.target.dispatchEvent(new Event('input'));
410
+ // updateInput(el, vDir)
411
+
412
+ //更新遮罩层
413
+ // e.target.dispatchEvent(new Event('input'));
414
+ // updateInput(el, vDir)
415
+ // -- callback写法1
416
+ // vNode.data.model.callback = ()=>{
417
+ // e.target.value = content.toFixed(arg_precision)
418
+ // }
419
+ // vNode.data.model.callback();
420
+ // -- callback 写法2
421
+ // vNode.data.model.callback(
422
+ // e.target.value = content.toFixed(arg_precision)
423
+ // )
424
+ })
425
+
426
+ // 当时去焦点时
427
+ el.addEventListener('blur', () => {
428
+
429
+ })
430
+
431
+ // 聚焦事件
432
+ el.addEventListener('focus', event => {
433
+ let e = event || window.event
434
+ if (!vDir.value[`isMoney`]) {
435
+ if (e.target.value !== '') {
436
+ e.target.value = Number(e.target.value)
437
+ }
438
+ }
439
+ }, true)
440
+ },
441
+ componentUpdated(el, binding, vnode, oldVnode) {
442
+ updateInput(el, binding, vnode, oldVnode)
443
+ },
444
+ update() {
445
+ }
446
+ }