Explorar o código

口岸监管服务信息系统(一企一册)-企业台账管理,备案单价不为整数时,备案总价计算不准确

CzRger hai 2 meses
pai
achega
0b8ddb9f26

+ 26 - 0
snowy-admin-web/src/utils/util.js

@@ -573,4 +573,30 @@ util.resetRgbaOpacity = (polyColor, opacity) => {
 
 util.randomColor = (opacity) => `rgba(${randomNum(0, 255)}, ${randomNum(0, 255)}, ${randomNum(0, 255)}, ${opacity ? opacity : randomNum(0.5, 1, 1)})`
 
+util.multiplication = (...args) => {
+	const handle = (a, b) => {
+		let len = 0
+		if (String(a).indexOf('.') !== -1) {
+			len += String(a).split('.')[1].length
+		}
+		if (String(b).indexOf('.') !== -1) {
+			len += String(b).split('.')[1].length
+		}
+		let level = '1'
+		for (let i = 0; i < len; i++) {
+			level += '0'
+		}
+		return (Number(a) * Number(b) * Number(level) / Number(level)).toFixed(len)
+	}
+	if (args.length === 0) {
+		return Number(args[0])
+	} else if (args.length > 1) {
+		let total = args[0]
+		for (let i = 1; i < args.length; i++) {
+			total = handle(total, args[i])
+		}
+		return total
+	}
+	return 0
+}
 export default util

+ 1 - 1
snowy-admin-web/src/views/yqyc/zero/enterprise-ledger/detail.vue

@@ -1249,7 +1249,7 @@ const deleteBatchFile = () => {
 const onChangeRecordQuantity = () => {
 	setTimeout(() => {
 		if (proxy.$util.isValue(bodyData.value.recordQuantity) && proxy.$util.isValue(bodyData.value.recordPrice)) {
-			bodyData.value.recordTotalPrice = Number(bodyData.value.recordQuantity) * Number(bodyData.value.recordPrice)
+			bodyData.value.recordTotalPrice = proxy.$util.multiplication(bodyData.value.recordQuantity, bodyData.value.recordPrice)
 		} else {
 			bodyData.value.recordTotalPrice = ''
 		}