diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobecheckedByUpdate.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobecheckedByUpdate.vue index d16c964d0b..9e3623d0c1 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobecheckedByUpdate.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobecheckedByUpdate.vue @@ -116,7 +116,7 @@
*上传金额
- +
其中待确定金额
@@ -257,6 +257,26 @@ export default { this.formobj = row }) }, + getSpecialNumber(val, limit) { + val = val.replace(/[^0-9.-]/g, '') // 保留数字 + val = val.replace(/^00/, '0.') // 开头不能有两个0 + val = val.replace(/^\./g, '0.') // 开头为小数点转换为0. + val = val.replace(/\.{2,}/g, '.') // 两个以上的小数点转换成一个 + val = val.replace(/\-{2,}/g, '.') // 两个以上的“-”号转换成一个 + val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.') // 只保留一个小数点 + val = val.replace('-', '$#$').replace(/\-/g, '').replace('$#$', '-'); // 只保留一个"-"号 + /^0\d+/.test(val) ? val = val.slice(1) : '' // 两位以上数字开头不能为0 + const str = '^(\\d+)\\.(\\d{' + limit + '}).*$' + const reg = new RegExp(str) + if (limit === 0) { + // 不需要小数点 + val = val.replace(reg, '$1') + } else { + // 通过正则保留小数点后指定的位数 + val = val.replace(reg, '$1.$2') + } + return val + }, getNumber(val, limit) { val = val.replace(/[^0-9.]/g, '') // 保留数字 val = val.replace(/^00/, '0.') // 开头不能有两个0 diff --git a/anrui-scm/anrui-scm-ui/src/views/manufacturerrebates/huikuanhedui/collectionrebatetobecheckedAdd.vue b/anrui-scm/anrui-scm-ui/src/views/manufacturerrebates/huikuanhedui/collectionrebatetobecheckedAdd.vue index beb83e53c9..9bc14d583a 100644 --- a/anrui-scm/anrui-scm-ui/src/views/manufacturerrebates/huikuanhedui/collectionrebatetobecheckedAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/manufacturerrebates/huikuanhedui/collectionrebatetobecheckedAdd.vue @@ -112,12 +112,14 @@ export default { }, methods: { - getNumber(val, limit) { - val = val.replace(/[^0-9.]/g, '') // 保留数字 + getSpecialNumber(val, limit) { + val = val.replace(/[^0-9.-]/g, '') // 保留数字 val = val.replace(/^00/, '0.') // 开头不能有两个0 val = val.replace(/^\./g, '0.') // 开头为小数点转换为0. val = val.replace(/\.{2,}/g, '.') // 两个以上的小数点转换成一个 - val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); // 只保留一个小数点 + val = val.replace(/\-{2,}/g, '.') // 两个以上的“-”号转换成一个 + val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.') // 只保留一个小数点 + val = val.replace('-', '$#$').replace(/\-/g, '').replace('$#$', '-'); // 只保留一个"-"号 /^0\d+/.test(val) ? val = val.slice(1) : '' // 两位以上数字开头不能为0 const str = '^(\\d+)\\.(\\d{' + limit + '}).*$' const reg = new RegExp(str) diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobecheckedByUpdate.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobecheckedByUpdate.vue index 384d25a15e..2d627c2529 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobecheckedByUpdate.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobecheckedByUpdate.vue @@ -92,7 +92,7 @@
*上传金额
- +
其中待确定金额
@@ -245,6 +245,26 @@ export default { this.formobj = row }) }, + getSpecialNumber(val, limit) { + val = val.replace(/[^0-9.-]/g, '') // 保留数字 + val = val.replace(/^00/, '0.') // 开头不能有两个0 + val = val.replace(/^\./g, '0.') // 开头为小数点转换为0. + val = val.replace(/\.{2,}/g, '.') // 两个以上的小数点转换成一个 + val = val.replace(/\-{2,}/g, '.') // 两个以上的“-”号转换成一个 + val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.') // 只保留一个小数点 + val = val.replace('-', '$#$').replace(/\-/g, '').replace('$#$', '-'); // 只保留一个"-"号 + /^0\d+/.test(val) ? val = val.slice(1) : '' // 两位以上数字开头不能为0 + const str = '^(\\d+)\\.(\\d{' + limit + '}).*$' + const reg = new RegExp(str) + if (limit === 0) { + // 不需要小数点 + val = val.replace(reg, '$1') + } else { + // 通过正则保留小数点后指定的位数 + val = val.replace(reg, '$1.$2') + } + return val + }, getNumber(val, limit) { val = val.replace(/[^0-9.]/g, '') // 保留数字 val = val.replace(/^00/, '0.') // 开头不能有两个0