You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1037 lines
26 KiB
1037 lines
26 KiB
<template> |
|
<view class="group-con"> |
|
<view class="header"> |
|
<cu-custom :isBack="true" :isCenter="true"> |
|
<block slot="backText"> |
|
<view class="backImg"> |
|
<image src="@/static/images/back-btn.png" mode=""></image> |
|
</view> |
|
</block> |
|
<block slot="content"> |
|
<view class="tab-title">拼团详情</view> |
|
</block> |
|
</cu-custom> |
|
</view> |
|
|
|
<view class="content-box"> |
|
<view class="banner"> |
|
<swiper @change="swiperChange"> |
|
<swiper-item v-for="(item, index) in storeCombination.sliderImageArr" :key="index"> |
|
<image :src="item" mode="aspectFill"></image> |
|
</swiper-item> |
|
</swiper> |
|
<view class="dots acea-row"> |
|
<view :class="'dot ' + (swiperCurrent == index?'on':'')" v-for="(item, index) in storeCombination.sliderImageArr" :key="index"></view> |
|
</view> |
|
</view> |
|
<view class="goods-info"> |
|
<view class="price-box acea-row"> |
|
<view class="">¥{{ storeCombination.price }}</view> |
|
<view class="productPrice">¥{{ storeCombination.productPrice }}</view> |
|
</view> |
|
<view class="goods-name">{{ storeCombination.title }}</view> |
|
<view class="info-text">{{ storeCombination.info }}</view> |
|
</view> |
|
<image class="link-icon left" src="../../../static/images/link-icon.png" mode=""></image> |
|
<image class="link-icon right" src="../../../static/images/link-icon.png" mode=""></image> |
|
<view class="people-num-box"> |
|
<view class="people-num"> |
|
<view class="num">{{ storeCombination.people || 0 }}</view> |
|
<view class="">人团</view> |
|
</view> |
|
</view> |
|
</view> |
|
|
|
<view class="content-box"> |
|
<view class="pink-state" v-if="pinkBool == 0">进行中</view> |
|
<view class="pink-state" v-else-if="pinkBool == 1">拼团成功</view> |
|
<view class="pink-state" v-else-if="pinkBool == -1">拼团失败</view> |
|
<view class="tip" v-if="pinkBool == 0">还差{{count}}人,赶快邀请好友来拼团吧</view> |
|
<view class="group-countdown acea-row row-center-wrapper" v-if="pinkBool == 0 && pinkT.stopTime"> |
|
<view style="padding-right: 8rpx;">剩余</view> |
|
<count-down :isDay="true" :dayText="' 天 '" :hourText="' 时 '" :minuteText="' 分 '" :secondText="' 秒'" :datatime="pinkT.stopTime"></count-down> |
|
<view>结束</view> |
|
</view> |
|
<view class="user-box acea-row row-around"> |
|
<view class="user-item leader"> |
|
<image v-if="pinkT.avatar" class="avatar" :src="pinkT.avatar"></image> |
|
<view v-else class="no-avatar acea-row row-middle"> |
|
<image src="@/static/images/yanjie-logo.png" mode="widthFix"></image> |
|
</view> |
|
<view class="leader-tip">团长</view> |
|
</view> |
|
<view class="" v-for="(item, index) in (storeCombination.people-1)" :key="index"> |
|
<!-- <view class="" v-for="(item, index) in Array(storeCombination.people-1)" :key="index"> --> |
|
<view class="user-item leader" v-if="pinkAll[index]"> |
|
<image v-if="pinkAll[index].avatar" class="avatar" :src="pinkAll[index].avatar"></image> |
|
<view v-else class="no-avatar acea-row row-middle"> |
|
<image src="@/static/images/yanjie-logo.png" mode="widthFix"></image> |
|
</view> |
|
</view> |
|
<view class="user-item" v-else> |
|
<!-- <image class="avatar" :src="`${$VUE_APP_RESOURCES_URL}/images/vacancy.png`"></image> --> |
|
</view> |
|
</view> |
|
</view> |
|
|
|
<view class="btn-box"> |
|
<button class="btn bg-color-red" open-type="share" v-if="userBool === 1 && isOk == 0 && pinkBool === 0">邀请好友参团</button> |
|
<!-- @click="goPoster" --> |
|
|
|
<view class="btn bg-color-red" v-else-if="userBool === 0 && pinkBool === 0 && count > 0" @click="pay">立刻拼团</view> |
|
<view class="btn bg-color-red" v-if="pinkBool === 1 || pinkBool === -1" @click="goDetail(storeCombination.id)">再次开团</view> |
|
<view class="btn" @click="getCombinationRemove" v-if="userBool === 1 && pinkBool === 0">取消开团</view> |
|
<view class="btn" v-if="pinkBool === 1" @click="goOrder">查看订单信息</view> |
|
</view> |
|
</view> |
|
|
|
<!-- <view class="tui-goods-item" v-if="storeCombination"> |
|
<image :src="storeCombination.image" class="tui-goods-img"></image> |
|
<view class="tui-goods-center"> |
|
<view class="tui-goods-name">{{ storeCombination.title }}</view> |
|
<view class="tui-price__box"> |
|
<view class="tui-goods-price"> |
|
<view class="tui-size-24">¥</view> |
|
<view class="tui-price-large">{{ storeCombination.price.split('.')[0] || 0 }}</view> |
|
<view class="tui-size-24">.{{ storeCombination.price.split('.')[1] || 0 }}</view> |
|
<text>已拼2020件</text> |
|
</view> |
|
<view class="tui-price-tag">{{ storeCombination.people || 0 }}人团</view> |
|
</view> |
|
</view> |
|
</view> --> |
|
|
|
<!-- <view class="tui-group__box tui-mtop__20"> |
|
<tui-divider backgroundColor="#fff" width="70%" gradual> |
|
<view class="tui-divider__content"> |
|
<text v-if="pinkBool == 0">进行中</text> |
|
<text v-if="pinkBool == 1">拼团成功</text> |
|
<text v-if="pinkBool == -1">拼团失败</text> |
|
</view> |
|
</tui-divider> |
|
<view class="tui-group__title" v-if="pinkBool == 0"> |
|
<text>还差</text> |
|
<text class="tui-color__red">{{ count }}</text> |
|
<text>人,赶快邀请好友来拼团吧</text> |
|
</view> |
|
<view class="tui-group-countdown" v-if="pinkBool == 0"> |
|
<view class="tui-countdown-right">剩余</view> |
|
<count-down :isDay="true" :tipText="'倒计时 '" :dayText="' 天 '" :hourText="' 时 '" :minuteText="' 分 '" :secondText="' 秒'" :datatime="pinkT.stopTime"></count-down> |
|
<view class="tui-countdown-left">结束</view> |
|
</view> |
|
<view class="tui-user__box"> |
|
<view class="tui-user__item"> |
|
<view class="tui-avatar__box tui-size"> |
|
<image class="tui-size" :src="pinkT.avatar"></image> |
|
<view class="tui-team__leader">团长</view> |
|
</view> |
|
<view class="tui-nickname">不许人间见白头</view> |
|
</view> |
|
<view class="tui-user__item" v-for="(item, index) in Array(storeCombination.people-1)" :key="index"> |
|
<view class="tui-avatar__box tui-size" v-if="pinkAll[index]"><image class="tui-size" :src="pinkAll[index].avatar"></image></view> |
|
<view class="tui-avatar__box tui-user__none" v-else><image class="tui-size" :src="`${$VUE_APP_RESOURCES_URL}/images/vacancy.png`"></image></view> |
|
<view class="tui-nickname">小可爱本人</view> |
|
</view> |
|
</view> |
|
<view class="tui-btn__box"> |
|
<tui-button type="danger" height="88rpx" shadow shape="circle" v-if="userBool === 1 && isOk == 0 && pinkBool === 0" @click="goPoster">邀请好友参团</tui-button> |
|
<tui-button type="warning" height="88rpx" shadow shape="circle" v-else-if="userBool === 0 && pinkBool === 0 && count > 0" @click="pay">我要参团</tui-button> |
|
<tui-button type="danger" height="88rpx" shadow shape="circle" v-if="pinkBool === 1 || pinkBool === -1" @click="goDetail(storeCombination.id)">再次开团</tui-button> |
|
<tui-button type="warning" height="88rpx" shadow shape="circle" @click="getCombinationRemove" v-if="userBool === 1 && pinkBool === 0">取消开团</tui-button> |
|
<tui-button type="danger" height="88rpx" shadow shape="circle" v-if="pinkBool === 1" @click="goOrder">查看订单信息</tui-button> |
|
</view> |
|
</view> --> |
|
|
|
</view> |
|
</template> |
|
<script> |
|
import CountDown from '@/components/CountDown' |
|
import { getCombinationPink, getCombinationRemove } from '@/api/activity' |
|
import { postCartAdd } from '@/api/store' |
|
import { isWeixin, parseQuery, handleQrCode } from '@/utils/index' |
|
|
|
const NAME = 'GroupRule' |
|
export default { |
|
name: NAME, |
|
components: { |
|
CountDown, |
|
}, |
|
props: {}, |
|
data: function() { |
|
return { |
|
swiperCurrent: 0, |
|
currentPinkOrder: '', //当前拼团订单 |
|
isOk: 0, //判断拼团是否完成 |
|
pinkBool: 0, //判断拼团是否成功|0=失败,1=成功 |
|
userBool: 0, //判断当前用户是否在团内|0=未在,1=在 |
|
pinkAll: [], //团员 |
|
pinkT: {}, //团长信息 |
|
storeCombination: { |
|
price: '0.00', |
|
productPrice: '0.00', |
|
}, //拼团产品 |
|
pinkId: 0, |
|
uniqueId: '', |
|
count: 0, //拼团剩余人数 |
|
iShidden: false, |
|
userInfo: {}, |
|
} |
|
}, |
|
watch: { |
|
$yroute(n) { |
|
var that = this |
|
// console.log('res.target', n) |
|
if (n.name === NAME) { |
|
that.pinkId = that.$yroute.query.id |
|
that.getCombinationPink() |
|
} |
|
}, |
|
}, |
|
mounted() { |
|
let url = handleQrCode() |
|
if (url) { |
|
this.pinkId = url.pinkId |
|
console.log('QrCode pinkId', url) |
|
} else { |
|
this.pinkId = this.$yroute.query.id |
|
console.log('pinkId', this.$yroute.query) |
|
} |
|
this.getCombinationPink() |
|
}, |
|
onShareAppMessage(res) { |
|
if (res.from === 'button') {// 来自页面内分享按钮 |
|
// console.log('res.target', res.target) |
|
} |
|
return { |
|
title: '快来一起拼团! '+this.storeCombination.title, |
|
path: '/pages/activity/GroupRule/index?id='+this.pinkId, |
|
// path: '/pages/activity/GroupRule/index?id='+this.id+'&spread='+this.$store.state.userInfo.uid, |
|
imageUrl: this.storeCombination.image |
|
} |
|
}, |
|
methods: { |
|
swiperChange(e) { |
|
this.swiperCurrent = e.detail.current; |
|
}, |
|
pay: function() { |
|
var that = this |
|
var data = {} |
|
data.productId = that.storeCombination.productId |
|
data.cartNum = that.pinkT.totalNum |
|
data.uniqueId = that.uniqueId |
|
data.combinationId = that.storeCombination.id |
|
data.new = 1 |
|
postCartAdd(data) |
|
.then(res => { |
|
that.$yrouter.push({ |
|
path: '/pages/order/OrderSubmission/index', |
|
query: { |
|
id: res.data.cartId, |
|
pinkid: that.pinkId, |
|
}, |
|
}) |
|
}) |
|
.catch(err => { |
|
uni.showToast({ |
|
title: err.msg || err.response.data.msg || err.response.data.message, |
|
icon: 'none', |
|
duration: 2000, |
|
}) |
|
}) |
|
}, |
|
goPoster: function() { |
|
var that = this |
|
this.$yrouter.push({ |
|
path: '/pages/activity/Poster/index', |
|
query: { |
|
id: that.pinkId, |
|
type: 1, |
|
}, |
|
}) |
|
}, |
|
goOrder: function() { |
|
var that = this |
|
this.$yrouter.push({ |
|
path: '/pages/order/OrderDetails/index', |
|
query: { |
|
id: that.currentPinkOrder, |
|
}, |
|
}) |
|
}, |
|
//拼团列表 |
|
goList: function() { |
|
this.$yrouter.push({ |
|
path: '/pages/activity/GoodsGroup/index', |
|
}) |
|
}, |
|
//拼团详情 |
|
goDetail: function(id) { |
|
this.$yrouter.push({ |
|
path: '/pages/activity/GroupDetails/index', |
|
query: { |
|
id, |
|
}, |
|
}) |
|
}, |
|
//拼团信息 |
|
getCombinationPink: function() { |
|
var that = this |
|
getCombinationPink(that.pinkId).then(res => { |
|
that.$set(that, 'storeCombination', res.data.storeCombination) |
|
that.$set(that, 'pinkT', res.data.pinkT) |
|
that.$set(that, 'pinkAll', res.data.pinkAll) |
|
that.$set(that, 'count', res.data.count) |
|
that.$set(that, 'userBool', res.data.userBool) |
|
that.$set(that, 'pinkBool', res.data.pinkBool) |
|
that.$set(that, 'isOk', res.data.isOk) |
|
that.$set(that, 'currentPinkOrder', res.data.currentPinkOrder) |
|
that.$set(that, 'uniqueId', res.data.uniqueId) |
|
that.$set(that, 'userInfo', res.data.userInfo) |
|
}) |
|
}, |
|
//拼团取消 |
|
getCombinationRemove: function() { |
|
var that = this |
|
getCombinationRemove({ |
|
id: that.pinkId, |
|
cid: that.storeCombination.id, |
|
}) |
|
.then(res => { |
|
uni.showToast({ |
|
title: res.msg, |
|
icon: 'none', |
|
duration: 2000, |
|
}) |
|
}) |
|
.catch(res => { |
|
uni.showToast({ |
|
title: res.msg, |
|
icon: 'none', |
|
duration: 2000, |
|
}) |
|
}) |
|
}, |
|
lookAll: function() { |
|
this.iShidden = !this.iShidden |
|
}, |
|
}, |
|
} |
|
</script> |
|
|
|
<style lang="less" scoped> |
|
.header { |
|
.tab-title { |
|
font-size: 32rpx; |
|
font-family: PingFang SC; |
|
font-weight: 600; |
|
color: #2DB5AE; |
|
line-height: 42rpx; |
|
} |
|
.backImg { |
|
width: 88rpx; |
|
height: 62rpx; |
|
padding-left: 26rpx; |
|
image { |
|
width: 100%; |
|
height: 100%; |
|
} |
|
} |
|
} |
|
|
|
.content-box { |
|
margin: 20rpx 32rpx; |
|
width: 686rpx; |
|
// height: 317px; |
|
background: #F5F6F8; |
|
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0, 0, 0, 0.06); |
|
border-radius: 16rpx; |
|
position: relative; |
|
.banner { |
|
width: 100%; |
|
height: 428rpx; |
|
border-radius: 16rpx 16rpx 0rpx 0rpx; |
|
position: relative; |
|
swiper { |
|
width: 100%; |
|
height: 100%; |
|
border-radius: 16rpx 16rpx 0rpx 0rpx; |
|
swiper-item { |
|
border-radius: 16rpx 16rpx 0rpx 0rpx; |
|
image { |
|
width: 100%; |
|
height: 100%; |
|
border-radius: 16rpx 16rpx 0rpx 0rpx; |
|
} |
|
} |
|
} |
|
.dots { |
|
position: absolute; |
|
bottom: 16rpx; |
|
left: 50%; |
|
transform: translateX(-50%); |
|
.dot { |
|
margin: 0rpx 8rpx; |
|
width: 8rpx; |
|
height: 8rpx; |
|
background: #FFFFFF; |
|
border-radius: 50%; |
|
} |
|
.on { |
|
width: 34rpx; |
|
background: #2DB5AE; |
|
border-radius: 6rpx; |
|
} |
|
} |
|
} |
|
.link-icon { |
|
width: 32rpx; |
|
height: 80rpx; |
|
position: absolute; |
|
bottom: -54rpx; |
|
z-index: 2; |
|
} |
|
.left { |
|
left: 54rpx; |
|
} |
|
.right { |
|
right: 54rpx; |
|
} |
|
} |
|
|
|
.content-box .goods-info { |
|
padding: 24rpx 24rpx 42rpx; |
|
.price-box { |
|
font-size: 48rpx; |
|
font-family: Futura; |
|
font-weight: 600; |
|
color: #3A3A3C; |
|
line-height: 64rpx; |
|
.productPrice { |
|
font-size: 30rpx; |
|
color: #999999; |
|
line-height: 40rpx; |
|
padding-left: 16rpx; |
|
padding-top: 18rpx; |
|
} |
|
} |
|
.goods-name { |
|
font-size: 34rpx; |
|
font-family: SourceHanSansSCVF; |
|
font-weight: 600; |
|
color: #3A3A3C; |
|
line-height: 50rpx; |
|
} |
|
.info-text { |
|
font-size: 20rpx; |
|
font-family: SourceHanSansSCVF; |
|
font-weight: 600; |
|
color: #999999; |
|
line-height: 28rpx; |
|
} |
|
} |
|
|
|
.content-box .people-num-box { |
|
position: absolute; |
|
top: 0; |
|
right: 24rpx; |
|
width: 126rpx; |
|
height: 88rpx; |
|
overflow: hidden; |
|
padding: 0rpx 20rpx; |
|
.people-num { |
|
width: 100%; |
|
height: 88rpx; |
|
border-radius: 0rpx 0rpx 20rpx 20rpx; |
|
background: #2DB5AE; |
|
font-size: 18rpx; |
|
font-family: PingFang SC; |
|
font-weight: 600; |
|
color: #F5F6F8; |
|
line-height: 18rpx; |
|
text-align: center; |
|
padding-top: 2rpx; |
|
.num { |
|
font-size: 58rpx; |
|
font-family: Futura; |
|
font-weight: bold; |
|
color: #FFFFFF; |
|
line-height: 58rpx; |
|
} |
|
} |
|
.people-num::before { |
|
width: 40rpx; |
|
height: 40rpx; |
|
content: ""; |
|
position: absolute; |
|
top: 0rpx; |
|
left: -20rpx; |
|
border-radius: 20rpx; |
|
box-shadow: 20rpx -20rpx 0rpx #2DB5AE; |
|
} |
|
.people-num::after { |
|
width: 40rpx; |
|
height: 40rpx; |
|
content: ""; |
|
position: absolute; |
|
top: 0rpx; |
|
right: -20rpx; |
|
border-radius: 20rpx; |
|
box-shadow: -20rpx -20rpx 0rpx #2DB5AE; |
|
} |
|
} |
|
|
|
.content-box { |
|
.pink-state { |
|
padding: 46rpx 0rpx 12rpx; |
|
font-size: 34rpx; |
|
font-family: SourceHanSansSCVF; |
|
font-weight: 600; |
|
color: #3A3A3C; |
|
line-height: 50rpx; |
|
text-align: center; |
|
} |
|
.tip { |
|
font-size: 26rpx; |
|
font-family: PingFang SC; |
|
font-weight: 600; |
|
color: #3A3A3C; |
|
line-height: 38rpx; |
|
padding-bottom: 8rpx; |
|
text-align: center; |
|
} |
|
.group-countdown { |
|
font-size: 24rpx; |
|
font-family: PingFang SC; |
|
font-weight: 600; |
|
color: #3A3A3C; |
|
line-height: 32rpx; |
|
} |
|
} |
|
|
|
.user-box { |
|
padding: 46rpx 32rpx 0rpx; |
|
.user-item { |
|
width: 92rpx; |
|
height: 92rpx; |
|
box-shadow: 0rpx 0rpx 20rpx 6rpx rgba(0,0,0,0.08); |
|
border: 2rpx solid #D8D8D8; |
|
border-radius: 50%; |
|
.avatar { |
|
width: 100%; |
|
height: 100%; |
|
// width: 84rpx; |
|
// height: 84rpx; |
|
border-radius: 50%; |
|
background-color: #FFFFFF; |
|
} |
|
.no-avatar { |
|
width: 100%; |
|
height: 100%; |
|
// width: 84rpx; |
|
// height: 84rpx; |
|
border-radius: 50%; |
|
background-color: #FFFFFF; |
|
padding-left: 6rpx; |
|
padding-right: 5rpx; |
|
image { |
|
width: 100%; |
|
} |
|
} |
|
.leader-tip { |
|
width: 46rpx; |
|
height: 24rpx; |
|
background: linear-gradient(135deg, #39D396 0%, #1B8DCC 100%); |
|
border-radius: 16rpx; |
|
font-size: 16rpx; |
|
font-family: PingFang SC; |
|
font-weight: 600; |
|
color: #F5F6F8; |
|
line-height: 24rpx; |
|
text-align: center; |
|
position: absolute; |
|
bottom: -6rpx; |
|
left: 26rpx; |
|
} |
|
} |
|
.leader { |
|
width: 92rpx; |
|
height: 92rpx; |
|
padding: 4rpx; |
|
border: none; |
|
background: linear-gradient(135deg, rgba(27, 141, 204, 1), rgba(57, 211, 150, 1)); |
|
position: relative; |
|
} |
|
} |
|
|
|
.btn-box { |
|
padding: 38rpx 0rpx 26rpx; |
|
button { |
|
padding: 0; |
|
} |
|
.btn { |
|
margin: 0rpx auto 20rpx; |
|
width: 418rpx; |
|
height: 70rpx; |
|
background: #D8D8D8; |
|
border-radius: 16rpx; |
|
font-size: 26rpx; |
|
font-family: PingFang SC; |
|
font-weight: 500; |
|
color: #999999; |
|
line-height: 70rpx; |
|
text-align: center; |
|
} |
|
} |
|
|
|
|
|
// .tui-goods-item { |
|
// width: 100%; |
|
// padding: 20rpx 25rpx; |
|
// box-sizing: border-box; |
|
// display: flex; |
|
// justify-content: space-between; |
|
// background-color: #fff; |
|
// } |
|
|
|
// .tui-goods-img { |
|
// width: 180rpx; |
|
// height: 180rpx; |
|
// display: block; |
|
// flex-shrink: 0; |
|
// } |
|
|
|
// .tui-goods-center { |
|
// flex: 1; |
|
// padding: 12rpx 12rpx; |
|
// box-sizing: border-box; |
|
// display: flex; |
|
// flex-direction: column; |
|
// justify-content: space-between; |
|
// } |
|
|
|
// .tui-goods-name { |
|
// word-break: break-all; |
|
// overflow: hidden; |
|
// text-overflow: ellipsis; |
|
// display: -webkit-box; |
|
// -webkit-box-orient: vertical; |
|
// -webkit-line-clamp: 2; |
|
// font-size: 26rpx; |
|
// line-height: 32rpx; |
|
// } |
|
|
|
// .tui-price__box { |
|
// width: 100%; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: space-between; |
|
// } |
|
|
|
// .tui-goods-price { |
|
// width: 100%; |
|
// display: flex; |
|
// align-items: flex-end; |
|
// font-size: 24rpx; |
|
// color: #eb0909; |
|
// } |
|
// .tui-goods-price text { |
|
// font-size: 24rpx; |
|
// line-height: 24rpx; |
|
// color: #999; |
|
// padding-left: 20rpx; |
|
// } |
|
|
|
// .tui-size-24 { |
|
// font-size: 24rpx; |
|
// line-height: 24rpx; |
|
// } |
|
|
|
// .tui-price-large { |
|
// font-size: 32rpx; |
|
// line-height: 30rpx; |
|
// font-weight: 500; |
|
// } |
|
|
|
// .tui-price-tag { |
|
// height: 38rpx; |
|
// border: 1rpx solid #eb0909; |
|
// border-radius: 6rpx; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// font-size: 24rpx; |
|
// line-height: 24rpx; |
|
// transform: scale(0.8); |
|
// transform-origin: 100% center; |
|
// border-radius: 6rpx; |
|
// padding: 0 8rpx; |
|
// color: #eb0909; |
|
// flex-shrink: 0; |
|
// } |
|
// .tui-mtop__20 { |
|
// margin-top: 20rpx; |
|
// } |
|
// .tui-divider__content { |
|
// display: flex; |
|
// align-items: center; |
|
// } |
|
// .tui-divider__content image { |
|
// width: 36rpx; |
|
// height: 36rpx; |
|
// margin-right: 20rpx; |
|
// } |
|
// .tui-divider__content text { |
|
// font-size: 34rpx; |
|
// line-height: 34rpx; |
|
// color: #000000; |
|
// font-weight: bold; |
|
// } |
|
// .tui-group__time { |
|
// font-size: 24rpx; |
|
// font-weight: 400; |
|
// color: #999; |
|
// text-align: center; |
|
// } |
|
// .tui-group__box { |
|
// width: 100%; |
|
// padding: 50rpx 25rpx; |
|
// box-sizing: border-box; |
|
// background-color: #fff; |
|
// } |
|
// .tui-group__title { |
|
// width: 100%; |
|
// font-size: 34rpx; |
|
// line-height: 34rpx; |
|
// font-weight: 500; |
|
// text-align: center; |
|
// } |
|
// .tui-color__red { |
|
// color: #eb0909; |
|
// } |
|
// .tui-group-countdown { |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// font-size: 24rpx; |
|
// color: #666666; |
|
// padding-top: 20rpx; |
|
// } |
|
|
|
// .tui-countdown-right { |
|
// padding-right: 6rpx; |
|
// } |
|
|
|
// .tui-countdown-left { |
|
// padding-left: 6rpx; |
|
// } |
|
// .tui-user__box { |
|
// width: 100%; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// padding-top: 60rpx; |
|
// } |
|
// .tui-user__item { |
|
// max-width: 128rpx; |
|
// margin: 0 40rpx; |
|
// } |
|
// .tui-size { |
|
// width: 100rpx; |
|
// height: 100rpx; |
|
// border-radius: 50%; |
|
// } |
|
// .tui-avatar__box { |
|
// position: relative; |
|
// border: 4rpx solid #eb0909; |
|
// } |
|
// .tui-user__none { |
|
// width: 108rpx; |
|
// height: 108rpx; |
|
// border: 0; |
|
// } |
|
// .tui-avatar__box image { |
|
// display: block; |
|
// width: 100%; |
|
// height: 100%; |
|
// } |
|
// .tui-team__leader { |
|
// position: absolute; |
|
// width: 64rpx; |
|
// height: 28rpx; |
|
// font-size: 24rpx; |
|
// background-color: #eb0909; |
|
// color: #fff; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// border-radius: 30px; |
|
// left: 50%; |
|
// top: -14rpx; |
|
// transform: translateX(-50%); |
|
// z-index: 10; |
|
// } |
|
// .tui-nickname { |
|
// font-size: 24rpx; |
|
// color: #999; |
|
// white-space: nowrap; |
|
// overflow: hidden; |
|
// text-overflow: ellipsis; |
|
// text-align: center; |
|
// padding-top: 12rpx; |
|
// } |
|
// .tui-btn__box { |
|
// padding-top: 60rpx; |
|
// } |
|
|
|
// .tui-group__text { |
|
// width: 100%; |
|
// display: flex; |
|
// align-items: center; |
|
// } |
|
|
|
// .tui-group-title { |
|
// font-size: 30rpx; |
|
// line-height: 30rpx; |
|
// padding-left: 16rpx; |
|
// border-left: 2px solid #eb0909; |
|
// box-sizing: border-box; |
|
// } |
|
|
|
// .tui-sub__info { |
|
// font-size: 26rpx; |
|
// padding-right: 30rpx; |
|
// } |
|
|
|
// .tui-group__start .tui-group-title { |
|
// border-left: 0; |
|
// padding-left: 0; |
|
// } |
|
// .tui-group__start .tui-sub__info { |
|
// padding-right: 0; |
|
// } |
|
// .tui-step__box { |
|
// width: 100%; |
|
// height: 210rpx; |
|
// background: #fff; |
|
// padding: 0 60rpx; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: space-between; |
|
// box-sizing: border-box; |
|
// } |
|
|
|
// .tui-step-item { |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// flex-direction: column; |
|
// font-size: 26rpx; |
|
// color: #666666; |
|
// } |
|
|
|
// .tui-step-item image { |
|
// width: 64rpx; |
|
// height: 55rpx; |
|
// flex-shrink: 0; |
|
// } |
|
|
|
// .tui-step-item image:first-child { |
|
// width: 60rpx !important; |
|
// } |
|
|
|
// .tui-step-arrow { |
|
// height: 90rpx; |
|
// } |
|
|
|
// .tui-step-arrow image { |
|
// width: 11rpx; |
|
// height: 20rpx; |
|
// flex-shrink: 0; |
|
// } |
|
|
|
// .tui-step-text { |
|
// line-height: 26rpx; |
|
// padding-top: 24rpx; |
|
// } |
|
// .tui-between { |
|
// justify-content: space-between; |
|
// } |
|
// .tui-btn__box .tui-btn { |
|
// margin-bottom: 30rpx !important; |
|
// } |
|
|
|
/*拼团玩法介绍 modal*/ |
|
// .tui-modal__title { |
|
// text-align: center; |
|
// font-weight: bold; |
|
// padding-bottom: 8rpx; |
|
// } |
|
// .tui-modal__p { |
|
// font-size: 26rpx; |
|
// color: #888; |
|
// padding-top: 20rpx; |
|
// } |
|
// .tui-modal__btn { |
|
// width: 100%; |
|
// padding: 60rpx 0 20rpx; |
|
// display: flex; |
|
// justify-content: center; |
|
// } |
|
// .tui-hot__title { |
|
// font-size: 30rpx; |
|
// line-height: 30rpx; |
|
// color: #333; |
|
// font-weight: bold; |
|
// } |
|
|
|
/*========商品 start======*/ |
|
|
|
// .tui-product__box { |
|
// width: 100%; |
|
// padding: 0 25rpx 60rpx 25rpx; |
|
// box-sizing: border-box; |
|
// } |
|
|
|
// .tui-product-list { |
|
// display: flex; |
|
// justify-content: space-between; |
|
// flex-direction: row; |
|
// flex-wrap: wrap; |
|
// box-sizing: border-box; |
|
// } |
|
|
|
// .tui-product-container { |
|
// flex: 1; |
|
// margin-right: 10rpx; |
|
// } |
|
|
|
// .tui-product-container:last-child { |
|
// margin-right: 0; |
|
// } |
|
|
|
// .tui-pro-item { |
|
// width: 100%; |
|
// margin-bottom: 10rpx; |
|
// background: #fff; |
|
// box-sizing: border-box; |
|
// border-radius: 12rpx; |
|
// overflow: hidden; |
|
// transition: all 0.15s ease-in-out; |
|
// } |
|
|
|
// .tui-flex-list { |
|
// display: flex; |
|
// margin-bottom: 1rpx !important; |
|
// } |
|
|
|
// .tui-pro-img { |
|
// width: 100%; |
|
// display: block; |
|
// flex-shrink: 0; |
|
// background-color: #f5f5f5; |
|
// } |
|
|
|
// .tui-proimg-list { |
|
// width: 280rpx; |
|
// height: 280rpx !important; |
|
// flex-shrink: 0; |
|
// border-radius: 12rpx; |
|
// } |
|
|
|
// .tui-pro-content { |
|
// flex: 1; |
|
// display: flex; |
|
// flex-direction: column; |
|
// justify-content: space-between; |
|
// box-sizing: border-box; |
|
// padding: 20rpx; |
|
// } |
|
|
|
// .tui-pro-tit { |
|
// color: #2e2e2e; |
|
// font-size: 26rpx; |
|
// word-break: break-all; |
|
// overflow: hidden; |
|
// text-overflow: ellipsis; |
|
// display: -webkit-box; |
|
// -webkit-box-orient: vertical; |
|
// -webkit-line-clamp: 2; |
|
// } |
|
|
|
// .tui-price__box { |
|
// width: 100%; |
|
// display: flex; |
|
// align-items: center; |
|
// padding-top: 12rpx; |
|
// } |
|
|
|
// .tui-price { |
|
// display: flex; |
|
// align-items: flex-end; |
|
// color: #eb0909; |
|
// } |
|
|
|
// .tui-price__small { |
|
// font-size: 24rpx; |
|
// line-height: 24rpx; |
|
// } |
|
|
|
// .tui-price__large { |
|
// font-size: 34rpx; |
|
// line-height: 32rpx; |
|
// font-weight: 600; |
|
// } |
|
|
|
// .tui-price__original { |
|
// font-size: 24rpx; |
|
// line-height: 24rpx; |
|
// text-decoration: line-through; |
|
// color: #999; |
|
// padding-top: 10rpx; |
|
// padding-left: 12rpx; |
|
// } |
|
|
|
// .tui-group-btn { |
|
// max-width: 312rpx; |
|
// height: 48rpx; |
|
// border-radius: 6rpx; |
|
// background: #eb0909; |
|
// display: flex; |
|
// align-items: center; |
|
// padding: 4rpx; |
|
// margin-top: 10rpx; |
|
// box-sizing: border-box; |
|
// } |
|
|
|
// .tui-flex-btn { |
|
// height: 100%; |
|
// flex: 1; |
|
// text-align: center; |
|
// font-size: 26rpx; |
|
// line-height: 26rpx; |
|
// font-weight: 400; |
|
// color: #fff; |
|
// display: flex; |
|
// align-items: center; |
|
// justify-content: center; |
|
// } |
|
|
|
// .tui-flex-btn:first-child { |
|
// background: #fff; |
|
// } |
|
|
|
// .tui-group-text { |
|
// font-size: 25rpx; |
|
// line-height: 25rpx; |
|
// transform: scale(0.8); |
|
// transform-origin: 0 center; |
|
// padding-top: 30rpx; |
|
// color: #999; |
|
// } |
|
|
|
// .tui-color-red { |
|
// color: #eb0909; |
|
// } |
|
|
|
/*======商品======= end*/ |
|
</style>
|
|
|