n20-common-lib 2.9.85 → 2.9.87

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.9.85",
3
+ "version": "2.9.87",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -51,6 +51,7 @@
51
51
  "dependencies": {
52
52
  "axios": "*",
53
53
  "dayjs": "*",
54
+ "decimal.js": "^10.5.0",
54
55
  "js-cookie": "^3.0.1",
55
56
  "jsencrypt": "^3.3.2",
56
57
  "jsonwebtoken": "^8.5.1",
@@ -62,12 +63,12 @@
62
63
  "qrcode": "*",
63
64
  "resize-detector": "*",
64
65
  "strip-json-comments": "*",
66
+ "swiper": "8.4.5",
65
67
  "v-viewer": "1.6.4",
66
68
  "vue-jsonp": "2.0.0",
67
69
  "vuedraggable": "*",
68
70
  "webpack-duplicate-relano-plugin": "^0.1.0",
69
- "xe-utils": "^3.5.11",
70
- "swiper": "8.4.5"
71
+ "xe-utils": "^3.5.11"
71
72
  },
72
73
  "devDependencies": {
73
74
  "@babel/plugin-proposal-optional-chaining": "^7.14.5",
@@ -1,5 +1,9 @@
1
1
  <template>
2
- <div class="n20-num-w" @mouseenter="isHove = true" @mouseleave="isHove = false">
2
+ <div
3
+ class="n20-num-w"
4
+ @mouseenter="isHove = true"
5
+ @mouseleave="isHove = false"
6
+ >
3
7
  <el-input
4
8
  ref="input"
5
9
  v-model="valueStr"
@@ -23,7 +27,9 @@
23
27
  <slot name="prefix"></slot>
24
28
  </template>
25
29
  <template v-if="type === 'rate'">
26
- <span v-if="suffixV" slot="suffix" class="el-input__icon">{{ suffix }}</span>
30
+ <span v-if="suffixV" slot="suffix" class="el-input__icon">{{
31
+ suffix
32
+ }}</span>
27
33
  </template>
28
34
  </el-input>
29
35
  </div>
@@ -34,6 +40,8 @@ import emitter from '../../utils/element-ui-emitter'
34
40
  import { $lc } from '../../utils/i18n/index'
35
41
  import N from '../../utils/numberPor'
36
42
 
43
+ import { Decimal } from 'decimal.js'
44
+
37
45
  export default {
38
46
  name: 'InputNumber',
39
47
  mixins: [emitter],
@@ -50,12 +58,28 @@ export default {
50
58
  }
51
59
  },
52
60
  min: {
53
- type: Number,
54
- default: -9999999999999.99
61
+ type: [Number, String],
62
+ default: -9999999999999.99,
63
+ validator(v) {
64
+ try {
65
+ new Decimal(v)
66
+ return true
67
+ } catch {
68
+ return false
69
+ }
70
+ }
55
71
  },
56
72
  max: {
57
- type: Number,
58
- default: 9999999999999.99
73
+ type: [Number, String],
74
+ default: 9999999999999.99,
75
+ validator(v) {
76
+ try {
77
+ new Decimal(v)
78
+ return true
79
+ } catch {
80
+ return false
81
+ }
82
+ }
59
83
  },
60
84
  step: {
61
85
  type: Number,
@@ -141,7 +165,9 @@ export default {
141
165
  if (val || val === 0) {
142
166
  let nF = N.toString(val).split('.')[1] || ''
143
167
  if (nF.length < this.fNum) {
144
- return (this.valueStr = N.addThousands(N.subFixed(val, this.fNum)))
168
+ return (this.valueStr = N.addThousands(
169
+ N.subFixed(val, this.fNum)
170
+ ))
145
171
  }
146
172
  }
147
173
  this.valueStr = N.addThousands(val)
@@ -153,6 +179,9 @@ export default {
153
179
  }
154
180
  },
155
181
  methods: {
182
+ compare(a, b) {
183
+ return new Decimal(a).cmp(new Decimal(b)) === 1
184
+ },
156
185
  focusFn() {
157
186
  this.isFocus = true
158
187
  if (!this.disabled && this.valueStr) {
@@ -170,7 +199,10 @@ export default {
170
199
  this.$emit('clear')
171
200
  },
172
201
  stepFn(ev) {
173
- if ((ev.code === 'ArrowUp' || ev.code === 'ArrowDown') && !this.disabled) {
202
+ if (
203
+ (ev.code === 'ArrowUp' || ev.code === 'ArrowDown') &&
204
+ !this.disabled
205
+ ) {
174
206
  let val = N(this.valueStr)
175
207
  if (!isNaN(val)) {
176
208
  ev.preventDefault()
@@ -203,6 +235,7 @@ export default {
203
235
  })
204
236
 
205
237
  let val = N(valStr)
238
+
206
239
  if (isNaN(val)) {
207
240
  this.valueStr = ''
208
241
  let oVal = this.value
@@ -225,13 +258,16 @@ export default {
225
258
  val = Math.round(N) * this.step
226
259
  }
227
260
  }
228
- if (val < this.min) {
261
+
262
+ if (this.compare(this.min, val)) {
229
263
  val = this.min
230
- } else if (val > this.max) {
264
+ } else if (this.compare(val, this.max)) {
231
265
  val = this.max
266
+ } else {
267
+ nStr = N.subFixed(val, this.fNum)
232
268
  }
233
- nStr = N.subFixed(val, this.fNum)
234
- this.valueStr = N.addThousands(nStr)
269
+
270
+ this.valueStr = N.addThousands(nStr || val)
235
271
  }
236
272
 
237
273
  this.$nextTick(() => {
@@ -29,7 +29,7 @@ function getDN() {
29
29
 
30
30
  /* 检测本地签名端口是否可用 */
31
31
  export function availableSign(fn, url) {
32
- available = IWSAGetAvailable()
32
+ let available = IWSAGetAvailable()
33
33
  if (available) {
34
34
  fn && fn(available)
35
35
  } else {
@@ -41,7 +41,7 @@ export function availableSign(fn, url) {
41
41
  }
42
42
 
43
43
  function checkAvailable(fn, url, count) {
44
- available = IWSAGetAvailable()
44
+ let available = IWSAGetAvailable()
45
45
  let name = window.NetSignDownloadName || 'NetSignCNG签名助手'
46
46
  if (available) {
47
47
  fn && fn(available)
@@ -101,7 +101,10 @@ export async function getSign(plain, dn) {
101
101
  }
102
102
  const checkRes = await getCertInfo(dn)
103
103
 
104
- if (checkRes === -1 || ['dnListEmpty', 'dnIsEmpty', 'Empty'].includes(checkRes)) {
104
+ if (
105
+ checkRes === -1 ||
106
+ ['dnListEmpty', 'dnIsEmpty', 'Empty'].includes(checkRes)
107
+ ) {
105
108
  switch (checkRes) {
106
109
  case 'dnListEmpty':
107
110
  Message.warning('没有匹配到证书!')
@@ -124,7 +127,7 @@ export async function getSign(plain, dn) {
124
127
  closeOnClickModal: false,
125
128
  inputType: 'password'
126
129
  }).then(({ value }) => {
127
- return performSign(plainText, value).then((signedData) => {
130
+ performSign(plainText, value).then((signedData) => {
128
131
  answer = signedData
129
132
  })
130
133
  })
@@ -142,7 +145,9 @@ export async function getCertInfo(dn) {
142
145
  return new Promise((resolve, reject) => {
143
146
  // 获取证书列表
144
147
  IWSASkfGetCertList(
145
- process.env.VUE_APP_NetSign_ARG || window.VUE_APP_NetSign_ARG || 'WTSKFInterface.dll',
148
+ process.env.VUE_APP_NetSign_ARG ||
149
+ window.VUE_APP_NetSign_ARG ||
150
+ 'WTSKFInterface.dll',
146
151
  (CertListData, errorCode) => {
147
152
  if (errorCode) {
148
153
  Message.error(codeDate[errorCode])
@@ -171,8 +176,6 @@ async function performSign(plainText, value) {
171
176
  Message.error(codeDate[errorCode])
172
177
  reject()
173
178
  }
174
- }).catch(() => {
175
- resolve()
176
179
  })
177
180
  })
178
181
  }