diff --git a/src/views/order/index.vue b/src/views/order/index.vue index 443b7dd..cbd606d 100644 --- a/src/views/order/index.vue +++ b/src/views/order/index.vue @@ -221,6 +221,7 @@ import { useUser } from "@/store/user.js" import lodash from 'lodash' import { orderfindOrder, orderorderDetail, payreturnOrder, cloudPrinterprint } from '@/api/order/index.js' import add from '@/views/order/components/add.vue' +import { clearNoNum } from '@/utils' const store = useUser() const itemboxshow = ref(false) @@ -256,6 +257,7 @@ const payreturnOrderclick = async () => { changechecked.value = false recharge.value = false itemboxshow.value = false + refundamount.value = 0 ElMessage.error('退款成功!') asyncorderfindOrder() } else { @@ -299,6 +301,8 @@ const emititemboxshow = async (e) => { //接收子组件值 并赋值给父组 orderDetaildata.value.detailList.forEach((e) => { e.checked = false }) + changechecked.value = false //清空全选 + refundamount.value = 0 //退款金额清0 } catch (error) { loadingboxshow.value = false @@ -313,9 +317,9 @@ const refundamount = ref(0)//退款金额 const changezong = (e, b, c) => { if (c == 1) { if (e.checked) { - refundamount.value = (Number(refundamount.value) + (Number(e.num) * Number(e.price))).toFixed(2) + refundamount.value = clearNoNum({ value: JSON.stringify(Number(refundamount.value) + (Number(e.num) * Number(e.price))) }) } else { - refundamount.value = (Number(refundamount.value) - (Number(e.num) * Number(e.price))).toFixed(2) + refundamount.value = clearNoNum({ value: JSON.stringify(Number(refundamount.value) - (Number(e.num) * Number(e.price))) }) } if (orderDetaildata.value.detailList.every(item => item.checked == true)) {//判断是否全选 changechecked.value = true @@ -323,19 +327,20 @@ const changezong = (e, b, c) => { changechecked.value = false } } else { - orderDetaildata.value.detailList.forEach((e) => { + orderDetaildata.value.detailList.forEach((e, a, b) => { if (changechecked.value) { - e.checked = true - refundamount.value = orderDetaildata.value.orderAmount + if (e.status == 'closed') { + e.checked = true + refundamount.value = clearNoNum({ value: JSON.stringify(Number(refundamount.value) - (Number(e.num) * Number(e.price))) }) + } else { + e.checked = false + } } else { e.checked = false refundamount.value = 0 } - }) - } - } const orderDetaildata = ref({//详情数据