3 Commits

5 changed files with 102 additions and 40 deletions

View File

@@ -122,4 +122,6 @@ export const cancelRefund = (data) => {
method: 'post',
data: data
})
}
}
export const exchange=()=>{}

View File

@@ -130,9 +130,19 @@
</up-button>
</template>
</view>
<view class="fixedview_tow" @tap="$u.debounce(istoricalorders, 1000)">
{{ paymentmethod ? paymentmethod.name : "" }}
</view>
<template v-if="!loading">
<template v-if="cartStore.shopInfo.isUserPay">
<view class="fixedview_tow" @tap="$u.debounce(istoricalorders, 1000)">
{{ paymentmethod ? paymentmethod.name : "" }}
</view>
</template>
<template v-else>
<view class="fixedview_tow disabled">
请前往吧台支付
</view>
</template>
</template>
<!-- <view class="fixedview_tows" @tap="$u.debounce(APIputuserorderclick,1000)">
取消订单
</view> -->
@@ -326,8 +336,8 @@
shop_id: uni.cache.get("shopId"),
time_dis_info: null
});
function socketInit() {
cartsSocket = useWebSocket();
@@ -1030,15 +1040,15 @@
// 跳转到加菜页面
function toJiacai() {
console.log("跳转到加菜页面");
const arr= getCurrentPages()
const arr = getCurrentPages()
console.log(arr);
if(arr.length>=2&&arr[arr.length-2]&&arr[arr.length-2].route=='pages/product/index'){
if (arr.length >= 2 && arr[arr.length - 2] && arr[arr.length - 2].route == 'pages/product/index') {
back();
}else{
uni.cache.set('tableCode',listinfo.tableCode)
uni.cache.set('shopId',listinfo.shopId)
} else {
uni.cache.set('tableCode', listinfo.tableCode)
uni.cache.set('shopId', listinfo.shopId)
uni.redirectTo({
url:'/pages/product/index?noJump=1'
url: '/pages/product/index?noJump=1'
})
}
}
@@ -1111,11 +1121,13 @@
}
const limitTimeDiscountRes = ref(null)
const rechargeConfig=ref(null)
const rechargeConfig = ref(null)
const loading=ref(true)
async function init(opt) {
const res1= await storeuser.actionsproductqueryProduct();
orderVIP.value=res1
console.log('orderVIP',orderVIP.value)
const res1 = await storeuser.actionsproductqueryProduct();
orderVIP.value = res1
console.log('orderVIP', orderVIP.value)
cartStore.clearOrderConfig();
Object.assign(options, opt);
listinfo.id = options.orderId;
@@ -1145,22 +1157,24 @@
}
}
//获取台桌信息
let tableRes = await getTableInfo({
tableCode: options.tableCode || "",
});
console.log("tableRes", tableRes);
listinfo.tableName = tableRes?tableRes.name:'';
listinfo.tableName = tableRes ? tableRes.name : '';
//获取店铺信息
const shopInfoRes = await APIusershopInfodetail({
shopId: options.shopId,
});
//智慧充值
const rechargeConfigRes=await rechargeApi.config({shopId: options.shopId})
if(rechargeConfigRes&&typeof rechargeConfigRes ==='object'){
rechargeConfig.value=rechargeConfigRes
const rechargeConfigRes = await rechargeApi.config({
shopId: options.shopId
})
if (rechargeConfigRes && typeof rechargeConfigRes === 'object') {
rechargeConfig.value = rechargeConfigRes
}
//获取积分配置
pointsApi.pointsConfig().then(res => {
@@ -1179,6 +1193,7 @@
if (shopInfoRes) {
cartStore.shopInfo = shopInfoRes.shopInfo;
}
loading.value=false
await cartStore.goodsInit();
// * 获取会员信息
await nextTick();
@@ -1286,7 +1301,7 @@
if (!isCanUseCharge.value) {
arr.add("余额支付");
}
if(rechargeConfig.value&&!rechargeConfig.value.isEnable){
if (rechargeConfig.value && !rechargeConfig.value.isEnable) {
arr.add("余额支付");
}
@@ -1296,12 +1311,12 @@
watch(() => cartStore.limitTimeDiscount, (newval, oldval) => {
})
watch(()=>cartStore.limitTimeDiscount,(newval)=>{
socketInitPar.time_dis_info=newval
},{
deep:true,
immediate:true
watch(() => cartStore.limitTimeDiscount, (newval) => {
socketInitPar.time_dis_info = newval
}, {
deep: true,
immediate: true
})
/**
@@ -1813,7 +1828,16 @@
font-weight: 400;
font-size: 32rpx;
color: #ffffff;
padding: 14rpx 44rpx;
padding: 0 44rpx;
min-height: 72rpx;
line-height: 72rpx;
box-sizing: border-box;
&.disabled {
background-color: #eee;
color: #999;
font-size: 24rpx;
text-align: center;
}
}
.fixedview_tows {

View File

@@ -62,14 +62,13 @@
<view class="shop-info">
<view class="shop-item">
<view class="cover" v-for="(item1,index1) in item.goods" :key="index1">
<u-image width="56" height="56" radius="10" :src="item1.productImg"
v-if="!item1.isTemporary"></u-image>
<u-image width="56" height="56" radius="10"
v-else-if="item1.isTemporary &&item1.productName=='签子'"
src="https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/5/b97054debd83486ab7ad8e20ca6a360a.png"
></u-image>
src="https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/5/b97054debd83486ab7ad8e20ca6a360a.png"></u-image>
<u-image width="56" height="56" radius="10"
:src="'https://czg-qr-order.oss-cn-beijing.aliyuncs.com/confirmOrder/table.png'"
mode="heightFix" v-else></u-image>
@@ -91,8 +90,27 @@
<view class="footer-wrap">
<view class="btn" @click.stop="$u.debounce(isRemoveOrder(item,index),1000)"
v-if="item.status == 'done' || item.status == 'cancelled'"> 删除订单 </view>
<view class="btn s" @click.stop="$u.debounce(orderinfo(item),1000)"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 去付款 </view>
<template v-if="shopInfo&&shopInfo.id">
<template v-if="shopInfo.id==item.shopId">
<template v-if="shopInfo.isUserPay">
<view class="btn s" @click.stop="$u.debounce(orderinfo(item),1000)"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 去付款 </view>
</template>
<template v-else>
<view class="btn s disabled" @click.stop="()=>{}"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 请前往吧台支付 </view>
</template>
</template>
<template v-else>
<view class="btn s" @click.stop="$u.debounce(orderinfo(item),1000)"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 去付款 </view>
</template>
</template>
<template v-else>
<view class="btn s" @click.stop="$u.debounce(orderinfo(item),1000)"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 去付款 </view>
</template>
<view class="btn s" @click.stop="agignOrder(item)" v-if="item.status != 'unpaid'"> 再来一单 </view>
</view>
@@ -151,7 +169,7 @@
uni.cache.set("shopId", item.shopId);
uni.navigateTo({
url: "/pages/product/index?type=beforehand&order_id=" + item.id +
'&one_more_order=1&shopId='+item.shopId,
'&one_more_order=1&shopId=' + item.shopId,
});
}
})
@@ -167,6 +185,8 @@
}, 0)
}
const shopInfo = uni.cache.get('shopInfo')
function isRemoveOrder(item) {
uni.showModal({
title: '提示',
@@ -523,6 +543,12 @@
font-size: 24rpx;
color: #333333;
margin-left: 32rpx;
&.disabled {
background-color: #eee;
color: #999;
text-align: center;
}
}
.s {

View File

@@ -776,6 +776,7 @@
} from '@/stores/order.js';
import {
computed,
nextTick,
provide,
reactive
} from 'vue';
@@ -933,6 +934,9 @@
//左侧导航点击
const leftTap = (index) => {
console.log('topArr.value[index] ',topArr.value[index] );
console.log('store.height',store.height);
console.log('scrollTop',topArr.value[index] - store.height);
uni.pageScrollTo({
scrollTop: topArr.value[index] - store.height,
duration: 0
@@ -947,6 +951,7 @@
/* 获取元素顶部信息 */
const getElementTop = () => {
console.log('getElementTop');
new Promise((resolve, reject) => {
let view = uni.createSelectorQuery().selectAll('.main-item');
view.boundingClientRect(async (data) => {
@@ -2723,14 +2728,17 @@
tableCode: uni.cache.get('tableCode')
});
oldOrder.value = res;
nextTick(()=>{
getElementTop();
})
if (res && res.id && shopInfo.registerType == 'after' && !e.noJump) {
toHistory();
return;
}
setTimeout(() => {
// 启动网络监听
useSocket.initNetworkListener();
getElementTop();
}, 500);
});
@@ -2811,6 +2819,9 @@
id: ''
};
}
// if(!topArr.value.length){
// getElementTop()
// }
});
//是否自动关闭socket

View File

@@ -118,9 +118,8 @@
onMounted,
getCurrentInstance,
nextTick,
onShow
} from 'vue';
//接口引入
import {
APIcallTabletakeNumber,