Browse Source

变更令

ZaiZai 1 year ago
parent
commit
dec8c7befb
2 changed files with 16 additions and 6 deletions
  1. 8 0
      src/utils/tools.js
  2. 8 6
      src/views/debit-pay/admin/components/middlepay/addModal.vue

+ 8 - 0
src/utils/tools.js

@@ -1,6 +1,14 @@
 import { getArrValue } from 'js-fast-way'
 import { getDictionary } from '~api/other'
 
+
+//效验是否为数字或小数的数字
+export const isNumberReg = (text) => {
+    let pattern = /^[0-9]+([.]{1}[0-9]+){0,1}$/
+    return pattern.test(text)
+}
+
+
 //获取字典数据
 export const getDictionaryData = async (code) => {
     const { data } = await getDictionary({

+ 8 - 6
src/views/debit-pay/admin/components/middlepay/addModal.vue

@@ -139,6 +139,7 @@
 <script setup>
 import { nextTick, ref, watch } from 'vue'
 import { getStoreValue } from '~src/utils/storage'
+import { isNumberReg } from '~uti/tools'
 import HcBillBaseModal from './addBillBaseModal.vue'
 import { arrToId, getArrValue, getObjValue, getRandom, isNullES } from 'js-fast-way'
 import BigNumber from 'bignumber.js'
@@ -348,15 +349,16 @@ const addTableData = ref([])
 //计算本期计量金额
 const currentMeterTotalBlur = (row) => {
     //如果为空
-    if (isNullES(row.currentMeterTotal)) {
-        nextTick(() => {
-            row.currentMeterTotal = 0
-        })
+    let currentMeterTotal = row.currentMeterTotal
+    const isMeter = isNumberReg(currentMeterTotal)
+    if (isNullES(currentMeterTotal) || !isMeter) {
+        currentMeterTotal = 0
     }
     //计算本期计量金额
     nextTick(() => {
-        row.currentMeterMoney = (BigNumber(row.currentMeterTotal).multipliedBy(row.currentPrice)).toString()
-        row.allMeterTotal = (BigNumber(row.currentMeterTotal).plus(row.webAllMeterTotal)).toString()
+        row.currentMeterTotal = currentMeterTotal
+        row.currentMeterMoney = (BigNumber(currentMeterTotal).multipliedBy(row.currentPrice)).toString()
+        row.allMeterTotal = (BigNumber(currentMeterTotal).plus(row.webAllMeterTotal)).toString()
 
         //计算总计量金额
         let meterMoney = 0