n20-common-lib 1.3.9 → 1.3.12

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 (287) hide show
  1. package/nstc-g6/assets/svg/404.svg +1 -0
  2. package/nstc-g6/assets/svg/addFile.svg +32 -0
  3. package/nstc-g6/assets/svg/bug.svg +1 -0
  4. package/nstc-g6/assets/svg/chart.svg +1 -0
  5. package/nstc-g6/assets/svg/clipboard.svg +1 -0
  6. package/nstc-g6/assets/svg/component.svg +1 -0
  7. package/nstc-g6/assets/svg/dashboard.svg +1 -0
  8. package/nstc-g6/assets/svg/deleteFile.svg +28 -0
  9. package/nstc-g6/assets/svg/documentation.svg +1 -0
  10. package/nstc-g6/assets/svg/drag.svg +1 -0
  11. package/nstc-g6/assets/svg/edit.svg +1 -0
  12. package/nstc-g6/assets/svg/education.svg +1 -0
  13. package/nstc-g6/assets/svg/email.svg +1 -0
  14. package/nstc-g6/assets/svg/example.svg +1 -0
  15. package/nstc-g6/assets/svg/excel.svg +1 -0
  16. package/nstc-g6/assets/svg/exit-fullscreen.svg +1 -0
  17. package/nstc-g6/assets/svg/eye-open.svg +1 -0
  18. package/nstc-g6/assets/svg/eye.svg +1 -0
  19. package/nstc-g6/assets/svg/favorite.svg +1 -0
  20. package/nstc-g6/assets/svg/favorite_active.svg +1 -0
  21. package/nstc-g6/assets/svg/favorite_x400.svg +1 -0
  22. package/nstc-g6/assets/svg/favorite_x400_active.svg +1 -0
  23. package/nstc-g6/assets/svg/favorite_x400_blank.svg +1 -0
  24. package/nstc-g6/assets/svg/filter.svg +16 -0
  25. package/nstc-g6/assets/svg/filter@2x.png +0 -0
  26. package/nstc-g6/assets/svg/filterActive.svg +16 -0
  27. package/nstc-g6/assets/svg/filterClose@2x.png +0 -0
  28. package/nstc-g6/assets/svg/form.svg +1 -0
  29. package/nstc-g6/assets/svg/fullscreen.svg +1 -0
  30. package/nstc-g6/assets/svg/guide.svg +1 -0
  31. package/nstc-g6/assets/svg/hourglass.svg +19 -0
  32. package/nstc-g6/assets/svg/icon.svg +1 -0
  33. package/nstc-g6/assets/svg/international.svg +1 -0
  34. package/nstc-g6/assets/svg/language.svg +1 -0
  35. package/nstc-g6/assets/svg/left-dis.svg +1 -0
  36. package/nstc-g6/assets/svg/left.svg +1 -0
  37. package/nstc-g6/assets/svg/link.svg +1 -0
  38. package/nstc-g6/assets/svg/list.svg +1 -0
  39. package/nstc-g6/assets/svg/lock.svg +1 -0
  40. package/nstc-g6/assets/svg/message-t.svg +1 -0
  41. package/nstc-g6/assets/svg/money.svg +1 -0
  42. package/nstc-g6/assets/svg/money3.svg +1 -0
  43. package/nstc-g6/assets/svg/money4.svg +1 -0
  44. package/nstc-g6/assets/svg/moneyTwo.svg +1 -0
  45. package/nstc-g6/assets/svg/msg_white.svg +1 -0
  46. package/nstc-g6/assets/svg/nested.svg +1 -0
  47. package/nstc-g6/assets/svg/newsearch.svg +19 -0
  48. package/nstc-g6/assets/svg/password.svg +1 -0
  49. package/nstc-g6/assets/svg/pdf.svg +1 -0
  50. package/nstc-g6/assets/svg/people.svg +1 -0
  51. package/nstc-g6/assets/svg/peoples.svg +1 -0
  52. package/nstc-g6/assets/svg/phone.svg +1 -0
  53. package/nstc-g6/assets/svg/phone_msg.svg +1 -0
  54. package/nstc-g6/assets/svg/qq.svg +1 -0
  55. package/nstc-g6/assets/svg/right-dis.svg +1 -0
  56. package/nstc-g6/assets/svg/right.svg +1 -0
  57. package/nstc-g6/assets/svg/search.svg +1 -0
  58. package/nstc-g6/assets/svg/searchActive.svg +19 -0
  59. package/nstc-g6/assets/svg/shopping.svg +1 -0
  60. package/nstc-g6/assets/svg/size.svg +1 -0
  61. package/nstc-g6/assets/svg/skill.svg +1 -0
  62. package/nstc-g6/assets/svg/star.svg +1 -0
  63. package/nstc-g6/assets/svg/steam.svg +1 -0
  64. package/nstc-g6/assets/svg/tab.svg +1 -0
  65. package/nstc-g6/assets/svg/table.svg +1 -0
  66. package/nstc-g6/assets/svg/theme.svg +1 -0
  67. package/nstc-g6/assets/svg/tree-table.svg +1 -0
  68. package/nstc-g6/assets/svg/tree.svg +1 -0
  69. package/nstc-g6/assets/svg/user.svg +1 -0
  70. package/nstc-g6/assets/svg/wechat.svg +1 -0
  71. package/nstc-g6/assets/svg/z-left-2-dis.svg +1 -0
  72. package/nstc-g6/assets/svg/z-left-2.svg +1 -0
  73. package/nstc-g6/assets/svg/z-right-2-dis.svg +1 -0
  74. package/nstc-g6/assets/svg/z-right-2.svg +1 -0
  75. package/nstc-g6/assets/svg/z-right.svg +1 -0
  76. package/nstc-g6/assets/svg/zip.svg +1 -0
  77. package/nstc-g6/components/Calendar/index.js +8 -0
  78. package/nstc-g6/components/Calendar/src/basic/month-table.vue +129 -0
  79. package/nstc-g6/components/Calendar/src/basic/year-table.vue +126 -0
  80. package/nstc-g6/components/Calendar/src/main.vue +442 -0
  81. package/nstc-g6/components/DialogForm/index.js +8 -0
  82. package/nstc-g6/components/DialogForm/src/demo/index.vue +56 -0
  83. package/nstc-g6/components/DialogForm/src/main.vue +189 -0
  84. package/nstc-g6/components/Form/A_DEMO/component/originalForm.vue +281 -0
  85. package/nstc-g6/components/Form/A_DEMO/config/config_3.js +1222 -0
  86. package/nstc-g6/components/Form/A_DEMO/index.vue +803 -0
  87. package/nstc-g6/components/Form/AutocompleteCustom/index.vue +72 -0
  88. package/nstc-g6/components/Form/BusinessSpecific/InputMultiple.vue +191 -0
  89. package/nstc-g6/components/Form/BusinessSpecific/InputWithUnit.vue +128 -0
  90. package/nstc-g6/components/Form/BusinessSpecific/SelectTreeDialog.vue +233 -0
  91. package/nstc-g6/components/Form/BusinessSpecific/readme.md +7 -0
  92. package/nstc-g6/components/Form/CascaderCustom/index.vue +101 -0
  93. package/nstc-g6/components/Form/CheckboxCustom/index.vue +84 -0
  94. package/nstc-g6/components/Form/Component.vue +661 -0
  95. package/nstc-g6/components/Form/ComponentSecond.vue +650 -0
  96. package/nstc-g6/components/Form/DatepickerCustom/index.vue +130 -0
  97. package/nstc-g6/components/Form/InputAndDialog/index.js +15 -0
  98. package/nstc-g6/components/Form/InputAndDialog/src/main.vue +395 -0
  99. package/nstc-g6/components/Form/InputCustom/demo/index.vue +65 -0
  100. package/nstc-g6/components/Form/InputCustom/index.vue +307 -0
  101. package/nstc-g6/components/Form/IntervalinputCustom/demo/index.vue +31 -0
  102. package/nstc-g6/components/Form/IntervalinputCustom/index.vue +118 -0
  103. package/nstc-g6/components/Form/Item.vue +330 -0
  104. package/nstc-g6/components/Form/ItemSecond.vue +269 -0
  105. package/nstc-g6/components/Form/List.vue +146 -0
  106. package/nstc-g6/components/Form/ListSecond.vue +130 -0
  107. package/nstc-g6/components/Form/RadioCustom/index.vue +73 -0
  108. package/nstc-g6/components/Form/SelectAccount/index.js +15 -0
  109. package/nstc-g6/components/Form/SelectAccount/src/demo/index.vue +58 -0
  110. package/nstc-g6/components/Form/SelectAccount/src/main.vue +283 -0
  111. package/nstc-g6/components/Form/SelectAndDialog/index.js +15 -0
  112. package/nstc-g6/components/Form/SelectAndDialog/src/main.vue +384 -0
  113. package/nstc-g6/components/Form/SelectCashFlow/index.js +15 -0
  114. package/nstc-g6/components/Form/SelectCashFlow/src/demo/index.vue +42 -0
  115. package/nstc-g6/components/Form/SelectCashFlow/src/main.vue +126 -0
  116. package/nstc-g6/components/Form/SelectCustom/demo/index.vue +82 -0
  117. package/nstc-g6/components/Form/SelectCustom/index.vue +488 -0
  118. package/nstc-g6/components/Form/SelectSubject/index.js +15 -0
  119. package/nstc-g6/components/Form/SelectSubject/src/demo/index.vue +85 -0
  120. package/nstc-g6/components/Form/SelectSubject/src/main.vue +182 -0
  121. package/nstc-g6/components/Form/SelectindialogCustom/demo/index.vue +188 -0
  122. package/nstc-g6/components/Form/SelectindialogCustom/index.vue +650 -0
  123. package/nstc-g6/components/Form/SelectindialogCustom/install.js +7 -0
  124. package/nstc-g6/components/Form/TableRadioCustom/demo/index.vue +53 -0
  125. package/nstc-g6/components/Form/TableRadioCustom/index.vue +183 -0
  126. package/nstc-g6/components/Form/TextCustom/index.vue +38 -0
  127. package/nstc-g6/components/Form/UploadCustom/demo/index.vue +31 -0
  128. package/nstc-g6/components/Form/UploadCustom/iconxitongshezhi-yichu.png +0 -0
  129. package/nstc-g6/components/Form/UploadCustom/index.vue +506 -0
  130. package/nstc-g6/components/Form/configs.js +191 -0
  131. package/nstc-g6/components/Form/configsSecond.js +161 -0
  132. package/nstc-g6/components/Form/index.js +8 -0
  133. package/nstc-g6/components/Form/index.scss +29 -0
  134. package/nstc-g6/components/Form/payeePersonSelect/index.js +15 -0
  135. package/nstc-g6/components/Form/payeePersonSelect/src/demo/index.vue +164 -0
  136. package/nstc-g6/components/Form/payeePersonSelect/src/main.vue +185 -0
  137. package/nstc-g6/components/Form/readme.txt +4 -0
  138. package/nstc-g6/components/FormGroup/index.js +8 -0
  139. package/nstc-g6/components/FormGroup/src/demo/config.js +23 -0
  140. package/nstc-g6/components/FormGroup/src/demo/index.vue +85 -0
  141. package/nstc-g6/components/FormGroup/src/main.vue +639 -0
  142. package/nstc-g6/components/FormGroup/src/validate.js +23 -0
  143. package/nstc-g6/components/InputTag/InputTag.vue +270 -0
  144. package/nstc-g6/components/NstcApprovel/NstcApprovel.vue +24 -0
  145. package/nstc-g6/components/NstcBackToTop/NstcBackToTop.vue +150 -0
  146. package/nstc-g6/components/NstcBranchLazyLoad/NstcBranchLazyLoad.vue +123 -0
  147. package/nstc-g6/components/NstcCharts/NstcCharts.vue +162 -0
  148. package/nstc-g6/components/NstcCharts/define.js +74 -0
  149. package/nstc-g6/components/NstcCharts/mixins/resize.js +56 -0
  150. package/nstc-g6/components/NstcConfirm/NstcConfirm.vue +152 -0
  151. package/nstc-g6/components/NstcConfirm/index.js +25 -0
  152. package/nstc-g6/components/NstcDialog/NstcDialog.vue +185 -0
  153. package/nstc-g6/components/NstcDialogForm/NstcDialogForm.vue +176 -0
  154. package/nstc-g6/components/NstcDialogTable/NstcDialogTable.vue +280 -0
  155. package/nstc-g6/components/NstcDropdown/NstcDropdown.vue +52 -0
  156. package/nstc-g6/components/NstcDropdownTree/NstcDropdownTree.vue +396 -0
  157. package/nstc-g6/components/NstcElectronicFile/NstcElectronicFile.vue +591 -0
  158. package/nstc-g6/components/NstcExcelCustomImport/NstcExcelCustomImport.vue +475 -0
  159. package/nstc-g6/components/NstcExcelCustomImport/img/upload@2x.png +0 -0
  160. package/nstc-g6/components/NstcExcelExport/NstcExcelExport.vue +145 -0
  161. package/nstc-g6/components/NstcExcelImport/NstcExcelImport.vue +1074 -0
  162. package/nstc-g6/components/NstcExcelImport/img/upload@2x.png +0 -0
  163. package/nstc-g6/components/NstcExcelImportN/NstcExcelImportN.vue +1166 -0
  164. package/nstc-g6/components/NstcExpandCollapse/NstcExpandCollapse.vue +130 -0
  165. package/nstc-g6/components/NstcExpandCollapse/index.scss +77 -0
  166. package/nstc-g6/components/NstcFileUpload/NstcFileUpload.vue +989 -0
  167. package/nstc-g6/components/NstcFileUpload/img/addFile.svg +32 -0
  168. package/nstc-g6/components/NstcFileUpload/img/delete.svg +24 -0
  169. package/nstc-g6/components/NstcFileUpload/img/deleteFile.svg +28 -0
  170. package/nstc-g6/components/NstcFileUpload/img/download.svg +24 -0
  171. package/nstc-g6/components/NstcFileUpload/img/inputUpload.svg +30 -0
  172. package/nstc-g6/components/NstcFileUpload/img/look-diabled.svg +24 -0
  173. package/nstc-g6/components/NstcFileUpload/img/look.svg +24 -0
  174. package/nstc-g6/components/NstcForm/A_DEMO/component/originalForm.vue +281 -0
  175. package/nstc-g6/components/NstcForm/A_DEMO/config/config_3.js +1222 -0
  176. package/nstc-g6/components/NstcForm/A_DEMO/index.vue +796 -0
  177. package/nstc-g6/components/NstcForm/AutocompleteCustom/index.vue +68 -0
  178. package/nstc-g6/components/NstcForm/BusinessSpecific/InputMultiple.vue +189 -0
  179. package/nstc-g6/components/NstcForm/BusinessSpecific/InputWithUnit.vue +128 -0
  180. package/nstc-g6/components/NstcForm/BusinessSpecific/SelectTreeDialog.vue +233 -0
  181. package/nstc-g6/components/NstcForm/BusinessSpecific/readme.md +7 -0
  182. package/nstc-g6/components/NstcForm/CascaderCustom/index.vue +101 -0
  183. package/nstc-g6/components/NstcForm/CheckboxCustom/index.vue +84 -0
  184. package/nstc-g6/components/NstcForm/Component.vue +684 -0
  185. package/nstc-g6/components/NstcForm/ComponentSecond.vue +650 -0
  186. package/nstc-g6/components/NstcForm/DatepickerCustom/index.vue +130 -0
  187. package/nstc-g6/components/NstcForm/InputAndDialog/NstcInputAndDialog.vue +389 -0
  188. package/nstc-g6/components/NstcForm/InputCustom/index.vue +314 -0
  189. package/nstc-g6/components/NstcForm/IntervalInputCustom/index.vue +116 -0
  190. package/nstc-g6/components/NstcForm/Item.vue +327 -0
  191. package/nstc-g6/components/NstcForm/ItemSecond.vue +269 -0
  192. package/nstc-g6/components/NstcForm/List.vue +146 -0
  193. package/nstc-g6/components/NstcForm/ListSecond.vue +130 -0
  194. package/nstc-g6/components/NstcForm/RadioCustom/index.vue +73 -0
  195. package/nstc-g6/components/NstcForm/SelectAccount/NstcSelectAccount.vue +334 -0
  196. package/nstc-g6/components/NstcForm/SelectAndDialog/NstcSelectAndDialog.vue +377 -0
  197. package/nstc-g6/components/NstcForm/SelectCashFlow/NstcSelectCashFlow.vue +123 -0
  198. package/nstc-g6/components/NstcForm/SelectCustom/index.vue +460 -0
  199. package/nstc-g6/components/NstcForm/SelectSubject/NstcSelectSubject.vue +185 -0
  200. package/nstc-g6/components/NstcForm/SelectindialogCustom/index.vue +648 -0
  201. package/nstc-g6/components/NstcForm/TableRadioCustom/index.vue +183 -0
  202. package/nstc-g6/components/NstcForm/TextCustom/index.vue +38 -0
  203. package/nstc-g6/components/NstcForm/UploadCustom/iconxitongshezhi-yichu.png +0 -0
  204. package/nstc-g6/components/NstcForm/UploadCustom/index.vue +500 -0
  205. package/nstc-g6/components/NstcForm/configs.js +191 -0
  206. package/nstc-g6/components/NstcForm/configsSecond.js +161 -0
  207. package/nstc-g6/components/NstcForm/index.js +8 -0
  208. package/nstc-g6/components/NstcForm/index.scss +29 -0
  209. package/nstc-g6/components/NstcForm/payeePersonSelect/NstcPayeePerson.vue +188 -0
  210. package/nstc-g6/components/NstcForm/readme.txt +4 -0
  211. package/nstc-g6/components/NstcPagination/NstcPagination.vue +428 -0
  212. package/nstc-g6/components/NstcPagination/setPageNum.png +0 -0
  213. package/nstc-g6/components/NstcPagination/setpagedefault.png +0 -0
  214. package/nstc-g6/components/NstcScreenFull/NstcScreenFull.vue +70 -0
  215. package/nstc-g6/components/NstcSelectTree/NstcSelectTree.vue +729 -0
  216. package/nstc-g6/components/NstcSelectTreeList/NstcSelectTreeList.vue +676 -0
  217. package/nstc-g6/components/NstcSticky/NstcSticky.vue +97 -0
  218. package/nstc-g6/components/NstcSvgIcon/NstcSvgIcon.vue +72 -0
  219. package/nstc-g6/components/NstcTab/NstcTab.vue +80 -0
  220. package/nstc-g6/components/NstcTabWithBadge/NstcTabWithBadge.vue +45 -0
  221. package/nstc-g6/components/NstcTabWithBadge/index.scss +31 -0
  222. package/nstc-g6/components/NstcTable/ElTableColumnCustom/index.vue +292 -0
  223. package/nstc-g6/components/NstcTable/NstcTable.vue +460 -0
  224. package/nstc-g6/components/NstcTableSet/NstcTableSet.vue +801 -0
  225. package/nstc-g6/components/NstcThemePicker/NstcThemePicker.vue +186 -0
  226. package/nstc-g6/components/NstcUploadCustomExcel/NstcUploadCustomExcel.vue +330 -0
  227. package/nstc-g6/components/NstcUploadExcel/NstcUploadExcel.vue +145 -0
  228. package/nstc-g6/components/NstcWorkBench/NstcWorkBench.vue +176 -0
  229. package/nstc-g6/components/Search/NstcSearch.vue +583 -0
  230. package/nstc-g6/components/Search/src/demo/index copy.vue +101 -0
  231. package/nstc-g6/components/Search/src/demo/index.vue +103 -0
  232. package/nstc-g6/components/Search/src/main copy.vue +607 -0
  233. package/nstc-g6/components/approvelTwo/main.vue +220 -0
  234. package/nstc-g6/components/approvelTwo/progress.vue +154 -0
  235. package/nstc-g6/directives/VCopy/index.js +60 -0
  236. package/nstc-g6/directives/VNstcNumber/index.js +14 -0
  237. package/nstc-g6/directives/VNstcNumber/temp.js +446 -0
  238. package/nstc-g6/index.js +193 -0
  239. package/nstc-g6/utils/auth.js +2 -0
  240. package/nstc-g6/utils/axios.js +2 -0
  241. package/nstc-g6/utils/dateAndValidator.js +649 -0
  242. package/nstc-g6/utils/debounce.js +40 -0
  243. package/nstc-g6/utils/parseTime.js +48 -0
  244. package/nstc-g6/utils/validate/index.js +7 -0
  245. package/nstc-g6/utils/vendor/Export2Excel.js +229 -0
  246. package/nstc-g6/utils/vendor/Export2Zip.js +24 -0
  247. package/nstc-g6/utils/vue-bus.js +5 -0
  248. package/package.json +9 -2
  249. package/src/assets/css/_coreLib.scss +9 -1
  250. package/src/assets/css/element-variables.scss +1 -1
  251. package/src/components/ChildRange/index.vue +2 -37
  252. package/src/components/ChildRange/style.scss +34 -0
  253. package/src/components/FileImport/index.vue +3 -1
  254. package/src/components/PageHeader/index.vue +2 -44
  255. package/src/components/PageHeader/style.scss +39 -0
  256. package/src/components/Search/index.vue +1 -97
  257. package/src/components/Search/style.scss +93 -0
  258. package/src/components/Table/ThSelectHeader.vue +2 -11
  259. package/src/components/Table/index.vue +4 -2
  260. package/src/directives/VTitle/index.js +14 -17
  261. package/style/css/normalize.scss +6 -6
  262. package/style/index.css +3 -3
  263. package/style/index.css.map +1 -1
  264. package/style/server-config.jsonc +527 -410
  265. package/treme/blue.css +3 -0
  266. package/treme/blue.umd.min.js +1 -0
  267. package/treme/css/normalize.scss +726 -0
  268. package/treme/fonts/element-icons.535877f5.woff +0 -0
  269. package/treme/fonts/element-icons.732389de.ttf +0 -0
  270. package/treme/fonts/iconfont.022f36c4.woff2 +0 -0
  271. package/treme/fonts/iconfont.4a1b2c93.woff +0 -0
  272. package/treme/fonts/iconfont.a9febaa2.ttf +0 -0
  273. package/treme/green.css +3 -0
  274. package/treme/green.umd.min.js +1 -0
  275. package/treme/lightBlue.css +3 -0
  276. package/treme/lightBlue.umd.min.js +1 -0
  277. package/treme/orange.css +3 -0
  278. package/treme/orange.umd.min.js +1 -0
  279. package/treme/pageDemo/demo-1.vue +131 -0
  280. package/treme/pageDemo/demo-2.vue +35 -0
  281. package/treme/pageDemo/demo-3.vue +22 -0
  282. package/treme/pageDemo/seeCode.js +20 -0
  283. package/treme/red.css +3 -0
  284. package/treme/red.umd.min.js +1 -0
  285. package/treme/server-config.jsonc +723 -0
  286. package/treme/yellow.css +3 -0
  287. package/treme/yellow.umd.min.js +1 -0
