n20-common-lib 2.4.23 → 2.4.25

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n20-common-lib",
3
- "version": "2.4.23",
3
+ "version": "2.4.25",
4
4
  "private": false,
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -17,6 +17,7 @@
17
17
  v-click-outside="clickOut"
18
18
  class="n20-filter p-a-s p-b-0"
19
19
  :label-width="labelWidth ? labelWidth : labelWidthAs + 'px'"
20
+ @keyup.enter.native="filter"
20
21
  @submit.native.prevent
21
22
  >
22
23
  <template v-if="!type">
@@ -43,7 +43,7 @@
43
43
  <template v-if="validateResult.errorList.length">
44
44
  <div class="bd-t bd-l bd-r">
45
45
  <div class="m-t m-b p-l">{{ '无效数据详情' | $lc }}</div>
46
- <el-table :data="errorList">
46
+ <el-table :data="errorList" border style="width: 100%">
47
47
  <el-table-column
48
48
  v-for="column in columnsList"
49
49
  :key="column.prop"
@@ -3,55 +3,41 @@ const CHINESE_NUMERALS = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒'
3
3
  /**
4
4
  *
5
5
  * @param {number|string} num 需转换的金额
6
- * @param {object} options 配置项
7
- * @param options.prefix 前缀
8
- * @param options.suffix 后缀
9
- * @returns {string} 转换后的金额
10
6
  */
11
- export const convert = (amount) => {
12
- const units = ['', '', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']
13
- const levels = ['', '', '亿', '万亿']
14
- const decimals = ['角', '分']
15
- const digits = ['', '', '', '', '块']
16
-
17
- if (typeof amount === 'string') {
18
- amount = amount.replace(/,/g, '')
19
- }
20
- let [integerPart, decimalPart] = String(amount).split('.')
21
- let result = ''
22
-
23
- // 转换整数部分
24
- for (let i = integerPart.length - 1, level = 0; i >= 0; i -= 4, level++) {
25
- let group = integerPart.slice(Math.max(0, i - 3), i + 1)
26
- let groupResult = ''
27
-
28
- for (let j = 0; j < group.length; j++) {
29
- let digit = Number(group[j])
30
-
31
- if (digit !== 0) {
32
- groupResult += units[digit] + digits[j]
33
- }
34
- }
35
-
36
- if (groupResult !== '') {
37
- result = groupResult + levels[level] + result
38
- }
7
+ export const convert = (n) => {
8
+ var fraction = ['', '']
9
+ var digit = ['', '', '', '', '肆', '伍', '陆', '柒', '捌', '玖']
10
+ var unit = [
11
+ ['', '', '亿'],
12
+ ['', '拾', '佰', '仟']
13
+ ]
14
+ var head = n < 0 ? '' : ''
15
+ n = Math.abs(n)
16
+
17
+ var s = ''
18
+
19
+ for (var i = 0; i < fraction.length; i++) {
20
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '')
39
21
  }
40
-
41
- // 转换小数部分
42
- if (decimalPart !== undefined) {
43
- for (let k = 0; k < decimalPart.length; k++) {
44
- let digit = Number(decimalPart[k])
45
-
46
- if (digit !== 0) {
47
- result += units[digit] + decimals[k]
48
- }
22
+ s = s || '整'
23
+ n = Math.floor(n)
24
+
25
+ for (var i = 0; i < unit[0].length && n > 0; i++) {
26
+ var p = ''
27
+ for (var j = 0; j < unit[1].length && n > 0; j++) {
28
+ p = digit[n % 10] + unit[1][j] + p
29
+ n = Math.floor(n / 10)
49
30
  }
31
+ s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s
50
32
  }
51
-
52
- return result === '' ? '' : result + '元整'
33
+ return (
34
+ head +
35
+ s
36
+ .replace(/(零.)*零元/, '元')
37
+ .replace(/(零.)+/g, '零')
38
+ .replace(/^整$/, '零元整')
39
+ )
53
40
  }
54
-
55
41
  /**
56
42
  * 单个数字转换
57
43
  * @param {number | string} number