fix: 更新优惠券页面,订单列表页面,代客下单页面

This commit is contained in:
2025-02-27 16:27:09 +08:00
parent 9ad7ed57c2
commit 022b88557f
15 changed files with 908 additions and 84 deletions

View File

@@ -7,14 +7,19 @@ export interface CartsState {
}
export const useCartsStore = defineStore("carts", () => {
//台桌id
const table_code = ref('');
//当前购物车数据
const list = useStorage<any[]>("carts", []);
//代客下单页面商品缓存
const goods = useStorage<any[]>("Instead_goods", []);
//赠菜
const giftList = useStorage<any[]>("giftList", []);
let goodsMap: { [key: string]: any } = {};
let goodsMap: { [key: string]: any } = useStorage('Instead_goods_map', {});
//当前选中cart
let selListIndex = ref(-1);
//当前选中商品是否是赠菜
@@ -110,7 +115,6 @@ export const useCartsStore = defineStore("carts", () => {
const basic_msg = {
number: 1,
is_pack: 0,
is_gift: 0,
is_temporary: 0,
discount_sale_amount: 0,
@@ -161,10 +165,16 @@ export const useCartsStore = defineStore("carts", () => {
function update(data: any) {
console.log(data);
if (data.number * 1 < data.skuData.suitNum * 1) {
return sendMessage('del', data);
}
sendMessage('edit', data);
}
function updateTag(key: string, val: any, cart: CartsState) {
sendMessage('edit', { ...cart || selCart.value, [key]: val });
function updateTag(key: string, val: any, cart: CartsState = selCart.value) {
if (cart.number * 1 < cart.skuData.suitNum * 1) {
return sendMessage('del', cart);
}
sendMessage('edit', { ...cart, [key]: val });
}
function clear() {
sendMessage('cleanup', {});
@@ -201,7 +211,9 @@ export const useCartsStore = defineStore("carts", () => {
return {
salePrice: skuData ? skuData.salePrice : 0,
coverImg: goods.coverImg,
name: goods.name
name: goods.name,
specInfo: skuData.specInfo,
skuData
}
} else {
return undefined
@@ -252,7 +264,6 @@ export const useCartsStore = defineStore("carts", () => {
}
return v.is_gift
})
console.log(giftList.value)
}
//广播
if (msg.type === "bc") {
@@ -329,12 +340,20 @@ export const useCartsStore = defineStore("carts", () => {
console.log(list.value)
});
}
const delArr = ['skuData', 'coverImg', 'specInfo']
function sendMessage(operate_type: msgType, message: any) {
const msg = { ...message, operate_type: operate_type, table_code: table_code.value }
if (operate_type == 'edit') {
for (let i in delArr) {
delete msg[delArr[i]]
}
}
WebSocketManager.sendMessage(msg);
}
return {
isCanSelectGroup,
goods,
selGoods,
cartsPush,
table_code,