@@ -0,0 +1,146 @@
1
+ <template>
2
+ <div class="form-base-wrapper">
3
+ <template v-for="(item, idx) in config">
4
+ <template v-if="Array.isArray(item)">
5
+ <div
6
+ :key="'inlineItem' + idx"
7
+ class="form-group"
8
+ >
9
+ <template v-for="(iItem, index) in item">
10
+ <BaseItem
11
+ v-if="iItem.renderable !== false"
12
+
13
+ :key="iItem.mold + '-' + (iItem.prop ? iItem.prop : (idx + '-' + index))"
14
+
15
+ v-model="value"
16
+ :formData="formData"
17
+
18
+ :class="[
19
+ 'form-item',
20
+ `form-item-${iItem.mold}`,
21
+ {
22
+ 'form-item-link': iItem.link && ((Array.isArray(iItem.link) && iItem.link.some(link => link.mold)) || iItem.link.mold)
23
+ },
24
+ `form-item-${iItem.mold}-${iItem.prop ? iItem.prop : idx + '-' + index}`
25
+ ]"
26
+
27
+ :popper-class="popperClass"
28
+
29
+ :item="iItem"
30
+ :resets.sync="resets"
31
+ :disableds="disableds"
32
+
33
+ :loading="loading"
34
+ :show-mode="showMode"
35
+
36
+ @after-leave="val => $emit('after-leave', val)"
37
+ @query-click="$emit('query-click')"
38
+ @add-click="$emit('add-click')"
39
+ @other-click="$emit('other-click')"
40
+ @enter-click="$emit('enter-click')"
41
+ @tree-node-click="(data, node) => $emit('tree-node-click', iItem.queryKey, data, node)"
42
+ />
43
+ </template>
44
+ </div>
45
+ </template>
46
+
47
+ <template v-else>
48
+ <BaseItem
49
+ v-if="item.renderable !== false"
50
+
51
+ :key="item.mold + '-' + (item.prop ? item.prop : idx)"
52
+
53
+ v-model="value"
54
+ :formData="formData"
55
+
56
+ :class="[
57
+ 'form-item',
58
+ `form-item-${item.mold}`,
59
+ {
60
+ 'form-item-link': item.link && ((Array.isArray(item.link) && item.link.some(link => link.mold)) || item.link.mold)
61
+ },
62
+ `form-item-${item.mold}-${item.prop ? item.prop : idx}`
63
+ ]"
64
+
65
+ :popper-class="popperClass"
66
+
67
+ :item="item"
68
+ :resets.sync="resets"
69
+ :disableds="disableds"
70
+
71
+ :loading="loading"
72
+
73
+ :from="from"
74
+ :show-mode="showMode"
75
+
76
+ @after-leave="val => $emit('after-leave', val)"
77
+ @query-click="$emit('query-click')"
78
+ @add-click="$emit('add-click')"
79
+ @other-click="$emit('other-click')"
80
+ @enter-click="$emit('enter-click')"
81
+ @tree-node-click="(data, node) => $emit('tree-node-click', iItem.queryKey, data, node)"
82
+ />
83
+ </template>
84
+ </template>
85
+ </div>
86
+ </template>
87
+
88
+ <script>
89
+
90
+ import BaseItem from './Item'
91
+
92
+ export default {
93
+ name: 'FormCustomBaseList',
94
+
95
+ components: {
96
+ BaseItem
97
+ },
98
+
99
+ inheritAttrs: false,
100
+
101
+ props: {
102
+ formData: {
103
+ type: Object,
104
+ default: () => ({})
105
+ },
106
+ from: {
107
+ type: String,
108
+ default: null,
109
+ },
110
+ config: {
111
+ type: Array,
112
+ default: () => ([])
113
+ },
114
+
115
+ loading: {
116
+ default: false,
117
+ type: Boolean
118
+ },
119
+ popperClass: {
120
+ type: String,
121
+ default: ''
122
+ },
123
+
124
+ resets: {
125
+ default: () => ({}),
126
+ type: Object
127
+ },
128
+
129
+ disableds: {
130
+ default: () => ({}),
131
+ type: Object
132
+ },
133
+
134
+ value: {
135
+ default: () => ({}),
136
+ type: Object
137
+ },
138
+
139
+ // 显示模式
140
+ showMode: {
141
+ type: String,
142
+ default: ''
143
+ }
144
+ },
145
+ }
146
+ </script>
@@ -0,0 +1,130 @@
1
+ <template>
2
+ <div class="form-base-wrapper">
3
+ <template v-for="(item, idx) in config">
4
+ <template v-if="Array.isArray(item)">
5
+ <div
6
+ :key="'inlineItem' + idx"
7
+ class="form-group"
8
+ >
9
+ <template v-for="(iItem, index) in item">
10
+ <BaseItem
11
+ v-if="iItem.renderable !== false"
12
+
13
+ :key="iItem.mold + '-' + (iItem.prop ? iItem.prop : (idx + '-' + index))"
14
+
15
+ v-model="value"
16
+
17
+ :class="[
18
+ 'form-item',
19
+ `form-item-${iItem.mold}`,
20
+ {
21
+ 'form-item-link': iItem.link && ((Array.isArray(iItem.link) && iItem.link.some(link => link.mold)) || iItem.link.mold)
22
+ },
23
+ `form-item-${iItem.mold}-${iItem.prop ? iItem.prop : idx + '-' + index}`
24
+ ]"
25
+
26
+ :popper-class="popperClass"
27
+
28
+ :item="iItem"
29
+ :resets.sync="resets"
30
+ :disableds="disableds"
31
+
32
+ :loading="loading"
33
+
34
+ @after-leave="val => $emit('after-leave', val)"
35
+ @query-click="$emit('query-click')"
36
+ @add-click="$emit('add-click')"
37
+ @other-click="$emit('other-click')"
38
+ @enter-click="$emit('enter-click')"
39
+ />
40
+ </template>
41
+ </div>
42
+ </template>
43
+
44
+ <template v-else>
45
+ <BaseItem
46
+ v-if="item.renderable !== false"
47
+
48
+ :key="item.mold + '-' + (item.prop ? item.prop : idx)"
49
+
50
+ v-model="value"
51
+
52
+ :class="[
53
+ 'form-item',
54
+ `form-item-${item.mold}`,
55
+ {
56
+ 'form-item-link': item.link && ((Array.isArray(item.link) && item.link.some(link => link.mold)) || item.link.mold)
57
+ },
58
+ `form-item-${item.mold}-${item.prop ? item.prop : idx}`
59
+ ]"
60
+
61
+ :popper-class="popperClass"
62
+
63
+ :item="item"
64
+ :resets.sync="resets"
65
+ :disableds="disableds"
66
+
67
+ :loading="loading"
68
+
69
+ :from="from"
70
+
71
+ @after-leave="val => $emit('after-leave', val)"
72
+ @query-click="$emit('query-click')"
73
+ @add-click="$emit('add-click')"
74
+ @other-click="$emit('other-click')"
75
+ @enter-click="$emit('enter-click')"
76
+ />
77
+ </template>
78
+ </template>
79
+ </div>
80
+ </template>
81
+
82
+ <script>
83
+
84
+ import BaseItem from './ItemSecond'
85
+
86
+ export default {
87
+ name: 'FormCustomBaseList',
88
+
89
+ components: {
90
+ BaseItem
91
+ },
92
+
93
+ inheritAttrs: false,
94
+
95
+ props: {
96
+ from: {
97
+ type: String,
98
+ default: null,
99
+ },
100
+ config: {
101
+ type: Array,
102
+ default: () => ([])
103
+ },
104
+
105
+ loading: {
106
+ default: false,
107
+ type: Boolean
108
+ },
109
+ popperClass: {
110
+ type: String,
111
+ default: ''
112
+ },
113
+
114
+ resets: {
115
+ default: () => ({}),
116
+ type: Object
117
+ },
118
+
119
+ disableds: {
120
+ default: () => ({}),
121
+ type: Object
122
+ },
123
+
124
+ value: {
125
+ default: () => ({}),
126
+ type: Object
127
+ }
128
+ }
129
+ }
130
+ </script>
@@ -0,0 +1,73 @@
1
+ <template>
2
+ <el-radio-group
3
+ v-model="_value"
4
+ v-bind="$attrs"
5
+ :style="{width:parseFloat(width) + 'px'}"
6
+ v-on="$listeners"
7
+ >
8
+ <template v-for="item in options">
9
+ <el-radio-button
10
+ v-if="type === 'button'"
11
+ :key="item.value"
12
+ :label="item.value"
13
+ :disabled="item.disabled"
14
+ >
15
+ {{ item.label }}
16
+ </el-radio-button>
17
+ <el-radio
18
+ v-else
19
+ :key="item.value"
20
+ :label="item.value"
21
+ :disabled="item.disabled"
22
+ :border="type === 'border'"
23
+ >
24
+ {{ item.label }}
25
+ </el-radio>
26
+ </template>
27
+ </el-radio-group>
28
+ </template>
29
+
30
+ <script>
31
+ export default {
32
+ name: 'RadioCustom',
33
+
34
+ props: {
35
+ value: {
36
+ type: [Boolean, String, Number, Array],
37
+ default: null
38
+ },
39
+
40
+ type: {
41
+ default: 'normal',
42
+ validator: function(val) {
43
+ return ['normal', 'border', 'button'].includes(val)
44
+ }
45
+ },
46
+
47
+ width: {
48
+ type: [String, Number],
49
+ default: ''
50
+ },
51
+
52
+ options: {
53
+ type: Array,
54
+ default: () => []
55
+ }
56
+ },
57
+
58
+ computed: {
59
+ _value: {
60
+ get() {
61
+ return this.value
62
+ },
63
+ set(val) {
64
+ this.$emit('input', val)
65
+ }
66
+ }
67
+ }
68
+ }
69
+ </script>
70
+
71
+ <style scoped>
72
+
73
+ </style>
@@ -0,0 +1,334 @@
1
+ <!--
2
+ * @Author: your name
3
+ * @Date: 2022-01-13 11:06:47
4
+ * @LastEditTime: 2022-02-21 14:24:07
5
+ * @LastEditors: Please set LastEditors
6
+ * @Description: 选择账户
7
+ * @FilePath: NstcSelectCashFlow.vue
8
+ -->
9
+ <template>
10
+ <SelectAndDialog
11
+ ref="select"
12
+ v-model="_value"
13
+ v-bind="bindProps"
14
+ :lazy-load="true"
15
+ :table-form="formSearch"
16
+ :format-data="formatData"
17
+ :format-params="formatParams"
18
+ @show-dialog="onShowDialog"
19
+ @comfirm="selectOption"
20
+ >
21
+ <div class="form-wrap">
22
+ <el-form inline :model="formSearch" :label-width="labelWidth">
23
+ <el-row>
24
+ <el-col :span="8">
25
+ <el-form-item :label="chMapper.accountAgencyLabel">
26
+ <el-select
27
+ v-model="formSearch.brNo"
28
+ class="input-w"
29
+ :placeholder="chMapper.plcSelect"
30
+ filterable
31
+ clearable
32
+ :disabled="queryConf.defaultParam.diabledValue ? true : false"
33
+ >
34
+ <el-option
35
+ v-for="item in agencyOptionsArr"
36
+ :key="item.orgNo"
37
+ :label="item.orgName"
38
+ :value="item.orgNo"
39
+ />
40
+ </el-select>
41
+ </el-form-item>
42
+ </el-col>
43
+ <el-col :span="8">
44
+ <el-form-item :label="chMapper.accountLabel">
45
+ <el-input
46
+ v-model="formSearch.accountNo"
47
+ :placeholder="chMapper.plcInput"
48
+ maxlength="64"
49
+ clearable
50
+ />
51
+ </el-form-item>
52
+ </el-col>
53
+ </el-row>
54
+ <el-row>
55
+ <el-col :span="20">
56
+ <el-form-item :label="chMapper.accountNameLabel">
57
+ <el-input
58
+ v-model="formSearch.accountName"
59
+ :placeholder="chMapper.plcInput"
60
+ maxlength="64"
61
+ clearable
62
+ />
63
+ </el-form-item>
64
+ </el-col>
65
+ <el-col :span="4">
66
+ <div class="search-btn">
67
+ <el-button
68
+ type="primary"
69
+ class="nstc-g6-common-btn-1"
70
+ @click="searchClick"
71
+ >查询</el-button
72
+ >
73
+ <el-button
74
+ class="nstc-g6-common-btn-3"
75
+ style="margin-left: 8px"
76
+ @click="queryReset"
77
+ >重置</el-button
78
+ >
79
+ </div>
80
+ </el-col>
81
+ </el-row>
82
+ </el-form>
83
+ </div>
84
+ </SelectAndDialog>
85
+ </template>
86
+
87
+ <script>
88
+ import axios from '../../../../src/utils/axios'
89
+ import SelectAndDialog from '../SelectAndDialog/NstcSelectAndDialog.vue'
90
+ export default {
91
+ name: 'NstcSelectAccount',
92
+ components: { SelectAndDialog },
93
+ props: {
94
+ value: String,
95
+ queryConf: {
96
+ type: Object,
97
+ default: () => {}
98
+ },
99
+ agencyOptionsConf: {
100
+ type: Object,
101
+ default: () => {}
102
+ },
103
+ filterData: {
104
+ type: Function,
105
+ default: (d) => d
106
+ },
107
+ valueKey: {
108
+ type: String,
109
+ default: 'accountNo'
110
+ },
111
+ labelKey: {
112
+ type: String,
113
+ default: 'accountNo'
114
+ },
115
+ rowKey: {
116
+ type: String,
117
+ default: 'accountId'
118
+ },
119
+ optionKey: {
120
+ type: String,
121
+ default: 'subjectNo'
122
+ },
123
+ labelWidth: {
124
+ type: String,
125
+ default: '80px'
126
+ },
127
+ chMapper: {
128
+ type: Object,
129
+ default: () => ({
130
+ title: '选择账号',
131
+ plcInput: '请输入',
132
+ plcSelect: '请输入或选择',
133
+ noselectmsg: '请选择账号',
134
+ accountAgencyLabel: '开户机构',
135
+ accountLabel: '账号',
136
+ accountNameLabel: '账户名',
137
+ accountNameTableLabel: '户名'
138
+ })
139
+ },
140
+
141
+ // 重新查询下拉数据
142
+ requery: {
143
+ default: false,
144
+ type: Boolean
145
+ }
146
+ },
147
+ data() {
148
+ return {
149
+ formSearch: {
150
+ brNo: '',
151
+ accountNo: '',
152
+ accountName: ''
153
+ },
154
+ showDialog: false,
155
+ inputHovering: false,
156
+ columns: [],
157
+ options: [],
158
+ remoteQuery: '',
159
+ searchObj: {
160
+ brNo: '',
161
+ accountNo: '',
162
+ accountName: ''
163
+ },
164
+ bindProps: {},
165
+ agencyOptionsArr: []
166
+ }
167
+ },
168
+ computed: {
169
+ _value: {
170
+ set(val) {
171
+ this.$emit('input', val)
172
+ },
173
+ get() {
174
+ return this.value
175
+ }
176
+ }
177
+ },
178
+
179
+ watch: {
180
+ // requery(val) {
181
+ // if (val) {
182
+ // this.$refs.select.queryAllData();
183
+ // }
184
+ // },
185
+ // 'queryConf.defaultParam':{
186
+ // handler:function(data) {
187
+ // console.log(data,'------------')
188
+ // this.$refs.select.queryAllData();
189
+ // },
190
+ // deep:true
191
+ // }
192
+ },
193
+
194
+ created() {
195
+ let url = '/api/nstc-tss/1.0/settle/account/list'
196
+ let props = {
197
+ columns: [
198
+ {
199
+ prop: 'accountNo',
200
+ label: this.chMapper.accountLabel,
201
+ align: 'center'
202
+ },
203
+ {
204
+ prop: 'accountName',
205
+ label: this.chMapper.accountNameTableLabel,
206
+ align: 'center'
207
+ },
208
+ {
209
+ prop: 'brName',
210
+ label: this.chMapper.accountAgencyLabel,
211
+ align: 'center'
212
+ }
213
+ ],
214
+ url: this.queryConf.url || url,
215
+ params: this.queryConf.defaultParam || {},
216
+ httpMethod: this.queryConf.httpMethod || 'POST',
217
+ rowKey: this.rowKey,
218
+ valueKey: this.valueKey,
219
+ labelKey: this.labelKey,
220
+ chMapper: this.chMapper
221
+ }
222
+ this.bindProps = props
223
+ },
224
+
225
+ methods: {
226
+ async agencyOptions() {
227
+ let defaultParam = this.agencyOptionsConf.defaultParam
228
+ let res = await this.queryOptionsApi(defaultParam)
229
+ this.agencyOptionsArr = res
230
+ },
231
+
232
+ queryOptionsApi(param) {
233
+ const { url, method } = this.agencyOptionsConf
234
+ let body = method === 'POST' ? 'data' : 'params'
235
+ let reqConf = { url, method }
236
+ reqConf[body] = param
237
+ return axios(reqConf)
238
+ },
239
+
240
+ // formatParams(pageParam) {
241
+ // const { size, current } = pageParam;
242
+ // let defaultParam = this.quryMergeConf.defaultParam;
243
+ // let param = this.searchObj;
244
+ // let page = { "pageSize": size, "pageNo": current };
245
+ // if (this.queryConf.method == "POST") {
246
+ // page = { page: { size, current } };
247
+ // }
248
+ // return { ...param,...defaultParam, ...page };
249
+ // },
250
+ formatParams(params) {
251
+ console.log(params, '----------params')
252
+ let size = 20
253
+ let current = 1
254
+ if (params['page.size']) {
255
+ size = params['page.size']
256
+ current = params['page.current']
257
+ }
258
+ if (params.page && params.page.size) {
259
+ size = params.page.size
260
+ current = params.page.current
261
+ }
262
+ let page = { pageSize: size, pageNo: current }
263
+ if (params.diabledValue && !params.brNo) {
264
+ params.brNo = params.diabledValue
265
+ }
266
+ return { ...params, ...page }
267
+ },
268
+
269
+ formatData(res) {
270
+ let data = [],
271
+ total = 0
272
+ if (res && !res.total && Array.isArray(res)) {
273
+ data = res
274
+ total = res.length
275
+ } else if (res && res.total && res.list) {
276
+ data = res.list || []
277
+ total = res.total
278
+ }
279
+ return this.filterData({ data, total })
280
+ },
281
+
282
+ searchBtnClick(event) {
283
+ this.queryReset()
284
+ this.showDialog = true
285
+ this.$nextTick(() => {
286
+ this.searchClick()
287
+ })
288
+ },
289
+
290
+ // searchClick() {
291
+ // let formSearch = this.formSearch
292
+ // this.searchObj = JSON.parse(JSON.stringify(formSearch));
293
+ // this.$refs.dialog.queryData("searchbtn");
294
+ // },
295
+
296
+ onShowDialog() {
297
+ this.queryReset()
298
+ this.agencyOptions()
299
+ },
300
+
301
+ searchClick() {
302
+ this.$refs.select.queryTableData()
303
+ },
304
+
305
+ // 返回选中对象
306
+ selectOption(values, opt) {
307
+ if (this.$attrs.selectOpt) {
308
+ this.$emit('confirm', opt)
309
+ this.$attrs.selectOpt['item'] = opt
310
+ }
311
+ },
312
+
313
+ queryReset() {
314
+ this.formSearch = {
315
+ brNo: this.queryConf.defaultParam.diabledValue,
316
+ accountNo: '',
317
+ accountName: ''
318
+ }
319
+ }
320
+ }
321
+ }
322
+ </script>
323
+
324
+ <style lang="scss" scoped>
325
+ .search-btn {
326
+ color: #c0c4cc;
327
+ position: absolute;
328
+ right: 5px;
329
+ top: 0px;
330
+ }
331
+ .form-wrap ::v-deep .el-input__suffix-inner .el-input__icon {
332
+ line-height: 32px;
333
+ }
334
+ </style>