From a51f0729b3b05b09f987f3526379335e3578e6ad Mon Sep 17 00:00:00 2001 From: wangfukang <15630117759@163.com> Date: Wed, 15 Jul 2026 18:07:51 +0800 Subject: [PATCH] 1 --- package1/buyFood/buyFood.vue | 35 ++++++++++++++++++++++++++------ package1/order/orderDetail.vue | 9 ++++---- package1/planet/adventure.vue | 27 +++++++++++++++++++----- package1/runErrand/runErrand.vue | 33 +++++++++++++++++++++++++----- 4 files changed, 84 insertions(+), 20 deletions(-) diff --git a/package1/buyFood/buyFood.vue b/package1/buyFood/buyFood.vue index 96abeeb..dac72b9 100644 --- a/package1/buyFood/buyFood.vue +++ b/package1/buyFood/buyFood.vue @@ -351,20 +351,20 @@ @close="closeAddressBook"> - - + + 填写配送佣金 最低 0.1 元,最高 200 元,最多输入 2 位小数 + :focus="commissionInputFocus" @input="onCommissionPopupInput" /> 佣金为团配送单总佣金,设置后会按照参团人数自动计算均摊 - 取消 + 取消 确定 @@ -582,6 +582,7 @@ selected: 'buzhiding', customCommission: '', commissionInputValue: '', + commissionInputFocus: false, shopItem: {}, cartItems: [], groupItem: null, @@ -849,7 +850,24 @@ }, openCommissionPopup() { this.commissionInputValue = ''; + this.commissionInputFocus = false; this.$refs.commissionPopup.open('center'); + this.$nextTick(() => { + setTimeout(() => { + this.commissionInputFocus = true; + }, 300); + }); + }, + closeCommissionPopup() { + this.commissionInputFocus = false; + uni.hideKeyboard(); + this.$refs.commissionPopup.close(); + }, + onCommissionPopupChange(e) { + if (!e.show) { + this.commissionInputFocus = false; + uni.hideKeyboard(); + } }, onCommissionPopupInput(e) { const value = this.filterCommissionInput(e.detail.value); @@ -887,7 +905,7 @@ } const value = this.formatCommissionValue(this.commissionInputValue); this.customCommission = value; - this.$refs.commissionPopup.close(); + this.closeCommissionPopup(); this.fetchCoupons(); }, openRemarkPopup() { @@ -1009,7 +1027,7 @@ let comm = parseFloat(this.customCommission); //没有输入佣金,直接弹出输入框 if(isNaN(comm)){ - this.$refs.commissionPopup.open() + this.openCommissionPopup(); return; } if (comm < 0.1) { @@ -1935,6 +1953,11 @@ border-radius: 32rpx; background: #fff; box-shadow: 0 28rpx 70rpx rgba(0, 35, 28, 0.18); + transition: transform 0.2s ease; + } + + .commission-popup-keyboard { + transform: translateY(-190rpx); } .commission-popup-title { diff --git a/package1/order/orderDetail.vue b/package1/order/orderDetail.vue index 19d142f..f68d407 100644 --- a/package1/order/orderDetail.vue +++ b/package1/order/orderDetail.vue @@ -397,7 +397,7 @@ + v-if="orderDetail.freeAmount != null && orderDetail.freeAmount > 0 && refundAmountMode == 'user'"> 锦鲤免单 @@ -415,7 +415,7 @@ + v-if="orderDetail.userCouponNum > 0 && refundAmountMode == 'user'"> 优惠券 @@ -424,7 +424,7 @@ - {{orderDetail.status == 0 ? '待支付' : '实付'}} @@ -717,7 +717,7 @@ - 请确认责任方,取消订单需要责任方同意! + 请确认责任方,取消订单需要责任方同意!{{orderDetail.orderType == 3 ? '团员订单会一并退款!' : ''}} 请选择退款原因 @@ -810,6 +810,7 @@ 确认取消订单吗 符合无责取消条件,订单金额将按平台退款处理 + 团员订单会一并退款! diff --git a/package1/planet/adventure.vue b/package1/planet/adventure.vue index 41ae848..f57c6b1 100644 --- a/package1/planet/adventure.vue +++ b/package1/planet/adventure.vue @@ -418,7 +418,7 @@ return cells }, timerText() { - return this.playing ? `${this.timeLeft}s` : '300s限时' + return this.playing ? `${this.timeLeft}s` : `${this.timeLimit}s限时` }, timerPercent() { return Math.max(0, Math.min(100, Math.round(this.timeLeft * 100 / this.timeLimit))) @@ -433,7 +433,7 @@ if (!this.playing) return '开始后进入倒计时' if (this.timeLeft <= 30) return '最后冲刺,槽位别满' if (this.timeLeft <= 60) return '时间紧张,加快决策' - return '300秒内完成排位' + return `${this.timeLimit}秒内完成排位` }, riskText() { if (this.slots.length >= this.slotLimit - 1) return '危险:差1格就满' @@ -484,7 +484,7 @@ const elapsed = Math.floor((Date.now() - this.startTs) / 1000) this.timeLeft = Math.max(0, this.timeLimit - elapsed) if (this.timeLeft <= 0) { - this.failLevel('时间到了', '超过300秒,本次挑战结束。') + this.failLevel('时间到了', `超过${this.timeLimit}秒,本次挑战结束。`) } else { this.startTimer(false) } @@ -726,6 +726,7 @@ return } this.session = res.result + this.applyServerGameSeconds(res.result.gameSeconds) this.playing = true this.startTs = Date.now() this.recordDailyRestartUse() @@ -741,6 +742,12 @@ this.actionLocked = false }) }, + applyServerGameSeconds(gameSeconds) { + const seconds = Number(gameSeconds) + if (!seconds || seconds <= 0) return + this.timeLimit = seconds + this.timeLeft = seconds + }, startFixedMode() { if (!requireLoginToCurrentPage()) return if (!this.fixedSeed && this.isPkMode) { @@ -1360,7 +1367,7 @@ const elapsed = Math.floor((Date.now() - this.startTs) / 1000) this.timeLeft = Math.max(0, this.timeLimit - elapsed) if (this.timeLeft <= 0) { - this.failLevel('时间到了', '超过300秒,本次挑战结束。') + this.failLevel('时间到了', `超过${this.timeLimit}秒,本次挑战结束。`) } }, 1000) }, @@ -1440,10 +1447,20 @@ this.loadHome() this.loadGlory() } else { - this.tui.toast(res.message) + this.showSubmitFailed(res.message) } + }).catch(err => { + this.showSubmitFailed(err && err.message) }) }, + showSubmitFailed(message) { + this.needRebuildOnStart = true + this.modal = { + show: true, + title: '成绩未计入', + sub: message || '成绩提交失败,请重新开始本关后再试。' + } + }, failLevel(title, sub) { this.playing = false this.clearTimer() diff --git a/package1/runErrand/runErrand.vue b/package1/runErrand/runErrand.vue index f287cea..24d16d0 100644 --- a/package1/runErrand/runErrand.vue +++ b/package1/runErrand/runErrand.vue @@ -314,17 +314,17 @@ - - + + 填写配送佣金 最低 0.1 元,最高 200 元,最多输入 2 位小数 + :focus="commissionInputFocus" @input="onCommissionPopupInput" /> - 取消 + 取消 确定 @@ -403,6 +403,7 @@ assignedWorker:null, customCommission:'', commissionInputValue: '', + commissionInputFocus: false, remarkInputValue: '', shopArea: [], kuaidiAreaList: [], @@ -527,7 +528,24 @@ }, openCommissionPopup() { this.commissionInputValue = ''; + this.commissionInputFocus = false; this.$refs.commissionPopup.open('center'); + this.$nextTick(() => { + setTimeout(() => { + this.commissionInputFocus = true; + }, 300); + }); + }, + closeCommissionPopup() { + this.commissionInputFocus = false; + uni.hideKeyboard(); + this.$refs.commissionPopup.close(); + }, + onCommissionPopupChange(e) { + if (!e.show) { + this.commissionInputFocus = false; + uni.hideKeyboard(); + } }, onCommissionPopupInput(e) { const value = this.filterCommissionInput(e.detail.value); @@ -546,7 +564,7 @@ return; } this.customCommission = this.formatCommissionValue(this.commissionInputValue); - this.$refs.commissionPopup.close(); + this.closeCommissionPopup(); /* this.fetchCoupons(); */ }, openRemarkPopup() { @@ -1226,6 +1244,11 @@ border-radius: 32rpx; background: #fff; box-shadow: 0 28rpx 70rpx rgba(0, 35, 28, 0.18); + transition: transform 0.2s ease; + } + + .commission-popup-keyboard { + transform: translateY(-190rpx); } .commission-popup-title {