优化下单折扣

This commit is contained in:
gyq 2025-03-20 18:30:32 +08:00
parent 87e8976353
commit a914adc9f8
5 changed files with 50 additions and 12 deletions

View File

@ -465,7 +465,7 @@ async function confirmOrder() {
emit("paySuccess");
}
} catch (error) {
if (error.code == 701) {
if (error.code == 701 || error.code == 603) {
//
emit('orderExpired')
}
@ -593,6 +593,32 @@ const discountInput = _.debounce(function (e) {
pointOptions.value.amount = 0
}, 500)
// const discountInput = (e) => {
// setTimeout(() => {
// couponForm.value.amount = couponForm.value.originAmount
// couponForm.value.discountRatio = inputFilterFloat(e)
// if (couponForm.value.discountRatio > 9.9) {
// couponForm.value.discountRatio = 9.9
// }
// if (couponForm.value.discountRatio < 0.1) {
// couponForm.value.discountRatio = 0.1
// }
// if (couponForm.value.discountRatio) {
// couponForm.value.amount = formatDecimal(couponForm.value.amount * (couponForm.value.discountRatio / couponFormDiscountRate.value))
// } else {
// couponForm.value.amount = formatDecimal(+couponForm.value.originAmount)
// }
// // /
// couponResList1.value = []
// couponResList2.value = []
// couponForm.value.pointsNum = ''
// pointOptions.value.amount = 0
// }, 50)
// }
//
function pointInput(e) {
setTimeout(() => {
@ -624,7 +650,7 @@ function pointInput(e) {
const calcPointMoney = _.debounce(async function () {
try {
const res = await calcDeductionAmount({
userId: couponFormUser.value.id,
shopUserId: couponFormUser.value.id,
orderAmount: couponForm.value.amount,
points: couponForm.value.pointsNum
})
@ -701,7 +727,7 @@ function resetCoupon() {
async function pointOptionsAjax() {
try {
const res = await calcUsablePoints({
userId: couponFormUser.value.id,
shopUserId: couponFormUser.value.id,
orderAmount: couponForm.value.amount
})
@ -797,7 +823,18 @@ function delCoupon(index, t) {
function discountConfirm() {
//
discountRateVlaue.value = couponForm.value.discountRatio || ''
payData.value.checkOrderPay.discountAmount = couponForm.value.discountRatio ? formatDecimal(couponForm.value.originAmount - (couponForm.value.originAmount * (couponForm.value.discountRatio / couponFormDiscountRate.value))) : 0
//
if (couponForm.value.discountRatio) {
let rate = couponForm.value.discountRatio / couponFormDiscountRate.value
let discount = formatDecimal(couponForm.value.originAmount * rate)
payData.value.checkOrderPay.discountAmount = formatDecimal(couponForm.value.originAmount - discount)
// console.log(rate);
// console.log(discount);
// console.log(payData.value.checkOrderPay.discountAmount);
} else {
payData.value.checkOrderPay.discountAmount = 0
}
if (couponFormUser.value.id) {
payData.value.checkOrderPay.userId = couponFormUser.value.userId

View File

@ -225,12 +225,12 @@ function paySuccess() {
emits('success')
dialogVisible.value = false;
ElMessage.success('支付成功')
goodsStore.clearCart()
useStorage.del('tableCode')
socket.cartInit()
goodsStore.successClearCart()
}
const payCardRef = ref(null)
function show(t) {
dialogVisible.value = true;

View File

@ -90,7 +90,7 @@
</div>
<CartItem
:item="{ product_name: '客座费', number: goodsStore.tableInfo.num, lowPrice: store.shopInfo.tableFee, memberPrice: store.shopInfo.tableFee }"
v-if="!store.shopInfo.isTableFee && goodsStore.tableInfo.name && (goodsStore.cartList.length || goodsStore.orderList.length)" />
v-if="!store.shopInfo.isTableFee && goodsStore.tableInfo.id" />
<div class="order_list_item" v-for="(arr, index) in goodsStore.orderList" :key="index">
<div class="order_num">{{ `${arr.orderNum}次下单` }}</div>
<CartItem type="order" :border="false" :item="item" :index="index" :i="i" :key="item.id"

View File

@ -174,6 +174,8 @@ async function checkRecord() {
//
const exit = async () => {
try {
if (loading.value) return
loading.value = true;
// await staffPermission('yun_xu_jiao_ban')
const res = await handover(isPrint.value)
const data = await handoverData(res)
@ -188,8 +190,8 @@ const exit = async () => {
}
logoutHandle()
} catch (error) {
console.log(error);
loading.value = false;
console.log(error);
}
}
@ -205,9 +207,9 @@ async function logoutHandle() {
});
}, 1000);
} catch (error) {
loading.value = false;
console.log('退出失败');
}
loading.value = false;
}
//

View File

@ -25,7 +25,7 @@
</div>
<div class="box_content_left_top_item_top">
<div>
{{ infoData.amount }}
{{ formatDecimal(+infoData.amount) }}
</div>
<div>
总收款
@ -62,7 +62,7 @@
</div>
<div style="display: flex;">
<span>挂账金额</span>
<span style="font-weight: bold;">{{ item.creditAmount }}</span>
<span style="font-weight: bold;">{{ formatDecimal(+item.creditAmount) }}</span>
</div>
</div>
</div>
@ -123,8 +123,7 @@
import { reactive, onMounted } from 'vue'
import { useRouter } from 'vue-router'
import { handoverRecordPage } from '@/api/account.js'
import { useUser } from "@/store/user.js"
import { ElMessage, dayjs } from 'element-plus'
import { formatDecimal } from "@/utils/index.js";
const router = useRouter()