feat: 代客下单更新,修复店铺列表编辑展示问题
This commit is contained in:
@@ -20,10 +20,12 @@
|
||||
</div>
|
||||
<div>
|
||||
<div class="u-flex">
|
||||
<div class="ft-13 color-000">{{ user.nickName }}</div>
|
||||
<div class="ft-13 color-000 no-wrap">{{ user.nickName }}</div>
|
||||
<div class="vip" v-if="user.isVip">VIP{{ user.isVip }}</div>
|
||||
</div>
|
||||
<div style="margin-top: 2px" class="color-666 ft-12">余额:{{ user.amount }}</div>
|
||||
<div style="margin-top: 2px" class="no-wrap color-666 ft-12">
|
||||
余额:{{ user.amount }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -219,8 +221,12 @@ import productApi from "@/api/product/index";
|
||||
import tableApi from "@/api/account/table";
|
||||
import $status from "@/views/tool/table/status.js";
|
||||
import orderApi from "@/api/order/order";
|
||||
import shopUserApi from "@/api/account/shopUser";
|
||||
import { useCartsStore } from "@/store/modules/carts";
|
||||
import { useUserStore } from "@/store/modules/user";
|
||||
|
||||
import { ElLoading } from "element-plus";
|
||||
|
||||
const carts = useCartsStore();
|
||||
const shopUser = useUserStore();
|
||||
|
||||
@@ -245,9 +251,8 @@ function showDinerNumber() {
|
||||
let user = ref({});
|
||||
const refChooseUser = ref();
|
||||
function chooseUserConfirm(e) {
|
||||
console.log(e);
|
||||
user.value = e;
|
||||
refCart.value.carts.changeUser(e);
|
||||
user.value = e ? e : {};
|
||||
refCart.value.carts.changeUser(e ? e : {});
|
||||
}
|
||||
function showChooseUser() {
|
||||
refChooseUser.value.open();
|
||||
@@ -258,42 +263,62 @@ const showOrder = ref(false);
|
||||
function hideOrder() {
|
||||
showOrder.value = false;
|
||||
}
|
||||
const oldOrder = ref({});
|
||||
const oldOrder = ref({ detailMap: [] });
|
||||
|
||||
const orderInfo = ref({});
|
||||
|
||||
let createOrderTimer = null;
|
||||
async function createOrder(key) {
|
||||
console.log(refCart.value.carts.table_code);
|
||||
const res = await orderApi.add({
|
||||
orderId: oldOrder.value.id || "",
|
||||
shopId: shopUser.userInfo.id,
|
||||
userId: user.value.userId,
|
||||
seatNum: 0,
|
||||
packFee: refCart.value.carts.packFee * 1,
|
||||
originAmount: refCart.value.carts.payMoney * 1,
|
||||
tableCode: refCart.value.carts.table_code,
|
||||
dineMode: diners.sel == 0 ? "dine-in" : "take-out",
|
||||
remark: "",
|
||||
seatNum: perpole.value * 1,
|
||||
placeNum: 1,
|
||||
waitCall: false,
|
||||
vipPrice: user.value.id && user.value.isVip,
|
||||
clearTimeout(createOrderTimer);
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: "订单生成中,请稍等……",
|
||||
background: "rgba(0, 0, 0, 0.7)",
|
||||
});
|
||||
if (res) {
|
||||
refCart.value.carts.clear();
|
||||
if (key == "only-create") {
|
||||
router.replace(route.path);
|
||||
return;
|
||||
createOrderTimer = setTimeout(() => {
|
||||
ElMessage.error("订单生成超时");
|
||||
loading.close();
|
||||
}, 1000 * 20);
|
||||
try {
|
||||
const res = await orderApi.add({
|
||||
orderId: oldOrder.value.id || "",
|
||||
shopId: shopUser.userInfo.id,
|
||||
userId: user.value.userId,
|
||||
seatNum: 0,
|
||||
packFee: refCart.value.carts.packFee * 1,
|
||||
originAmount: refCart.value.carts.payMoney * 1,
|
||||
tableCode: refCart.value.carts.table_code,
|
||||
dineMode: diners.sel == 0 ? "dine-in" : "take-out",
|
||||
remark: "",
|
||||
seatNum: perpole.value * 1,
|
||||
placeNum: oldOrder.value.placeNum * 1 + 1,
|
||||
waitCall: false,
|
||||
vipPrice: user.value.id && user.value.isVip,
|
||||
});
|
||||
clearTimeout(createOrderTimer);
|
||||
loading.close();
|
||||
if (res) {
|
||||
refCart.value.carts.clear();
|
||||
if (key == "only-create") {
|
||||
router.replace(route.path);
|
||||
return;
|
||||
}
|
||||
if (res.id) {
|
||||
// 获取历史订单数据
|
||||
const res1 = await orderApi.getHistoryList({
|
||||
orderId: res.id,
|
||||
});
|
||||
oldOrder.value = res1;
|
||||
orderInfo.value = res1;
|
||||
refCart.value.carts.init();
|
||||
}
|
||||
showOrder.value = true;
|
||||
|
||||
// oldOrder.value = res;
|
||||
}
|
||||
if (key == "to-pay" && oldOrder.value.id) {
|
||||
// 获取历史订单数据
|
||||
const res = await orderApi.getHistoryList({
|
||||
orderId: oldOrder.value.id,
|
||||
});
|
||||
oldOrder.value = res;
|
||||
}
|
||||
orderInfo.value = res;
|
||||
showOrder.value = true;
|
||||
// oldOrder.value = res;
|
||||
} catch (error) {
|
||||
clearTimeout(createOrderTimer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -580,12 +605,21 @@ onMounted(async () => {
|
||||
};
|
||||
if (noPayStatus[res.status]) {
|
||||
ElMessage.error(noPayStatus[res.status]);
|
||||
refresh();
|
||||
router.replace(route.path);
|
||||
console.log(route.path);
|
||||
setTimeout(() => {
|
||||
refCart.value.carts.dataReset();
|
||||
refresh();
|
||||
}, 2000);
|
||||
return;
|
||||
}
|
||||
if (res.tableCode) {
|
||||
table.value = { tableCode: res.tableCode };
|
||||
}
|
||||
if (res.userId) {
|
||||
const userRes = await shopUserApi.get({ userId: res.userId });
|
||||
user.value = userRes;
|
||||
}
|
||||
if (res) {
|
||||
oldOrder.value = res;
|
||||
orderInfo.value = res;
|
||||
@@ -599,7 +633,10 @@ onMounted(async () => {
|
||||
});
|
||||
|
||||
function refresh() {
|
||||
router.go(0);
|
||||
router.replace(route.path);
|
||||
setTimeout(() => {
|
||||
router.go(1000);
|
||||
}, 1500);
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user