From 27d2d0b231794e2374190dd99dd69452033719ca Mon Sep 17 00:00:00 2001
From: lihaoyuan <18278596806@163.com>
Date: Sat, 15 Nov 2025 10:13:28 +0800
Subject: [PATCH] =?UTF-8?q?update:=E6=96=B0=E5=A2=9E=E5=BA=97=E9=93=BA?=
=?UTF-8?q?=E5=BC=80=E4=B8=9A=E7=AD=B9=E5=A4=87=E9=A2=84=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=EF=BC=8C=E4=BB=A5=E5=8F=8A=E6=AD=A3=E5=B8=B8=E4=BC=91=E6=81=AF?=
=?UTF-8?q?=E7=9A=84=E5=BA=97=E9=93=BA=E4=B8=8D=E5=9C=A8=E8=90=A5=E4=B8=9A?=
=?UTF-8?q?=E6=97=B6=E9=97=B4=E5=8F=AF=E4=BB=A5=E4=B8=8B=E7=AC=AC=E4=BA=8C?=
=?UTF-8?q?=E5=A4=A9=E4=B9=8B=E5=90=8E=E7=9A=84=E9=A2=84=E8=AE=A2=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../delivery-time-op/delivery-time-op.vue | 3 +-
pages/checkout/checkout.vue | 60 ++++++++++++++-----
pages/product/detail.vue | 4 +-
3 files changed, 50 insertions(+), 17 deletions(-)
diff --git a/components/delivery-time-op/delivery-time-op.vue b/components/delivery-time-op/delivery-time-op.vue
index 98a3e2a..10a1d6e 100644
--- a/components/delivery-time-op/delivery-time-op.vue
+++ b/components/delivery-time-op/delivery-time-op.vue
@@ -4,7 +4,7 @@
@@ -214,6 +214,7 @@ export default {
}
.add {
+ height: 380px;
transform: translateY(0);
}
diff --git a/pages/checkout/checkout.vue b/pages/checkout/checkout.vue
index ed6ed62..d08c44c 100644
--- a/pages/checkout/checkout.vue
+++ b/pages/checkout/checkout.vue
@@ -136,8 +136,9 @@
+ v-if="!shouldHideImmediateDelivery"
+ :class="{ active: activeTab === 'immediate' }"
+ @click="setActiveTab('immediate')">
立即配送
{{ immediateDeliveryTime }}
@@ -810,6 +811,7 @@ export default {
items: [],
UserMembership: {},
},
+ store_ids_time:0,
selectedTime:"",
dateTitle:"",
activeTab: "immediate",
@@ -823,7 +825,7 @@ export default {
paymentData: {},
integral: "",
discount: 0,
- immediateDeliveryTime:"",
+ immediateDeliveryTime:"",
disbursements: "",
IsUseCoupon: 1,
canSelfpick: 0, //是否允许自提
@@ -908,15 +910,24 @@ export default {
loginPopup,
deliveryTimeOp
},
- computed: mapState([
- "Config",
- "StateCode",
- "notice",
- "plantformInfo",
- "shopInfo",
- "userInfo",
- "hasLogin",
- ]),
+ computed: {
+ ...mapState([
+ "Config",
+ "StateCode",
+ "notice",
+ "plantformInfo",
+ "shopInfo",
+ "userInfo",
+ "hasLogin",
+ ]),
+ shouldHideImmediateDelivery() {
+ const forbidStates = [3, 12];
+ // 检查所有店铺的items中是否有store_biz_state为12的
+ return this.submitinfo.items.some(store_item =>
+ forbidStates.includes(store_item.store_biz_state)
+ );
+ }
+ },
onLoad: async function (options) {
uni.setNavigationBarTitle({
title: this.__("订单提交"),
@@ -1074,6 +1085,10 @@ export default {
});
},
setActiveTab(tab) {
+ // 如果需要隐藏立即配送且用户点击了立即配送,则直接返回
+ if (tab === 'immediate' && this.shouldHideImmediateDelivery) {
+ return;
+ }
this.activeTab = tab;
if (tab === 'immediate') {
this.selectedTime = "";
@@ -1241,7 +1256,7 @@ export default {
url: this.Config.URL.cart.getTimeSlots, // 替换为实际的接口地址
method: 'GET',
data: {
- store_ids: 80
+ store_ids: this.store_ids_time||''
}
});
@@ -1375,6 +1390,12 @@ export default {
data: params,
success: function (data, status, msg, code) {
if (200 == status) {
+ // 提取所有店铺ID并拼接成字符串
+ const storeIds = data.items.map(store => store.store_id).join(',');
+ that.setData({ store_ids_time: storeIds });
+
+ // 立即获取时间槽
+ that.getTimeSlots();
for (var i = 0; i <= data.transportIds.length; i++) {
if (data.transportIds[i] == 10) {
that.delivery = true;
@@ -1437,7 +1458,13 @@ export default {
that.setData({
order_amount: data.orderSelMoneyAmount,
});
-
+ // 检查是否需要自动切换到预约配送
+ if (that.shouldHideImmediateDelivery) {
+ that.setData({
+ activeTab: 'scheduled',
+ booking_state: 2
+ });
+ }
//地址信息监测
if (ud_id > 0) {
//that.checkDelivery(ud_id);
@@ -2320,6 +2347,11 @@ submitorder: function (e) {
},
mounted() {
this.calculateImmediateDeliveryTime();
+ // 检查是否需要自动切换到预约配送
+ if (this.shouldHideImmediateDelivery) {
+ this.activeTab = 'scheduled';
+ this.booking_state = 2;
+ }
},
};
diff --git a/pages/product/detail.vue b/pages/product/detail.vue
index 56f0631..8067cab 100644
--- a/pages/product/detail.vue
+++ b/pages/product/detail.vue
@@ -878,7 +878,7 @@
-