|
|
|
@ -13,17 +13,17 @@ |
|
|
|
<view class="store-hero-copy"> |
|
|
|
<view class="store-hero-badge">团购到店</view> |
|
|
|
<view class="store-hero-title">约上同学一起省</view> |
|
|
|
<view class="store-hero-sub">支付后到店核销,拼成更划算</view> |
|
|
|
<view class="store-hero-sub">支付后到店核销,拼团更划算</view> |
|
|
|
</view> |
|
|
|
<view class="store-verify-card"> |
|
|
|
<view class="verify-icon">核</view> |
|
|
|
<view> |
|
|
|
<view class="verify-title">到店核销</view> |
|
|
|
<view class="verify-sub">无需配送</view> |
|
|
|
<view class="verify-sub">同校热拼</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="store-float-tag tag-a">拼团价</view> |
|
|
|
<view class="store-float-tag tag-b">同校热拼</view> |
|
|
|
<!-- <view class="store-float-tag tag-a">拼团价</view> |
|
|
|
<view class="store-float-tag tag-b">同校热拼</view> --> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="tab-wrap" v-if="!isStoreGroupOrder"> |
|
|
|
@ -313,7 +313,7 @@ |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="fee-row"> |
|
|
|
<view class="fee-row remark-row"> |
|
|
|
<view class="fee-label"> |
|
|
|
备注 |
|
|
|
</view> |
|
|
|
@ -333,6 +333,9 @@ |
|
|
|
¥{{totalAmountCalc.toFixed(2)}} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="minimum-pay-tip" v-if="isMinimumPayAmount"> |
|
|
|
最低需支付0.01元 |
|
|
|
</view> |
|
|
|
<view class="bottom-placeholder"></view> |
|
|
|
<view class="buy-bottom"> |
|
|
|
<view class="bottom-btn" @tap="submitPay"> |
|
|
|
@ -408,6 +411,9 @@ |
|
|
|
¥<text |
|
|
|
style="font-size: 60rpx;">{{backendTotalAmount ? backendTotalAmount.toFixed(2) : totalAmountCalc.toFixed(2)}}</text> |
|
|
|
</view> |
|
|
|
<view class="minimum-pay-tip pay-minimum-tip" v-if="isMinimumPayAmount"> |
|
|
|
最低需支付0.01元 |
|
|
|
</view> |
|
|
|
<view style="height: 40rpx;text-align: center;color: red;" v-if="isGroupBuy && isStoreGroupOrder"> |
|
|
|
若24小时内拼团失败,将会为您自动退款 |
|
|
|
</view> |
|
|
|
@ -440,6 +446,9 @@ |
|
|
|
<!-- 拼团分享弹出层 --> |
|
|
|
<uni-popup ref="pintuanPopup" background-color="#fff" @change="onPintuanPopupChange"> |
|
|
|
<view class="pintuan-popup"> |
|
|
|
<view class="pintuan-popup-close" @tap.stop="$refs.pintuanPopup.close()"> |
|
|
|
<uni-icons type="closeempty" size="22" color="#00231C"></uni-icons> |
|
|
|
</view> |
|
|
|
<img src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/ecd00dab1c9c44198d765bc08bc1bd71.png" alt="" |
|
|
|
style="position: absolute;top: 0;right: 0;width: 240rpx;height: 180rpx;" @tap="$refs.pintuanPopup.close()"> |
|
|
|
<view style="position: absolute;bottom: 0;width: 100%;height: 760rpx;"> |
|
|
|
@ -516,7 +525,7 @@ |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</uni-popup> |
|
|
|
<delivery-time-op @timeCallback="timeCallback" :dodge="true" ref='model' :content="content" :barHidth='600' |
|
|
|
<delivery-time-op @timeCallback="timeCallback" :dodge="false" ref='model' :content="content" :barHidth='600' |
|
|
|
title="选择送达时间"> |
|
|
|
> </delivery-time-op> |
|
|
|
<view class="free-order-mask" v-if="freeOrderEffectVisible" @tap.stop="closeFreeOrderEffect"> |
|
|
|
@ -720,6 +729,10 @@ |
|
|
|
} |
|
|
|
return total > 0 ? total : 0.01; |
|
|
|
}, |
|
|
|
isMinimumPayAmount() { |
|
|
|
const amount = this.backendTotalAmount ? this.backendTotalAmount : this.totalAmountCalc; |
|
|
|
return Number(amount).toFixed(2) === '0.01'; |
|
|
|
}, |
|
|
|
preDiscountTotal() { |
|
|
|
if(this.isPaotui==true){ |
|
|
|
return this.goodsAmountCalc + this.packageFee + this.deliveryFeeCalc; |
|
|
|
@ -742,7 +755,8 @@ |
|
|
|
return baseValue + transferTime; |
|
|
|
} |
|
|
|
const value = Number(this.shopItem.groupDeliveryTime); |
|
|
|
const baseTime = isNaN(value) ? validCookingTime + 30 : (this.shopItem.groupDeliveryTimeIncludesTransfer == 1 ? Math.max(0, value - transferTime) : value); |
|
|
|
const rawBaseTime = !isNaN(value) && value > 0 ? value : validCookingTime + 30; |
|
|
|
const baseTime = this.shopItem.groupDeliveryTimeIncludesTransfer == 1 ? Math.max(0, rawBaseTime - transferTime) : rawBaseTime; |
|
|
|
return baseTime + transferTime; |
|
|
|
}, |
|
|
|
supportShopDelivery() { |
|
|
|
@ -892,12 +906,17 @@ |
|
|
|
normalizeCustomCommission() { |
|
|
|
this.customCommission = this.formatCommissionValue(this.customCommission); |
|
|
|
}, |
|
|
|
getEffectiveDeliveryDurationMinutes() { |
|
|
|
const duration = Number(this.deliveryDurationMinutes); |
|
|
|
return !isNaN(duration) && duration > 0 ? duration : 30; |
|
|
|
}, |
|
|
|
updateImmediateTimeStr() { |
|
|
|
const now = new Date(); |
|
|
|
const startTime = new Date(now); |
|
|
|
const endTime = new Date(now); |
|
|
|
const deliveryDuration = Math.max(this.getEffectiveDeliveryDurationMinutes(), 30); |
|
|
|
startTime.setMinutes(startTime.getMinutes() + 25); |
|
|
|
endTime.setMinutes(endTime.getMinutes() + this.deliveryDurationMinutes); |
|
|
|
endTime.setMinutes(endTime.getMinutes() + deliveryDuration); |
|
|
|
this.immediateTimeStr = `${this.formatClockTime(startTime)}-${this.formatClockTime(endTime)}`; |
|
|
|
}, |
|
|
|
refreshDeliveryTimeByModeChange() { |
|
|
|
@ -1058,15 +1077,15 @@ |
|
|
|
checkTime(type) { |
|
|
|
if (type === this.formData.isImmediately) { |
|
|
|
if (type === false) { |
|
|
|
this.$refs.model.open() |
|
|
|
this.generateDeliveryTimes() |
|
|
|
this.$refs.model.open() |
|
|
|
} |
|
|
|
return; |
|
|
|
} |
|
|
|
this.formData.isImmediately = type; |
|
|
|
if (this.formData.isImmediately === false) { |
|
|
|
this.$refs.model.open() |
|
|
|
this.generateDeliveryTimes() |
|
|
|
this.$refs.model.open() |
|
|
|
} |
|
|
|
}, |
|
|
|
checkVoucher(type) { |
|
|
|
@ -1180,7 +1199,7 @@ |
|
|
|
if (!this.formData.deliveryTime || this.formData.deliveryTime === '自动送达' || this.formData.deliveryTime === |
|
|
|
'尽快送达'){ |
|
|
|
const now = new Date(); |
|
|
|
now.setMinutes(now.getMinutes() + this.deliveryDurationMinutes); |
|
|
|
now.setMinutes(now.getMinutes() + this.getEffectiveDeliveryDurationMinutes()); |
|
|
|
return this.formatDateTimeValue(now); |
|
|
|
}else{ |
|
|
|
let timeStr = this.formData.deliveryTime; |
|
|
|
@ -1372,6 +1391,30 @@ |
|
|
|
this.freeOrderEffectVisible = false; |
|
|
|
}, |
|
|
|
//时间选择器获取时间数据 |
|
|
|
getNextDeliverySlot(date) { |
|
|
|
const interval = 20; |
|
|
|
const slot = new Date(date); |
|
|
|
slot.setSeconds(0, 0); |
|
|
|
const remainder = slot.getMinutes() % interval; |
|
|
|
if (remainder !== 0) { |
|
|
|
slot.setMinutes(slot.getMinutes() + interval - remainder); |
|
|
|
} else { |
|
|
|
slot.setMinutes(slot.getMinutes() + interval); |
|
|
|
} |
|
|
|
return slot; |
|
|
|
}, |
|
|
|
buildDeliveryTimeList(startTime, endTime) { |
|
|
|
const interval = 20; |
|
|
|
const list = []; |
|
|
|
const cursor = new Date(startTime); |
|
|
|
while (cursor <= endTime) { |
|
|
|
list.push({ |
|
|
|
timestr: this.formatClockTime(cursor) |
|
|
|
}); |
|
|
|
cursor.setMinutes(cursor.getMinutes() + interval); |
|
|
|
} |
|
|
|
return list; |
|
|
|
}, |
|
|
|
generateDeliveryTimes() { |
|
|
|
const now = new Date(); |
|
|
|
const today = new Date(now); |
|
|
|
@ -1394,44 +1437,27 @@ |
|
|
|
}]; |
|
|
|
|
|
|
|
const earliestTime = new Date(now); |
|
|
|
earliestTime.setMinutes(earliestTime.getMinutes() + this.deliveryDurationMinutes); |
|
|
|
earliestTime.setMinutes(earliestTime.getMinutes() + this.getEffectiveDeliveryDurationMinutes()); |
|
|
|
|
|
|
|
// 预约配送从预计最晚送达时间后的下一个半小时点开始 |
|
|
|
let nextHour = earliestTime.getHours(); |
|
|
|
let nextMinute = earliestTime.getMinutes() <= 30 ? 30 : 0; |
|
|
|
if (earliestTime.getMinutes() > 30) { |
|
|
|
nextHour += 1; |
|
|
|
} |
|
|
|
const todayStartTime = this.getNextDeliverySlot(earliestTime); |
|
|
|
const todayEndTime = new Date(today); |
|
|
|
todayEndTime.setHours(23, 40, 0, 0); |
|
|
|
todayTimelist.push(...this.buildDeliveryTimeList(todayStartTime, todayEndTime)); |
|
|
|
|
|
|
|
// 从下一个半小时点开始,直到 23:30 |
|
|
|
for (let h = nextHour; h <= 23; h++) { |
|
|
|
const startMin = (h === nextHour) ? nextMinute : 0; |
|
|
|
for (let m = startMin; m < 60; m += 30) { |
|
|
|
if (h === 23 && m > 30) continue; // 不超过 23:30 |
|
|
|
const timeStr = `${h.toString().padStart(2, '0')}:${m.toString().padStart(2, '0')}`; |
|
|
|
todayTimelist.push({ |
|
|
|
timestr: timeStr |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// ----- 生成明天的时间列表(全天 00:00 ~ 23:30)----- |
|
|
|
const tomorrowTimelist = []; |
|
|
|
for (let h = 0; h <= 23; h++) { |
|
|
|
for (let m = 0; m < 60; m += 30) { |
|
|
|
if (h === 23 && m > 30) continue; |
|
|
|
const timeStr = `${h.toString().padStart(2, '0')}:${m.toString().padStart(2, '0')}`; |
|
|
|
tomorrowTimelist.push({ |
|
|
|
timestr: timeStr |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
// ----- 生成明天的时间列表(全天 00:00 ~ 23:40,每 20 分钟一档)----- |
|
|
|
const tomorrowStartTime = new Date(tomorrow); |
|
|
|
tomorrowStartTime.setHours(0, 0, 0, 0); |
|
|
|
const tomorrowEndTime = new Date(tomorrow); |
|
|
|
tomorrowEndTime.setHours(23, 40, 0, 0); |
|
|
|
const tomorrowTimelist = this.buildDeliveryTimeList(tomorrowStartTime, tomorrowEndTime); |
|
|
|
|
|
|
|
this.content = [{ |
|
|
|
id: 'today', |
|
|
|
timezh: todayStr, |
|
|
|
timelist: todayTimelist |
|
|
|
}, |
|
|
|
{ |
|
|
|
id: 'tomorrow', |
|
|
|
timezh: tomorrowStr, |
|
|
|
timelist: tomorrowTimelist |
|
|
|
} |
|
|
|
@ -2224,6 +2250,28 @@ |
|
|
|
font-size: 34rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.minimum-pay-tip { |
|
|
|
width: 100%; |
|
|
|
min-height: 42rpx; |
|
|
|
min-height: 42rpx; |
|
|
|
margin: 0 0 12rpx; |
|
|
|
padding: 8rpx 18rpx; |
|
|
|
border-radius: 999rpx; |
|
|
|
background: rgba(255, 245, 236, 0.96); |
|
|
|
border: 1rpx solid rgba(255, 112, 67, 0.24); |
|
|
|
color: #f0441f; |
|
|
|
font-size: 22rpx; |
|
|
|
font-weight: 800; |
|
|
|
line-height: 32rpx; |
|
|
|
text-align: center; |
|
|
|
box-sizing: border-box; |
|
|
|
} |
|
|
|
|
|
|
|
.pay-minimum-tip { |
|
|
|
width: 86%; |
|
|
|
margin: -2rpx auto 12rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.bottom-placeholder { |
|
|
|
height: 166rpx; |
|
|
|
} |
|
|
|
@ -2390,6 +2438,21 @@ |
|
|
|
position: relative; |
|
|
|
} |
|
|
|
|
|
|
|
.pintuan-popup-close { |
|
|
|
position: absolute; |
|
|
|
top: 24rpx; |
|
|
|
right: 24rpx; |
|
|
|
z-index: 5; |
|
|
|
width: 58rpx; |
|
|
|
height: 58rpx; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
justify-content: center; |
|
|
|
border-radius: 50%; |
|
|
|
background: rgba(255, 255, 255, 0.86); |
|
|
|
box-shadow: 0 8rpx 20rpx rgba(0, 35, 28, 0.12); |
|
|
|
} |
|
|
|
|
|
|
|
.kaituan1 { |
|
|
|
height: 120rpx; |
|
|
|
font-size: 44rpx; |
|
|
|
@ -2806,7 +2869,8 @@ |
|
|
|
|
|
|
|
.store-group-checkout { |
|
|
|
background: |
|
|
|
radial-gradient(circle at 84% 110rpx, rgba(255, 229, 190, 0.74), transparent 270rpx), |
|
|
|
radial-gradient(circle at 84% 110rpx, rgba(255, 229, 190, 0.78), transparent 270rpx), |
|
|
|
radial-gradient(circle at 10% 520rpx, rgba(255, 125, 78, 0.1), transparent 260rpx), |
|
|
|
linear-gradient(180deg, #fff0df 0%, #fff8f0 420rpx, #fffaf6 100%); |
|
|
|
color: #3f2618; |
|
|
|
} |
|
|
|
@ -2815,16 +2879,49 @@ |
|
|
|
background: |
|
|
|
radial-gradient(circle at 78% 22%, rgba(255, 246, 221, 0.72), transparent 240rpx), |
|
|
|
linear-gradient(135deg, #ff8a5c 0%, #ffbd70 58%, #ffe2bf 100%); |
|
|
|
height: 360rpx; |
|
|
|
position: relative; |
|
|
|
overflow: hidden; |
|
|
|
border-bottom-left-radius: 40rpx; |
|
|
|
border-bottom-right-radius: 40rpx; |
|
|
|
box-shadow: 0 18rpx 46rpx rgba(255, 132, 80, 0.2); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .box1, |
|
|
|
.store-group-checkout .ziqu-box, |
|
|
|
.store-group-checkout .goods-card, |
|
|
|
.store-group-checkout .coupon-row { |
|
|
|
border-color: rgba(255, 218, 183, 0.82); |
|
|
|
box-shadow: 0 16rpx 38rpx rgba(178, 102, 48, 0.12); |
|
|
|
.store-group-checkout .box1 { |
|
|
|
margin-top: 22rpx; |
|
|
|
padding: 28rpx 24rpx 24rpx; |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.86); |
|
|
|
box-shadow: 0 18rpx 44rpx rgba(178, 102, 48, 0.1); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .ziqu-box { |
|
|
|
margin-top: -4rpx; |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.86); |
|
|
|
box-shadow: 0 18rpx 44rpx rgba(178, 102, 48, 0.1); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .ziqu-address { |
|
|
|
width: calc(100% - 48rpx); |
|
|
|
min-height: 128rpx; |
|
|
|
margin: 68rpx auto 24rpx; |
|
|
|
background: |
|
|
|
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 250, 246, 0.94)); |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.76); |
|
|
|
box-shadow: 0 12rpx 28rpx rgba(178, 102, 48, 0.08); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .ziqu-address img { |
|
|
|
margin-top: 42rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-card { |
|
|
|
align-items: stretch; |
|
|
|
padding: 18rpx; |
|
|
|
margin-bottom: 18rpx; |
|
|
|
background: |
|
|
|
linear-gradient(180deg, rgba(255, 253, 250, 0.98), rgba(255, 248, 242, 0.92)); |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.8); |
|
|
|
box-shadow: 0 10rpx 24rpx rgba(178, 102, 48, 0.07); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .ziqu-xuanfu, |
|
|
|
@ -2836,6 +2933,25 @@ |
|
|
|
box-shadow: 0 16rpx 30rpx rgba(255, 126, 39, 0.22); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .shop-title { |
|
|
|
position: relative; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
margin-bottom: 10rpx; |
|
|
|
padding-left: 18rpx; |
|
|
|
line-height: 54rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .shop-title::before { |
|
|
|
content: ''; |
|
|
|
position: absolute; |
|
|
|
left: 0; |
|
|
|
width: 8rpx; |
|
|
|
height: 28rpx; |
|
|
|
border-radius: 999rpx; |
|
|
|
background: linear-gradient(180deg, #ff7444, #ffb35e); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .shop-title, |
|
|
|
.store-group-checkout .goods-name, |
|
|
|
.store-group-checkout .total-label { |
|
|
|
@ -2855,6 +2971,148 @@ |
|
|
|
color: #f0441f; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-img { |
|
|
|
width: 136rpx; |
|
|
|
height: 136rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-img img { |
|
|
|
border-radius: 22rpx; |
|
|
|
box-shadow: 0 10rpx 24rpx rgba(178, 102, 48, 0.12); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-content { |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
min-width: 0; |
|
|
|
padding-left: 18rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-name { |
|
|
|
font-size: 29rpx; |
|
|
|
line-height: 40rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .goods-content-bottom { |
|
|
|
margin-top: auto; |
|
|
|
line-height: 46rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .group-price-tag { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
margin-left: 12rpx; |
|
|
|
padding: 6rpx 14rpx; |
|
|
|
background: #fff0e8; |
|
|
|
border: 1rpx solid rgba(255, 116, 68, 0.28); |
|
|
|
box-shadow: inset 0 0 0 1rpx rgba(255, 255, 255, 0.62); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .group-price-tag text + text { |
|
|
|
margin-left: 8rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .fee-list { |
|
|
|
margin-top: 26rpx; |
|
|
|
padding: 8rpx; |
|
|
|
border-top: 0; |
|
|
|
border-radius: 28rpx; |
|
|
|
background: |
|
|
|
linear-gradient(180deg, rgba(255, 250, 246, 0.96), rgba(255, 246, 239, 0.78)); |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.74); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .coupon-row, |
|
|
|
.store-group-checkout .fee-row { |
|
|
|
min-height: 86rpx; |
|
|
|
padding: 0 18rpx; |
|
|
|
border-radius: 22rpx; |
|
|
|
box-sizing: border-box; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .coupon-row { |
|
|
|
margin-bottom: 8rpx; |
|
|
|
background: #fff; |
|
|
|
border-top: 0; |
|
|
|
box-shadow: 0 8rpx 20rpx rgba(178, 102, 48, 0.06); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .fee-row + .fee-row { |
|
|
|
border-top: 0; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .coupon-label, |
|
|
|
.store-group-checkout .fee-label { |
|
|
|
font-size: 28rpx; |
|
|
|
font-weight: 800; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .coupon-available { |
|
|
|
padding: 8rpx 16rpx; |
|
|
|
border-radius: 999rpx; |
|
|
|
background: #fff4ec; |
|
|
|
color: #ef6c2f; |
|
|
|
font-size: 23rpx; |
|
|
|
font-weight: 900; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .coupon-empty { |
|
|
|
padding: 8rpx 16rpx; |
|
|
|
border-radius: 999rpx; |
|
|
|
background: #f7eee8; |
|
|
|
color: #b38a70; |
|
|
|
font-size: 23rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .remark-row { |
|
|
|
align-items: flex-start; |
|
|
|
padding-top: 16rpx; |
|
|
|
padding-bottom: 14rpx; |
|
|
|
background: #fff; |
|
|
|
box-shadow: 0 8rpx 20rpx rgba(178, 102, 48, 0.05); |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .remark-row .fee-label { |
|
|
|
flex: 0 0 90rpx; |
|
|
|
line-height: 64rpx; |
|
|
|
color: #3f2618; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .remark-box { |
|
|
|
min-width: 0; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .remark-box .remark-value { |
|
|
|
height: auto; |
|
|
|
min-height: 64rpx; |
|
|
|
line-height: 34rpx; |
|
|
|
padding: 15rpx 20rpx; |
|
|
|
text-align: left; |
|
|
|
border-radius: 20rpx; |
|
|
|
background: #fff7f1; |
|
|
|
border: 1rpx solid rgba(255, 226, 205, 0.86); |
|
|
|
color: #5d3827; |
|
|
|
white-space: normal; |
|
|
|
display: -webkit-box; |
|
|
|
-webkit-line-clamp: 2; |
|
|
|
-webkit-box-orient: vertical; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .remark-placeholder { |
|
|
|
color: #b58d72; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .total-row { |
|
|
|
margin-top: 14rpx; |
|
|
|
padding: 0 8rpx; |
|
|
|
border-top: 0; |
|
|
|
} |
|
|
|
|
|
|
|
.store-group-checkout .total-price { |
|
|
|
font-size: 38rpx; |
|
|
|
font-weight: 900; |
|
|
|
} |
|
|
|
|
|
|
|
.store-hero-effect { |
|
|
|
position: absolute; |
|
|
|
left: 0; |
|
|
|
|