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 @@ - + @@ -1028,7 +1028,7 @@ - +