n20-common-lib 1.3.10 → 1.3.11

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 (262) 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 +8 -2
  249. package/src/assets/css/_coreLib.scss +9 -1
  250. package/src/components/ChildRange/index.vue +2 -37
  251. package/src/components/ChildRange/style.scss +34 -0
  252. package/src/components/PageHeader/index.vue +2 -44
  253. package/src/components/PageHeader/style.scss +39 -0
  254. package/src/components/Search/index.vue +1 -97
  255. package/src/components/Search/style.scss +93 -0
  256. package/src/components/Table/ThSelectHeader.vue +2 -11
  257. package/src/components/Table/index.vue +4 -2
  258. package/src/directives/VTitle/index.js +14 -17
  259. package/style/css/normalize.scss +6 -6
  260. package/style/index.css +3 -3
  261. package/style/index.css.map +1 -1
  262. package/style/server-config.jsonc +527 -410
@@ -0,0 +1,307 @@
1
+ <template>
2
+ <div class="input-custom">
3
+ <!-- v-nstc-max-length="strMaxLength" -->
4
+ <el-input
5
+ ref="inputCustom"
6
+ v-model="_value"
7
+ v-nstc-number="numberRule"
8
+ v-bind="$attrs"
9
+ :style="{width:parseFloat(width) + 'px'}"
10
+ :placeholder="placeholder || '请输入'"
11
+ :type="_type"
12
+ :maxlength="maxlength"
13
+ :class="{'nstc-amount-num': isMoney, 'nstc-common-form-textarea': type === 'textarea' }"
14
+ :clearable="clearable"
15
+ v-on="$listeners"
16
+ >
17
+ <template v-for="(_, slotName) in $slots" v-slot:[slotName]>
18
+ <slot :name="slotName" />
19
+ </template>
20
+ <template v-if="!$slots.append && (unit || handleClick)" v-slot:append>
21
+ <span v-if="unit">{{ unit }}</span>
22
+ <span @click="inputClick" v-else>{{ handleClick }}</span>
23
+ </template>
24
+ </el-input>
25
+ </div>
26
+ </template>
27
+
28
+ <script>
29
+ import request from '@/utils/request'
30
+ export default {
31
+ name: 'InputCustom',
32
+
33
+ inheritAttrs: false,
34
+
35
+ props: {
36
+ value: {
37
+ type: [String, Number],
38
+ default: ''
39
+ },
40
+
41
+ width: {
42
+ type: [String, Number],
43
+ default: ''
44
+ },
45
+
46
+ unit: {
47
+ type: String,
48
+ default: ''
49
+ },
50
+
51
+ placeholder: {
52
+ type: String,
53
+ default: '请输入'
54
+ },
55
+
56
+ type: {
57
+ type: String,
58
+ default: 'text'
59
+ },
60
+
61
+ numberRule: {
62
+ type: Object,
63
+ default: () => ({
64
+ isMoney:false,
65
+ precision:2
66
+ })
67
+ // 配置项
68
+ // min:最小值,类型为number;
69
+ // max:最大值,类型为number;
70
+ // precision:保留几位小数,类型为number ;
71
+ // isMoney:是否为金额,类型为Boolean,true时内容加粗居右
72
+ // maxLength: 最大长度,类型为number
73
+ },
74
+ // strMaxLength: {
75
+ // type: Object,
76
+ // default: () => ({})
77
+ // // 一个中文占三个字节, 其他一个
78
+ // },
79
+ maxlength: {
80
+ type: Number,
81
+ default: 50
82
+ },
83
+
84
+ isNotZh: {
85
+ type: Boolean,
86
+ default: false
87
+ },
88
+
89
+ clearable: {
90
+ type: Boolean,
91
+ default: true
92
+ },
93
+ handleClick: {
94
+ type: String,
95
+ default: ''
96
+ },
97
+ url: {
98
+ type: String,
99
+ default: ''
100
+ },
101
+ params: {
102
+ type: [String, Object, Array],
103
+ default() {
104
+ return ''
105
+ }
106
+ },
107
+ httpMethod: {
108
+ type: String,
109
+ default: ''
110
+ },
111
+ getValue: {
112
+ type: [String, Number],
113
+ default() {
114
+ return ''
115
+ }
116
+ }
117
+ },
118
+
119
+ data() {
120
+ return {}
121
+ },
122
+
123
+ mounted() {
124
+ this.$nextTick(() => {
125
+ if(this.type === 'textarea') {
126
+ this.resizeInputWidth()
127
+ window.onresize = this.resizeInputWidth
128
+ }
129
+ })
130
+ },
131
+
132
+ computed: {
133
+ _value: {
134
+ get() {
135
+ return this.value
136
+ },
137
+ set(val) {
138
+ this.$emit('input', val)
139
+ }
140
+ },
141
+
142
+ isMoney() {
143
+ return this.numberRule?this.numberRule.isMoney:false
144
+ },
145
+
146
+ isNumber() {
147
+ return Object.keys(this.numberRule).length
148
+ },
149
+
150
+ _type() {
151
+ return this.type === 'text'
152
+ ? this.isNumber
153
+ ? 'number'
154
+ : this.type
155
+ : this.type
156
+ }
157
+ },
158
+
159
+ watch: {
160
+ _value(val) {
161
+ // 当为金额时有两位小数
162
+ let l = 0
163
+ if(this.numberRule && this.numberRule.isMoney){
164
+ l = 15
165
+ }else{
166
+ l = 13
167
+ }
168
+ this.numberRule.maxLength && (l = this.numberRule.maxLength)
169
+ if (this.isNumber && val && val.toString().length > l) {
170
+ this._value = val.toString().slice(0, l)
171
+ }
172
+ console.log('__log', this.isNotZh)
173
+ if (this.isNotZh) {
174
+ this._value = val.replace(/[\u4e00-\u9fa5]/ig, '')
175
+ }
176
+ }
177
+ },
178
+ methods: {
179
+ resizeInputWidth() {
180
+ const wArr = document.getElementsByClassName('form-group-item')
181
+ let w = null
182
+ if (wArr.length) {
183
+ w = wArr[0].clientWidth
184
+ }
185
+ console.log('_wwww', w)
186
+ const inputArr = document.getElementsByClassName(`nstc-common-form-textarea`)
187
+
188
+
189
+ for (let i = 0; i < inputArr.length; i++) {
190
+ // 3 为了多留一点空间, 前面是计算出来的准确值
191
+ inputArr[i].style.width = w * 0.3625 + 380 + 3 + 'px'
192
+ }
193
+ },
194
+ inputClick() {
195
+ const that = this
196
+ console.log(this.httpMethod )
197
+ if (this.httpMethod === 'noRequest') {
198
+ this._value = this.getValue
199
+ } else if (this.httpMethod === 'get') {
200
+ request({
201
+ url: this.url,
202
+ method: this.httpMethod,
203
+ params: this.params
204
+ }).then(res => {
205
+ that._value = res
206
+ that.$nextTick(() => {
207
+ that.$forceUpdate()
208
+ })
209
+ }).catch(() => {})
210
+ } else {
211
+ let data = this.params
212
+ request({
213
+ url: this.url,
214
+ method: this.httpMethod,
215
+ data
216
+ }).then(res => {
217
+ that._value = res
218
+ that.$nextTick(() => {
219
+ that.$forceUpdate()
220
+ })
221
+ }).catch(() => {})
222
+ }
223
+
224
+
225
+ }
226
+ }
227
+ }
228
+ </script>
229
+
230
+ <style lang="scss" scoped>
231
+ .nstc-amount-num-temp {
232
+ .input-after-amount-num{
233
+ display: inline-block!important;
234
+ text-align: right;
235
+ }
236
+ }
237
+ .nstc-amount-num{
238
+ .el-input__inner {
239
+ text-align: right;
240
+ &::placeholder {
241
+ text-align: right;
242
+ }
243
+
244
+ &::-webkit-input-placeholder {
245
+ /* WebKit browsers 适配谷歌 */
246
+ text-align: right;
247
+ }
248
+
249
+ &:-moz-placeholder {
250
+ /* Mozilla Firefox 4 to 18 适配火狐 */
251
+ text-align: right;
252
+ }
253
+
254
+ &::-moz-placeholder {
255
+ /* Mozilla Firefox 19+ 适配火狐 */
256
+ text-align: right;
257
+ }
258
+
259
+ &:-ms-input-placeholder {
260
+ /* Internet Explorer 10+ 适配ie*/
261
+ text-align: right;
262
+ }
263
+ }
264
+ position: relative;
265
+
266
+ .input-after-amount-num {
267
+ position: absolute;
268
+ right: 10px;
269
+ top: 0;
270
+ background-color: #fff;
271
+ width: calc(100% - 20px);
272
+ text-align: right;
273
+ font-weight: bold;
274
+ display: none;
275
+ letter-spacing: 1px;
276
+ margin-top: 1px;
277
+ height: calc(100% - 2px);
278
+ line-height: 31px;
279
+ }
280
+ }
281
+ // 当为空值时,透明
282
+ .nstc-amount-temp-transparent {
283
+ .input-after-amount-num{
284
+ background-color: rgba(0,0,0,0)!important;
285
+ }
286
+ }
287
+ // 当input框的为不可点击时
288
+ .nstc-amount-input-disabled{
289
+ .input-after-amount-num{
290
+ background-color: #F5F7FA!important;
291
+ border-color: #dfe4ed!important;
292
+ color: #C0C4CC!important;
293
+ cursor: not-allowed!important;
294
+ pointer-events:none;
295
+ }
296
+ }
297
+ .nstc-common-form-textarea{
298
+ textarea{
299
+ border: 1px solid #C0C4CC;
300
+ font-family: auto;
301
+ font-size: 13px;
302
+ }
303
+ }
304
+ .el-input-group__append {
305
+ cursor: pointer;
306
+ }
307
+ </style>
@@ -0,0 +1,31 @@
1
+ <template>
2
+ <IntervalInputCustom v-model="model" />
3
+ </template>
4
+
5
+ <script>
6
+ import IntervalInputCustom from '../'
7
+
8
+ export default {
9
+ name: 'Demo',
10
+
11
+ components: {
12
+ IntervalInputCustom
13
+ },
14
+
15
+ data() {
16
+ return {
17
+ model: []
18
+ }
19
+ },
20
+
21
+ watch: {
22
+ model(val) {
23
+ console.log(val)
24
+ }
25
+ }
26
+ }
27
+ </script>
28
+
29
+ <style scoped>
30
+
31
+ </style>
@@ -0,0 +1,118 @@
1
+ <template>
2
+ <div class="interval-input-custom">
3
+ <InputCustom
4
+ v-model="_value[0]"
5
+ :clearable="clearable"
6
+ :type="type"
7
+ @blur="changeNum"
8
+ :number-rule="numberRule"
9
+ />
10
+ <span>-</span>
11
+ <InputCustom
12
+ v-model="_value[1]"
13
+ @blur="changeNum"
14
+ :clearable="clearable"
15
+ :type="type"
16
+ :number-rule="numberRule"
17
+ />
18
+
19
+ </div>
20
+ </template>
21
+
22
+ <script>
23
+ import InputCustom from '../InputCustom'
24
+
25
+ export default {
26
+ name: 'IntervalInputCustom', // 区间输入框
27
+
28
+ components: {
29
+ InputCustom
30
+ },
31
+
32
+ props: {
33
+ value: {
34
+ type: Array,
35
+ default: () => []
36
+ },
37
+
38
+ clearable: {
39
+ type: Boolean,
40
+ default: true
41
+ },
42
+
43
+ type: {
44
+ type: String,
45
+ default: 'text'
46
+ },
47
+
48
+ numberRule: {
49
+ type: [String, Object, Array],
50
+ default:() => ({
51
+ })
52
+ },
53
+ defaultProps: {
54
+ type: [String, Object, Array],
55
+ default() {
56
+ return {
57
+
58
+ }
59
+ }
60
+ },
61
+ },
62
+
63
+ computed: {
64
+ _value: {
65
+ get() {
66
+
67
+ return this.value
68
+ },
69
+ set(val) {
70
+
71
+ this.$emit('input', val)
72
+ }
73
+ }
74
+ },
75
+ methods: {
76
+ changeNum() {
77
+ let newVal = this.value
78
+ console.log(this.value, 'this.value');
79
+ let value1 = this._value[0]
80
+ let value2 = this._value[1]
81
+ if(value1 && value2) {
82
+
83
+ value1 = isNaN(parseFloat(this._value[0])) ? 0 : parseFloat(this._value[0])
84
+ value2 = isNaN(parseFloat(this._value[1])) ? 0 : parseFloat(this._value[1])
85
+ if(value1 > value2) {
86
+ this.$message.warning('起始值不能大于结束值')
87
+ newVal = ["", ""]
88
+ }
89
+
90
+
91
+ }
92
+ this._value = newVal;
93
+ }
94
+
95
+ }
96
+ }
97
+ </script>
98
+
99
+ <style lang="scss">
100
+ @import "~@/theme/theme1/styles/variables.scss";
101
+
102
+ .interval-input-custom {
103
+ width: $formItemDefaultWidth;
104
+ display: inline-flex;
105
+ align-items: center;
106
+ overflow: hidden;
107
+ flex: none;
108
+ & > span {
109
+ padding: 0 5px;
110
+ }
111
+ .input-custom {
112
+ width: calc((100% - 15px) / 2)!important;
113
+ .el-input {
114
+ width: 100%;
115
+ }
116
+ }
117
+ }
118
+ </style>