代合合并

This commit is contained in:
2025-12-16 17:01:48 +08:00
10 changed files with 170 additions and 59 deletions

View File

@@ -32,11 +32,17 @@ uni.conf = {
baseUrlwws,
};
console.log('uni.conf',uni.conf)
export const changeEnv = (env) => {
if (env === "test") {
let baseUrl = "http://192.168.1.42"
// #ifdef H5
baseUrl = "/api"
// #endif
uni.conf = {
debug: true,
baseUrl: "http://192.168.1.42",
baseUrl,
phpUrl: 'http://192.168.1.42:8787/api/',
phpChatWx: 'ws://192.168.1.42:2348',
version: 100,

View File

@@ -21,7 +21,7 @@
<image class="icon" :src="item.url" mode="aspectFill" />
<view class="method_list_top_cen">
<view class="name"> {{ item.name }} </view>
<view class="method_list_bom" v-if="item.type == 1">
<view class="method_list_bom" v-if="item.name == '余额支付'">
<text class="balance">
当前余额{{ orderVIP ? orderVIP.amount || 0 : 0 }}</text
>

View File

@@ -100,17 +100,61 @@ function close() {
function save() {
show.value = false;
// 保存图片到相册
uni.saveImageToPhotosAlbum({
filePath: code.value,
success: function () {
uni.showToast({
title: "保存成功",
icon: 'none'
});
},
fail: function (err) {
console.log('保存失败原因:', err);
// 判断是否为授权拒绝(微信小程序授权拒绝的特征)
if (err.errMsg.includes('auth deny') || err.errMsg.includes('authorize fail')) {
// 弹出提示引导用户去设置页开启授权
uni.showModal({
title: '授权提示',
content: '保存图片需要授权访问相册,请前往设置开启授权',
showCancel: true,
cancelText: '取消',
confirmText: '去设置',
success: function (res) {
if (res.confirm) {
// 跳转到微信小程序的授权设置页
uni.openSetting({
success: function (settingRes) {
// 检查用户是否开启了相册授权
if (settingRes.authSetting['scope.writePhotosAlbum']) {
uni.showToast({
title: '授权成功,可重新保存',
icon: 'none'
});
} else {
uni.showToast({
title: '未开启授权,保存失败',
icon: 'none'
});
}
},
fail: function () {
uni.showToast({
title: "保存失败",
title: '打开设置失败',
icon: 'none'
});
}
});
}
}
});
} else {
// 非授权问题的保存失败(如文件路径错误、系统问题等)
uni.showToast({
title: "保存失败",
icon: 'none'
});
}
},
});

View File

@@ -612,6 +612,9 @@ const showInviteCode = computed(() => {
) {
return true;
}
if( config.openType == "auto" ){
return true;
}
if (!state.distributionUser && config.openType == "manual") {
return true;
}

View File

@@ -760,6 +760,7 @@
usePoints.value = false;
cartStore.setUserPoints(0);
} else {
cartStore.fullReductionActivities = fullReductionActivities;
if (back_discountActivity) {
calcDiscountActivity();
}
@@ -795,6 +796,9 @@
}
console.log("当前满减门槛", discountActivity.value);
}
let fullReductionActivities=[]
async function getDiscountActivity() {
const res = await discountActivityApi.config({
shopId: uni.cache.get("shopId"),
@@ -804,6 +808,7 @@
}
discountActivityRes.value = res;
cartStore.fullReductionActivities = [res];
fullReductionActivities=[res];
calcDiscountActivity();
}

View File

@@ -150,6 +150,7 @@
import {
back
} from "@/utils/uniapp.js";
import * as limitTimeDiscountapi from '@/common/api/market/limitTimeDiscount.js';
import {
onLoad,
onUnload
@@ -1096,6 +1097,8 @@
Object.assign(listinfo, res);
getOrderInfoAfterCalcInit(res);
}
const limitTimeDiscountRes=ref(null)
async function init(opt) {
await storeuser.actionsproductqueryProduct();
@@ -1117,6 +1120,17 @@
if (res && typeof res == "object") {
setOrder(res);
}
}else{
const limitRes = await limitTimeDiscountapi.getConfig({
shopId: uni.cache.get('shopId')
});
if (limitRes && typeof limitRes == 'object') {
limitTimeDiscountRes.value = limitRes;
} else {
limitTimeDiscountRes.value = null;
}
}
//获取店铺信息
const shopInfoRes = await APIusershopInfodetail({

View File

@@ -85,7 +85,7 @@
<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(showpopupclick(item),1000)"
<view class="btn s" @click.stop="$u.debounce(orderinfo(item),1000)"
v-if="item.status == 'unpaid' || item.status == 'paying'"> 去付款 </view>
<view class="btn s" @click.stop="agignOrder(item)" v-if="item.status == 'done'"> 再来一单 </view>

View File

@@ -606,7 +606,8 @@
import isBetween from 'dayjs/plugin/isBetween';
import {
APIshopUserInfo,APIusershopInfodetail
APIshopUserInfo,
APIusershopInfodetail
} from "@/common/api/member.js";
dayjs.extend(isBetween);
import {
@@ -1587,9 +1588,33 @@
}
if (Message.operate_type == 'rottable_error') {
uni.showModal({
title: '提示',
content: Message.msg,
showCancel: true,
cancelText: '舍弃',
confirmText: '合并',
success(res) {
if (res.confirm) {
startUseTable({
is_hb: 2
})
} else {
startUseTable({
is_hb: 2,
give_up: 1
})
}
}
})
}
// 转桌成功
if (Message.operate_type == 'rottable' && Message.status == 1) {
if (Message.operate_type == 'rottable') {
console.log('转桌成功了');
console.log(Message);
// uni.showToast({
// title: '扫码成功,请下单',
@@ -1663,7 +1688,7 @@
}
// 提示
if (Message.status == 0 && Message.type != 'no_suit_num' && Message.type != 'time_discount') {
if (Message.status == 0 && Message.type != 'no_suit_num' && Message.type != 'time_discount'&&Message.operate_type != 'rottable_error') {
uni.showToast({
title: Message.msg,
icon: 'none'
@@ -1683,7 +1708,6 @@
}
if (Message.operate_type == 'time_discount_save') {
cartStore.limitTimeDiscount = Message.data;
console.log('time_discount_save', cartStore.limitTimeDiscount);
}
//除去p 每次返回都回执消息
@@ -2086,19 +2110,21 @@
}
// 开始换桌
function startUseTable() {
function startUseTable(par) {
tableShopInfo.value = uni.cache.get('shopInfo');
const oldTableCode = uni.cache.get('tableCode');
const cartIds = cartStore.carts.map((item) => item.id);
const data = {
is_hb: 1,
...par,
type: 'shopping',
operate_type: 'rottable',
account: tableShopInfo.value.phone,
table_code: oldTableCode,
new_table_code: uni.cache.get('shopTable').tableCode,
cart_id: cartIds,
shop_id: tableShopInfo.value.id
shop_id: tableShopInfo.value.id,
};
websocketsendMessage(data);
@@ -2183,6 +2209,17 @@
} else {
await userStore.actionsproductqueryShop(newTableCode);
await userStore.actionsproductqueryProduct();
const res = await APIhistoryOrder({
tableCode: uni.cache.get('tableCode')
});
if (res && res.id) {
return uni.showModal({
title: '提示',
content: '目标台桌使用中无法转桌',
showCancel: false
})
}
if (shopInfoRes.shopInfo.isTableFee === 1) {
// 免桌位费,直接换桌
startUseTable();
@@ -2191,6 +2228,7 @@
tableInfo.value = uni.cache.get('shopTable');
showTableInfoPeopleNumPopup.value = true;
}
}
} catch (error) {
console.log(error);
@@ -2227,6 +2265,7 @@
if (e.one_more_order && e.order_id) {
extraInitPar.one_more_order = 1
extraInitPar.order_id = e.order_id
extraInitPar.user_id = uni.cache.get('userInfo').id||''
}
useSocket.connect({

View File

@@ -426,7 +426,7 @@ export const useCartsStore = defineStore("cart", () => {
}
// 提示
if (Message.status == 0 && Message.type != "no_suit_num") {
if (Message.status == 0 && Message.type != "no_suit_num"&& Message.operate_type != "rottable_error") {
uni.showToast({
title: Message.msg,
icon: "none",
@@ -438,7 +438,6 @@ export const useCartsStore = defineStore("cart", () => {
limitTimeDiscount.value = Message.data;
}
if (Message.operate_type == "time_discount_save") {
console.log("time_discount_save", Message.data);
limitTimeDiscount.value = Message.data;
}

View File

@@ -1,5 +1,7 @@
// vite.config.js正确的 CommonJS 配置)
const { defineConfig } = require("vite");
const {
defineConfig
} = require("vite");
const uni = require("@dcloudio/vite-plugin-uni").default; // uni 插件需要 .default
const AutoImport = require("unplugin-auto-import/vite"); // 旧版本 AutoImport 直接导出函数,无需 .default
@@ -29,13 +31,12 @@ module.exports = defineConfig({
}),
],
server: {
hmr: true,
proxy: {
"/api": {
target: "http://192.168.1.42",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, ""),
secure: false,
'/api': {
// target: 'https://cashier.sxczgkj.com', // 目标服务器地址
target: 'http://192.168.1.42/', // 目标服务器地址
changeOrigin: true, // 是否更改请求源
rewrite: path => path.replace(/^\/api/, '')
},
},
},