优化代客下单逻辑

This commit is contained in:
gyq
2025-11-18 09:06:04 +08:00
parent 18d2a73073
commit 9904c044c3
5 changed files with 65 additions and 38 deletions

View File

@@ -125,6 +125,8 @@
<div :class="{
'free-price': useVipPrice && vipAllPrice != allPrice,
}">
<span class="onderline" v-if="cartStore.useVipPrice && item.memberPrice !== item.salePrice">¥{{
to2(item.salePrice) }}</span>
<span>¥{{ to2(allPrice) }}</span>
</div>
</div>
@@ -547,4 +549,11 @@ onMounted(() => {
-webkit-appearance: none;
margin: 0;
}
.onderline {
font-size: 12px;
color: #999;
text-decoration: line-through;
margin-right: 4px;
}
</style>

View File

@@ -41,7 +41,7 @@
</div>
</div>
<template #reference>
<el-button>{{ table.name ? "桌台号:" + table.name : "选择桌号" }}</el-button>
<el-button>{{ carts.tableInfo.name ? "桌台号:" + carts.tableInfo.name : "选择桌号" }}</el-button>
</template>
</el-popover>
<el-button type="warning" @click="refQuanHexiaoOpen">扫码验券</el-button>
@@ -84,7 +84,7 @@
<!-- 购物车 -->
<cartsList @editNote="showNote(true)" @createOrder="createOrder" @hideOrder="hideOrder"
@clearOldOrder="clearOldOrder" :showOrder="showOrder" :goodsList="carts.goods" :dinerType="diners.sel"
:perpole="perpole" :remark="remark" :table="table" ref="refCart"></cartsList>
:perpole="perpole" :remark="remark" :table="carts.tableInfo" ref="refCart"></cartsList>
</div>
<div class="center">
<!-- 购物车控制操作按钮 -->
@@ -126,7 +126,7 @@
</template>
<!-- 订单信息展示 -->
<Order ref="refOrder" :orderInfo="carts.oldOrder" @chooseUser="showChooseUser" @paysuccess="refresh"
:table="table" :perpole="perpole" v-else :user="user"></Order>
:table="carts.tableInfo" :perpole="perpole" v-else :user="user"></Order>
</div>
</div>
</div>
@@ -428,7 +428,7 @@ async function clearOldOrder(params) {
const res1 = params.placeNum
? await orderApi.rmPlaceOrder(params)
: await orderApi.cancelOrder(params);
carts.clearHistory();
// carts.clearHistory();
ElMessage({
type: res1 ? "success" : "error",
message: res1 ? "删除成功" : "删除失败",
@@ -510,6 +510,7 @@ async function tableClick(item) {
carts.setOldOrder(res);
}
table.value = item;
carts.changeTableInfo(item)
carts.changeTable(item.tableCode);
refTable.value.hide();
}
@@ -729,7 +730,7 @@ function init() {
getTableList();
getCategoryList();
changeCartsDinerType();
carts.init({ table_code: table.value.tableCode }, carts.oldOrder);
carts.init({ table_code: carts.tableInfo.tableCode }, carts.oldOrder);
}
onBeforeRouteLeave(() => {
@@ -764,6 +765,7 @@ onMounted(async () => {
}
if (res.tableCode) {
table.value = { tableCode: res.tableCode };
carts.changeTableInfo(res)
}
if (res.userId) {
const userRes = await shopUserApi.get({ userId: res.userId });
@@ -775,6 +777,7 @@ onMounted(async () => {
const tableRes = await tableApi.get({ tableCode: res.tableCode });
if (tableRes.tableCode) {
table.value = tableRes || {};
carts.changeTableInfo(tableRes)
}
}
if (res) {
@@ -787,6 +790,7 @@ onMounted(async () => {
const tableRes = await tableApi.get({ tableCode: tableCode });
if (tableRes.tableCode) {
table.value = tableRes || {};
carts.changeTableInfo(tableRes)
}
}
console.log(table.value);
@@ -807,6 +811,7 @@ function refresh() {
showOrder.value = false;
user.value = {};
table.value = {};
carts.changeTableInfo({})
router.replace(route.path);
carts.dataReset();
carts.init();