| .. | .. |
|---|
| 7 | 7 | <view class="logo"> |
|---|
| 8 | 8 | <image :src="logoUrl" mode="scaleToFill"></image> |
|---|
| 9 | 9 | </view> |
|---|
| 10 | | - <view @click="goToLink({url:'/pages/goods_search/index','name':'搜索商品'},'search')" |
|---|
| 11 | | - :style="{'width':searchWidth+'px','lineHeight':menuHeight+'px','height':menuHeight+'px','borderRadius':menuHeight/2+'px'}" |
|---|
| 10 | + <view @click="goToLink({ url: '/pages/goods_search/index', 'name': '搜索商品' }, 'search')" |
|---|
| 11 | + :style="{ 'width': searchWidth + 'px', 'lineHeight': menuHeight + 'px', 'height': menuHeight + 'px', 'borderRadius': menuHeight / 2 + 'px' }" |
|---|
| 12 | 12 | class="input"><text class="iconfont icon-xiazai5"></text> |
|---|
| 13 | 13 | <text>搜索商品</text> |
|---|
| 14 | 14 | </view> |
|---|
| .. | .. |
|---|
| 16 | 16 | </view> |
|---|
| 17 | 17 | </view> |
|---|
| 18 | 18 | <view class="mp-bg"></view> |
|---|
| 19 | | - <view :style="{ height: marTop+'px' }"></view> |
|---|
| 20 | | - <view class="user_info" v-if="userInfoReady=='hasUserInfo'"> |
|---|
| 19 | + <view :style="{ height: marTop + 'px' }"></view> |
|---|
| 20 | + <view class="user_info" v-if="userInfoReady == 'hasUserInfo'"> |
|---|
| 21 | 21 | <view class="user_head"> |
|---|
| 22 | 22 | <!-- userInfo.avatar?userInfo.avatar: --> |
|---|
| 23 | | - <image :src="userInfo.avatar?userInfo.avatar:defautHead"></image> |
|---|
| 23 | + <image :src="userInfo.avatar ? userInfo.avatar : defautHead"></image> |
|---|
| 24 | 24 | </view> |
|---|
| 25 | | - <view class="user_name">{{userInfo.nickname?userInfo.nickname:'微信客户'}}</view> |
|---|
| 25 | + <view class="user_name">{{ userInfo.nickname ? userInfo.nickname : '微信客户' }}</view> |
|---|
| 26 | 26 | <view class="user_level" v-if="userInfo.vip"> |
|---|
| 27 | 27 | <image :src="userInfo.vipIcon" mode="aspectFit"></image> |
|---|
| 28 | 28 | <!-- <text>{{userInfo.vipName}}</text> --> |
|---|
| 29 | 29 | </view> |
|---|
| 30 | 30 | <view class="user_careNum" @click="goToThird('/pages/profile/care-coupon-detail')"> |
|---|
| 31 | | - <view class="num">{{ careBeanReady?toThousands(myCareBean):'-' }}</view> |
|---|
| 31 | + <view class="num">{{ careBeanReady ? toThousands(myCareBean) : '-' }}</view> |
|---|
| 32 | 32 | <view class="label">悦养豆明细</view> |
|---|
| 33 | 33 | </view> |
|---|
| 34 | 34 | <navigator class="btn_vip flex" url='/pages/users/user_vip/index' hover-class='none' |
|---|
| 35 | 35 | @click="clickTrack('vip')"><text>查看会员权益</text><text class="iconfont icon-xiangyou"></text> |
|---|
| 36 | 36 | </navigator> |
|---|
| 37 | 37 | </view> |
|---|
| 38 | | - <view class="user_info" v-if="userInfoReady=='needRegister'"> |
|---|
| 38 | + <view class="user_info" v-if="userInfoReady == 'needRegister'"> |
|---|
| 39 | 39 | <view class="user_head"> |
|---|
| 40 | 40 | <image src="https://ossacmall.bluedeer.com.cn/app/static/images/userHead_defaultNew.png"></image> |
|---|
| 41 | 41 | </view> |
|---|
| .. | .. |
|---|
| 44 | 44 | class="iconfont icon-xiangyou"></text></view> |
|---|
| 45 | 45 | </view> |
|---|
| 46 | 46 | <view v-if="buyList.length > 0" class="buy_list"> |
|---|
| 47 | | - <view class="buy_wrapper" :style="'animation-duration:' + buyList.length*2 + 's'"> |
|---|
| 47 | + <view class="buy_wrapper" :style="'animation-duration:' + buyList.length * 2 + 's'"> |
|---|
| 48 | 48 | <view class="buy_item" v-for="(buyItem, buyIndex) in buyList" :key="buyItem.uniKey"> |
|---|
| 49 | 49 | {{ buyItem.level ? buyItem.level : '' }} |
|---|
| 50 | 50 | {{ buyItem.real_name }} 已购买{{ buyItem.product_name }} |
|---|
| .. | .. |
|---|
| 52 | 52 | </view> |
|---|
| 53 | 53 | </view> |
|---|
| 54 | 54 | <!-- banner --> |
|---|
| 55 | | - <view class="swiper" v-if="imgUrls&&imgUrls.length"> |
|---|
| 55 | + <view class="swiper" v-if="imgUrls && imgUrls.length"> |
|---|
| 56 | 56 | <swiper indicator-dots="true" indicator-type="expand" :autoplay="true" :circular="circular" |
|---|
| 57 | | - interval="5000" :duration="duration" indicator-color="#979797" |
|---|
| 58 | | - indicator-active-color="#FFE20E"> |
|---|
| 57 | + interval="5000" :duration="duration" indicator-color="#979797" indicator-active-color="#FFE20E"> |
|---|
| 59 | 58 | <block v-for="(imgUrlItem, imgUrlIndex) in imgUrls" :key="imgUrlItem.uniKey"> |
|---|
| 60 | 59 | <swiper-item> |
|---|
| 61 | 60 | <view class='slide-navigator acea-row row-between-wrapper' hover-class='none' |
|---|
| 62 | | - @click="goToLink(imgUrlItem,'banner')"> |
|---|
| 61 | + @click="goToLink(imgUrlItem, 'banner')"> |
|---|
| 63 | 62 | <image :src="imgUrlItem.pic" class="slide-image" lazy-load></image> |
|---|
| 64 | 63 | </view> |
|---|
| 65 | 64 | </swiper-item> |
|---|
| .. | .. |
|---|
| 67 | 66 | </swiper> |
|---|
| 68 | 67 | </view> |
|---|
| 69 | 68 | <!-- 新闻简报 --> |
|---|
| 70 | | - <view class='notice acea-row row-middle row-between' v-if="roll&&roll.length"> |
|---|
| 69 | + <view class='notice acea-row row-middle row-between' v-if="roll && roll.length"> |
|---|
| 71 | 70 | <view class="pic"> |
|---|
| 72 | 71 | <image src="https://ossacmall.bluedeer.com.cn/app/static/images/xinjian.png"></image> |
|---|
| 73 | 72 | </view> |
|---|
| .. | .. |
|---|
| 78 | 77 | <block v-for="(rollItem, rollIndex) in roll" :key='rollItem.uniKey'> |
|---|
| 79 | 78 | <swiper-item> |
|---|
| 80 | 79 | <navigator class='item' :url='rollItem.url' hover-class='none' |
|---|
| 81 | | - @click="clickTrack('news',rollItem)"> |
|---|
| 80 | + @click="clickTrack('news', rollItem)"> |
|---|
| 82 | 81 | <view class='line1'>{{ rollItem.info }}</view> |
|---|
| 83 | 82 | </navigator> |
|---|
| 84 | 83 | </swiper-item> |
|---|
| .. | .. |
|---|
| 88 | 87 | <view class="iconfont icon-xiangyou"></view> |
|---|
| 89 | 88 | </view> |
|---|
| 90 | 89 | <!-- menu --> |
|---|
| 91 | | - <view class='nav acea-row' v-if="menus&&menus.length"> |
|---|
| 90 | + <view class='nav acea-row' v-if="menus && menus.length"> |
|---|
| 92 | 91 | <block v-for="(menuItem, menuIndex) in menus" :key="menuItem.uniKey"> |
|---|
| 93 | 92 | <view class='item' v-if="menuItem.show == '2'" hover-class='none' |
|---|
| 94 | | - @click="goToLink(menuItem,'menu')"> |
|---|
| 93 | + @click="goToLink(menuItem, 'menu')"> |
|---|
| 95 | 94 | <view class='pictrue'> |
|---|
| 96 | 95 | <image :src='menuItem.pic' class="image"></image> |
|---|
| 97 | 96 | </view> |
|---|
| .. | .. |
|---|
| 99 | 98 | </view> |
|---|
| 100 | 99 | </block> |
|---|
| 101 | 100 | </view> |
|---|
| 102 | | - <image class="index_info" src="https://ossacmall.bluedeer.com.cn/app/static/images/index_info.png" ></image> |
|---|
| 101 | + <view class="serviceSupport" |
|---|
| 102 | + v-if="serviceSupport && serviceSupport.items && serviceSupport.items.length > 0"> |
|---|
| 103 | + <div class="serviceSupport_item" v-for="serviceItem, serviceIndex in serviceSupport.items" |
|---|
| 104 | + :key="serviceItem.uniKey"> |
|---|
| 105 | + <image v-if="serviceItem.image" :src="cleanUrl(serviceItem.image)" class="serviceSupport_itemImg"> |
|---|
| 106 | + </image> |
|---|
| 107 | + <view class="serviceSupport_itemText">{{ serviceItem.name }}</view> |
|---|
| 108 | + </div> |
|---|
| 109 | + </view> |
|---|
| 110 | + <!-- 每日特价 + 新品尝鲜 --> |
|---|
| 111 | + <view class="promotion_pair" |
|---|
| 112 | + v-if="(dealModule && dealModule.items && dealModule.items.length) || (newProductModule && newProductModule.items && newProductModule.items.length)"> |
|---|
| 113 | + <view class="pair_deal" v-if="dealModule && dealModule.items && dealModule.items.length"> |
|---|
| 114 | + <view class="pair_deal_head"> |
|---|
| 115 | + <view class="pair_deal_badge">{{ dealModule.title }}</view> |
|---|
| 116 | + <view class="deal_count" v-if="dealCountdown"> |
|---|
| 117 | + <text class="deal_count_num">{{ dealCountdown.h }}</text> |
|---|
| 118 | + <text class="deal_count_sep">:</text> |
|---|
| 119 | + <text class="deal_count_num">{{ dealCountdown.m }}</text> |
|---|
| 120 | + <text class="deal_count_sep">:</text> |
|---|
| 121 | + <text class="deal_count_num">{{ dealCountdown.s }}</text> |
|---|
| 122 | + </view> |
|---|
| 123 | + </view> |
|---|
| 124 | + <view class="pair_deal_sub" v-if="dealModule.subtitle">{{ dealModule.subtitle }}</view> |
|---|
| 125 | + <swiper class="deal_swiper" :autoplay="true" :circular="dealModule.items.length > 1" |
|---|
| 126 | + @change="dealSwiperChange"> |
|---|
| 127 | + <swiper-item v-for="dealItem in dealModule.items" :key="dealItem.uniKey"> |
|---|
| 128 | + <view class="deal_goods" @click="goModuleItem(dealItem)"> |
|---|
| 129 | + <view class="deal_goods_pic"> |
|---|
| 130 | + <image |
|---|
| 131 | + :src="cleanUrl((dealItem.data && dealItem.data.image) ? dealItem.data.image : dealItem.image)" |
|---|
| 132 | + mode="aspectFill"></image> |
|---|
| 133 | + </view> |
|---|
| 134 | + <view class="deal_goods_name">{{ dealItem.data && dealItem.data.storeName ? |
|---|
| 135 | + dealItem.data.storeName : dealItem.name }}</view> |
|---|
| 136 | + <view class="deal_progress"> |
|---|
| 137 | + <view class="deal_progress_bar"> |
|---|
| 138 | + <view class="deal_progress_inner" |
|---|
| 139 | + :style="{ width: dealSoldPercent(dealItem) + '%' }"></view> |
|---|
| 140 | + </view> |
|---|
| 141 | + <text class="deal_progress_text">已抢{{ dealSold(dealItem) }}件</text> |
|---|
| 142 | + </view> |
|---|
| 143 | + <view class="deal_bottom"> |
|---|
| 144 | + <view class="deal_price"> |
|---|
| 145 | + <view class="deal_price_now" v-if="modulePrice(dealItem.data) !== ''"> |
|---|
| 146 | + <block v-if="moduleIsBean(dealItem.data)">{{ modulePrice(dealItem.data) |
|---|
| 147 | + }}悦养豆</block> |
|---|
| 148 | + <block v-else-if="dealItem.data.payWay == 1"><text |
|---|
| 149 | + v-if="moduleCashPrice(dealItem.data)">¥ {{ |
|---|
| 150 | + moduleCashPrice(dealItem.data) }}</text><text |
|---|
| 151 | + v-if="moduleCashPrice(dealItem.data) && moduleBeanNum(dealItem.data)">+</text><text |
|---|
| 152 | + v-if="moduleBeanNum(dealItem.data)">{{ moduleBeanNum(dealItem.data) |
|---|
| 153 | + }}悦养豆</text></block> |
|---|
| 154 | + <block v-else>¥ {{ modulePrice(dealItem.data) }} |
|---|
| 155 | + </block> |
|---|
| 156 | + </view> |
|---|
| 157 | + <view class="deal_price_old" v-if="moduleOldPrice(dealItem.data) !== ''">原价<text |
|---|
| 158 | + v-if="moduleIsBean(dealItem.data)">{{ moduleOldPrice(dealItem.data) |
|---|
| 159 | + }}悦养豆</text><text v-else>¥{{ moduleOldPrice(dealItem.data) }}</text> |
|---|
| 160 | + </view> |
|---|
| 161 | + </view> |
|---|
| 162 | + <view class="deal_buy"></view> |
|---|
| 163 | + </view> |
|---|
| 164 | + </view> |
|---|
| 165 | + </swiper-item> |
|---|
| 166 | + </swiper> |
|---|
| 167 | + <view class="deal_dots" v-if="dealModule.items.length > 1"> |
|---|
| 168 | + <text v-for="(dealDot, dealDotIndex) in dealModule.items" :key="dealDotIndex" class="deal_dot" |
|---|
| 169 | + :class="{ on: dealDotIndex == dealCurrent }"></text> |
|---|
| 170 | + </view> |
|---|
| 171 | + </view> |
|---|
| 172 | + <view class="pair_right" |
|---|
| 173 | + v-if="(newProductModule && newProductModule.items && newProductModule.items.length) || (healthZoneModule && healthZoneModule.items && healthZoneModule.items.length)"> |
|---|
| 174 | + <view class="pair_new" |
|---|
| 175 | + v-if="newProductModule && newProductModule.items && newProductModule.items.length"> |
|---|
| 176 | + <view class="pair_new_head"> |
|---|
| 177 | + <text class="pair_new_title">{{ newProductModule.title }}</text> |
|---|
| 178 | + <text class="pair_new_sub" v-if="newProductModule.subtitle">{{ newProductModule.subtitle |
|---|
| 179 | + }}</text> |
|---|
| 180 | + </view> |
|---|
| 181 | + <swiper class="pair_new_list" :autoplay="newProductGroups.length > 1" |
|---|
| 182 | + :circular="newProductGroups.length > 1" interval="4000" duration="500" |
|---|
| 183 | + @change="newProductSwiperChange"> |
|---|
| 184 | + <swiper-item class="pair_new_swiper_item" v-for="(group, groupIndex) in newProductGroups" |
|---|
| 185 | + :key="groupIndex"> |
|---|
| 186 | + <view class="pair_new_list_wrapper"> |
|---|
| 187 | + <view class="pair_new_item" v-for="npItem in group" :key="npItem.uniKey" |
|---|
| 188 | + @click="goModuleItem(npItem)"> |
|---|
| 189 | + <view class="pair_new_pic"> |
|---|
| 190 | + <image |
|---|
| 191 | + :src="cleanUrl((npItem.data && npItem.data.image) ? npItem.data.image : npItem.image)" |
|---|
| 192 | + mode="aspectFill"></image> |
|---|
| 193 | + </view> |
|---|
| 194 | + <view class="pair_new_price" v-if="modulePrice(npItem.data) !== ''"> |
|---|
| 195 | + <block v-if="moduleIsBean(npItem.data)">{{ modulePrice(npItem.data) }}<text |
|---|
| 196 | + class="pair_new_unit">悦养豆</text></block> |
|---|
| 197 | + <block v-else-if="npItem.data.payWay == 1"><text |
|---|
| 198 | + v-if="moduleCashPrice(npItem.data)">¥ {{ |
|---|
| 199 | + moduleCashPrice(npItem.data) }}</text><text |
|---|
| 200 | + v-if="moduleCashPrice(npItem.data) && moduleBeanNum(npItem.data)">+</text><text |
|---|
| 201 | + v-if="moduleBeanNum(npItem.data)">{{ moduleBeanNum(npItem.data) |
|---|
| 202 | + }}悦养豆</text></block> |
|---|
| 203 | + <block v-else>¥ {{ modulePrice(npItem.data) }} |
|---|
| 204 | + </block> |
|---|
| 205 | + </view> |
|---|
| 206 | + <view class="pair_new_old" v-if="moduleOldPrice(npItem.data) !== ''"> |
|---|
| 207 | + 原价<text v-if="moduleIsBean(npItem.data)">{{ moduleOldPrice(npItem.data) |
|---|
| 208 | + }}悦养豆</text><text v-else>¥{{ moduleOldPrice(npItem.data) }}</text> |
|---|
| 209 | + </view> |
|---|
| 210 | + </view> |
|---|
| 211 | + </view> |
|---|
| 212 | + </swiper-item> |
|---|
| 213 | + </swiper> |
|---|
| 214 | + <view class="pair_new_dots" v-if="newProductGroups.length > 1"> |
|---|
| 215 | + <text v-for="(dot, dotIndex) in newProductGroups" :key="dotIndex" class="pair_new_dot" |
|---|
| 216 | + :class="{ on: dotIndex == newProductCurrent }"></text> |
|---|
| 217 | + </view> |
|---|
| 218 | + </view> |
|---|
| 219 | + <view class="pair_zone" |
|---|
| 220 | + v-if="healthZoneModule && healthZoneModule.items && healthZoneModule.items.length"> |
|---|
| 221 | + <view class="pair_zone_head"> |
|---|
| 222 | + <view class="pair_zone_badge">{{ healthZoneModule.title }}</view> |
|---|
| 223 | + <text class="pair_zone_sub" v-if="healthZoneModule.subtitle">{{ healthZoneModule.subtitle |
|---|
| 224 | + }}</text> |
|---|
| 225 | + </view> |
|---|
| 226 | + <swiper class="pair_zone_swiper" :autoplay="healthZoneModule.items.length > 1" |
|---|
| 227 | + :circular="healthZoneModule.items.length > 1" interval="4000" duration="500" |
|---|
| 228 | + :next-margin="healthZoneModule.items.length > 1 ? '40rpx' : '0'" @change="zoneSwiperChange"> |
|---|
| 229 | + <swiper-item class="pair_zone_swiper_item" |
|---|
| 230 | + :class="healthZoneModule.items.length > 1 ? 'multi' : 'single'" |
|---|
| 231 | + v-for="zoneItem in healthZoneModule.items" :key="zoneItem.uniKey"> |
|---|
| 232 | + <image class="pair_zone_img" :src="zoneImg(zoneItem)" mode="aspectFill" |
|---|
| 233 | + @click="goModuleItem(zoneItem)"></image> |
|---|
| 234 | + </swiper-item> |
|---|
| 235 | + </swiper> |
|---|
| 236 | + <view class="pair_zone_dots" v-if="healthZoneModule.items.length > 1"> |
|---|
| 237 | + <text v-for="(zoneDot, zoneDotIndex) in healthZoneModule.items" :key="zoneDotIndex" |
|---|
| 238 | + class="pair_zone_dot" :class="{ on: zoneDotIndex == zoneCurrent }"></text> |
|---|
| 239 | + </view> |
|---|
| 240 | + </view> |
|---|
| 241 | + </view> |
|---|
| 242 | + </view> |
|---|
| 243 | + <!-- 活动推荐banner --> |
|---|
| 244 | + <view class="module_banner" |
|---|
| 245 | + v-if="activityBannerModule && activityBannerModule.items && activityBannerModule.items.length"> |
|---|
| 246 | + <swiper class="module_banner_swiper" :autoplay="activityBannerModule.items.length > 1" |
|---|
| 247 | + :circular="activityBannerModule.items.length > 1" interval="4000" duration="500" |
|---|
| 248 | + @change="bannerSwiperChange"> |
|---|
| 249 | + <swiper-item v-for="bannerItem in activityBannerModule.items" :key="bannerItem.uniKey"> |
|---|
| 250 | + <image class="module_banner_img" :src="cleanUrl(bannerItem.image)" mode="aspectFill" |
|---|
| 251 | + @click="goModuleItem(bannerItem)"></image> |
|---|
| 252 | + </swiper-item> |
|---|
| 253 | + </swiper> |
|---|
| 254 | + <view class="module_banner_dots" v-if="activityBannerModule.items.length > 1"> |
|---|
| 255 | + <text v-for="(bannerDot, bannerDotIndex) in activityBannerModule.items" :key="bannerDotIndex" |
|---|
| 256 | + class="module_banner_dot" :class="{ on: bannerDotIndex == bannerCurrent }"></text> |
|---|
| 257 | + </view> |
|---|
| 258 | + </view> |
|---|
| 259 | + <!-- 热门榜单 --> |
|---|
| 260 | + <view class="module_rank" v-if="hotRankModule && hotCategoryList && hotCategoryList.length"> |
|---|
| 261 | + <view class="module_rank_head"> |
|---|
| 262 | + <view class="module_rank_badge">{{ hotRankModule.title }}</view> |
|---|
| 263 | + <text class="module_rank_sub" v-if="hotRankModule.subtitle">{{ hotRankModule.subtitle }}</text> |
|---|
| 264 | + </view> |
|---|
| 265 | + <view class="module_rank_body"> |
|---|
| 266 | + <view class="module_rank_tabs" v-if="hotCategoryList.length > 1"> |
|---|
| 267 | + <scroll-view class="module_rank_tabsScroll" scroll-x="true"> |
|---|
| 268 | + <view class="module_rank_tabs_wrapper"> |
|---|
| 269 | + <text v-for="(catItem, catIndex) in hotCategoryList" :key="catItem.uniKey" |
|---|
| 270 | + class="module_rank_tab" :class="{ on: catIndex == hotRankIndex }" |
|---|
| 271 | + @click="changeHotRank(catIndex)">{{ catItem.name }}</text> |
|---|
| 272 | + </view> |
|---|
| 273 | + </scroll-view> |
|---|
| 274 | + </view> |
|---|
| 275 | + <view class="module_rank_list" v-if="rankProducts.length"> |
|---|
| 276 | + <view class="module_rank_item" v-for="rankItem, rankIndex in rankProducts" :key="rankItem.id" |
|---|
| 277 | + @click="goRankProduct(rankItem)" |
|---|
| 278 | + :class="{ mid: (rankProducts.length >= 3 && rankIndex == 1) || (rankProducts.length == 1 && rankIndex == 0) }"> |
|---|
| 279 | + <!-- @click="goRankProduct(rankItem)" --> |
|---|
| 280 | + <view class="rank_badge" :class="'rank' + rankItem.rank" v-if="rankIndex < 3"> |
|---|
| 281 | + </view> |
|---|
| 282 | + <view class="rank_pic"> |
|---|
| 283 | + <image :src="cleanUrl(rankItem.image)" mode="aspectFill"></image> |
|---|
| 284 | + </view> |
|---|
| 285 | + <view class="rank_buy">{{ formatBuyCount(rankItem.buyerCount) }}人已购买</view> |
|---|
| 286 | + <view class="rank_name">{{ rankItem.storeName }}</view> |
|---|
| 287 | + <view class="rank_price"> |
|---|
| 288 | + <view class="rank_price_now" v-if="modulePrice(rankItem) !== ''"> |
|---|
| 289 | + <block v-if="moduleIsBean(rankItem)">{{ modulePrice(rankItem) }}悦养豆</block> |
|---|
| 290 | + <block v-else-if="rankItem.payWay == 1"><text v-if="moduleCashPrice(rankItem)">¥ {{ |
|---|
| 291 | + moduleCashPrice(rankItem) }}</text><text |
|---|
| 292 | + v-if="moduleCashPrice(rankItem) && moduleBeanNum(rankItem)">+</text><text |
|---|
| 293 | + v-if="moduleBeanNum(rankItem)">{{ moduleBeanNum(rankItem) }}悦养豆</text> |
|---|
| 294 | + </block> |
|---|
| 295 | + <block v-else>¥ {{ modulePrice(rankItem) }}</block> |
|---|
| 296 | + </view> |
|---|
| 297 | + </view> |
|---|
| 298 | + <view class="rank_old" v-if="moduleOldPrice(rankItem) !== ''">原价<text |
|---|
| 299 | + v-if="moduleIsBean(rankItem)">{{ moduleOldPrice(rankItem) }}悦养豆</text><text |
|---|
| 300 | + v-else>¥{{ |
|---|
| 301 | + moduleOldPrice(rankItem) }}</text></view> |
|---|
| 302 | + <view class="rank_cart "></view> |
|---|
| 303 | + </view> |
|---|
| 304 | + <image v-if="isLoadingRank" |
|---|
| 305 | + style="width: 50rpx; height: 50rpx;position:absolute;left:50%;top:50%;margin-left:-25rpx;margin-top: -25rpx;" |
|---|
| 306 | + src="https://ossacmall.bluedeer.com.cn/app/static/images/loading.gif" mode="aspectFill"> |
|---|
| 307 | + </image> |
|---|
| 308 | + </view> |
|---|
| 309 | + </view> |
|---|
| 310 | + </view> |
|---|
| 311 | + <!-- 臻选品牌 --> |
|---|
| 312 | + <view class="module_brand" v-if="brandWallModule && brandWallModule.items && brandWallModule.items.length"> |
|---|
| 313 | + <view class="module_brand_title">{{ brandWallModule.title }}</view> |
|---|
| 314 | + <view class="module_brand_sub" v-if="brandWallModule.subtitle">{{ brandWallModule.subtitle }}</view> |
|---|
| 315 | + <swiper class="module_brand_swiper" :autoplay="brandGroups.length > 1" |
|---|
| 316 | + :circular="brandGroups.length > 1" interval="4000" duration="500" @change="brandSwiperChange"> |
|---|
| 317 | + <swiper-item class="module_brand_swiper_item" v-for="(group, groupIndex) in brandGroups" |
|---|
| 318 | + :key="groupIndex"> |
|---|
| 319 | + <view class="module_brand_box"> |
|---|
| 320 | + <view class="module_brand_item" v-for="brandItem in group" :key="brandItem.uniKey" |
|---|
| 321 | + @click="goModuleItem(brandItem)"> |
|---|
| 322 | + <image :src="cleanUrl(brandItem.image)" mode="aspectFit"></image> |
|---|
| 323 | + </view> |
|---|
| 324 | + </view> |
|---|
| 325 | + </swiper-item> |
|---|
| 326 | + </swiper> |
|---|
| 327 | + <view class="module_brand_dots" v-if="brandGroups.length > 1"> |
|---|
| 328 | + <text v-for="(brandDot, brandDotIndex) in brandGroups" :key="brandDotIndex" class="module_brand_dot" |
|---|
| 329 | + :class="{ on: brandDotIndex == brandCurrent }"></text> |
|---|
| 330 | + </view> |
|---|
| 331 | + </view> |
|---|
| 332 | + |
|---|
| 103 | 333 | <!-- 优惠券 --> |
|---|
| 104 | 334 | <!-- <view class="couponList" v-if="userInfoReady=='hasUserInfo'&&couponList&&couponList.length > 0"> |
|---|
| 105 | 335 | <img :src="'https://ossacmall.bluedeer.com.cn/app/static/images/h_cImg'+((userInfo.vipName&&extVipLevelAttr.indexOf(userInfo.vipName)>0)?extVipLevelAttr.indexOf(userInfo.vipName):1)+'.png'" |
|---|
| .. | .. |
|---|
| 167 | 397 | </view> --> |
|---|
| 168 | 398 | |
|---|
| 169 | 399 | <!-- 专区入口 --> |
|---|
| 170 | | - <view v-if="zoneList&&zoneList.length > 0" class="zoneList_title">探索健康好物</view> |
|---|
| 171 | | - <scroll-view v-if="zoneList&&zoneList.length > 0" class="zoneList_box scroll-view_H" |
|---|
| 400 | + <view v-if="zoneList && zoneList.length > 0" class="zoneList_title">探索健康好物</view> |
|---|
| 401 | + <scroll-view v-if="zoneList && zoneList.length > 0" class="zoneList_box scroll-view_H" |
|---|
| 172 | 402 | :class="zoneList.length == 1 ? 'isSingle' : ''" scroll-x="true"> |
|---|
| 173 | 403 | <view class="zoneList_wrapper"> |
|---|
| 174 | 404 | <block v-for="(zoneItem, zoneIndex) in zoneList" :key="zoneItem.uniKey"> |
|---|
| 175 | 405 | <view class="zoneList_item"> |
|---|
| 176 | | - <view |
|---|
| 177 | | - @click="goToLink({'url':'/pages/zone/index?id=' + zoneItem.id,'name':'专区'},'zone')"> |
|---|
| 406 | + <view |
|---|
| 407 | + @click="goToLink({ 'url': '/pages/zone/index?id=' + zoneItem.id, 'name': '专区' }, 'zone')"> |
|---|
| 178 | 408 | <image :src="zoneItem.homepageImage"></image> |
|---|
| 179 | 409 | </view> |
|---|
| 180 | 410 | </view> |
|---|
| .. | .. |
|---|
| 189 | 419 | <a_seckill ref="seckill" :careBeanRate="careBeanRate"></a_seckill> |
|---|
| 190 | 420 | <b_combination></b_combination> |
|---|
| 191 | 421 | <c_bargain></c_bargain> |
|---|
| 192 | | - <view class="goods_menuBox" v-if="categoryList&&categoryList.length > 0" :style="'top:'+(marTop)+'px;'"> |
|---|
| 422 | + <view class="goods_menuBox" v-if="categoryList && categoryList.length > 0" |
|---|
| 423 | + :style="'top:' + (marTop) + 'px;'"> |
|---|
| 193 | 424 | <view class="subMenu"> |
|---|
| 194 | 425 | <scroll-view scroll-x="true" scroll-with-animation='true' style="width: 100%;"> |
|---|
| 195 | 426 | <view class="subMenu_wrapper"> |
|---|
| 196 | 427 | <block v-for="(catetem, cateIndex) in categoryList" :key="catetem.uniKey"><text |
|---|
| 197 | 428 | class="subMenu_item" :class='cateIndex == categoryIndex ? "on" : ""' |
|---|
| 198 | | - @click='changeCategoryTab(cateIndex,true)'><text class="text">{{ catetem.name }}</text></text></block> |
|---|
| 429 | + @click='changeCategoryTab(cateIndex, true)'><text class="text">{{ catetem.name |
|---|
| 430 | + }}</text></text></block> |
|---|
| 199 | 431 | </view> |
|---|
| 200 | 432 | </scroll-view> |
|---|
| 201 | 433 | </view> |
|---|
| 202 | 434 | </view> |
|---|
| 203 | | - <view class="goodsSection" v-if="categoryList&&categoryList.length > 0" id="goodsSection" |
|---|
| 204 | | - :style="loadingGood?('height:'+viewHeight+'px;overflow:hidden'):''"> |
|---|
| 205 | | - <view class="cf list" v-if="productList&&productList.length > 0"> |
|---|
| 435 | + <view class="goodsSection" v-if="categoryList && categoryList.length > 0" id="goodsSection" |
|---|
| 436 | + :style="loadingGood ? ('height:' + viewHeight + 'px;overflow:hidden') : ''"> |
|---|
| 437 | + <view class="cf list" v-if="productList && productList.length > 0"> |
|---|
| 206 | 438 | <view class="list_column cfl"> |
|---|
| 207 | 439 | <block v-for="(gitem, gindex) in productList" :key="gindex"> |
|---|
| 208 | | - <GoodBlock v-if="gindex%2==0" :pageName="'首页'" :moduleName="'商品推荐'" |
|---|
| 440 | + <GoodBlock v-if="gindex % 2 == 0" :pageName="'首页'" :moduleName="'商品推荐'" |
|---|
| 209 | 441 | :careBeanRate="careBeanRate" :size="'big'" :goodsInfo="gitem"></GoodBlock> |
|---|
| 210 | 442 | </block> |
|---|
| 211 | 443 | </view> |
|---|
| 212 | 444 | <view class="list_column cfr"> |
|---|
| 213 | 445 | <block v-for="(gitem, gindex) in productList" :key="gindex"> |
|---|
| 214 | | - <GoodBlock v-if="gindex%2==1" :pageName="'首页'" :moduleName="'商品推荐'" |
|---|
| 446 | + <GoodBlock v-if="gindex % 2 == 1" :pageName="'首页'" :moduleName="'商品推荐'" |
|---|
| 215 | 447 | :careBeanRate="careBeanRate" :size="'big'" :goodsInfo="gitem"></GoodBlock> |
|---|
| 216 | 448 | </block> |
|---|
| 217 | 449 | </view> |
|---|
| 218 | 450 | </view> |
|---|
| 219 | 451 | <view v-if="loading" class="loadingTips">加载中...</view> |
|---|
| 220 | | - <view v-else-if="productList&&productList.length <= 0" class="loadingTips">暂无数据</view> |
|---|
| 452 | + <view v-else-if="productList && productList.length <= 0" class="loadingTips">暂无数据</view> |
|---|
| 221 | 453 | <view v-else-if="loadend" class="loadingTips">已全部加载</view> |
|---|
| 222 | 454 | <view v-else class="loadingTips">上拉加载更多</view> |
|---|
| 223 | 455 | <view class="pauseView" v-if="isPause"></view> |
|---|
| .. | .. |
|---|
| 232 | 464 | </template> |
|---|
| 233 | 465 | |
|---|
| 234 | 466 | <script> |
|---|
| 235 | | - import { |
|---|
| 236 | | - HTTP_REQUEST_URL, |
|---|
| 237 | | - THIRD_APPID |
|---|
| 238 | | - } from '@/config/app'; |
|---|
| 239 | | - import Auth from '@/libs/wechat'; |
|---|
| 240 | | - import Cache from '../../utils/cache'; |
|---|
| 241 | | - var statusBarHeight = uni.getSystemSetting().statusBarHeight + 'px'; |
|---|
| 242 | | - let app = getApp(); |
|---|
| 243 | | - import { |
|---|
| 244 | | - getUserBean |
|---|
| 245 | | - } from '@/api/user.js'; |
|---|
| 246 | | - import { |
|---|
| 247 | | - toLogin |
|---|
| 248 | | - } from '@/libs/login.js'; |
|---|
| 249 | | - import { |
|---|
| 250 | | - getIndexData, |
|---|
| 251 | | - getIndexConfig, |
|---|
| 252 | | - setWholeCouponReceive, |
|---|
| 253 | | - setCouponReceive |
|---|
| 254 | | - } from '@/api/api.js'; |
|---|
| 255 | | - // #ifdef MP-WEIXIN |
|---|
| 256 | | - import { |
|---|
| 257 | | - getTemlIds |
|---|
| 258 | | - } from '@/api/api.js'; |
|---|
| 259 | | - import { |
|---|
| 260 | | - testAc, |
|---|
| 261 | | - dealUserBean, |
|---|
| 262 | | - testAgent, |
|---|
| 263 | | - handsCoupon, |
|---|
| 264 | | - handsList |
|---|
| 265 | | - } from '@/api/user.js'; |
|---|
| 467 | +import { |
|---|
| 468 | + HTTP_REQUEST_URL, |
|---|
| 469 | + THIRD_APPID |
|---|
| 470 | +} from '@/config/app'; |
|---|
| 471 | +import Auth from '@/libs/wechat'; |
|---|
| 472 | +import Cache from '../../utils/cache'; |
|---|
| 473 | +var statusBarHeight = uni.getSystemSetting().statusBarHeight + 'px'; |
|---|
| 474 | +let app = getApp(); |
|---|
| 475 | +import { |
|---|
| 476 | + getUserBean |
|---|
| 477 | +} from '@/api/user.js'; |
|---|
| 478 | +import { |
|---|
| 479 | + toLogin |
|---|
| 480 | +} from '@/libs/login.js'; |
|---|
| 481 | +import { |
|---|
| 482 | + getIndexModule, |
|---|
| 483 | + getIndexData, |
|---|
| 484 | + getIndexConfig, |
|---|
| 485 | + setWholeCouponReceive, |
|---|
| 486 | + setCouponReceive |
|---|
| 487 | +} from '@/api/api.js'; |
|---|
| 488 | +// #ifdef MP-WEIXIN |
|---|
| 489 | +import { |
|---|
| 490 | + getTemlIds |
|---|
| 491 | +} from '@/api/api.js'; |
|---|
| 492 | +import { |
|---|
| 493 | + testAc, |
|---|
| 494 | + dealUserBean, |
|---|
| 495 | + testAgent, |
|---|
| 496 | + handsCoupon, |
|---|
| 497 | + handsList |
|---|
| 498 | +} from '@/api/user.js'; |
|---|
| 266 | 499 | |
|---|
| 267 | | - // import { |
|---|
| 268 | | - // SUBSCRIBE_MESSAGE, |
|---|
| 269 | | - // TIPS_KEY |
|---|
| 270 | | - // } from '@/config/cache'; |
|---|
| 271 | | - // #endif |
|---|
| 272 | | - // #ifdef H5 |
|---|
| 273 | | - import { |
|---|
| 274 | | - follow |
|---|
| 275 | | - } from '@/api/public.js'; |
|---|
| 276 | | - // #endif |
|---|
| 277 | | - import { |
|---|
| 278 | | - getShare |
|---|
| 279 | | - } from '@/api/public.js'; |
|---|
| 280 | | - import a_seckill from './components/a_seckill'; |
|---|
| 281 | | - import b_combination from './components/b_combination'; |
|---|
| 282 | | - import c_bargain from './components/c_bargain'; |
|---|
| 283 | | - import goodList from '@/components/goodList'; |
|---|
| 284 | | - import ClipboardJS from "@/plugin/clipboard/clipboard.js"; |
|---|
| 285 | | - import { |
|---|
| 286 | | - goShopDetail |
|---|
| 287 | | - } from '@/libs/order.js' |
|---|
| 288 | | - import { |
|---|
| 289 | | - mapGetters |
|---|
| 290 | | - } from "vuex"; |
|---|
| 291 | | - import countDown from '@/components/countDown'; |
|---|
| 292 | | - import { |
|---|
| 293 | | - getCategoryList, |
|---|
| 294 | | - getProductslist, |
|---|
| 295 | | - getStoreZoneAndCouponList, |
|---|
| 296 | | - getLast10Order |
|---|
| 297 | | - } from '@/api/store.js'; |
|---|
| 298 | | - import recommend from '@/components/recommend'; |
|---|
| 299 | | - import { |
|---|
| 300 | | - silenceBindingSpread |
|---|
| 301 | | - } from '@/utils'; |
|---|
| 302 | | - // #ifndef MP |
|---|
| 303 | | - import { |
|---|
| 304 | | - kefuConfig |
|---|
| 305 | | - } from "@/api/public"; |
|---|
| 306 | | - import { |
|---|
| 307 | | - getWechatConfig |
|---|
| 308 | | - } from "@/api/public"; |
|---|
| 309 | | - // #endif |
|---|
| 310 | | - |
|---|
| 311 | | - import { |
|---|
| 312 | | - getMdayLast |
|---|
| 313 | | - } from '@/api/lottery.js'; |
|---|
| 314 | | - import GoodBlock from "@/pages/goods_block/index.vue"; |
|---|
| 315 | | - import Loading from '@/components/Loading/index.vue'; |
|---|
| 316 | | - import popCoupon from '@/components/popCoupon/index.vue'; |
|---|
| 317 | | - import popActivity from '@/components/popActivity/index.vue'; |
|---|
| 318 | | - import popNewuser from '@/components/popNewuser/index.vue'; |
|---|
| 319 | | - const arrTemp = ["beforePay", "afterPay", "refundApply", "beforeRecharge", "createBargain", "pink"]; |
|---|
| 320 | | - export default { |
|---|
| 321 | | - computed: mapGetters(['isLogin', 'uid']), |
|---|
| 322 | | - components: { |
|---|
| 323 | | - goodList, |
|---|
| 324 | | - countDown, |
|---|
| 325 | | - a_seckill, |
|---|
| 326 | | - b_combination, |
|---|
| 327 | | - c_bargain, |
|---|
| 328 | | - recommend, |
|---|
| 329 | | - Loading, |
|---|
| 330 | | - GoodBlock, |
|---|
| 331 | | - popCoupon, |
|---|
| 332 | | - popActivity, |
|---|
| 333 | | - popNewuser |
|---|
| 334 | | - }, |
|---|
| 335 | | - data() { |
|---|
| 336 | | - return { |
|---|
| 337 | | - defautHead: 'https://ossacmall.bluedeer.com.cn/app/static/images/userHead_defaultNew.png', |
|---|
| 338 | | - buyList: [], |
|---|
| 339 | | - pageHeight: 0, |
|---|
| 340 | | - loaded: false, |
|---|
| 341 | | - loading: false, |
|---|
| 342 | | - isAuto: false, //没有授权的不会自动授权 |
|---|
| 343 | | - isShowAuth: false, //是否隐藏授权 |
|---|
| 344 | | - statusBarHeight: statusBarHeight, |
|---|
| 345 | | - navIndex: 0, |
|---|
| 346 | | - navTop: [], |
|---|
| 347 | | - followUrl: "", |
|---|
| 348 | | - followHid: true, |
|---|
| 349 | | - followCode: false, |
|---|
| 350 | | - logoUrl: "", |
|---|
| 351 | | - imgUrls: [], |
|---|
| 352 | | - itemNew: [], |
|---|
| 353 | | - menus: [], |
|---|
| 354 | | - zoneList: [], |
|---|
| 355 | | - bastInfo: '', |
|---|
| 356 | | - fastInfo: '', |
|---|
| 357 | | - fastList: [], |
|---|
| 358 | | - firstInfo: '', |
|---|
| 359 | | - salesInfo: '', |
|---|
| 360 | | - indicatorDots: false, |
|---|
| 361 | | - circular: true, |
|---|
| 362 | | - autoplay: true, |
|---|
| 363 | | - interval: 5000, |
|---|
| 364 | | - duration: 500, |
|---|
| 365 | | - window: false, |
|---|
| 366 | | - iShidden: false, |
|---|
| 367 | | - headerHeight: 0, |
|---|
| 368 | | - newGoodsBananr: '', |
|---|
| 369 | | - couponList: [], |
|---|
| 370 | | - liveList: [], |
|---|
| 371 | | - hotList: [{ |
|---|
| 372 | | - pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_001.png' |
|---|
| 373 | | - }, { |
|---|
| 374 | | - pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_002.png' |
|---|
| 375 | | - }, { |
|---|
| 376 | | - pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_003.png' |
|---|
| 377 | | - }], |
|---|
| 378 | | - ProductNavindex: 0, |
|---|
| 379 | | - marTop: 0, |
|---|
| 380 | | - childID: 0, |
|---|
| 381 | | - loadend: false, |
|---|
| 382 | | - loadTitle: '加载更多', |
|---|
| 383 | | - sortProduct: [], |
|---|
| 384 | | - is_switch: true, |
|---|
| 385 | | - hotPage: 1, |
|---|
| 386 | | - hotLimit: 10, |
|---|
| 387 | | - hotScroll: false, |
|---|
| 388 | | - explosiveMoney: [], |
|---|
| 389 | | - prodeuctTop: 0, |
|---|
| 390 | | - searchH: 0, |
|---|
| 391 | | - isFixed: false, |
|---|
| 392 | | - goodScroll: true, //精品推荐开关 |
|---|
| 393 | | - params: { //精品推荐分页 |
|---|
| 394 | | - page: 1, |
|---|
| 395 | | - limit: 10, |
|---|
| 396 | | - }, |
|---|
| 397 | | - tempArr: [], //精品推荐临时数组 |
|---|
| 398 | | - roll: [], // 新闻简报 |
|---|
| 399 | | - site_name: '', //首页title |
|---|
| 400 | | - iSshowH: false, |
|---|
| 401 | | - configApi: {}, //分享类容配置 |
|---|
| 402 | | - spikeList: [], // 秒杀 |
|---|
| 403 | | - point: '', |
|---|
| 404 | | - privacyStatus: false, // 隐私政策是否同意过 |
|---|
| 405 | | - tabsScrollLeft: 0, // tabs当前偏移量 |
|---|
| 406 | | - scrollLeft: 0, |
|---|
| 407 | | - lineColor: 'red', |
|---|
| 408 | | - lineStyle: {}, // 下划线位置--动态甲酸 |
|---|
| 409 | | - listActive: 0, // 当前选中项 |
|---|
| 500 | +// import { |
|---|
| 501 | +// SUBSCRIBE_MESSAGE, |
|---|
| 502 | +// TIPS_KEY |
|---|
| 503 | +// } from '@/config/cache'; |
|---|
| 504 | +// #endif |
|---|
| 505 | +// #ifdef H5 |
|---|
| 506 | +import { |
|---|
| 507 | + follow |
|---|
| 508 | +} from '@/api/public.js'; |
|---|
| 509 | +// #endif |
|---|
| 510 | +import { |
|---|
| 511 | + getShare |
|---|
| 512 | +} from '@/api/public.js'; |
|---|
| 513 | +import a_seckill from './components/a_seckill'; |
|---|
| 514 | +import b_combination from './components/b_combination'; |
|---|
| 515 | +import c_bargain from './components/c_bargain'; |
|---|
| 516 | +import goodList from '@/components/goodList'; |
|---|
| 517 | +import ClipboardJS from "@/plugin/clipboard/clipboard.js"; |
|---|
| 518 | +import { |
|---|
| 519 | + goShopDetail |
|---|
| 520 | +} from '@/libs/order.js' |
|---|
| 521 | +import { |
|---|
| 522 | + mapGetters |
|---|
| 523 | +} from "vuex"; |
|---|
| 524 | +import countDown from '@/components/countDown'; |
|---|
| 525 | +import { |
|---|
| 526 | + getCategoryList, |
|---|
| 527 | + getProductslist, |
|---|
| 528 | + getStoreZoneAndCouponList, |
|---|
| 529 | + getLast10Order |
|---|
| 530 | +} from '@/api/store.js'; |
|---|
| 531 | +import recommend from '@/components/recommend'; |
|---|
| 532 | +import { |
|---|
| 533 | + silenceBindingSpread |
|---|
| 534 | +} from '@/utils'; |
|---|
| 535 | +// #ifndef MP |
|---|
| 536 | +import { |
|---|
| 537 | + kefuConfig |
|---|
| 538 | +} from "@/api/public"; |
|---|
| 539 | +import { |
|---|
| 540 | + getWechatConfig |
|---|
| 541 | +} from "@/api/public"; |
|---|
| 542 | +// #endif |
|---|
| 410 | 543 | |
|---|
| 411 | | - duration: 0.2, // 下划线动画时长 |
|---|
| 412 | | - menuTop: 0, |
|---|
| 413 | | - menuHeight: 50, |
|---|
| 414 | | - searchWidth: 0, |
|---|
| 415 | | - windowWidth: 0, |
|---|
| 416 | | - windowHeight: 0, |
|---|
| 417 | | - isConfigReady: false, |
|---|
| 418 | | - hasLoadGroomList: false, |
|---|
| 419 | | - hasLoadCouponList: false, |
|---|
| 420 | | - isGetWholeCoupon: false, |
|---|
| 421 | | - isGetWholeCoupon2: false, |
|---|
| 422 | | - tabArr: [ |
|---|
| 423 | | - '', |
|---|
| 424 | | - '更多健康好物' |
|---|
| 425 | | - ], |
|---|
| 426 | | - categoryList: [], |
|---|
| 427 | | - subCategoryList: [], |
|---|
| 428 | | - productList: [], |
|---|
| 429 | | - categoryIndex: 0, |
|---|
| 430 | | - categorySubIndex: 0, |
|---|
| 431 | | - where: { |
|---|
| 432 | | - page: 1, |
|---|
| 433 | | - limit: 10, |
|---|
| 434 | | - cid: 0, |
|---|
| 435 | | - }, |
|---|
| 436 | | - userInfo: { |
|---|
| 437 | | - |
|---|
| 438 | | - }, |
|---|
| 439 | | - userInfoReady: '', |
|---|
| 440 | | - scrollHeight: 100, |
|---|
| 441 | | - scrollTop: 0, |
|---|
| 442 | | - oldScrollTop: 0, |
|---|
| 443 | | - pageScrollTop: 0, |
|---|
| 444 | | - viewHeight: 0, |
|---|
| 445 | | - loadingGood: false, |
|---|
| 446 | | - careBeanRate: 0, |
|---|
| 447 | | - tabLinkArr: [ |
|---|
| 448 | | - 'pages/index/index', |
|---|
| 449 | | - 'pages/goods_cate/goods_cate', |
|---|
| 450 | | - 'pages/user/index' |
|---|
| 451 | | - ], |
|---|
| 452 | | - extVipLevelAttr: [ |
|---|
| 453 | | - '非会员', |
|---|
| 454 | | - '普通会员', |
|---|
| 455 | | - '畅享会员', |
|---|
| 456 | | - '悦享会员', |
|---|
| 457 | | - '臻享会员' |
|---|
| 458 | | - ], |
|---|
| 459 | | - isPageShow: false, |
|---|
| 460 | | - loginBackFn: null, |
|---|
| 461 | | - myCareBean: 0, |
|---|
| 462 | | - careBeanReady: false, |
|---|
| 463 | | - newCouponList: [], |
|---|
| 464 | | - isFromReturn: false, |
|---|
| 465 | | - hasListenReturn: false, |
|---|
| 466 | | - statusMap: { |
|---|
| 467 | | - 'usable': '去使用', |
|---|
| 468 | | - 'unusable': '已使用', |
|---|
| 469 | | - 'overdue': '已过期', |
|---|
| 470 | | - 'notStart': '未开始' |
|---|
| 471 | | - }, |
|---|
| 472 | | - isClicking:false, |
|---|
| 473 | | - hasLottery:false, |
|---|
| 474 | | - homeBanner:{}, |
|---|
| 475 | | - homeActivity:{} |
|---|
| 544 | +import { |
|---|
| 545 | + getMdayLast |
|---|
| 546 | +} from '@/api/lottery.js'; |
|---|
| 547 | +import GoodBlock from "@/pages/goods_block/index.vue"; |
|---|
| 548 | +import Loading from '@/components/Loading/index.vue'; |
|---|
| 549 | +import popCoupon from '@/components/popCoupon/index.vue'; |
|---|
| 550 | +import popActivity from '@/components/popActivity/index.vue'; |
|---|
| 551 | +import popNewuser from '@/components/popNewuser/index.vue'; |
|---|
| 552 | +const arrTemp = ["beforePay", "afterPay", "refundApply", "beforeRecharge", "createBargain", "pink"]; |
|---|
| 553 | +export default { |
|---|
| 554 | + computed: { |
|---|
| 555 | + ...mapGetters(['isLogin', 'uid']), |
|---|
| 556 | + // 热门榜单当前分类下的商品(按设计稿排序:TOP2、TOP1、TOP3,TOP1居中抬高) |
|---|
| 557 | + // rankProducts() { |
|---|
| 558 | + // let mod = this.hotRankModule; |
|---|
| 559 | + // if (!mod || !mod.items || !mod.items.length) return []; |
|---|
| 560 | + // let idx = Math.min(this.hotRankIndex, mod.items.length - 1); |
|---|
| 561 | + // let cat = mod.items[idx]; |
|---|
| 562 | + // let ps = (cat && cat.data && cat.data.products) ? cat.data.products : []; |
|---|
| 563 | + // let arr = ps.map((p, i) => { |
|---|
| 564 | + // return { |
|---|
| 565 | + // p: p, |
|---|
| 566 | + // jumpType: cat.jumpType, |
|---|
| 567 | + // jumpTarget: cat.jumpTarget, |
|---|
| 568 | + // rank: i + 1, |
|---|
| 569 | + // mid: false |
|---|
| 570 | + // }; |
|---|
| 571 | + // }); |
|---|
| 572 | + // if (arr.length >= 3) { |
|---|
| 573 | + // let ordered = [arr[1], arr[0], arr[2]]; |
|---|
| 574 | + // ordered[1].mid = true; |
|---|
| 575 | + // return ordered; |
|---|
| 576 | + // } |
|---|
| 577 | + // if (arr.length == 1) { |
|---|
| 578 | + // arr[0].mid = true; |
|---|
| 579 | + // } |
|---|
| 580 | + // return arr; |
|---|
| 581 | + // }, |
|---|
| 582 | + // 臻选品牌按8个一组分页 |
|---|
| 583 | + brandGroups() { |
|---|
| 584 | + let mod = this.brandWallModule; |
|---|
| 585 | + if (!mod || !mod.items || !mod.items.length) return []; |
|---|
| 586 | + let size = 8; |
|---|
| 587 | + let groups = []; |
|---|
| 588 | + for (let i = 0; i < mod.items.length; i += size) { |
|---|
| 589 | + groups.push(mod.items.slice(i, i + size)); |
|---|
| 476 | 590 | } |
|---|
| 591 | + return groups; |
|---|
| 477 | 592 | }, |
|---|
| 478 | | - watch: {}, |
|---|
| 479 | | - mounted() {}, |
|---|
| 480 | | - onLoad() { |
|---|
| 481 | | - let that = this; |
|---|
| 482 | | - console.log('pageIndex onLoad'); |
|---|
| 483 | | - // 获取系统信息 |
|---|
| 484 | | - uni.getSystemInfo({ |
|---|
| 485 | | - success(res) { |
|---|
| 486 | | - that.$store.commit("SYSTEM_PLATFORM", res.platform); |
|---|
| 487 | | - that.windowWidth = res.windowWidth; |
|---|
| 488 | | - that.windowHeight = res.windowHeight; |
|---|
| 489 | | - that.pageHeight = (res.windowHeight - res.statusBarHeight) / res.windowWidth * 750; |
|---|
| 490 | | - let menuSize = uni.getMenuButtonBoundingClientRect(); |
|---|
| 491 | | - console.log('----------------------menuSize--------------------'); |
|---|
| 492 | | - console.log(menuSize); |
|---|
| 493 | | - that.menuTop = menuSize.top; |
|---|
| 494 | | - that.menuHeight = menuSize.height; |
|---|
| 495 | | - that.searchWidth = uni.getMenuButtonBoundingClientRect().left - 210 / 750 * that.windowWidth; |
|---|
| 496 | | - that.$nextTick(() => { |
|---|
| 497 | | - let query = uni.createSelectorQuery().in(that); |
|---|
| 498 | | - let info = query.select(".mp-header"); |
|---|
| 499 | | - info.boundingClientRect(function(data) { |
|---|
| 500 | | - if (data) { |
|---|
| 501 | | - that.marTop = data.height; |
|---|
| 502 | | - that.viewHeight = that.windowHeight - data.height - 200 / 750 * |
|---|
| 503 | | - that.windowWidth; |
|---|
| 504 | | - that.poTop = Number(data.height) + 84 |
|---|
| 505 | | - } |
|---|
| 506 | | - |
|---|
| 507 | | - }).exec() |
|---|
| 508 | | - }) |
|---|
| 509 | | - } |
|---|
| 510 | | - }); |
|---|
| 511 | | - this.getTemlIds(); |
|---|
| 512 | | - if (!this.hasListenReturn) { |
|---|
| 513 | | - uni.$on('returnEvent', function(data) { |
|---|
| 514 | | - console.log('listen returnEvent'); |
|---|
| 515 | | - if (data && (data.name == 'tabBar'||data.name == 'order')) { |
|---|
| 516 | | - that.isFromReturn=false; |
|---|
| 517 | | - //强制刷新 |
|---|
| 518 | | - // that.isFromReturn = (new Date()).getTime(); |
|---|
| 519 | | - // console.log('listen return ' + that.isFromReturn); |
|---|
| 520 | | - }else if (data && data.name == 'goods_details') { |
|---|
| 521 | | - that.isFromReturn = (new Date()).getTime(); |
|---|
| 522 | | - console.log('listen return ' + that.isFromReturn); |
|---|
| 523 | | - } |
|---|
| 524 | | - }); |
|---|
| 525 | | - this.hasListenReturn = true; |
|---|
| 593 | + // 新品尝鲜按2个一组分页 |
|---|
| 594 | + newProductGroups() { |
|---|
| 595 | + let mod = this.newProductModule; |
|---|
| 596 | + if (!mod || !mod.items || !mod.items.length) return []; |
|---|
| 597 | + let size = 2; |
|---|
| 598 | + let groups = []; |
|---|
| 599 | + for (let i = 0; i < mod.items.length; i += size) { |
|---|
| 600 | + groups.push(mod.items.slice(i, i + size)); |
|---|
| 526 | 601 | } |
|---|
| 527 | | - }, |
|---|
| 528 | | - onHide() { |
|---|
| 529 | | - let that = this; |
|---|
| 530 | | - if(that.$store.getters.isSystemHide){ |
|---|
| 531 | | - console.log('系统事件触发了onhide事件'); |
|---|
| 532 | | - return false; |
|---|
| 533 | | - } |
|---|
| 534 | | - this.isPageShow = false; |
|---|
| 535 | | - uni.$off('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 536 | | - uni.$off('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 537 | | - uni.$off('loginFlSuccess', that.registerFn); |
|---|
| 538 | | - setTimeout(function () { |
|---|
| 539 | | - that.isFromReturn = (new Date()).getTime(); |
|---|
| 540 | | - console.log('listen onUnload ' + that.isFromReturn); |
|---|
| 541 | | - }, 200) |
|---|
| 542 | | - }, |
|---|
| 543 | | - onShow() { |
|---|
| 544 | | - let that = this; |
|---|
| 545 | | - if(that.$store.getters.isSystemHide){ |
|---|
| 546 | | - console.log('系统事件触发了onshow事件'); |
|---|
| 547 | | - return false; |
|---|
| 548 | | - } |
|---|
| 549 | | - uni.$off('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 550 | | - uni.$off('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 551 | | - uni.$off('loginFlSuccess', that.registerFn); |
|---|
| 552 | | - that.isPageShow = true; |
|---|
| 553 | | - |
|---|
| 554 | | - uni.setNavigationBarTitle({ |
|---|
| 555 | | - title: that.site_name |
|---|
| 556 | | - }); |
|---|
| 557 | | - let pages = getCurrentPages(), |
|---|
| 558 | | - currPage = pages[pages.length - 1]; |
|---|
| 559 | | - console.log('------------------page onShow start-----------------'); |
|---|
| 560 | | - console.log('route', currPage.route); |
|---|
| 561 | | - console.log('options', currPage.options); |
|---|
| 562 | | - console.log('------------------page onShow end-----------------'); |
|---|
| 563 | | - console.log('onshow return ' + this.isFromReturn+','+(new Date()).getTime()); |
|---|
| 564 | | - if (that.isFromReturn&&(new Date()).getTime()-that.isFromReturn<5*60*1000&&that.$store.getters.isLogin) { |
|---|
| 565 | | - console.log('首页不刷新') |
|---|
| 566 | | - that.getUserBean(); |
|---|
| 567 | | - } else { |
|---|
| 568 | | - if (that.$store.getters.careBeanRate) { |
|---|
| 569 | | - that.careBeanRateReadyFn(); |
|---|
| 570 | | - } else { |
|---|
| 571 | | - uni.$once('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 572 | | - } |
|---|
| 573 | | - if (that.$store.getters.isBelong) { |
|---|
| 574 | | - that.belongInfoReadyFn({ |
|---|
| 575 | | - isRegister: false |
|---|
| 576 | | - }) |
|---|
| 577 | | - } else { |
|---|
| 578 | | - uni.$once('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 579 | | - } |
|---|
| 580 | | - } |
|---|
| 581 | | - that.isFromReturn = false; |
|---|
| 582 | | - }, |
|---|
| 583 | | - onReachBottom() { |
|---|
| 584 | | - console.log('onReachBottom'); |
|---|
| 585 | | - this.get_product_list(); |
|---|
| 586 | | - }, |
|---|
| 587 | | - methods: { |
|---|
| 588 | | - goToLottery(){ |
|---|
| 589 | | - let that=this; |
|---|
| 590 | | - this.clickTrack('lottery'); |
|---|
| 591 | | - function go(){ |
|---|
| 592 | | - let miniProgramInfo = uni.getAccountInfoSync().miniProgram; |
|---|
| 593 | | - let url=that.homeBanner.homeBannerUrl; |
|---|
| 594 | | - url=url.replace("{{token}}",that.$store.getters.token).replace("{{unionId}}",that.$store.getters.unionId) |
|---|
| 595 | | - uni.navigateTo({ |
|---|
| 596 | | - url: url |
|---|
| 597 | | - }) |
|---|
| 598 | | - } |
|---|
| 599 | | - if (!that.$store.getters.isLogin) { |
|---|
| 600 | | - toLogin(that); |
|---|
| 601 | | - that.loginBackFn = function() { |
|---|
| 602 | | - go(); |
|---|
| 603 | | - } |
|---|
| 604 | | - }else{ |
|---|
| 605 | | - go(); |
|---|
| 606 | | - } |
|---|
| 602 | + return groups; |
|---|
| 603 | + } |
|---|
| 604 | + }, |
|---|
| 605 | + components: { |
|---|
| 606 | + goodList, |
|---|
| 607 | + countDown, |
|---|
| 608 | + a_seckill, |
|---|
| 609 | + b_combination, |
|---|
| 610 | + c_bargain, |
|---|
| 611 | + recommend, |
|---|
| 612 | + Loading, |
|---|
| 613 | + GoodBlock, |
|---|
| 614 | + popCoupon, |
|---|
| 615 | + popActivity, |
|---|
| 616 | + popNewuser |
|---|
| 617 | + }, |
|---|
| 618 | + data() { |
|---|
| 619 | + return { |
|---|
| 620 | + isLoadingRank: false, |
|---|
| 621 | + rankProducts: [], |
|---|
| 622 | + defautHead: 'https://ossacmall.bluedeer.com.cn/app/static/images/userHead_defaultNew.png', |
|---|
| 623 | + buyList: [], |
|---|
| 624 | + pageHeight: 0, |
|---|
| 625 | + loaded: false, |
|---|
| 626 | + loading: false, |
|---|
| 627 | + isAuto: false, //没有授权的不会自动授权 |
|---|
| 628 | + isShowAuth: false, //是否隐藏授权 |
|---|
| 629 | + statusBarHeight: statusBarHeight, |
|---|
| 630 | + navIndex: 0, |
|---|
| 631 | + navTop: [], |
|---|
| 632 | + followUrl: "", |
|---|
| 633 | + followHid: true, |
|---|
| 634 | + followCode: false, |
|---|
| 635 | + logoUrl: "", |
|---|
| 636 | + imgUrls: [], |
|---|
| 637 | + itemNew: [], |
|---|
| 638 | + menus: [], |
|---|
| 639 | + zoneList: [], |
|---|
| 640 | + bastInfo: '', |
|---|
| 641 | + fastInfo: '', |
|---|
| 642 | + fastList: [], |
|---|
| 643 | + firstInfo: '', |
|---|
| 644 | + salesInfo: '', |
|---|
| 645 | + indicatorDots: false, |
|---|
| 646 | + circular: true, |
|---|
| 647 | + autoplay: true, |
|---|
| 648 | + interval: 5000, |
|---|
| 649 | + duration: 500, |
|---|
| 650 | + window: false, |
|---|
| 651 | + iShidden: false, |
|---|
| 652 | + headerHeight: 0, |
|---|
| 653 | + newGoodsBananr: '', |
|---|
| 654 | + couponList: [], |
|---|
| 655 | + liveList: [], |
|---|
| 656 | + hotList: [{ |
|---|
| 657 | + pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_001.png' |
|---|
| 658 | + }, { |
|---|
| 659 | + pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_002.png' |
|---|
| 660 | + }, { |
|---|
| 661 | + pic: 'https://ossacmall.bluedeer.com.cn/app/static/images/hot_003.png' |
|---|
| 662 | + }], |
|---|
| 663 | + ProductNavindex: 0, |
|---|
| 664 | + marTop: 0, |
|---|
| 665 | + childID: 0, |
|---|
| 666 | + loadend: false, |
|---|
| 667 | + loadTitle: '加载更多', |
|---|
| 668 | + sortProduct: [], |
|---|
| 669 | + is_switch: true, |
|---|
| 670 | + hotPage: 1, |
|---|
| 671 | + hotLimit: 10, |
|---|
| 672 | + hotScroll: false, |
|---|
| 673 | + explosiveMoney: [], |
|---|
| 674 | + prodeuctTop: 0, |
|---|
| 675 | + searchH: 0, |
|---|
| 676 | + isFixed: false, |
|---|
| 677 | + goodScroll: true, //精品推荐开关 |
|---|
| 678 | + params: { //精品推荐分页 |
|---|
| 679 | + page: 1, |
|---|
| 680 | + limit: 10, |
|---|
| 607 | 681 | }, |
|---|
| 608 | | - careBeanRateReadyFn() { |
|---|
| 609 | | - let that = this; |
|---|
| 682 | + tempArr: [], //精品推荐临时数组 |
|---|
| 683 | + roll: [], // 新闻简报 |
|---|
| 684 | + site_name: '', //首页title |
|---|
| 685 | + iSshowH: false, |
|---|
| 686 | + configApi: {}, //分享类容配置 |
|---|
| 687 | + spikeList: [], // 秒杀 |
|---|
| 688 | + point: '', |
|---|
| 689 | + privacyStatus: false, // 隐私政策是否同意过 |
|---|
| 690 | + tabsScrollLeft: 0, // tabs当前偏移量 |
|---|
| 691 | + scrollLeft: 0, |
|---|
| 692 | + lineColor: 'red', |
|---|
| 693 | + lineStyle: {}, // 下划线位置--动态甲酸 |
|---|
| 694 | + listActive: 0, // 当前选中项 |
|---|
| 695 | + |
|---|
| 696 | + duration: 0.2, // 下划线动画时长 |
|---|
| 697 | + menuTop: 0, |
|---|
| 698 | + menuHeight: 50, |
|---|
| 699 | + searchWidth: 0, |
|---|
| 700 | + windowWidth: 0, |
|---|
| 701 | + windowHeight: 0, |
|---|
| 702 | + isConfigReady: false, |
|---|
| 703 | + hasLoadGroomList: false, |
|---|
| 704 | + hasLoadCouponList: false, |
|---|
| 705 | + isGetWholeCoupon: false, |
|---|
| 706 | + isGetWholeCoupon2: false, |
|---|
| 707 | + tabArr: [ |
|---|
| 708 | + '', |
|---|
| 709 | + '更多健康好物' |
|---|
| 710 | + ], |
|---|
| 711 | + hotCategoryList: [], |
|---|
| 712 | + categoryList: [], |
|---|
| 713 | + subCategoryList: [], |
|---|
| 714 | + productList: [], |
|---|
| 715 | + categoryIndex: 0, |
|---|
| 716 | + categorySubIndex: 0, |
|---|
| 717 | + where: { |
|---|
| 718 | + page: 1, |
|---|
| 719 | + limit: 10, |
|---|
| 720 | + cid: 0, |
|---|
| 721 | + }, |
|---|
| 722 | + userInfo: { |
|---|
| 723 | + |
|---|
| 724 | + }, |
|---|
| 725 | + userInfoReady: '', |
|---|
| 726 | + scrollHeight: 100, |
|---|
| 727 | + scrollTop: 0, |
|---|
| 728 | + oldScrollTop: 0, |
|---|
| 729 | + pageScrollTop: 0, |
|---|
| 730 | + viewHeight: 0, |
|---|
| 731 | + loadingGood: false, |
|---|
| 732 | + careBeanRate: 0, |
|---|
| 733 | + tabLinkArr: [ |
|---|
| 734 | + 'pages/index/index', |
|---|
| 735 | + 'pages/goods_cate/goods_cate', |
|---|
| 736 | + 'pages/user/index' |
|---|
| 737 | + ], |
|---|
| 738 | + extVipLevelAttr: [ |
|---|
| 739 | + '非会员', |
|---|
| 740 | + '普通会员', |
|---|
| 741 | + '畅享会员', |
|---|
| 742 | + '悦享会员', |
|---|
| 743 | + '臻享会员' |
|---|
| 744 | + ], |
|---|
| 745 | + isPageShow: false, |
|---|
| 746 | + loginBackFn: null, |
|---|
| 747 | + myCareBean: 0, |
|---|
| 748 | + careBeanReady: false, |
|---|
| 749 | + newCouponList: [], |
|---|
| 750 | + isFromReturn: false, |
|---|
| 751 | + hasListenReturn: false, |
|---|
| 752 | + statusMap: { |
|---|
| 753 | + 'usable': '去使用', |
|---|
| 754 | + 'unusable': '已使用', |
|---|
| 755 | + 'overdue': '已过期', |
|---|
| 756 | + 'notStart': '未开始' |
|---|
| 757 | + }, |
|---|
| 758 | + isClicking: false, |
|---|
| 759 | + hasLottery: false, |
|---|
| 760 | + homeBanner: {}, |
|---|
| 761 | + serviceSupport: {}, |
|---|
| 762 | + homeActivity: {}, |
|---|
| 763 | + dealModule: null, |
|---|
| 764 | + newProductModule: null, |
|---|
| 765 | + healthZoneModule: null, |
|---|
| 766 | + activityBannerModule: null, |
|---|
| 767 | + hotRankModule: null, |
|---|
| 768 | + hotRankIndex: 0, |
|---|
| 769 | + zoneCurrent: 0, |
|---|
| 770 | + brandCurrent: 0, |
|---|
| 771 | + newProductCurrent: 0, |
|---|
| 772 | + brandWallModule: null, |
|---|
| 773 | + dealCurrent: 0, |
|---|
| 774 | + bannerCurrent: 0, |
|---|
| 775 | + dealCountdown: null, |
|---|
| 776 | + dealEndTs: 0, |
|---|
| 777 | + serverTimeOffset: 0 |
|---|
| 778 | + } |
|---|
| 779 | + }, |
|---|
| 780 | + watch: {}, |
|---|
| 781 | + mounted() { }, |
|---|
| 782 | + onLoad() { |
|---|
| 783 | + let that = this; |
|---|
| 784 | + console.log('pageIndex onLoad'); |
|---|
| 785 | + // 获取系统信息 |
|---|
| 786 | + uni.getSystemInfo({ |
|---|
| 787 | + success(res) { |
|---|
| 788 | + that.$store.commit("SYSTEM_PLATFORM", res.platform); |
|---|
| 789 | + that.windowWidth = res.windowWidth; |
|---|
| 790 | + that.windowHeight = res.windowHeight; |
|---|
| 791 | + that.pageHeight = (res.windowHeight - res.statusBarHeight) / res.windowWidth * 750; |
|---|
| 792 | + let menuSize = uni.getMenuButtonBoundingClientRect(); |
|---|
| 793 | + console.log('----------------------menuSize--------------------'); |
|---|
| 794 | + console.log(menuSize); |
|---|
| 795 | + that.menuTop = menuSize.top; |
|---|
| 796 | + that.menuHeight = menuSize.height; |
|---|
| 797 | + that.searchWidth = uni.getMenuButtonBoundingClientRect().left - 210 / 750 * that.windowWidth; |
|---|
| 610 | 798 | that.$nextTick(() => { |
|---|
| 611 | | - that.$set(that, 'careBeanRate', that.$store.getters.careBeanRate) |
|---|
| 612 | | - }) |
|---|
| 613 | | - }, |
|---|
| 614 | | - belongInfoReadyFn(data) { |
|---|
| 615 | | - let that = this; |
|---|
| 616 | | - if (!data.isRegister) { |
|---|
| 617 | | - that.checkLoginFn(); |
|---|
| 618 | | - } |
|---|
| 619 | | - }, |
|---|
| 620 | | - checkLoginFn() { |
|---|
| 621 | | - let that = this; |
|---|
| 622 | | - let pages = getCurrentPages(), |
|---|
| 623 | | - currPage = pages[pages.length - 1]; |
|---|
| 624 | | - that.addTrack('yy_pageView', { |
|---|
| 625 | | - pageTitle_var: '首页', |
|---|
| 626 | | - pagePath_var: currPage.route, |
|---|
| 627 | | - pageType_var: '首页' |
|---|
| 628 | | - }); |
|---|
| 629 | | - that.getIndexData(); |
|---|
| 630 | | - if (that.$store.getters.isLogin) { |
|---|
| 631 | | - that.onLoadFn(); |
|---|
| 632 | | - } else { |
|---|
| 633 | | - that.userInfoReady = 'needRegister'; |
|---|
| 634 | | - } |
|---|
| 635 | | - uni.$once('loginFlSuccess', that.registerFn); |
|---|
| 636 | | - }, |
|---|
| 637 | | - |
|---|
| 638 | | - registerFn() { |
|---|
| 639 | | - console.log('registerFn'); |
|---|
| 640 | | - let that = this; |
|---|
| 641 | | - if (that.loginBackFn) { |
|---|
| 642 | | - that.loginBackFn(); |
|---|
| 643 | | - } |
|---|
| 644 | | - that.loginBackFn = null; |
|---|
| 645 | | - }, |
|---|
| 646 | | - getUserBean() { |
|---|
| 647 | | - let that = this; |
|---|
| 648 | | - getUserBean().then(res2 => { |
|---|
| 649 | | - that.careBeanReady = true; |
|---|
| 650 | | - that.myCareBean = res2.data.totalCareBeans; |
|---|
| 651 | | - }); |
|---|
| 652 | | - }, |
|---|
| 653 | | - onLoadFn() { |
|---|
| 654 | | - let that = this; |
|---|
| 655 | | - that.userInfo = that.$store.getters.userInfo; |
|---|
| 656 | | - that.getUserBean(); |
|---|
| 657 | | - that.userInfoReady = 'hasUserInfo'; |
|---|
| 658 | | - that.getBaseUserInfo(); |
|---|
| 659 | | - |
|---|
| 660 | | - }, |
|---|
| 661 | | - clickTrack(type, item) { |
|---|
| 662 | | - var data = { |
|---|
| 663 | | - pageTitle_var: '首页', |
|---|
| 664 | | - firstTabName_var: '-' |
|---|
| 665 | | - }; |
|---|
| 666 | | - if (type == 'search') { |
|---|
| 667 | | - data['moduleName_var'] = '页面顶部'; |
|---|
| 668 | | - data['buttonName_var'] = '搜索商品'; |
|---|
| 669 | | - } |
|---|
| 670 | | - if (type == 'third') { |
|---|
| 671 | | - data['moduleName_var'] = '页面顶部'; |
|---|
| 672 | | - data['buttonName_var'] = '查看悦养豆'; |
|---|
| 673 | | - } |
|---|
| 674 | | - if (type == 'vip') { |
|---|
| 675 | | - data['moduleName_var'] = '页面顶部'; |
|---|
| 676 | | - data['buttonName_var'] = '查看会员权益'; |
|---|
| 677 | | - } else if (type == 'banner') { |
|---|
| 678 | | - data['moduleName_var'] = '轮播卡片'; |
|---|
| 679 | | - data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 680 | | - } else if (type == 'menu') { |
|---|
| 681 | | - data['moduleName_var'] = '金刚位'; |
|---|
| 682 | | - data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 683 | | - } else if (type == 'zone') { |
|---|
| 684 | | - data['moduleName_var'] = '探索健康好物'; |
|---|
| 685 | | - data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 686 | | - }else if (type == 'lottery') { |
|---|
| 687 | | - data['moduleName_var'] = '抽奖'; |
|---|
| 688 | | - data['buttonName_var'] = 'GO'; |
|---|
| 689 | | - } else if (type == 'coupon') { |
|---|
| 690 | | - data['moduleName_var'] = '优惠券'; |
|---|
| 691 | | - data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 692 | | - } else if (type == 'cate') { |
|---|
| 693 | | - data['moduleName_var'] = '商品分类'; |
|---|
| 694 | | - data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 695 | | - } |
|---|
| 696 | | - this.addTrack('yy_marketPageClick', data); |
|---|
| 697 | | - }, |
|---|
| 698 | | - goToThird(url, appId) { |
|---|
| 699 | | - //第三方小程序 |
|---|
| 700 | | - // /pages/home/index?source=INSMART&sourceScene=test&agentNo=90028476&agentChannel=BK&agentCompany=123&agentBranch=123 |
|---|
| 701 | | - |
|---|
| 702 | | - if (url.indexOf('?') < 0) { |
|---|
| 703 | | - url += '?'; |
|---|
| 704 | | - } else { |
|---|
| 705 | | - url += '&'; |
|---|
| 706 | | - } |
|---|
| 707 | | - if (app.globalData.source) { |
|---|
| 708 | | - url += 'source=' + app.globalData.source; |
|---|
| 709 | | - } else { |
|---|
| 710 | | - url += 'source=MALL'; |
|---|
| 711 | | - } |
|---|
| 712 | | - url += '&sourceScene=home'; |
|---|
| 713 | | - url += '&agentNo=' + ((this.$store.getters.belong && this.$store.getters.belong.agentNo) ? this.$store |
|---|
| 714 | | - .getters.belong.agentNo : ''); |
|---|
| 715 | | - url += '&agentChannel=' + ((this.$store.getters.belong && this.$store.getters.belong.channel) ? this.$store |
|---|
| 716 | | - .getters.belong.channel : ''); //归属代理人渠道 |
|---|
| 717 | | - url += '&agentCompany=' + ((this.$store.getters.belong && this.$store.getters.belong.companyCode) ? this |
|---|
| 718 | | - .$store.getters.belong.companyCode : ''); //agentCompany |
|---|
| 719 | | - |
|---|
| 720 | | - url += '&agentBranch=' + ((this.$store.getters.belong && this.$store.getters.belong.branchCode) ? this |
|---|
| 721 | | - .$store.getters.belong.branchCode : ''); //归属代理人支公司 |
|---|
| 722 | | - url += '&custAgentOrgNo=' + ((this.$store.getters.belong && this.$store.getters.belong.subCode) ? this |
|---|
| 723 | | - .$store.getters.belong.subCode : ''); //归属代理人机构编码 |
|---|
| 724 | | - |
|---|
| 725 | | - url += 'unionId=' + this.$store.getters.unionId; |
|---|
| 726 | | - url += '&mobile=' + ((this.$store.getters.belong && this.$store.getters.belong.mobile) ? this.$store |
|---|
| 727 | | - .getters.belong.mobile : this.$store.getters.userInfo.mobile); |
|---|
| 728 | | - console.log(url); |
|---|
| 729 | | - |
|---|
| 730 | | - |
|---|
| 731 | | - |
|---|
| 732 | | - let miniProgramInfo = uni.getAccountInfoSync().miniProgram; |
|---|
| 733 | | - uni.navigateToMiniProgram({ |
|---|
| 734 | | - appId: appId ? appId : THIRD_APPID, |
|---|
| 735 | | - path: url, |
|---|
| 736 | | - envVersion: miniProgramInfo.envVersion == 'release' ? 'release' : 'trial', |
|---|
| 737 | | - }) |
|---|
| 738 | | - |
|---|
| 739 | | - // let params={}; |
|---|
| 740 | | - // params['custAgentNo']=((this.$store.getters.belong && this.$store.getters.belong.agentNo) ? this.$store |
|---|
| 741 | | - // .getters.belong.agentNo : ''); |
|---|
| 742 | | - // params['custAgentChnl']=((this.$store.getters.belong && this.$store.getters.belong.channel) ? this.$store |
|---|
| 743 | | - // .getters.belong.channel : ''); |
|---|
| 744 | | - // params['custAgentCoy']=((this.$store.getters.belong && this.$store.getters.belong.companyCode) ? this |
|---|
| 745 | | - // .$store.getters.belong.companyCode : ''); |
|---|
| 746 | | - // params['custAgentBranch']=((this.$store.getters.belong && this.$store.getters.belong.branchCode) ? this |
|---|
| 747 | | - // .$store.getters.belong.branchCode : ''); |
|---|
| 748 | | - // params['custAgentOrgNo']=((this.$store.getters.belong && this.$store.getters.belong.subCode) ? this |
|---|
| 749 | | - // .$store.getters.belong.subCode : ''); |
|---|
| 750 | | - // let webUrl='https://ossacmall.bluedeer.com.cn/qr/index.html?isMall=true'+(miniProgramInfo.envVersion == 'release' ? '' : '&isTrial=true')+'¶ms='+encodeURIComponent(JSON.stringify(params))+'&pageUrl='+encodeURIComponent(url); |
|---|
| 751 | | - // if(HTTP_REQUEST_URL.indexOf('tohours')>0){ |
|---|
| 752 | | - // webUrl=webUrl.replace('https://ossacmall.bluedeer.com.cn/qr','https://sit.tohours.com/crmeb_web/qr/') |
|---|
| 753 | | - // } |
|---|
| 754 | | - // uni.navigateTo({ |
|---|
| 755 | | - // url: '/pages/users/web_page/index?webUel='+encodeURIComponent(webUrl) |
|---|
| 756 | | - // }) |
|---|
| 757 | | - |
|---|
| 758 | | - this.clickTrack('third') |
|---|
| 759 | | - }, |
|---|
| 760 | | - goToLink(item, type) { |
|---|
| 761 | | - let that=this; |
|---|
| 762 | | - function go(){ |
|---|
| 763 | | - if (item.appid) { |
|---|
| 764 | | - that.goToThird(item.url, item.appid); |
|---|
| 765 | | - } else if (that.isTabLink(item.url)) { |
|---|
| 766 | | - let arr = item.url.split('?'); |
|---|
| 767 | | - if (arr.length > 1) { |
|---|
| 768 | | - that.$store.commit('updateSwitchParams', { |
|---|
| 769 | | - switchParams: arr[1] |
|---|
| 770 | | - }); |
|---|
| 799 | + let query = uni.createSelectorQuery().in(that); |
|---|
| 800 | + let info = query.select(".mp-header"); |
|---|
| 801 | + info.boundingClientRect(function (data) { |
|---|
| 802 | + if (data) { |
|---|
| 803 | + that.marTop = data.height; |
|---|
| 804 | + that.viewHeight = that.windowHeight - data.height - 200 / 750 * |
|---|
| 805 | + that.windowWidth; |
|---|
| 806 | + that.poTop = Number(data.height) + 84 |
|---|
| 771 | 807 | } |
|---|
| 772 | | - uni.switchTab({ |
|---|
| 773 | | - url: arr[0] |
|---|
| 774 | | - }); |
|---|
| 775 | | - } else { |
|---|
| 776 | | - uni.navigateTo({ |
|---|
| 777 | | - url: item.url.replace("{{token}}",that.$store.getters.token).replace("{{unionId}}",that.$store.getters.unionId) |
|---|
| 778 | | - }) |
|---|
| 779 | | - } |
|---|
| 780 | | - that.clickTrack(type, item); |
|---|
| 808 | + |
|---|
| 809 | + }).exec() |
|---|
| 810 | + }) |
|---|
| 811 | + } |
|---|
| 812 | + }); |
|---|
| 813 | + this.getTemlIds(); |
|---|
| 814 | + if (!this.hasListenReturn) { |
|---|
| 815 | + uni.$on('returnEvent', function (data) { |
|---|
| 816 | + console.log('listen returnEvent'); |
|---|
| 817 | + if (data && (data.name == 'tabBar' || data.name == 'order')) { |
|---|
| 818 | + that.isFromReturn = false; |
|---|
| 819 | + //强制刷新 |
|---|
| 820 | + // that.isFromReturn = (new Date()).getTime(); |
|---|
| 821 | + // console.log('listen return ' + that.isFromReturn); |
|---|
| 822 | + } else if (data && data.name == 'goods_details') { |
|---|
| 823 | + that.isFromReturn = (new Date()).getTime(); |
|---|
| 824 | + console.log('listen return ' + that.isFromReturn); |
|---|
| 781 | 825 | } |
|---|
| 782 | | - console.log(item.url); |
|---|
| 783 | | - if (item.url.indexOf('needLogin=true')>0&&!that.$store.getters.isLogin) { |
|---|
| 784 | | - toLogin(that); |
|---|
| 785 | | - that.loginBackFn = function() { |
|---|
| 786 | | - go(); |
|---|
| 787 | | - } |
|---|
| 788 | | - }else{ |
|---|
| 826 | + }); |
|---|
| 827 | + this.hasListenReturn = true; |
|---|
| 828 | + } |
|---|
| 829 | + }, |
|---|
| 830 | + onHide() { |
|---|
| 831 | + let that = this; |
|---|
| 832 | + if (that.$store.getters.isSystemHide) { |
|---|
| 833 | + console.log('系统事件触发了onhide事件'); |
|---|
| 834 | + return false; |
|---|
| 835 | + } |
|---|
| 836 | + this.isPageShow = false; |
|---|
| 837 | + clearInterval(this.dealTimer); |
|---|
| 838 | + uni.$off('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 839 | + uni.$off('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 840 | + uni.$off('loginFlSuccess', that.registerFn); |
|---|
| 841 | + setTimeout(function () { |
|---|
| 842 | + that.isFromReturn = (new Date()).getTime(); |
|---|
| 843 | + console.log('listen onUnload ' + that.isFromReturn); |
|---|
| 844 | + }, 200) |
|---|
| 845 | + }, |
|---|
| 846 | + onShow() { |
|---|
| 847 | + let that = this; |
|---|
| 848 | + if (that.$store.getters.isSystemHide) { |
|---|
| 849 | + console.log('系统事件触发了onshow事件'); |
|---|
| 850 | + return false; |
|---|
| 851 | + } |
|---|
| 852 | + uni.$off('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 853 | + uni.$off('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 854 | + uni.$off('loginFlSuccess', that.registerFn); |
|---|
| 855 | + that.isPageShow = true; |
|---|
| 856 | + if (that.dealEndTs) { |
|---|
| 857 | + clearInterval(that.dealTimer); |
|---|
| 858 | + that.updateDealCountdown(); |
|---|
| 859 | + that.dealTimer = setInterval(function () { |
|---|
| 860 | + that.updateDealCountdown(); |
|---|
| 861 | + }, 1000); |
|---|
| 862 | + } |
|---|
| 863 | + |
|---|
| 864 | + uni.setNavigationBarTitle({ |
|---|
| 865 | + title: that.site_name |
|---|
| 866 | + }); |
|---|
| 867 | + let pages = getCurrentPages(), |
|---|
| 868 | + currPage = pages[pages.length - 1]; |
|---|
| 869 | + console.log('------------------page onShow start-----------------'); |
|---|
| 870 | + console.log('route', currPage.route); |
|---|
| 871 | + console.log('options', currPage.options); |
|---|
| 872 | + console.log('------------------page onShow end-----------------'); |
|---|
| 873 | + console.log('onshow return ' + this.isFromReturn + ',' + (new Date()).getTime()); |
|---|
| 874 | + if (that.isFromReturn && (new Date()).getTime() - that.isFromReturn < 5 * 60 * 1000 && that.$store.getters.isLogin) { |
|---|
| 875 | + console.log('首页不刷新') |
|---|
| 876 | + that.getUserBean(); |
|---|
| 877 | + } else { |
|---|
| 878 | + if (that.$store.getters.careBeanRate) { |
|---|
| 879 | + that.careBeanRateReadyFn(); |
|---|
| 880 | + } else { |
|---|
| 881 | + uni.$once('updateCareBeanRate', that.careBeanRateReadyFn); |
|---|
| 882 | + } |
|---|
| 883 | + if (that.$store.getters.isBelong) { |
|---|
| 884 | + that.belongInfoReadyFn({ |
|---|
| 885 | + isRegister: false |
|---|
| 886 | + }) |
|---|
| 887 | + } else { |
|---|
| 888 | + uni.$once('BELONG_READY', that.belongInfoReadyFn); |
|---|
| 889 | + } |
|---|
| 890 | + } |
|---|
| 891 | + that.isFromReturn = false; |
|---|
| 892 | + }, |
|---|
| 893 | + onReachBottom() { |
|---|
| 894 | + console.log('onReachBottom'); |
|---|
| 895 | + this.get_product_list(); |
|---|
| 896 | + }, |
|---|
| 897 | + methods: { |
|---|
| 898 | + goToLottery() { |
|---|
| 899 | + let that = this; |
|---|
| 900 | + this.clickTrack('lottery'); |
|---|
| 901 | + function go() { |
|---|
| 902 | + let miniProgramInfo = uni.getAccountInfoSync().miniProgram; |
|---|
| 903 | + let url = that.homeBanner.homeBannerUrl; |
|---|
| 904 | + url = url.replace("{{token}}", that.$store.getters.token).replace("{{unionId}}", that.$store.getters.unionId) |
|---|
| 905 | + uni.navigateTo({ |
|---|
| 906 | + url: url |
|---|
| 907 | + }) |
|---|
| 908 | + } |
|---|
| 909 | + if (!that.$store.getters.isLogin) { |
|---|
| 910 | + toLogin(that); |
|---|
| 911 | + that.loginBackFn = function () { |
|---|
| 789 | 912 | go(); |
|---|
| 790 | 913 | } |
|---|
| 791 | | - |
|---|
| 792 | | - |
|---|
| 793 | | - }, |
|---|
| 794 | | - isTabLink(link) { |
|---|
| 795 | | - let isTab = false; |
|---|
| 796 | | - this.tabLinkArr.forEach((item) => { |
|---|
| 797 | | - if (link.indexOf(item) >= 0) { |
|---|
| 798 | | - isTab = true; |
|---|
| 799 | | - } |
|---|
| 800 | | - }) |
|---|
| 801 | | - return isTab; |
|---|
| 802 | | - }, |
|---|
| 803 | | - handleLoad() { |
|---|
| 804 | | - let that = this; |
|---|
| 805 | | - }, |
|---|
| 806 | | - goToLogin() { |
|---|
| 807 | | - let that = this; |
|---|
| 808 | | - toLogin(that); |
|---|
| 809 | | - that.loginBackFn = function() { |
|---|
| 810 | | - that.userInfo = that.$store.getters.userInfo; |
|---|
| 811 | | - that.userInfoReady = 'hasUserInfo'; |
|---|
| 812 | | - that.getBaseUserInfo(); |
|---|
| 813 | | - that.getIndexData(); |
|---|
| 814 | | - that.onLoadFn(); |
|---|
| 914 | + } else { |
|---|
| 915 | + go(); |
|---|
| 916 | + } |
|---|
| 917 | + }, |
|---|
| 918 | + careBeanRateReadyFn() { |
|---|
| 919 | + let that = this; |
|---|
| 920 | + that.$nextTick(() => { |
|---|
| 921 | + that.$set(that, 'careBeanRate', that.$store.getters.careBeanRate) |
|---|
| 922 | + }) |
|---|
| 923 | + }, |
|---|
| 924 | + // 清理接口返回图片地址中的多余字符(如反引号) |
|---|
| 925 | + cleanUrl(url) { |
|---|
| 926 | + if (!url) return ''; |
|---|
| 927 | + return url.replace(/[`\s]/g, ''); |
|---|
| 928 | + }, |
|---|
| 929 | + // 模块商品价格:与秒杀getUserLvPrice同口径,按商品userLv取会员价,无则取默认价 |
|---|
| 930 | + modulePrice(d) { |
|---|
| 931 | + if (!d) return ''; |
|---|
| 932 | + let price = 0; |
|---|
| 933 | + if (d.zoneId) { |
|---|
| 934 | + price = d.zhenXiangPrice; |
|---|
| 935 | + } else { |
|---|
| 936 | + let lv = d.userLv; |
|---|
| 937 | + if (lv === undefined || lv === null || lv === '') { |
|---|
| 938 | + lv = (this.$store.getters.userInfo && this.$store.getters.userInfo.level) || 0; |
|---|
| 815 | 939 | } |
|---|
| 816 | | - }, |
|---|
| 817 | | - getBaseUserInfo() { |
|---|
| 818 | | - let that = this; |
|---|
| 819 | | - silenceBindingSpread(); |
|---|
| 820 | | - }, |
|---|
| 821 | | - goToCoupon: function() { |
|---|
| 822 | | - uni.navigateTo({ |
|---|
| 823 | | - url: '/pages/users/user_coupon/index' |
|---|
| 824 | | - }) |
|---|
| 825 | | - }, |
|---|
| 826 | | - getCoupon: function(isWhole, orgItem,index) { |
|---|
| 827 | | - let that = this; |
|---|
| 828 | | - if (!that.$store.getters.isLogin) { |
|---|
| 829 | | - that.goToLogin(); |
|---|
| 830 | | - return false; |
|---|
| 831 | | - } |
|---|
| 832 | | - if(that.isClicking){ |
|---|
| 833 | | - return false; |
|---|
| 834 | | - } |
|---|
| 835 | | - //领取优惠券 |
|---|
| 836 | | - if (isWhole) { |
|---|
| 837 | | - this.clickTrack('coupon', { |
|---|
| 838 | | - 'name': '一键领取' |
|---|
| 839 | | - }) |
|---|
| 840 | | - let couponIds = []; |
|---|
| 841 | | - that.couponList.forEach((item1, index1) => { |
|---|
| 842 | | - if (!item1.isUse && item1.type!='import') { |
|---|
| 843 | | - couponIds.push(item1.id); |
|---|
| 844 | | - } |
|---|
| 845 | | - }) |
|---|
| 846 | | - if(couponIds.length>0){ |
|---|
| 847 | | - var useNum = 0; |
|---|
| 848 | | - uni.showLoading(); |
|---|
| 849 | | - that.isClicking=true; |
|---|
| 850 | | - setWholeCouponReceive({ |
|---|
| 851 | | - couponIds: couponIds, |
|---|
| 852 | | - }).then(function(res) { |
|---|
| 853 | | - that.$util.Tips({ |
|---|
| 854 | | - title: '领取成功' |
|---|
| 855 | | - }); |
|---|
| 856 | | - let nameArr = []; |
|---|
| 857 | | - let idArr = []; |
|---|
| 858 | | - let hasCoupon4 = false; |
|---|
| 859 | | - that.couponList.forEach((item1, index1) => { |
|---|
| 860 | | - if (!item1.isUse && item1.type!='import') { |
|---|
| 861 | | - that.couponList[index1].isUse = true; |
|---|
| 862 | | - nameArr.push(item1.name); |
|---|
| 863 | | - idArr.push(item1.id); |
|---|
| 864 | | - } |
|---|
| 865 | | - if (item1.moneyType == 4) { |
|---|
| 866 | | - hasCoupon4 = true; |
|---|
| 867 | | - } |
|---|
| 868 | | - }); |
|---|
| 869 | | - that.isGetWholeCoupon = true; |
|---|
| 870 | | - that.addTrack('yy_getCoupon', { |
|---|
| 871 | | - 'couponName_var': nameArr.join(','), |
|---|
| 872 | | - 'couponId_var': idArr.join(',') |
|---|
| 873 | | - }); |
|---|
| 874 | | - if (hasCoupon4) { |
|---|
| 875 | | - that.changeCategoryTab(that.categoryIndex); |
|---|
| 876 | | - } |
|---|
| 877 | | - uni.hideLoading(); |
|---|
| 878 | | - that.isClicking=false; |
|---|
| 879 | | - }).catch(err => { |
|---|
| 880 | | - uni.hideLoading(); |
|---|
| 881 | | - that.isClicking=false; |
|---|
| 882 | | - return that.$util.Tips({ |
|---|
| 883 | | - title: (err && err.message) ? err.message : err |
|---|
| 884 | | - }); |
|---|
| 885 | | - }); |
|---|
| 886 | | - } |
|---|
| 940 | + if (lv == 0) { |
|---|
| 941 | + price = d.puTongPrice; |
|---|
| 942 | + } else if (lv == 1) { |
|---|
| 943 | + price = d.changXiangPrice; |
|---|
| 944 | + } else if (lv == 2) { |
|---|
| 945 | + price = d.yueXiangPrice; |
|---|
| 887 | 946 | } else { |
|---|
| 888 | | - let item=orgItem||this.couponList[index] |
|---|
| 889 | | - if (item.isUse || (item.type=='import' && item.validStr=='usable')) { |
|---|
| 890 | | - |
|---|
| 891 | | - that.isClicking=true; |
|---|
| 892 | | - var timer=setTimeout(()=>{ |
|---|
| 893 | | - that.isClicking=false; |
|---|
| 894 | | - clearTimeout(timer); |
|---|
| 895 | | - },500) |
|---|
| 896 | | - if (item.appId && item.toPath) { |
|---|
| 897 | | - that.goToThird(item.toPath, item.appId); |
|---|
| 898 | | - } else if (item.toPath) { |
|---|
| 899 | | - if (that.isTabLink(item.toPath)) { |
|---|
| 900 | | - uni.switchTab({ |
|---|
| 901 | | - url: item.toPath |
|---|
| 902 | | - }) |
|---|
| 903 | | - } else { |
|---|
| 904 | | - uni.navigateTo({ |
|---|
| 905 | | - url: item.toPath |
|---|
| 906 | | - }) |
|---|
| 907 | | - } |
|---|
| 908 | | - } else { |
|---|
| 909 | | - uni.switchTab({ |
|---|
| 910 | | - url: '/pages/goods_cate/goods_cate' |
|---|
| 911 | | - }) |
|---|
| 912 | | - } |
|---|
| 913 | | - } else if(item.type!=='import') { |
|---|
| 914 | | - uni.showLoading(); |
|---|
| 915 | | - that.isClicking=true; |
|---|
| 916 | | - setCouponReceive(item.id).then(function(res) { |
|---|
| 917 | | - that.addTrack('yy_getCoupon', { |
|---|
| 918 | | - 'couponName_var': item.name, |
|---|
| 919 | | - 'couponId_var': item.id |
|---|
| 920 | | - }); |
|---|
| 921 | | - that.$set(that.couponList[index], 'isUse', true); |
|---|
| 922 | | - that.$util.Tips({ |
|---|
| 923 | | - title: '领取成功' |
|---|
| 924 | | - }); |
|---|
| 925 | | - if (item.moneyType == 4) { |
|---|
| 926 | | - that.changeCategoryTab(that.categoryIndex); |
|---|
| 927 | | - } |
|---|
| 928 | | - let finishNum=0; |
|---|
| 929 | | - that.couponList.forEach((item1, index1) => { |
|---|
| 930 | | - if (item1.isUse) { |
|---|
| 931 | | - finishNum++; |
|---|
| 932 | | - } |
|---|
| 933 | | - }); |
|---|
| 934 | | - if(finishNum>=that.couponList.length){ |
|---|
| 935 | | - that.isGetWholeCoupon=true; |
|---|
| 936 | | - } |
|---|
| 937 | | - uni.hideLoading(); |
|---|
| 938 | | - that.isClicking=false; |
|---|
| 939 | | - }).catch(err => { |
|---|
| 940 | | - uni.hideLoading(); |
|---|
| 941 | | - that.isClicking=false; |
|---|
| 942 | | - return that.$util.Tips({ |
|---|
| 943 | | - title: (err && err.message) ? err.message : err |
|---|
| 944 | | - }); |
|---|
| 945 | | - }) |
|---|
| 946 | | - } |
|---|
| 947 | | - |
|---|
| 947 | + price = d.zhenXiangPrice; |
|---|
| 948 | 948 | } |
|---|
| 949 | | - }, |
|---|
| 950 | | - clickSort(index) { |
|---|
| 951 | | - this.listActive = index |
|---|
| 952 | | - }, |
|---|
| 953 | | - // scroll-view滑动事件 |
|---|
| 954 | | - scroll(e) { |
|---|
| 955 | | - this.scrollLeft = e.detail.scrollLeft; |
|---|
| 956 | | - }, |
|---|
| 957 | | - // 计算下划线位置 |
|---|
| 958 | | - setLine() { |
|---|
| 959 | | - let lineWidth = 0, |
|---|
| 960 | | - lineLeft = 0 |
|---|
| 961 | | - this.getElementData(`#tab_item`, (data) => { |
|---|
| 962 | | - let el = data[this.listActive] |
|---|
| 963 | | - lineWidth = el.width / 2 |
|---|
| 964 | | - // lineLeft = el.width * (this.currentIndex + 0.5) // 此种只能针对每个item长度一致的 |
|---|
| 965 | | - lineLeft = el.width / 2 + (-data[0].left) + el.left |
|---|
| 966 | | - this.lineStyle = { |
|---|
| 967 | | - width: `${lineWidth}px`, |
|---|
| 968 | | - transform: `translateX(${lineLeft}px) translateX(-50%)`, |
|---|
| 969 | | - transitionDuration: `${this.duration}s` |
|---|
| 970 | | - }; |
|---|
| 971 | | - }) |
|---|
| 972 | | - }, |
|---|
| 973 | | - getElementData(el, callback) { |
|---|
| 974 | | - uni.createSelectorQuery().in(this).selectAll(el).boundingClientRect().exec((data) => { |
|---|
| 975 | | - callback(data[0]); |
|---|
| 949 | + } |
|---|
| 950 | + if (price === undefined || price === null || price === '') { |
|---|
| 951 | + price = d.price; |
|---|
| 952 | + } |
|---|
| 953 | + if (price === undefined || price === null) return ''; |
|---|
| 954 | + // 悦养豆商品与秒杀一致:取整显示 |
|---|
| 955 | + if (d.payWay == 3) { |
|---|
| 956 | + return Math.round(parseFloat(price)) + ''; |
|---|
| 957 | + } |
|---|
| 958 | + return price; |
|---|
| 959 | + }, |
|---|
| 960 | + // 是否悦养豆商品(与秒杀payWay==3一致) |
|---|
| 961 | + moduleIsBean(d) { |
|---|
| 962 | + return !!(d && d.payWay == 3); |
|---|
| 963 | + }, |
|---|
| 964 | + // 混合支付(payWay==1)悦养豆数量 |
|---|
| 965 | + moduleBeanNum(d) { |
|---|
| 966 | + let n = Math.round(Number(d && d.maxCareBeanNumber) || 0); |
|---|
| 967 | + return n > 0 ? n : 0; |
|---|
| 968 | + }, |
|---|
| 969 | + // 混合支付(payWay==1)现金部分:会员价 - 悦养豆抵扣(与商品卡片getSelectPrice一致) |
|---|
| 970 | + moduleCashPrice(d) { |
|---|
| 971 | + if (!d) return ''; |
|---|
| 972 | + let price = parseFloat(this.modulePrice(d)) || 0; |
|---|
| 973 | + let beans = Number(d.maxCareBeanNumber) || 0; |
|---|
| 974 | + if (beans > 0 && Number(this.careBeanRate) > 0) { |
|---|
| 975 | + price = price - beans / Number(this.careBeanRate); |
|---|
| 976 | + } |
|---|
| 977 | + return price > 0 ? price.toFixed(2) : ''; |
|---|
| 978 | + }, |
|---|
| 979 | + // 模块商品原价(参考商品卡片goods_block L32-L40:现价与原价一致时不显示) |
|---|
| 980 | + moduleOldPrice(d) { |
|---|
| 981 | + if (!d) return ''; |
|---|
| 982 | + // 悦养豆商品:原价取悦养豆基础值careBeanNumber(无则回退price),与会员悦养豆价比对 |
|---|
| 983 | + if (this.moduleIsBean(d)) { |
|---|
| 984 | + let base = (d.careBeanNumber !== undefined && d.careBeanNumber !== null && d.careBeanNumber !== |
|---|
| 985 | + '') ? d.careBeanNumber : d.price; |
|---|
| 986 | + if (base === undefined || base === null || base === '') return ''; |
|---|
| 987 | + if (Number(base) == Number(this.modulePrice(d))) return ''; |
|---|
| 988 | + return base + ''; |
|---|
| 989 | + } |
|---|
| 990 | + // 人民币/混合商品:原价取基础价price |
|---|
| 991 | + let base = d.price; |
|---|
| 992 | + if (base === undefined || base === null || base === '') return ''; |
|---|
| 993 | + if (d.payWay == 1) { |
|---|
| 994 | + // 混合支付:与商品卡片一致,现金部分(getSelectPrice)与原价一致时不显示 |
|---|
| 995 | + let cash = parseFloat(this.moduleCashPrice(d)) || 0; |
|---|
| 996 | + if (cash == Number(base)) return ''; |
|---|
| 997 | + } else { |
|---|
| 998 | + if (Number(base) == Number(this.modulePrice(d))) return ''; |
|---|
| 999 | + } |
|---|
| 1000 | + return base + ''; |
|---|
| 1001 | + }, |
|---|
| 1002 | + dealSold(item) { |
|---|
| 1003 | + return item && item.data ? (item.data.salesItemCount || 0) : 0; |
|---|
| 1004 | + }, |
|---|
| 1005 | + dealSoldPercent(item) { |
|---|
| 1006 | + if (!item || !item.data) return 0; |
|---|
| 1007 | + let sold = Number(item.data.salesItemCount || 0); |
|---|
| 1008 | + let stock = Number(item.data.stock || 0); |
|---|
| 1009 | + if (sold + stock <= 0) return 0; |
|---|
| 1010 | + return Math.min(100, Math.round(sold / (sold + stock) * 100)); |
|---|
| 1011 | + }, |
|---|
| 1012 | + // 模块item跳转 |
|---|
| 1013 | + goModuleItem(item) { |
|---|
| 1014 | + let that = this; |
|---|
| 1015 | + console.log(item); |
|---|
| 1016 | + if (!item || item.jumpType == 'NONE' || !item.jumpTarget) return; |
|---|
| 1017 | + this.clickTrack('module', item); |
|---|
| 1018 | + let url = item.jumpTarget; |
|---|
| 1019 | + |
|---|
| 1020 | + console.log('goModuleItem', item, url); |
|---|
| 1021 | + if (url.indexOf('/') !== 0) { |
|---|
| 1022 | + url = '/' + url; |
|---|
| 1023 | + } |
|---|
| 1024 | + if (that.isTabLink(url)) { |
|---|
| 1025 | + uni.switchTab({ |
|---|
| 1026 | + url: url |
|---|
| 976 | 1027 | }); |
|---|
| 977 | | - }, |
|---|
| 978 | | - xieyiApp() { |
|---|
| 1028 | + } else { |
|---|
| 979 | 1029 | uni.navigateTo({ |
|---|
| 980 | | - url: '/pages/users/web_page/index?webUel=https://admin.java.crmeb.net/useragreement/xieyi.html&title=协议内容' |
|---|
| 981 | | - }) |
|---|
| 982 | | - }, |
|---|
| 983 | | - getTemlIds() { |
|---|
| 984 | | - for (var i in arrTemp) { |
|---|
| 985 | | - this.getTem(arrTemp[i]); |
|---|
| 986 | | - } |
|---|
| 987 | | - }, |
|---|
| 988 | | - getTem(data) { |
|---|
| 989 | | - getTemlIds({ |
|---|
| 990 | | - type: data |
|---|
| 991 | | - }).then(res => { |
|---|
| 992 | | - if (res.data) { |
|---|
| 993 | | - let arr = res.data.map((item) => { |
|---|
| 994 | | - return item.tempId |
|---|
| 995 | | - }) |
|---|
| 996 | | - wx.setStorageSync('tempID' + data, arr); |
|---|
| 997 | | - } |
|---|
| 998 | | - }) |
|---|
| 999 | | - }, |
|---|
| 1000 | | - showActivity(){ |
|---|
| 1001 | | - this.$refs.popNewuserRef.show(); |
|---|
| 1002 | | - }, |
|---|
| 1003 | | - // 首页数据 |
|---|
| 1004 | | - getIndexData: function() { |
|---|
| 1005 | | - let that = this; |
|---|
| 1006 | | - that.hasCheckedLogin = true; |
|---|
| 1007 | | - getIndexData().then(res => { |
|---|
| 1008 | | - let homePopupList=[] |
|---|
| 1009 | | - if(res.data.homePopupList){ |
|---|
| 1010 | | - homePopupList=res.data.homePopupList.map(item=>{ |
|---|
| 1011 | | - return { |
|---|
| 1012 | | - image:item.image, |
|---|
| 1013 | | - linkUrl:item.linkUrl |
|---|
| 1014 | | - } |
|---|
| 1015 | | - }) |
|---|
| 1016 | | - } |
|---|
| 1017 | | - that.$set(that, "homeActivity",{ |
|---|
| 1018 | | - // homeDate:res.data.homeDate, |
|---|
| 1019 | | - // homeImg:res.data.homeImg, |
|---|
| 1020 | | - // homeUrl:res.data.homeUrl, |
|---|
| 1021 | | - homePopupList:homePopupList |
|---|
| 1022 | | - }); |
|---|
| 1023 | | - that.$nextTick(()=>{ |
|---|
| 1024 | | - that.$refs.popActivity.show(); |
|---|
| 1025 | | - }) |
|---|
| 1026 | | - that.isConfigReady = true; |
|---|
| 1027 | | - uni.setNavigationBarTitle({ |
|---|
| 1028 | | - title: '首页' |
|---|
| 1029 | | - }) |
|---|
| 1030 | | - that.$set(that, "logoUrl", res.data.logoUrl); |
|---|
| 1031 | | - that.$set(that, "site_name", '首页'); |
|---|
| 1032 | | - if(res.data.banner){ |
|---|
| 1033 | | - res.data.banner.forEach((item, index) => { |
|---|
| 1034 | | - item.uniKey = 'banner' + index; |
|---|
| 1035 | | - }) |
|---|
| 1036 | | - } |
|---|
| 1037 | | - that.$set(that, "imgUrls", res.data.banner?res.data.banner:[]); |
|---|
| 1038 | | - if(res.data.menus){ |
|---|
| 1039 | | - res.data.menus.forEach((item, index) => { |
|---|
| 1040 | | - item.uniKey = 'menus' + index; |
|---|
| 1041 | | - }) |
|---|
| 1042 | | - } |
|---|
| 1043 | | - that.$set(that, "menus", res.data.menus?res.data.menus:[]); |
|---|
| 1044 | | - if (res.data.roll) { |
|---|
| 1045 | | - res.data.roll.forEach((item, index) => { |
|---|
| 1046 | | - item.uniKey = 'roll' + index; |
|---|
| 1047 | | - }) |
|---|
| 1048 | | - } |
|---|
| 1049 | | - that.$set(that, "roll", res.data.roll ? res.data.roll : []); |
|---|
| 1050 | | - // #ifdef H5 |
|---|
| 1051 | | - that.$store.commit("SET_CHATURL", res.data.yzfUrl); |
|---|
| 1052 | | - Cache.set('chatUrl', res.data.yzfUrl); |
|---|
| 1053 | | - // #endif |
|---|
| 1054 | | - this.shareApi(); |
|---|
| 1055 | | - this.getCategoryList(); |
|---|
| 1056 | | - this.getLast10Order(); |
|---|
| 1057 | | - this.getStoreZoneAndCouponList(); |
|---|
| 1058 | | - this.$refs.seckill.getSeckillIndexTime(); |
|---|
| 1059 | | - }) |
|---|
| 1060 | | - getIndexConfig().then(res => { |
|---|
| 1061 | | - if(res.data){ |
|---|
| 1062 | | - that.$set(that, "homeBanner",res.data); |
|---|
| 1063 | | - } |
|---|
| 1030 | + url: url |
|---|
| 1064 | 1031 | }); |
|---|
| 1065 | | - }, |
|---|
| 1066 | | - shareApi: function() { |
|---|
| 1067 | | - getShare().then(res => { |
|---|
| 1068 | | - this.$set(this, 'configApi', res.data); |
|---|
| 1069 | | - // #ifdef H5 |
|---|
| 1070 | | - this.setOpenShare(res.data); |
|---|
| 1071 | | - // #endif |
|---|
| 1072 | | - }) |
|---|
| 1073 | | - }, |
|---|
| 1074 | | - getChatUrL() { |
|---|
| 1075 | | - kefuConfig().then(res => { |
|---|
| 1076 | | - let data = res.data; |
|---|
| 1077 | | - this.$store.commit("SET_CHATURL", data.yzfUrl); |
|---|
| 1078 | | - Cache.set('chatUrl', data.yzfUrl); |
|---|
| 1079 | | - }) |
|---|
| 1080 | | - }, |
|---|
| 1081 | | - // 微信分享; |
|---|
| 1082 | | - setOpenShare: function(data) { |
|---|
| 1083 | | - let that = this; |
|---|
| 1084 | | - if (that.$wechat.isWeixin()) { |
|---|
| 1085 | | - let configAppMessage = { |
|---|
| 1086 | | - desc: data.synopsis, |
|---|
| 1087 | | - title: data.title, |
|---|
| 1088 | | - link: location.href, |
|---|
| 1089 | | - imgUrl: data.img |
|---|
| 1090 | | - }; |
|---|
| 1091 | | - that.$wechat.wechatEvevt(["updateAppMessageShareData", "updateTimelineShareData"], |
|---|
| 1092 | | - configAppMessage); |
|---|
| 1093 | | - } |
|---|
| 1094 | | - }, |
|---|
| 1095 | | - // 授权关闭 |
|---|
| 1096 | | - authColse: function(e) { |
|---|
| 1097 | | - this.isShowAuth = e |
|---|
| 1098 | | - }, |
|---|
| 1099 | | - // 产品切换 |
|---|
| 1100 | | - changeCategoryTab(index, isClick) { |
|---|
| 1101 | | - let that = this; |
|---|
| 1102 | | - that.categoryIndex = index; |
|---|
| 1103 | | - if (isClick) { |
|---|
| 1104 | | - that.clickTrack('cate', { |
|---|
| 1105 | | - name: that.categoryList[that.categoryIndex].name |
|---|
| 1106 | | - }) |
|---|
| 1107 | | - } |
|---|
| 1108 | | - that.loadingGood = true; |
|---|
| 1109 | | - that.where.page = 1; |
|---|
| 1110 | | - that.loadend = false; |
|---|
| 1111 | | - that.where.cid = that.categoryList[that.categoryIndex].id; |
|---|
| 1112 | | - that.get_product_list(); |
|---|
| 1113 | | - }, |
|---|
| 1114 | | - /** |
|---|
| 1115 | | - * 获取专区列表 |
|---|
| 1116 | | - */ |
|---|
| 1117 | | - getStoreZoneAndCouponList: function() { |
|---|
| 1118 | | - let that = this; |
|---|
| 1119 | | - // that.$set(that, 'zoneList', []); |
|---|
| 1120 | | - // that.$set(that, 'couponList', []); |
|---|
| 1121 | | - uni.showLoading() |
|---|
| 1122 | | - getStoreZoneAndCouponList({}).then(res => { |
|---|
| 1123 | | - let zoneList = []; |
|---|
| 1124 | | - res.data.storeZoneList.forEach((item, index) => { |
|---|
| 1125 | | - if (item.isShow) { |
|---|
| 1126 | | - item.uniKey = 'storeZoneList' + zoneList.length; |
|---|
| 1127 | | - zoneList.push(item); |
|---|
| 1128 | | - } |
|---|
| 1129 | | - }) |
|---|
| 1130 | | - that.$set(that, 'zoneList', zoneList); |
|---|
| 1131 | | - |
|---|
| 1132 | | - let useNum = 0; |
|---|
| 1133 | | - res.data.storeCouponList.forEach((item, index) => { |
|---|
| 1134 | | - item.uniKey = 'storeCouponList' + index; |
|---|
| 1135 | | - if (item.isUse) { |
|---|
| 1136 | | - useNum++; |
|---|
| 1137 | | - } |
|---|
| 1138 | | - }) |
|---|
| 1139 | | - if (useNum >= res.data.storeCouponList.length) { |
|---|
| 1140 | | - that.isGetWholeCoupon = true; |
|---|
| 1141 | | - } else { |
|---|
| 1142 | | - that.isGetWholeCoupon = false; |
|---|
| 1143 | | - } |
|---|
| 1144 | | - if(that.$store.getters.isLogin){ |
|---|
| 1145 | | - handsList().then(giveRes=>{ |
|---|
| 1146 | | - res.data.storeCouponList.push({ |
|---|
| 1147 | | - moneyType:4, |
|---|
| 1148 | | - userLvType:this.userInfo.level, |
|---|
| 1149 | | - isUse:true, |
|---|
| 1150 | | - name:'' |
|---|
| 1151 | | - }) |
|---|
| 1152 | | - that.$set(that, 'couponList', (giveRes.data||[]).concat(res.data.storeCouponList)); |
|---|
| 1153 | | - }) |
|---|
| 1154 | | - handsCoupon().then(res=>{ |
|---|
| 1155 | | - if(res.code==200){ |
|---|
| 1156 | | - that.$refs.popCoupon.show(); |
|---|
| 1157 | | - } |
|---|
| 1158 | | - }); |
|---|
| 1159 | | - //检查用户有可以手动领取导入优惠券记录 |
|---|
| 1160 | | - // that.$refs.popCoupon.show(); |
|---|
| 1161 | | - } |
|---|
| 1162 | | - that.$nextTick(() => { |
|---|
| 1163 | | - that.$forceUpdate(); |
|---|
| 1164 | | - uni.hideLoading() |
|---|
| 1165 | | - }) |
|---|
| 1166 | | - }).catch((e) => { |
|---|
| 1167 | | - console.log(10000001, e); |
|---|
| 1168 | | - uni.hideLoading() |
|---|
| 1169 | | - }); |
|---|
| 1170 | | - }, |
|---|
| 1171 | | - resetCoupon(couponIds){ |
|---|
| 1172 | | - console.log('resetCoupon'); |
|---|
| 1173 | | - let that=this; |
|---|
| 1174 | | - let hasCoupon4 = false; |
|---|
| 1175 | | - let useNum=0; |
|---|
| 1176 | | - that.couponList.forEach((item, index) => { |
|---|
| 1177 | | - if (couponIds.indexOf(item.id)>=0||couponIds.indexOf(item.id+'')>=0) { |
|---|
| 1178 | | - item.isUse=true; |
|---|
| 1179 | | - that.$set(that.couponList[index],'isUse',true); |
|---|
| 1180 | | - if (item.moneyType == 4) { |
|---|
| 1181 | | - hasCoupon4 = true; |
|---|
| 1182 | | - } |
|---|
| 1183 | | - } |
|---|
| 1184 | | - if(item.isUse){ |
|---|
| 1185 | | - useNum++; |
|---|
| 1186 | | - } |
|---|
| 1187 | | - }); |
|---|
| 1188 | | - if(useNum>=that.couponList.length){ |
|---|
| 1189 | | - that.isGetWholeCoupon = true; |
|---|
| 1190 | | - } |
|---|
| 1191 | | - if (hasCoupon4) { |
|---|
| 1192 | | - that.changeCategoryTab(that.categoryIndex); |
|---|
| 1193 | | - } |
|---|
| 1194 | | - }, |
|---|
| 1195 | | - getLast10Order: function() { |
|---|
| 1196 | | - let that = this; |
|---|
| 1197 | | - getLast10Order({}).then(res => { |
|---|
| 1198 | | - let data = res.data.concat(JSON.parse(JSON.stringify(res.data))); |
|---|
| 1199 | | - data.forEach((item, index) => { |
|---|
| 1200 | | - item.uniKey = 'buyList' + index; |
|---|
| 1201 | | - }); |
|---|
| 1202 | | - that.$set(that, 'buyList', data); |
|---|
| 1203 | | - }); |
|---|
| 1204 | | - }, |
|---|
| 1205 | | - getCategoryList: function() { |
|---|
| 1206 | | - let that = this; |
|---|
| 1207 | | - getCategoryList().then(res => { |
|---|
| 1208 | | - res.data.forEach((item, index) => { |
|---|
| 1209 | | - // if (!item.show2Category) { |
|---|
| 1210 | | - // item.child.sort((a, b) => { |
|---|
| 1211 | | - // return a.sort - b.sort; |
|---|
| 1212 | | - // }); |
|---|
| 1213 | | - // that.categoryList = that.categoryList.concat(item.child) |
|---|
| 1214 | | - // } |
|---|
| 1215 | | - res.data[index]['uniKey'] = 'categoryList' + index; |
|---|
| 1216 | | - }); |
|---|
| 1217 | | - that.categoryList = res.data; |
|---|
| 1218 | | - that.changeCategoryTab(that.categoryIndex); |
|---|
| 1219 | | - }) |
|---|
| 1220 | | - }, |
|---|
| 1221 | | - get_product_list: function() { |
|---|
| 1222 | | - let that = this; |
|---|
| 1223 | | - if (that.loadend) return; |
|---|
| 1224 | | - if (that.loading) return; |
|---|
| 1225 | | - that.loading = true; |
|---|
| 1226 | | - that.loadTitle = ''; |
|---|
| 1227 | | - that.isPause = true; |
|---|
| 1228 | | - getProductslist(that.where).then(res => { |
|---|
| 1229 | | - let list = res.data.list; |
|---|
| 1230 | | - |
|---|
| 1231 | | - that.loading = false; |
|---|
| 1232 | | - if (that.where.page > 1) { |
|---|
| 1233 | | - list = that.productList.concat(list); |
|---|
| 1234 | | - } |
|---|
| 1235 | | - list.forEach((item, index) => { |
|---|
| 1236 | | - item.uniKey = 'productList' + index; |
|---|
| 1237 | | - }) |
|---|
| 1238 | | - that.$set(that, 'productList', list); |
|---|
| 1239 | | - if (that.productList.length > 4) { |
|---|
| 1240 | | - that.$set(that, 'scrollHeight', that.pageHeight - 300); |
|---|
| 1241 | | - } else { |
|---|
| 1242 | | - that.$set(that, 'scrollHeight', 484 * Math.round(that.productList.length / 2) + 120); |
|---|
| 1243 | | - } |
|---|
| 1244 | | - |
|---|
| 1245 | | - if (that.where.page == 1) { |
|---|
| 1246 | | - that.scrollTop = that.oldScrollTop; |
|---|
| 1247 | | - that.$nextTick(() => { |
|---|
| 1248 | | - that.scrollTop = 0; |
|---|
| 1249 | | - }); |
|---|
| 1250 | | - } |
|---|
| 1251 | | - |
|---|
| 1252 | | - let loadend = list.length < that.where.limit; |
|---|
| 1253 | | - if (that.where.page >= res.data.totalPage) { |
|---|
| 1254 | | - loadend = true; |
|---|
| 1255 | | - that.$set(that.where, 'page', 1); |
|---|
| 1256 | | - } else { |
|---|
| 1257 | | - that.$set(that.where, 'page', that.where.page + 1); |
|---|
| 1258 | | - } |
|---|
| 1259 | | - that.loadend = loadend; |
|---|
| 1260 | | - |
|---|
| 1261 | | - that.isPause = false; |
|---|
| 1262 | | - that.$nextTick(() => { |
|---|
| 1263 | | - that.loadingGood = false; |
|---|
| 1264 | | - }) |
|---|
| 1265 | | - }).catch(err => { |
|---|
| 1266 | | - console.log(1000000002, err); |
|---|
| 1267 | | - that.loading = false; |
|---|
| 1268 | | - that.isPause = false; |
|---|
| 1269 | | - that.loadTitle = '加载更多'; |
|---|
| 1270 | | - that.$nextTick(() => { |
|---|
| 1271 | | - that.loadingGood = false; |
|---|
| 1272 | | - }) |
|---|
| 1273 | | - }); |
|---|
| 1274 | | - }, |
|---|
| 1275 | | - goodlistScroll: function(e) { |
|---|
| 1276 | | - this.oldScrollTop = e.detail.scrollTop; |
|---|
| 1277 | | - }, |
|---|
| 1278 | | - getMdayLast: function() { |
|---|
| 1279 | | - let that = this; |
|---|
| 1280 | | - uni.showLoading(); |
|---|
| 1281 | | - getMdayLast({}).then(res => { |
|---|
| 1282 | | - if(res.data.mday){ |
|---|
| 1283 | | - that.hasLottery=true; |
|---|
| 1284 | | - } |
|---|
| 1285 | | - }); |
|---|
| 1286 | | - }, |
|---|
| 1287 | | - }, |
|---|
| 1288 | | - mounted() { |
|---|
| 1289 | | - let that = this |
|---|
| 1290 | | - // #ifdef H5 |
|---|
| 1291 | | - //that.getChatUrL(); |
|---|
| 1292 | | - // 获取H5 搜索框高度 |
|---|
| 1293 | | - let appSearchH = uni.createSelectorQuery().select(".serch-wrapper"); |
|---|
| 1294 | | - appSearchH.boundingClientRect(function(data) { |
|---|
| 1295 | | - that.searchH = data.height |
|---|
| 1296 | | - }).exec() |
|---|
| 1297 | | - // #endif |
|---|
| 1298 | | - }, |
|---|
| 1299 | | - /** |
|---|
| 1300 | | - * 用户点击右上角分享 |
|---|
| 1301 | | - */ |
|---|
| 1302 | | - // #ifdef MP |
|---|
| 1303 | | - onShareAppMessage: function(options) { |
|---|
| 1304 | | - let shareUrl = '/pages/index/index'; |
|---|
| 1305 | | - if (this.$store.getters.belong) { |
|---|
| 1306 | | - shareUrl += '?' + this.$util.setShareBelong(this.$store.getters.belong); |
|---|
| 1307 | 1032 | } |
|---|
| 1308 | | - if(this.$store.getters.uid){ |
|---|
| 1309 | | - if(shareUrl.indexOf('?')>0){ |
|---|
| 1310 | | - shareUrl+='&spread=' + this.$store.getters.uid; |
|---|
| 1311 | | - }else{ |
|---|
| 1312 | | - shareUrl+='?spread=' + this.$store.getters.uid; |
|---|
| 1033 | + }, |
|---|
| 1034 | + // 健康专区图片 |
|---|
| 1035 | + zoneImg(item) { |
|---|
| 1036 | + let img = (item && item.image) ? (item.image) : ((item && item.data && item.data.image) ? item.data.image : (item ? item.homepageImage : '')); |
|---|
| 1037 | + return this.cleanUrl(img); |
|---|
| 1038 | + }, |
|---|
| 1039 | + zoneSwiperChange(e) { |
|---|
| 1040 | + this.zoneCurrent = e.detail.current; |
|---|
| 1041 | + }, |
|---|
| 1042 | + brandSwiperChange(e) { |
|---|
| 1043 | + this.brandCurrent = e.detail.current; |
|---|
| 1044 | + }, |
|---|
| 1045 | + newProductSwiperChange(e) { |
|---|
| 1046 | + this.newProductCurrent = e.detail.current; |
|---|
| 1047 | + }, |
|---|
| 1048 | + // 热门榜单切换分类 |
|---|
| 1049 | + changeHotRank(index) { |
|---|
| 1050 | + this.hotRankIndex = index; |
|---|
| 1051 | + this.getRankProductList(); |
|---|
| 1052 | + }, |
|---|
| 1053 | + getRankProductList() { |
|---|
| 1054 | + let that = this; |
|---|
| 1055 | + let cid = this.hotCategoryList[this.hotRankIndex].id || ''; |
|---|
| 1056 | + that.rankProducts = []; |
|---|
| 1057 | + that.isLoadingRank = true; |
|---|
| 1058 | + getProductslist({ |
|---|
| 1059 | + cid: cid, |
|---|
| 1060 | + page: 1, |
|---|
| 1061 | + limit: 3, |
|---|
| 1062 | + buyerCountOrder: 'desc', |
|---|
| 1063 | + }).then(res => { |
|---|
| 1064 | + that.isLoadingRank = false; |
|---|
| 1065 | + if (res && res.data && res.data.list) { |
|---|
| 1066 | + res.data.list.forEach((item, index) => { |
|---|
| 1067 | + item.rank = index + 1; |
|---|
| 1068 | + }); |
|---|
| 1069 | + if (res.data.list.length >= 3) { |
|---|
| 1070 | + that.rankProducts = [ |
|---|
| 1071 | + res.data.list[1], |
|---|
| 1072 | + res.data.list[0], |
|---|
| 1073 | + res.data.list[2] |
|---|
| 1074 | + ]; |
|---|
| 1075 | + } else { |
|---|
| 1076 | + that.rankProducts = res.data.list; |
|---|
| 1077 | + } |
|---|
| 1313 | 1078 | } |
|---|
| 1314 | | - } |
|---|
| 1315 | | - let pages = getCurrentPages(), |
|---|
| 1316 | | - currPage = pages[pages.length - 1]; |
|---|
| 1317 | | - this.addTrack('yy_contentPageShare', { |
|---|
| 1318 | | - 'sharePosition_var': options.from == 'button' ? '页面分享按钮' : '页面顶部', |
|---|
| 1319 | | - 'shareMethod_var': '微信好友', //保存海报 |
|---|
| 1320 | | - 'pageTitle_var': '首页', |
|---|
| 1321 | | - 'pageType_var': '首页', |
|---|
| 1322 | | - 'pagePath_var': currPage.route, |
|---|
| 1323 | | - 'productID_var': '-', |
|---|
| 1324 | | - 'productName_var': '-', |
|---|
| 1325 | | - 'contentId_var': '-', |
|---|
| 1326 | | - 'contentName_var': '-', |
|---|
| 1327 | | - 'contentType_var': '-', |
|---|
| 1328 | | - 'contentLabel_var': '-', |
|---|
| 1079 | + }).catch(() => { |
|---|
| 1080 | + that.isLoadingRank = false; |
|---|
| 1329 | 1081 | }); |
|---|
| 1330 | | - return { |
|---|
| 1331 | | - title: this.configApi.title, |
|---|
| 1332 | | - imageUrl: this.configApi.img, |
|---|
| 1333 | | - desc: this.configApi.synopsis, |
|---|
| 1334 | | - path: shareUrl |
|---|
| 1082 | + |
|---|
| 1083 | + }, |
|---|
| 1084 | + // 已购人数格式化(过万显示X万+) |
|---|
| 1085 | + formatBuyCount(num) { |
|---|
| 1086 | + let n = Math.floor(Number(num) || 0); |
|---|
| 1087 | + if (n >= 10000) { |
|---|
| 1088 | + return Math.floor(n / 1000) / 10 + '万+'; |
|---|
| 1089 | + } |
|---|
| 1090 | + return n + ''; |
|---|
| 1091 | + }, |
|---|
| 1092 | + // 榜单商品跳转详情 |
|---|
| 1093 | + goRankProduct(p) { |
|---|
| 1094 | + if (!p || !p.id) return; |
|---|
| 1095 | + this.clickTrack('module', { |
|---|
| 1096 | + name: p.storeName |
|---|
| 1097 | + }); |
|---|
| 1098 | + uni.navigateTo({ |
|---|
| 1099 | + url: '/pages/goods_details/index?id=' + p.id |
|---|
| 1100 | + }); |
|---|
| 1101 | + }, |
|---|
| 1102 | + dealSwiperChange(e) { |
|---|
| 1103 | + this.dealCurrent = e.detail.current; |
|---|
| 1104 | + }, |
|---|
| 1105 | + bannerSwiperChange(e) { |
|---|
| 1106 | + this.bannerCurrent = e.detail.current; |
|---|
| 1107 | + }, |
|---|
| 1108 | + // 每日特价倒计时(以服务端时间为准,到当天23:59:59) |
|---|
| 1109 | + initDealCountdown(serverTime) { |
|---|
| 1110 | + let that = this; |
|---|
| 1111 | + let now = Number(serverTime) || Date.now(); |
|---|
| 1112 | + that.serverTimeOffset = now - Date.now(); |
|---|
| 1113 | + let d = new Date(now); |
|---|
| 1114 | + that.dealEndTs = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59, 59).getTime(); |
|---|
| 1115 | + clearInterval(that.dealTimer); |
|---|
| 1116 | + that.updateDealCountdown(); |
|---|
| 1117 | + that.dealTimer = setInterval(function () { |
|---|
| 1118 | + that.updateDealCountdown(); |
|---|
| 1119 | + }, 1000); |
|---|
| 1120 | + }, |
|---|
| 1121 | + updateDealCountdown() { |
|---|
| 1122 | + let diff = Math.max(0, Math.floor((this.dealEndTs - (Date.now() + this.serverTimeOffset)) / 1000)); |
|---|
| 1123 | + let h = Math.floor(diff / 3600); |
|---|
| 1124 | + let m = Math.floor((diff % 3600) / 60); |
|---|
| 1125 | + let s = diff % 60; |
|---|
| 1126 | + let pad = function (n) { |
|---|
| 1127 | + return n < 10 ? '0' + n : '' + n; |
|---|
| 1128 | + } |
|---|
| 1129 | + this.dealCountdown = { |
|---|
| 1130 | + h: pad(h), |
|---|
| 1131 | + m: pad(m), |
|---|
| 1132 | + s: pad(s) |
|---|
| 1335 | 1133 | }; |
|---|
| 1336 | 1134 | }, |
|---|
| 1135 | + belongInfoReadyFn(data) { |
|---|
| 1136 | + let that = this; |
|---|
| 1137 | + if (!data.isRegister) { |
|---|
| 1138 | + that.checkLoginFn(); |
|---|
| 1139 | + } |
|---|
| 1140 | + }, |
|---|
| 1141 | + checkLoginFn() { |
|---|
| 1142 | + let that = this; |
|---|
| 1143 | + let pages = getCurrentPages(), |
|---|
| 1144 | + currPage = pages[pages.length - 1]; |
|---|
| 1145 | + that.addTrack('yy_pageView', { |
|---|
| 1146 | + pageTitle_var: '首页', |
|---|
| 1147 | + pagePath_var: currPage.route, |
|---|
| 1148 | + pageType_var: '首页' |
|---|
| 1149 | + }); |
|---|
| 1150 | + that.getIndexData(); |
|---|
| 1151 | + if (that.$store.getters.isLogin) { |
|---|
| 1152 | + that.onLoadFn(); |
|---|
| 1153 | + } else { |
|---|
| 1154 | + that.userInfoReady = 'needRegister'; |
|---|
| 1155 | + } |
|---|
| 1156 | + uni.$once('loginFlSuccess', that.registerFn); |
|---|
| 1157 | + }, |
|---|
| 1158 | + |
|---|
| 1159 | + registerFn() { |
|---|
| 1160 | + console.log('registerFn'); |
|---|
| 1161 | + let that = this; |
|---|
| 1162 | + if (that.loginBackFn) { |
|---|
| 1163 | + that.loginBackFn(); |
|---|
| 1164 | + } |
|---|
| 1165 | + that.loginBackFn = null; |
|---|
| 1166 | + }, |
|---|
| 1167 | + getUserBean() { |
|---|
| 1168 | + let that = this; |
|---|
| 1169 | + getUserBean().then(res2 => { |
|---|
| 1170 | + that.careBeanReady = true; |
|---|
| 1171 | + that.myCareBean = res2.data.totalCareBeans; |
|---|
| 1172 | + }); |
|---|
| 1173 | + }, |
|---|
| 1174 | + onLoadFn() { |
|---|
| 1175 | + let that = this; |
|---|
| 1176 | + that.userInfo = that.$store.getters.userInfo; |
|---|
| 1177 | + that.getUserBean(); |
|---|
| 1178 | + that.userInfoReady = 'hasUserInfo'; |
|---|
| 1179 | + that.getBaseUserInfo(); |
|---|
| 1180 | + |
|---|
| 1181 | + }, |
|---|
| 1182 | + clickTrack(type, item) { |
|---|
| 1183 | + var data = { |
|---|
| 1184 | + pageTitle_var: '首页', |
|---|
| 1185 | + firstTabName_var: '-' |
|---|
| 1186 | + }; |
|---|
| 1187 | + if (type == 'search') { |
|---|
| 1188 | + data['moduleName_var'] = '页面顶部'; |
|---|
| 1189 | + data['buttonName_var'] = '搜索商品'; |
|---|
| 1190 | + } |
|---|
| 1191 | + if (type == 'third') { |
|---|
| 1192 | + data['moduleName_var'] = '页面顶部'; |
|---|
| 1193 | + data['buttonName_var'] = '查看悦养豆'; |
|---|
| 1194 | + } |
|---|
| 1195 | + if (type == 'vip') { |
|---|
| 1196 | + data['moduleName_var'] = '页面顶部'; |
|---|
| 1197 | + data['buttonName_var'] = '查看会员权益'; |
|---|
| 1198 | + } else if (type == 'banner') { |
|---|
| 1199 | + data['moduleName_var'] = '轮播卡片'; |
|---|
| 1200 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1201 | + } else if (type == 'menu') { |
|---|
| 1202 | + data['moduleName_var'] = '金刚位'; |
|---|
| 1203 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1204 | + } else if (type == 'zone') { |
|---|
| 1205 | + data['moduleName_var'] = '探索健康好物'; |
|---|
| 1206 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1207 | + } else if (type == 'lottery') { |
|---|
| 1208 | + data['moduleName_var'] = '抽奖'; |
|---|
| 1209 | + data['buttonName_var'] = 'GO'; |
|---|
| 1210 | + } else if (type == 'coupon') { |
|---|
| 1211 | + data['moduleName_var'] = '优惠券'; |
|---|
| 1212 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1213 | + } else if (type == 'cate') { |
|---|
| 1214 | + data['moduleName_var'] = '商品分类'; |
|---|
| 1215 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1216 | + } else if (type == 'module') { |
|---|
| 1217 | + data['moduleName_var'] = '首页运营模块'; |
|---|
| 1218 | + data['buttonName_var'] = item.name ? item.name : '-'; |
|---|
| 1219 | + } |
|---|
| 1220 | + this.addTrack('yy_marketPageClick', data); |
|---|
| 1221 | + }, |
|---|
| 1222 | + goToThird(url, appId) { |
|---|
| 1223 | + //第三方小程序 |
|---|
| 1224 | + // /pages/home/index?source=INSMART&sourceScene=test&agentNo=90028476&agentChannel=BK&agentCompany=123&agentBranch=123 |
|---|
| 1225 | + |
|---|
| 1226 | + if (url.indexOf('?') < 0) { |
|---|
| 1227 | + url += '?'; |
|---|
| 1228 | + } else { |
|---|
| 1229 | + url += '&'; |
|---|
| 1230 | + } |
|---|
| 1231 | + if (app.globalData.source) { |
|---|
| 1232 | + url += 'source=' + app.globalData.source; |
|---|
| 1233 | + } else { |
|---|
| 1234 | + url += 'source=MALL'; |
|---|
| 1235 | + } |
|---|
| 1236 | + url += '&sourceScene=home'; |
|---|
| 1237 | + url += '&agentNo=' + ((this.$store.getters.belong && this.$store.getters.belong.agentNo) ? this.$store |
|---|
| 1238 | + .getters.belong.agentNo : ''); |
|---|
| 1239 | + url += '&agentChannel=' + ((this.$store.getters.belong && this.$store.getters.belong.channel) ? this.$store |
|---|
| 1240 | + .getters.belong.channel : ''); //归属代理人渠道 |
|---|
| 1241 | + url += '&agentCompany=' + ((this.$store.getters.belong && this.$store.getters.belong.companyCode) ? this |
|---|
| 1242 | + .$store.getters.belong.companyCode : ''); //agentCompany |
|---|
| 1243 | + |
|---|
| 1244 | + url += '&agentBranch=' + ((this.$store.getters.belong && this.$store.getters.belong.branchCode) ? this |
|---|
| 1245 | + .$store.getters.belong.branchCode : ''); //归属代理人支公司 |
|---|
| 1246 | + url += '&custAgentOrgNo=' + ((this.$store.getters.belong && this.$store.getters.belong.subCode) ? this |
|---|
| 1247 | + .$store.getters.belong.subCode : ''); //归属代理人机构编码 |
|---|
| 1248 | + |
|---|
| 1249 | + url += 'unionId=' + this.$store.getters.unionId; |
|---|
| 1250 | + url += '&mobile=' + ((this.$store.getters.belong && this.$store.getters.belong.mobile) ? this.$store |
|---|
| 1251 | + .getters.belong.mobile : this.$store.getters.userInfo.mobile); |
|---|
| 1252 | + console.log(url); |
|---|
| 1253 | + |
|---|
| 1254 | + |
|---|
| 1255 | + |
|---|
| 1256 | + let miniProgramInfo = uni.getAccountInfoSync().miniProgram; |
|---|
| 1257 | + uni.navigateToMiniProgram({ |
|---|
| 1258 | + appId: appId ? appId : THIRD_APPID, |
|---|
| 1259 | + path: url, |
|---|
| 1260 | + envVersion: miniProgramInfo.envVersion == 'release' ? 'release' : 'trial', |
|---|
| 1261 | + }) |
|---|
| 1262 | + |
|---|
| 1263 | + // let params={}; |
|---|
| 1264 | + // params['custAgentNo']=((this.$store.getters.belong && this.$store.getters.belong.agentNo) ? this.$store |
|---|
| 1265 | + // .getters.belong.agentNo : ''); |
|---|
| 1266 | + // params['custAgentChnl']=((this.$store.getters.belong && this.$store.getters.belong.channel) ? this.$store |
|---|
| 1267 | + // .getters.belong.channel : ''); |
|---|
| 1268 | + // params['custAgentCoy']=((this.$store.getters.belong && this.$store.getters.belong.companyCode) ? this |
|---|
| 1269 | + // .$store.getters.belong.companyCode : ''); |
|---|
| 1270 | + // params['custAgentBranch']=((this.$store.getters.belong && this.$store.getters.belong.branchCode) ? this |
|---|
| 1271 | + // .$store.getters.belong.branchCode : ''); |
|---|
| 1272 | + // params['custAgentOrgNo']=((this.$store.getters.belong && this.$store.getters.belong.subCode) ? this |
|---|
| 1273 | + // .$store.getters.belong.subCode : ''); |
|---|
| 1274 | + // let webUrl='https://ossacmall.bluedeer.com.cn/qr/index.html?isMall=true'+(miniProgramInfo.envVersion == 'release' ? '' : '&isTrial=true')+'¶ms='+encodeURIComponent(JSON.stringify(params))+'&pageUrl='+encodeURIComponent(url); |
|---|
| 1275 | + // if(HTTP_REQUEST_URL.indexOf('tohours')>0){ |
|---|
| 1276 | + // webUrl=webUrl.replace('https://ossacmall.bluedeer.com.cn/qr','https://sit.tohours.com/crmeb_web/qr/') |
|---|
| 1277 | + // } |
|---|
| 1278 | + // uni.navigateTo({ |
|---|
| 1279 | + // url: '/pages/users/web_page/index?webUel='+encodeURIComponent(webUrl) |
|---|
| 1280 | + // }) |
|---|
| 1281 | + |
|---|
| 1282 | + this.clickTrack('third') |
|---|
| 1283 | + }, |
|---|
| 1284 | + goToLink(item, type) { |
|---|
| 1285 | + let that = this; |
|---|
| 1286 | + function go() { |
|---|
| 1287 | + if (item.appid) { |
|---|
| 1288 | + that.goToThird(item.url, item.appid); |
|---|
| 1289 | + } else if (that.isTabLink(item.url)) { |
|---|
| 1290 | + let arr = item.url.split('?'); |
|---|
| 1291 | + if (arr.length > 1) { |
|---|
| 1292 | + that.$store.commit('updateSwitchParams', { |
|---|
| 1293 | + switchParams: arr[1] |
|---|
| 1294 | + }); |
|---|
| 1295 | + } |
|---|
| 1296 | + uni.switchTab({ |
|---|
| 1297 | + url: arr[0] |
|---|
| 1298 | + }); |
|---|
| 1299 | + } else { |
|---|
| 1300 | + uni.navigateTo({ |
|---|
| 1301 | + url: item.url.replace("{{token}}", that.$store.getters.token).replace("{{unionId}}", that.$store.getters.unionId) |
|---|
| 1302 | + }) |
|---|
| 1303 | + } |
|---|
| 1304 | + that.clickTrack(type, item); |
|---|
| 1305 | + } |
|---|
| 1306 | + console.log(item.url); |
|---|
| 1307 | + if (item.url.indexOf('needLogin=true') > 0 && !that.$store.getters.isLogin) { |
|---|
| 1308 | + toLogin(that); |
|---|
| 1309 | + that.loginBackFn = function () { |
|---|
| 1310 | + go(); |
|---|
| 1311 | + } |
|---|
| 1312 | + } else { |
|---|
| 1313 | + go(); |
|---|
| 1314 | + } |
|---|
| 1315 | + |
|---|
| 1316 | + |
|---|
| 1317 | + }, |
|---|
| 1318 | + isTabLink(link) { |
|---|
| 1319 | + let isTab = false; |
|---|
| 1320 | + this.tabLinkArr.forEach((item) => { |
|---|
| 1321 | + if (link.indexOf(item) >= 0) { |
|---|
| 1322 | + isTab = true; |
|---|
| 1323 | + } |
|---|
| 1324 | + }) |
|---|
| 1325 | + return isTab; |
|---|
| 1326 | + }, |
|---|
| 1327 | + handleLoad() { |
|---|
| 1328 | + let that = this; |
|---|
| 1329 | + }, |
|---|
| 1330 | + goToLogin() { |
|---|
| 1331 | + let that = this; |
|---|
| 1332 | + toLogin(that); |
|---|
| 1333 | + that.loginBackFn = function () { |
|---|
| 1334 | + that.userInfo = that.$store.getters.userInfo; |
|---|
| 1335 | + that.userInfoReady = 'hasUserInfo'; |
|---|
| 1336 | + that.getBaseUserInfo(); |
|---|
| 1337 | + that.getIndexData(); |
|---|
| 1338 | + that.onLoadFn(); |
|---|
| 1339 | + } |
|---|
| 1340 | + }, |
|---|
| 1341 | + getBaseUserInfo() { |
|---|
| 1342 | + let that = this; |
|---|
| 1343 | + silenceBindingSpread(); |
|---|
| 1344 | + }, |
|---|
| 1345 | + goToCoupon: function () { |
|---|
| 1346 | + uni.navigateTo({ |
|---|
| 1347 | + url: '/pages/users/user_coupon/index' |
|---|
| 1348 | + }) |
|---|
| 1349 | + }, |
|---|
| 1350 | + getCoupon: function (isWhole, orgItem, index) { |
|---|
| 1351 | + let that = this; |
|---|
| 1352 | + if (!that.$store.getters.isLogin) { |
|---|
| 1353 | + that.goToLogin(); |
|---|
| 1354 | + return false; |
|---|
| 1355 | + } |
|---|
| 1356 | + if (that.isClicking) { |
|---|
| 1357 | + return false; |
|---|
| 1358 | + } |
|---|
| 1359 | + //领取优惠券 |
|---|
| 1360 | + if (isWhole) { |
|---|
| 1361 | + this.clickTrack('coupon', { |
|---|
| 1362 | + 'name': '一键领取' |
|---|
| 1363 | + }) |
|---|
| 1364 | + let couponIds = []; |
|---|
| 1365 | + that.couponList.forEach((item1, index1) => { |
|---|
| 1366 | + if (!item1.isUse && item1.type != 'import') { |
|---|
| 1367 | + couponIds.push(item1.id); |
|---|
| 1368 | + } |
|---|
| 1369 | + }) |
|---|
| 1370 | + if (couponIds.length > 0) { |
|---|
| 1371 | + var useNum = 0; |
|---|
| 1372 | + uni.showLoading(); |
|---|
| 1373 | + that.isClicking = true; |
|---|
| 1374 | + setWholeCouponReceive({ |
|---|
| 1375 | + couponIds: couponIds, |
|---|
| 1376 | + }).then(function (res) { |
|---|
| 1377 | + that.$util.Tips({ |
|---|
| 1378 | + title: '领取成功' |
|---|
| 1379 | + }); |
|---|
| 1380 | + let nameArr = []; |
|---|
| 1381 | + let idArr = []; |
|---|
| 1382 | + let hasCoupon4 = false; |
|---|
| 1383 | + that.couponList.forEach((item1, index1) => { |
|---|
| 1384 | + if (!item1.isUse && item1.type != 'import') { |
|---|
| 1385 | + that.couponList[index1].isUse = true; |
|---|
| 1386 | + nameArr.push(item1.name); |
|---|
| 1387 | + idArr.push(item1.id); |
|---|
| 1388 | + } |
|---|
| 1389 | + if (item1.moneyType == 4) { |
|---|
| 1390 | + hasCoupon4 = true; |
|---|
| 1391 | + } |
|---|
| 1392 | + }); |
|---|
| 1393 | + that.isGetWholeCoupon = true; |
|---|
| 1394 | + that.addTrack('yy_getCoupon', { |
|---|
| 1395 | + 'couponName_var': nameArr.join(','), |
|---|
| 1396 | + 'couponId_var': idArr.join(',') |
|---|
| 1397 | + }); |
|---|
| 1398 | + if (hasCoupon4) { |
|---|
| 1399 | + that.changeCategoryTab(that.categoryIndex); |
|---|
| 1400 | + } |
|---|
| 1401 | + uni.hideLoading(); |
|---|
| 1402 | + that.isClicking = false; |
|---|
| 1403 | + }).catch(err => { |
|---|
| 1404 | + uni.hideLoading(); |
|---|
| 1405 | + that.isClicking = false; |
|---|
| 1406 | + return that.$util.Tips({ |
|---|
| 1407 | + title: (err && err.message) ? err.message : err |
|---|
| 1408 | + }); |
|---|
| 1409 | + }); |
|---|
| 1410 | + } |
|---|
| 1411 | + } else { |
|---|
| 1412 | + let item = orgItem || this.couponList[index] |
|---|
| 1413 | + if (item.isUse || (item.type == 'import' && item.validStr == 'usable')) { |
|---|
| 1414 | + |
|---|
| 1415 | + that.isClicking = true; |
|---|
| 1416 | + var timer = setTimeout(() => { |
|---|
| 1417 | + that.isClicking = false; |
|---|
| 1418 | + clearTimeout(timer); |
|---|
| 1419 | + }, 500) |
|---|
| 1420 | + if (item.appId && item.toPath) { |
|---|
| 1421 | + that.goToThird(item.toPath, item.appId); |
|---|
| 1422 | + } else if (item.toPath) { |
|---|
| 1423 | + if (that.isTabLink(item.toPath)) { |
|---|
| 1424 | + uni.switchTab({ |
|---|
| 1425 | + url: item.toPath |
|---|
| 1426 | + }) |
|---|
| 1427 | + } else { |
|---|
| 1428 | + uni.navigateTo({ |
|---|
| 1429 | + url: item.toPath |
|---|
| 1430 | + }) |
|---|
| 1431 | + } |
|---|
| 1432 | + } else { |
|---|
| 1433 | + uni.switchTab({ |
|---|
| 1434 | + url: '/pages/goods_cate/goods_cate' |
|---|
| 1435 | + }) |
|---|
| 1436 | + } |
|---|
| 1437 | + } else if (item.type !== 'import') { |
|---|
| 1438 | + uni.showLoading(); |
|---|
| 1439 | + that.isClicking = true; |
|---|
| 1440 | + setCouponReceive(item.id).then(function (res) { |
|---|
| 1441 | + that.addTrack('yy_getCoupon', { |
|---|
| 1442 | + 'couponName_var': item.name, |
|---|
| 1443 | + 'couponId_var': item.id |
|---|
| 1444 | + }); |
|---|
| 1445 | + that.$set(that.couponList[index], 'isUse', true); |
|---|
| 1446 | + that.$util.Tips({ |
|---|
| 1447 | + title: '领取成功' |
|---|
| 1448 | + }); |
|---|
| 1449 | + if (item.moneyType == 4) { |
|---|
| 1450 | + that.changeCategoryTab(that.categoryIndex); |
|---|
| 1451 | + } |
|---|
| 1452 | + let finishNum = 0; |
|---|
| 1453 | + that.couponList.forEach((item1, index1) => { |
|---|
| 1454 | + if (item1.isUse) { |
|---|
| 1455 | + finishNum++; |
|---|
| 1456 | + } |
|---|
| 1457 | + }); |
|---|
| 1458 | + if (finishNum >= that.couponList.length) { |
|---|
| 1459 | + that.isGetWholeCoupon = true; |
|---|
| 1460 | + } |
|---|
| 1461 | + uni.hideLoading(); |
|---|
| 1462 | + that.isClicking = false; |
|---|
| 1463 | + }).catch(err => { |
|---|
| 1464 | + uni.hideLoading(); |
|---|
| 1465 | + that.isClicking = false; |
|---|
| 1466 | + return that.$util.Tips({ |
|---|
| 1467 | + title: (err && err.message) ? err.message : err |
|---|
| 1468 | + }); |
|---|
| 1469 | + }) |
|---|
| 1470 | + } |
|---|
| 1471 | + |
|---|
| 1472 | + } |
|---|
| 1473 | + }, |
|---|
| 1474 | + clickSort(index) { |
|---|
| 1475 | + this.listActive = index |
|---|
| 1476 | + }, |
|---|
| 1477 | + // scroll-view滑动事件 |
|---|
| 1478 | + scroll(e) { |
|---|
| 1479 | + this.scrollLeft = e.detail.scrollLeft; |
|---|
| 1480 | + }, |
|---|
| 1481 | + // 计算下划线位置 |
|---|
| 1482 | + setLine() { |
|---|
| 1483 | + let lineWidth = 0, |
|---|
| 1484 | + lineLeft = 0 |
|---|
| 1485 | + this.getElementData(`#tab_item`, (data) => { |
|---|
| 1486 | + let el = data[this.listActive] |
|---|
| 1487 | + lineWidth = el.width / 2 |
|---|
| 1488 | + // lineLeft = el.width * (this.currentIndex + 0.5) // 此种只能针对每个item长度一致的 |
|---|
| 1489 | + lineLeft = el.width / 2 + (-data[0].left) + el.left |
|---|
| 1490 | + this.lineStyle = { |
|---|
| 1491 | + width: `${lineWidth}px`, |
|---|
| 1492 | + transform: `translateX(${lineLeft}px) translateX(-50%)`, |
|---|
| 1493 | + transitionDuration: `${this.duration}s` |
|---|
| 1494 | + }; |
|---|
| 1495 | + }) |
|---|
| 1496 | + }, |
|---|
| 1497 | + getElementData(el, callback) { |
|---|
| 1498 | + uni.createSelectorQuery().in(this).selectAll(el).boundingClientRect().exec((data) => { |
|---|
| 1499 | + callback(data[0]); |
|---|
| 1500 | + }); |
|---|
| 1501 | + }, |
|---|
| 1502 | + xieyiApp() { |
|---|
| 1503 | + uni.navigateTo({ |
|---|
| 1504 | + url: '/pages/users/web_page/index?webUel=https://admin.java.crmeb.net/useragreement/xieyi.html&title=协议内容' |
|---|
| 1505 | + }) |
|---|
| 1506 | + }, |
|---|
| 1507 | + getTemlIds() { |
|---|
| 1508 | + for (var i in arrTemp) { |
|---|
| 1509 | + this.getTem(arrTemp[i]); |
|---|
| 1510 | + } |
|---|
| 1511 | + }, |
|---|
| 1512 | + getTem(data) { |
|---|
| 1513 | + getTemlIds({ |
|---|
| 1514 | + type: data |
|---|
| 1515 | + }).then(res => { |
|---|
| 1516 | + if (res.data) { |
|---|
| 1517 | + let arr = res.data.map((item) => { |
|---|
| 1518 | + return item.tempId |
|---|
| 1519 | + }) |
|---|
| 1520 | + wx.setStorageSync('tempID' + data, arr); |
|---|
| 1521 | + } |
|---|
| 1522 | + }) |
|---|
| 1523 | + }, |
|---|
| 1524 | + showActivity() { |
|---|
| 1525 | + this.$refs.popNewuserRef.show(); |
|---|
| 1526 | + }, |
|---|
| 1527 | + // 首页数据 |
|---|
| 1528 | + getIndexData: function () { |
|---|
| 1529 | + let that = this; |
|---|
| 1530 | + that.hasCheckedLogin = true; |
|---|
| 1531 | + getIndexData().then(res => { |
|---|
| 1532 | + let homePopupList = [] |
|---|
| 1533 | + if (res.data.homePopupList) { |
|---|
| 1534 | + homePopupList = res.data.homePopupList.map(item => { |
|---|
| 1535 | + return { |
|---|
| 1536 | + image: item.image, |
|---|
| 1537 | + linkUrl: item.linkUrl |
|---|
| 1538 | + } |
|---|
| 1539 | + }) |
|---|
| 1540 | + } |
|---|
| 1541 | + that.$set(that, "homeActivity", { |
|---|
| 1542 | + // homeDate:res.data.homeDate, |
|---|
| 1543 | + // homeImg:res.data.homeImg, |
|---|
| 1544 | + // homeUrl:res.data.homeUrl, |
|---|
| 1545 | + homePopupList: homePopupList |
|---|
| 1546 | + }); |
|---|
| 1547 | + that.$nextTick(() => { |
|---|
| 1548 | + that.$refs.popActivity.show(); |
|---|
| 1549 | + }) |
|---|
| 1550 | + that.isConfigReady = true; |
|---|
| 1551 | + uni.setNavigationBarTitle({ |
|---|
| 1552 | + title: '首页' |
|---|
| 1553 | + }) |
|---|
| 1554 | + that.$set(that, "logoUrl", res.data.logoUrl); |
|---|
| 1555 | + that.$set(that, "site_name", '首页'); |
|---|
| 1556 | + if (res.data.banner) { |
|---|
| 1557 | + res.data.banner.forEach((item, index) => { |
|---|
| 1558 | + item.uniKey = 'banner' + index; |
|---|
| 1559 | + }) |
|---|
| 1560 | + } |
|---|
| 1561 | + that.$set(that, "imgUrls", res.data.banner ? res.data.banner : []); |
|---|
| 1562 | + if (res.data.menus) { |
|---|
| 1563 | + res.data.menus.forEach((item, index) => { |
|---|
| 1564 | + item.uniKey = 'menus' + index; |
|---|
| 1565 | + }) |
|---|
| 1566 | + } |
|---|
| 1567 | + that.$set(that, "menus", res.data.menus ? res.data.menus : []); |
|---|
| 1568 | + if (res.data.roll) { |
|---|
| 1569 | + res.data.roll.forEach((item, index) => { |
|---|
| 1570 | + item.uniKey = 'roll' + index; |
|---|
| 1571 | + }) |
|---|
| 1572 | + } |
|---|
| 1573 | + that.$set(that, "roll", res.data.roll ? res.data.roll : []); |
|---|
| 1574 | + // #ifdef H5 |
|---|
| 1575 | + that.$store.commit("SET_CHATURL", res.data.yzfUrl); |
|---|
| 1576 | + Cache.set('chatUrl', res.data.yzfUrl); |
|---|
| 1577 | + // #endif |
|---|
| 1578 | + this.shareApi(); |
|---|
| 1579 | + this.getCategoryList(); |
|---|
| 1580 | + this.getLast10Order(); |
|---|
| 1581 | + this.getStoreZoneAndCouponList(); |
|---|
| 1582 | + this.$refs.seckill.getSeckillIndexTime(); |
|---|
| 1583 | + this.getIndexModule(); |
|---|
| 1584 | + }) |
|---|
| 1585 | + getIndexConfig().then(res => { |
|---|
| 1586 | + if (res.data) { |
|---|
| 1587 | + that.$set(that, "homeBanner", res.data); |
|---|
| 1588 | + } |
|---|
| 1589 | + }); |
|---|
| 1590 | + }, |
|---|
| 1591 | + getIndexModule: function () { |
|---|
| 1592 | + let that = this; |
|---|
| 1593 | + getIndexModule().then(res => { |
|---|
| 1594 | + if (res.data && res.data.modules) { |
|---|
| 1595 | + let modules = res.data.modules || []; |
|---|
| 1596 | + if (res.data.serverTime) { |
|---|
| 1597 | + that.initDealCountdown(res.data.serverTime); |
|---|
| 1598 | + } |
|---|
| 1599 | + modules.forEach((item, index) => { |
|---|
| 1600 | + if (item.items) { |
|---|
| 1601 | + item.items = item.items.slice().sort((a, b) => (a.sort || 0) - (b.sort || 0)); |
|---|
| 1602 | + item.items.forEach((item1, index1) => { |
|---|
| 1603 | + item1.uniKey = 'module' + item.id + '_' + index1; |
|---|
| 1604 | + }) |
|---|
| 1605 | + } |
|---|
| 1606 | + if (item.code == 'service_guarantee') { |
|---|
| 1607 | + that.$set(that, "serviceSupport", item); |
|---|
| 1608 | + } else if (item.code == 'daily_deal') { |
|---|
| 1609 | + that.$set(that, "dealModule", item); |
|---|
| 1610 | + } else if (item.code == 'new_product') { |
|---|
| 1611 | + that.$set(that, "newProductModule", item); |
|---|
| 1612 | + } else if (item.code == 'health_zone') { |
|---|
| 1613 | + that.$set(that, "healthZoneModule", item); |
|---|
| 1614 | + } else if (item.code == 'activity_banner') { |
|---|
| 1615 | + that.$set(that, "activityBannerModule", item); |
|---|
| 1616 | + } else if (item.code == 'hot_rank') { |
|---|
| 1617 | + that.$set(that, "hotRankModule", item); |
|---|
| 1618 | + that.hotRankIndex = 0; |
|---|
| 1619 | + that.getRankProductList(); |
|---|
| 1620 | + } else if (item.code == 'brand_wall') { |
|---|
| 1621 | + that.$set(that, "brandWallModule", item); |
|---|
| 1622 | + } |
|---|
| 1623 | + }) |
|---|
| 1624 | + } |
|---|
| 1625 | + }); |
|---|
| 1626 | + }, |
|---|
| 1627 | + shareApi: function () { |
|---|
| 1628 | + getShare().then(res => { |
|---|
| 1629 | + this.$set(this, 'configApi', res.data); |
|---|
| 1630 | + // #ifdef H5 |
|---|
| 1631 | + this.setOpenShare(res.data); |
|---|
| 1632 | + // #endif |
|---|
| 1633 | + }) |
|---|
| 1634 | + }, |
|---|
| 1635 | + getChatUrL() { |
|---|
| 1636 | + kefuConfig().then(res => { |
|---|
| 1637 | + let data = res.data; |
|---|
| 1638 | + this.$store.commit("SET_CHATURL", data.yzfUrl); |
|---|
| 1639 | + Cache.set('chatUrl', data.yzfUrl); |
|---|
| 1640 | + }) |
|---|
| 1641 | + }, |
|---|
| 1642 | + // 微信分享; |
|---|
| 1643 | + setOpenShare: function (data) { |
|---|
| 1644 | + let that = this; |
|---|
| 1645 | + if (that.$wechat.isWeixin()) { |
|---|
| 1646 | + let configAppMessage = { |
|---|
| 1647 | + desc: data.synopsis, |
|---|
| 1648 | + title: data.title, |
|---|
| 1649 | + link: location.href, |
|---|
| 1650 | + imgUrl: data.img |
|---|
| 1651 | + }; |
|---|
| 1652 | + that.$wechat.wechatEvevt(["updateAppMessageShareData", "updateTimelineShareData"], |
|---|
| 1653 | + configAppMessage); |
|---|
| 1654 | + } |
|---|
| 1655 | + }, |
|---|
| 1656 | + // 授权关闭 |
|---|
| 1657 | + authColse: function (e) { |
|---|
| 1658 | + this.isShowAuth = e |
|---|
| 1659 | + }, |
|---|
| 1660 | + // 产品切换 |
|---|
| 1661 | + changeCategoryTab(index, isClick) { |
|---|
| 1662 | + let that = this; |
|---|
| 1663 | + that.categoryIndex = index; |
|---|
| 1664 | + if (isClick) { |
|---|
| 1665 | + that.clickTrack('cate', { |
|---|
| 1666 | + name: that.categoryList[that.categoryIndex].name |
|---|
| 1667 | + }) |
|---|
| 1668 | + } |
|---|
| 1669 | + that.loadingGood = true; |
|---|
| 1670 | + that.where.page = 1; |
|---|
| 1671 | + that.loadend = false; |
|---|
| 1672 | + that.where.cid = that.categoryList[that.categoryIndex].id; |
|---|
| 1673 | + that.get_product_list(); |
|---|
| 1674 | + }, |
|---|
| 1675 | + /** |
|---|
| 1676 | + * 获取专区列表 |
|---|
| 1677 | + */ |
|---|
| 1678 | + getStoreZoneAndCouponList: function () { |
|---|
| 1679 | + let that = this; |
|---|
| 1680 | + // that.$set(that, 'zoneList', []); |
|---|
| 1681 | + // that.$set(that, 'couponList', []); |
|---|
| 1682 | + uni.showLoading() |
|---|
| 1683 | + getStoreZoneAndCouponList({}).then(res => { |
|---|
| 1684 | + let zoneList = []; |
|---|
| 1685 | + res.data.storeZoneList.forEach((item, index) => { |
|---|
| 1686 | + if (item.isShow) { |
|---|
| 1687 | + item.uniKey = 'storeZoneList' + zoneList.length; |
|---|
| 1688 | + zoneList.push(item); |
|---|
| 1689 | + } |
|---|
| 1690 | + }) |
|---|
| 1691 | + that.$set(that, 'zoneList', zoneList); |
|---|
| 1692 | + |
|---|
| 1693 | + let useNum = 0; |
|---|
| 1694 | + res.data.storeCouponList.forEach((item, index) => { |
|---|
| 1695 | + item.uniKey = 'storeCouponList' + index; |
|---|
| 1696 | + if (item.isUse) { |
|---|
| 1697 | + useNum++; |
|---|
| 1698 | + } |
|---|
| 1699 | + }) |
|---|
| 1700 | + if (useNum >= res.data.storeCouponList.length) { |
|---|
| 1701 | + that.isGetWholeCoupon = true; |
|---|
| 1702 | + } else { |
|---|
| 1703 | + that.isGetWholeCoupon = false; |
|---|
| 1704 | + } |
|---|
| 1705 | + if (that.$store.getters.isLogin) { |
|---|
| 1706 | + handsList().then(giveRes => { |
|---|
| 1707 | + res.data.storeCouponList.push({ |
|---|
| 1708 | + moneyType: 4, |
|---|
| 1709 | + userLvType: this.userInfo.level, |
|---|
| 1710 | + isUse: true, |
|---|
| 1711 | + name: '' |
|---|
| 1712 | + }) |
|---|
| 1713 | + that.$set(that, 'couponList', (giveRes.data || []).concat(res.data.storeCouponList)); |
|---|
| 1714 | + }) |
|---|
| 1715 | + handsCoupon().then(res => { |
|---|
| 1716 | + if (res.code == 200) { |
|---|
| 1717 | + that.$refs.popCoupon.show(); |
|---|
| 1718 | + } |
|---|
| 1719 | + }); |
|---|
| 1720 | + //检查用户有可以手动领取导入优惠券记录 |
|---|
| 1721 | + // that.$refs.popCoupon.show(); |
|---|
| 1722 | + } |
|---|
| 1723 | + that.$nextTick(() => { |
|---|
| 1724 | + that.$forceUpdate(); |
|---|
| 1725 | + uni.hideLoading() |
|---|
| 1726 | + }) |
|---|
| 1727 | + }).catch((e) => { |
|---|
| 1728 | + console.log(10000001, e); |
|---|
| 1729 | + uni.hideLoading() |
|---|
| 1730 | + }); |
|---|
| 1731 | + }, |
|---|
| 1732 | + resetCoupon(couponIds) { |
|---|
| 1733 | + console.log('resetCoupon'); |
|---|
| 1734 | + let that = this; |
|---|
| 1735 | + let hasCoupon4 = false; |
|---|
| 1736 | + let useNum = 0; |
|---|
| 1737 | + that.couponList.forEach((item, index) => { |
|---|
| 1738 | + if (couponIds.indexOf(item.id) >= 0 || couponIds.indexOf(item.id + '') >= 0) { |
|---|
| 1739 | + item.isUse = true; |
|---|
| 1740 | + that.$set(that.couponList[index], 'isUse', true); |
|---|
| 1741 | + if (item.moneyType == 4) { |
|---|
| 1742 | + hasCoupon4 = true; |
|---|
| 1743 | + } |
|---|
| 1744 | + } |
|---|
| 1745 | + if (item.isUse) { |
|---|
| 1746 | + useNum++; |
|---|
| 1747 | + } |
|---|
| 1748 | + }); |
|---|
| 1749 | + if (useNum >= that.couponList.length) { |
|---|
| 1750 | + that.isGetWholeCoupon = true; |
|---|
| 1751 | + } |
|---|
| 1752 | + if (hasCoupon4) { |
|---|
| 1753 | + that.changeCategoryTab(that.categoryIndex); |
|---|
| 1754 | + } |
|---|
| 1755 | + }, |
|---|
| 1756 | + getLast10Order: function () { |
|---|
| 1757 | + let that = this; |
|---|
| 1758 | + getLast10Order({}).then(res => { |
|---|
| 1759 | + let data = res.data.concat(JSON.parse(JSON.stringify(res.data))); |
|---|
| 1760 | + data.forEach((item, index) => { |
|---|
| 1761 | + item.uniKey = 'buyList' + index; |
|---|
| 1762 | + }); |
|---|
| 1763 | + that.$set(that, 'buyList', data); |
|---|
| 1764 | + }); |
|---|
| 1765 | + }, |
|---|
| 1766 | + getCategoryList: function () { |
|---|
| 1767 | + let that = this; |
|---|
| 1768 | + getCategoryList().then(res => { |
|---|
| 1769 | + res.data.forEach((item, index) => { |
|---|
| 1770 | + // if (!item.show2Category) { |
|---|
| 1771 | + // item.child.sort((a, b) => { |
|---|
| 1772 | + // return a.sort - b.sort; |
|---|
| 1773 | + // }); |
|---|
| 1774 | + // that.categoryList = that.categoryList.concat(item.child) |
|---|
| 1775 | + // } |
|---|
| 1776 | + res.data[index]['uniKey'] = 'categoryList' + index; |
|---|
| 1777 | + }); |
|---|
| 1778 | + that.categoryList = res.data; |
|---|
| 1779 | + that.hotCategoryList = []; |
|---|
| 1780 | + that.hotCategoryList.unshift({ |
|---|
| 1781 | + id: 0, |
|---|
| 1782 | + name: '全部' |
|---|
| 1783 | + }); |
|---|
| 1784 | + res.data.forEach((item, index) => { |
|---|
| 1785 | + if (item.name !== '为您推荐') { |
|---|
| 1786 | + that.hotCategoryList.push(item); |
|---|
| 1787 | + } |
|---|
| 1788 | + }); |
|---|
| 1789 | + that.changeCategoryTab(that.categoryIndex); |
|---|
| 1790 | + }) |
|---|
| 1791 | + }, |
|---|
| 1792 | + get_product_list: function () { |
|---|
| 1793 | + let that = this; |
|---|
| 1794 | + if (that.loadend) return; |
|---|
| 1795 | + if (that.loading) return; |
|---|
| 1796 | + that.loading = true; |
|---|
| 1797 | + that.loadTitle = ''; |
|---|
| 1798 | + that.isPause = true; |
|---|
| 1799 | + getProductslist(that.where).then(res => { |
|---|
| 1800 | + let list = res.data.list; |
|---|
| 1801 | + |
|---|
| 1802 | + that.loading = false; |
|---|
| 1803 | + if (that.where.page > 1) { |
|---|
| 1804 | + list = that.productList.concat(list); |
|---|
| 1805 | + } |
|---|
| 1806 | + list.forEach((item, index) => { |
|---|
| 1807 | + item.uniKey = 'productList' + index; |
|---|
| 1808 | + }) |
|---|
| 1809 | + that.$set(that, 'productList', list); |
|---|
| 1810 | + if (that.productList.length > 4) { |
|---|
| 1811 | + that.$set(that, 'scrollHeight', that.pageHeight - 300); |
|---|
| 1812 | + } else { |
|---|
| 1813 | + that.$set(that, 'scrollHeight', 484 * Math.round(that.productList.length / 2) + 120); |
|---|
| 1814 | + } |
|---|
| 1815 | + |
|---|
| 1816 | + if (that.where.page == 1) { |
|---|
| 1817 | + that.scrollTop = that.oldScrollTop; |
|---|
| 1818 | + that.$nextTick(() => { |
|---|
| 1819 | + that.scrollTop = 0; |
|---|
| 1820 | + }); |
|---|
| 1821 | + } |
|---|
| 1822 | + |
|---|
| 1823 | + let loadend = list.length < that.where.limit; |
|---|
| 1824 | + if (that.where.page >= res.data.totalPage) { |
|---|
| 1825 | + loadend = true; |
|---|
| 1826 | + that.$set(that.where, 'page', 1); |
|---|
| 1827 | + } else { |
|---|
| 1828 | + that.$set(that.where, 'page', that.where.page + 1); |
|---|
| 1829 | + } |
|---|
| 1830 | + that.loadend = loadend; |
|---|
| 1831 | + |
|---|
| 1832 | + that.isPause = false; |
|---|
| 1833 | + that.$nextTick(() => { |
|---|
| 1834 | + that.loadingGood = false; |
|---|
| 1835 | + }) |
|---|
| 1836 | + }).catch(err => { |
|---|
| 1837 | + console.log(1000000002, err); |
|---|
| 1838 | + that.loading = false; |
|---|
| 1839 | + that.isPause = false; |
|---|
| 1840 | + that.loadTitle = '加载更多'; |
|---|
| 1841 | + that.$nextTick(() => { |
|---|
| 1842 | + that.loadingGood = false; |
|---|
| 1843 | + }) |
|---|
| 1844 | + }); |
|---|
| 1845 | + }, |
|---|
| 1846 | + goodlistScroll: function (e) { |
|---|
| 1847 | + this.oldScrollTop = e.detail.scrollTop; |
|---|
| 1848 | + }, |
|---|
| 1849 | + getMdayLast: function () { |
|---|
| 1850 | + let that = this; |
|---|
| 1851 | + uni.showLoading(); |
|---|
| 1852 | + getMdayLast({}).then(res => { |
|---|
| 1853 | + if (res.data.mday) { |
|---|
| 1854 | + that.hasLottery = true; |
|---|
| 1855 | + } |
|---|
| 1856 | + }); |
|---|
| 1857 | + }, |
|---|
| 1858 | + }, |
|---|
| 1859 | + mounted() { |
|---|
| 1860 | + let that = this |
|---|
| 1861 | + // #ifdef H5 |
|---|
| 1862 | + //that.getChatUrL(); |
|---|
| 1863 | + // 获取H5 搜索框高度 |
|---|
| 1864 | + let appSearchH = uni.createSelectorQuery().select(".serch-wrapper"); |
|---|
| 1865 | + appSearchH.boundingClientRect(function (data) { |
|---|
| 1866 | + that.searchH = data.height |
|---|
| 1867 | + }).exec() |
|---|
| 1337 | 1868 | // #endif |
|---|
| 1338 | | - } |
|---|
| 1869 | + }, |
|---|
| 1870 | + /** |
|---|
| 1871 | + * 用户点击右上角分享 |
|---|
| 1872 | + */ |
|---|
| 1873 | + // #ifdef MP |
|---|
| 1874 | + onShareAppMessage: function (options) { |
|---|
| 1875 | + let shareUrl = '/pages/index/index'; |
|---|
| 1876 | + if (this.$store.getters.belong) { |
|---|
| 1877 | + shareUrl += '?' + this.$util.setShareBelong(this.$store.getters.belong); |
|---|
| 1878 | + } |
|---|
| 1879 | + if (this.$store.getters.uid) { |
|---|
| 1880 | + if (shareUrl.indexOf('?') > 0) { |
|---|
| 1881 | + shareUrl += '&spread=' + this.$store.getters.uid; |
|---|
| 1882 | + } else { |
|---|
| 1883 | + shareUrl += '?spread=' + this.$store.getters.uid; |
|---|
| 1884 | + } |
|---|
| 1885 | + } |
|---|
| 1886 | + let pages = getCurrentPages(), |
|---|
| 1887 | + currPage = pages[pages.length - 1]; |
|---|
| 1888 | + this.addTrack('yy_contentPageShare', { |
|---|
| 1889 | + 'sharePosition_var': options.from == 'button' ? '页面分享按钮' : '页面顶部', |
|---|
| 1890 | + 'shareMethod_var': '微信好友', //保存海报 |
|---|
| 1891 | + 'pageTitle_var': '首页', |
|---|
| 1892 | + 'pageType_var': '首页', |
|---|
| 1893 | + 'pagePath_var': currPage.route, |
|---|
| 1894 | + 'productID_var': '-', |
|---|
| 1895 | + 'productName_var': '-', |
|---|
| 1896 | + 'contentId_var': '-', |
|---|
| 1897 | + 'contentName_var': '-', |
|---|
| 1898 | + 'contentType_var': '-', |
|---|
| 1899 | + 'contentLabel_var': '-', |
|---|
| 1900 | + }); |
|---|
| 1901 | + return { |
|---|
| 1902 | + title: this.configApi.title, |
|---|
| 1903 | + imageUrl: this.configApi.img, |
|---|
| 1904 | + desc: this.configApi.synopsis, |
|---|
| 1905 | + path: shareUrl |
|---|
| 1906 | + }; |
|---|
| 1907 | + }, |
|---|
| 1908 | + // #endif |
|---|
| 1909 | +} |
|---|
| 1339 | 1910 | </script> |
|---|
| 1340 | 1911 | <style> |
|---|
| 1341 | | - page { |
|---|
| 1342 | | - display: flex; |
|---|
| 1343 | | - flex-direction: column; |
|---|
| 1344 | | - height: 100%; |
|---|
| 1345 | | - /* #ifdef H5 */ |
|---|
| 1346 | | - background-color: #fff; |
|---|
| 1347 | | - /* #endif */ |
|---|
| 1912 | +page { |
|---|
| 1913 | + display: flex; |
|---|
| 1914 | + flex-direction: column; |
|---|
| 1915 | + height: 100%; |
|---|
| 1916 | + /* #ifdef H5 */ |
|---|
| 1917 | + background-color: #fff; |
|---|
| 1918 | + /* #endif */ |
|---|
| 1348 | 1919 | |
|---|
| 1349 | | - } |
|---|
| 1920 | +} |
|---|
| 1921 | + |
|---|
| 1922 | +@font-face { |
|---|
| 1923 | + font-family: 'gotham'; |
|---|
| 1924 | + src: url('gotham.ttf') format('truetype'); |
|---|
| 1925 | +} |
|---|
| 1350 | 1926 | </style> |
|---|
| 1351 | 1927 | <style lang="scss"> |
|---|
| 1352 | | - .index_info{ |
|---|
| 1353 | | - width: 690rpx; |
|---|
| 1354 | | - height: 70rpx; |
|---|
| 1355 | | - display: block; |
|---|
| 1356 | | - margin: 0 auto; |
|---|
| 1357 | | - margin-bottom: 20rpx; |
|---|
| 1358 | | - } |
|---|
| 1359 | | - .notice { |
|---|
| 1360 | | - width: 100%; |
|---|
| 1361 | | - height: 70rpx; |
|---|
| 1362 | | - border-radius: 10rpx; |
|---|
| 1363 | | - background-color: #fff; |
|---|
| 1364 | | - margin-bottom: 25rpx; |
|---|
| 1365 | | - line-height: 70rpx; |
|---|
| 1366 | | - padding: 0 14rpx; |
|---|
| 1928 | +.serviceSupport { |
|---|
| 1929 | + width: 690rpx; |
|---|
| 1930 | + display: flex; |
|---|
| 1931 | + margin: 0 auto; |
|---|
| 1932 | + margin-bottom: 20rpx; |
|---|
| 1933 | + border-radius: 15rpx; |
|---|
| 1934 | + background: linear-gradient(to right, #68ecd9, #a8f696, #cdf3ea); |
|---|
| 1935 | + justify-content: space-evenly; |
|---|
| 1936 | + align-items: center; |
|---|
| 1367 | 1937 | |
|---|
| 1368 | | - .line { |
|---|
| 1369 | | - color: #CCCCCC; |
|---|
| 1938 | + .serviceSupport_item { |
|---|
| 1939 | + display: flex; |
|---|
| 1940 | + align-items: center; |
|---|
| 1941 | + justify-content: center; |
|---|
| 1942 | + height: 68rpx; |
|---|
| 1943 | + |
|---|
| 1944 | + .serviceSupport_itemImg { |
|---|
| 1945 | + width: 33rpx; |
|---|
| 1946 | + height: 33rpx; |
|---|
| 1947 | + margin-right: 12rpx; |
|---|
| 1370 | 1948 | } |
|---|
| 1371 | 1949 | |
|---|
| 1372 | | - .pic { |
|---|
| 1373 | | - width: 130rpx; |
|---|
| 1374 | | - height: 36rpx; |
|---|
| 1950 | + .serviceSupport_itemText { |
|---|
| 1951 | + font-size: 22rpx; |
|---|
| 1952 | + color: #096f50; |
|---|
| 1953 | + line-height: 68rpx; |
|---|
| 1954 | + } |
|---|
| 1955 | + } |
|---|
| 1956 | +} |
|---|
| 1375 | 1957 | |
|---|
| 1376 | | - image { |
|---|
| 1377 | | - width: 100%; |
|---|
| 1378 | | - height: 100%; |
|---|
| 1379 | | - display: block !important; |
|---|
| 1958 | +/* 首页运营模块 */ |
|---|
| 1959 | +.promotion_pair { |
|---|
| 1960 | + width: 690rpx; |
|---|
| 1961 | + margin: 0 auto 20rpx; |
|---|
| 1962 | + display: flex; |
|---|
| 1963 | + justify-content: space-between; |
|---|
| 1964 | + align-items: flex-start; |
|---|
| 1965 | + |
|---|
| 1966 | + .pair_deal { |
|---|
| 1967 | + width: 335rpx; |
|---|
| 1968 | + height: 628rpx; |
|---|
| 1969 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleDeal.png") center center/contain no-repeat; |
|---|
| 1970 | + box-sizing: border-box; |
|---|
| 1971 | + border-radius: 24rpx; |
|---|
| 1972 | + overflow: hidden; |
|---|
| 1973 | + position: relative; |
|---|
| 1974 | + |
|---|
| 1975 | + .pair_deal_head { |
|---|
| 1976 | + display: flex; |
|---|
| 1977 | + align-items: center; |
|---|
| 1978 | + padding-top: 7rpx; |
|---|
| 1979 | + |
|---|
| 1980 | + .pair_deal_badge { |
|---|
| 1981 | + width: 166rpx; |
|---|
| 1982 | + height: 54rpx; |
|---|
| 1983 | + line-height: 54rpx; |
|---|
| 1984 | + padding: 0 18rpx; |
|---|
| 1985 | + color: #fff; |
|---|
| 1986 | + font-size: 28rpx; |
|---|
| 1987 | + text-align: center; |
|---|
| 1988 | + font-weight: bold; |
|---|
| 1989 | + white-space: nowrap; |
|---|
| 1990 | + } |
|---|
| 1991 | + |
|---|
| 1992 | + .deal_count { |
|---|
| 1993 | + display: flex; |
|---|
| 1994 | + align-items: center; |
|---|
| 1995 | + padding-left: 6rpx; |
|---|
| 1996 | + |
|---|
| 1997 | + .deal_count_num { |
|---|
| 1998 | + width: 40rpx; |
|---|
| 1999 | + white-space: nowrap; |
|---|
| 2000 | + height: 40rpx; |
|---|
| 2001 | + line-height: 40rpx; |
|---|
| 2002 | + box-sizing: border-box; |
|---|
| 2003 | + text-align: center; |
|---|
| 2004 | + background: linear-gradient(180deg, #ffe95c 0%, #ffc93c 100%); |
|---|
| 2005 | + border-radius: 10rpx; |
|---|
| 2006 | + color: #000000; |
|---|
| 2007 | + font-size: 26rpx; |
|---|
| 2008 | + font-weight: bold; |
|---|
| 2009 | + } |
|---|
| 2010 | + |
|---|
| 2011 | + .deal_count_sep { |
|---|
| 2012 | + margin: 0 5rpx; |
|---|
| 2013 | + color: #000000; |
|---|
| 2014 | + font-weight: bold; |
|---|
| 2015 | + } |
|---|
| 1380 | 2016 | } |
|---|
| 1381 | 2017 | } |
|---|
| 1382 | 2018 | |
|---|
| 1383 | | - .swipers { |
|---|
| 1384 | | - height: 100%; |
|---|
| 1385 | | - width: 444rpx; |
|---|
| 2019 | + .pair_deal_sub { |
|---|
| 2020 | + margin-top: 6rpx; |
|---|
| 2021 | + text-align: center; |
|---|
| 2022 | + font-size: 24rpx; |
|---|
| 2023 | + line-height: 48rpx; |
|---|
| 2024 | + color: #35bc62; |
|---|
| 2025 | + } |
|---|
| 2026 | + |
|---|
| 2027 | + .deal_swiper { |
|---|
| 2028 | + height: 514rpx; |
|---|
| 2029 | + |
|---|
| 2030 | + .deal_goods { |
|---|
| 2031 | + .deal_goods_pic { |
|---|
| 2032 | + width: 306rpx; |
|---|
| 2033 | + height: 306rpx; |
|---|
| 2034 | + margin: 0 auto; |
|---|
| 2035 | + background: #fff; |
|---|
| 2036 | + border-radius: 16rpx; |
|---|
| 2037 | + overflow: hidden; |
|---|
| 2038 | + |
|---|
| 2039 | + image { |
|---|
| 2040 | + width: 306rpx; |
|---|
| 2041 | + height: 306rpx; |
|---|
| 2042 | + display: block; |
|---|
| 2043 | + } |
|---|
| 2044 | + } |
|---|
| 2045 | + |
|---|
| 2046 | + .deal_goods_name { |
|---|
| 2047 | + padding-left: 18rpx; |
|---|
| 2048 | + padding-right: 18rpx; |
|---|
| 2049 | + margin-top: 16rpx; |
|---|
| 2050 | + font-size: 28rpx; |
|---|
| 2051 | + font-weight: bold; |
|---|
| 2052 | + color: #222222; |
|---|
| 2053 | + white-space: nowrap; |
|---|
| 2054 | + overflow: hidden; |
|---|
| 2055 | + text-overflow: ellipsis; |
|---|
| 2056 | + } |
|---|
| 2057 | + |
|---|
| 2058 | + .deal_progress { |
|---|
| 2059 | + padding-left: 18rpx; |
|---|
| 2060 | + padding-right: 18rpx; |
|---|
| 2061 | + display: flex; |
|---|
| 2062 | + align-items: center; |
|---|
| 2063 | + margin-top: 14rpx; |
|---|
| 2064 | + |
|---|
| 2065 | + .deal_progress_bar { |
|---|
| 2066 | + flex: 1; |
|---|
| 2067 | + height: 12rpx; |
|---|
| 2068 | + border-radius: 6rpx; |
|---|
| 2069 | + background: rgba(255, 255, 255, .6); |
|---|
| 2070 | + overflow: hidden; |
|---|
| 2071 | + |
|---|
| 2072 | + .deal_progress_inner { |
|---|
| 2073 | + height: 100%; |
|---|
| 2074 | + border-radius: 6rpx; |
|---|
| 2075 | + background: linear-gradient(90deg, #ffd53e 0%, #ffb800 100%); |
|---|
| 2076 | + } |
|---|
| 2077 | + } |
|---|
| 2078 | + |
|---|
| 2079 | + .deal_progress_text { |
|---|
| 2080 | + margin-left: 14rpx; |
|---|
| 2081 | + font-size: 22rpx; |
|---|
| 2082 | + color: #ffffff; |
|---|
| 2083 | + } |
|---|
| 2084 | + } |
|---|
| 2085 | + |
|---|
| 2086 | + .deal_bottom { |
|---|
| 2087 | + padding-left: 18rpx; |
|---|
| 2088 | + padding-right: 18rpx; |
|---|
| 2089 | + display: flex; |
|---|
| 2090 | + align-items: center; |
|---|
| 2091 | + justify-content: space-between; |
|---|
| 2092 | + margin-top: 18rpx; |
|---|
| 2093 | + |
|---|
| 2094 | + .deal_price_now { |
|---|
| 2095 | + color: #ff0000; |
|---|
| 2096 | + font-size: 34rpx; |
|---|
| 2097 | + line-height: 48rpx; |
|---|
| 2098 | + font-family: 'gotham'; |
|---|
| 2099 | + white-space: nowrap; |
|---|
| 2100 | + } |
|---|
| 2101 | + |
|---|
| 2102 | + .deal_price_old { |
|---|
| 2103 | + margin-top: 2rpx; |
|---|
| 2104 | + font-size: 18rpx; |
|---|
| 2105 | + font-size: 20rpx; |
|---|
| 2106 | + line-height: 1; |
|---|
| 2107 | + color: #ffffff; |
|---|
| 2108 | + text-decoration: line-through; |
|---|
| 2109 | + } |
|---|
| 2110 | + |
|---|
| 2111 | + .deal_buy { |
|---|
| 2112 | + width: 114rpx; |
|---|
| 2113 | + height: 62rpx; |
|---|
| 2114 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleDeal_btn.png") center center/contain no-repeat; |
|---|
| 2115 | + } |
|---|
| 2116 | + } |
|---|
| 2117 | + } |
|---|
| 2118 | + } |
|---|
| 2119 | + |
|---|
| 2120 | + .deal_dots { |
|---|
| 2121 | + width: 100%; |
|---|
| 2122 | + position: absolute; |
|---|
| 2123 | + bottom: 14rpx; |
|---|
| 2124 | + left: 0; |
|---|
| 2125 | + display: flex; |
|---|
| 2126 | + justify-content: center; |
|---|
| 2127 | + margin-top: 12rpx; |
|---|
| 2128 | + |
|---|
| 2129 | + .deal_dot { |
|---|
| 2130 | + width: 8rpx; |
|---|
| 2131 | + height: 8rpx; |
|---|
| 2132 | + border-radius: 4rpx; |
|---|
| 2133 | + background: rgba(255, 255, 255, .7); |
|---|
| 2134 | + margin: 0 5rpx; |
|---|
| 2135 | + |
|---|
| 2136 | + &.on { |
|---|
| 2137 | + width: 34rpx; |
|---|
| 2138 | + background: #ffd53e; |
|---|
| 2139 | + } |
|---|
| 2140 | + } |
|---|
| 2141 | + } |
|---|
| 2142 | + } |
|---|
| 2143 | + |
|---|
| 2144 | + .pair_right { |
|---|
| 2145 | + width: 335rpx; |
|---|
| 2146 | + display: flex; |
|---|
| 2147 | + flex-direction: column; |
|---|
| 2148 | + } |
|---|
| 2149 | + |
|---|
| 2150 | + .pair_new { |
|---|
| 2151 | + width: 335rpx; |
|---|
| 2152 | + height: 335rpx; |
|---|
| 2153 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleNew.png") center center/contain no-repeat; |
|---|
| 2154 | + box-sizing: border-box; |
|---|
| 2155 | + border-radius: 24rpx; |
|---|
| 2156 | + overflow: hidden; |
|---|
| 2157 | + position: relative; |
|---|
| 2158 | + |
|---|
| 2159 | + .pair_new_head { |
|---|
| 2160 | + display: flex; |
|---|
| 2161 | + align-items: baseline; |
|---|
| 2162 | + justify-content: space-between; |
|---|
| 2163 | + padding-top: 7rpx; |
|---|
| 2164 | + |
|---|
| 2165 | + .pair_new_title { |
|---|
| 2166 | + width: 162rpx; |
|---|
| 2167 | + text-align: center; |
|---|
| 2168 | + font-size: 27rpx; |
|---|
| 2169 | + line-height: 54rpx; |
|---|
| 2170 | + font-weight: bold; |
|---|
| 2171 | + color: #ffffff; |
|---|
| 2172 | + } |
|---|
| 2173 | + |
|---|
| 2174 | + .pair_new_sub { |
|---|
| 2175 | + width: 172rpx; |
|---|
| 2176 | + text-align: center; |
|---|
| 2177 | + font-size: 27rpx; |
|---|
| 2178 | + line-height: 54rpx; |
|---|
| 2179 | + font-weight: bold; |
|---|
| 2180 | + color: #fe4f70; |
|---|
| 2181 | + } |
|---|
| 2182 | + } |
|---|
| 2183 | + |
|---|
| 2184 | + .pair_new_list { |
|---|
| 2185 | + width: 100%; |
|---|
| 2186 | + margin-top: 15rpx; |
|---|
| 2187 | + height: 257rpx; |
|---|
| 2188 | + position: relative; |
|---|
| 2189 | + |
|---|
| 2190 | + .pair_new_swiper_item { |
|---|
| 2191 | + height: 220rpx; |
|---|
| 2192 | + } |
|---|
| 2193 | + |
|---|
| 2194 | + .pair_new_list_wrapper { |
|---|
| 2195 | + display: flex; |
|---|
| 2196 | + align-items: flex-start; |
|---|
| 2197 | + justify-content: space-around; |
|---|
| 2198 | + } |
|---|
| 2199 | + |
|---|
| 2200 | + .pair_new_item { |
|---|
| 2201 | + width: 155rpx; |
|---|
| 2202 | + flex-shrink: 0; |
|---|
| 2203 | + |
|---|
| 2204 | + .pair_new_pic { |
|---|
| 2205 | + border-radius: 12rpx; |
|---|
| 2206 | + overflow: hidden; |
|---|
| 2207 | + background: #f7f7f7; |
|---|
| 2208 | + |
|---|
| 2209 | + image { |
|---|
| 2210 | + width: 142rpx; |
|---|
| 2211 | + height: 142rpx; |
|---|
| 2212 | + display: block; |
|---|
| 2213 | + } |
|---|
| 2214 | + } |
|---|
| 2215 | + |
|---|
| 2216 | + .pair_new_price { |
|---|
| 2217 | + width: 123rpx; |
|---|
| 2218 | + margin: 0 auto; |
|---|
| 2219 | + text-align: center; |
|---|
| 2220 | + background: #fff0d9; |
|---|
| 2221 | + border-radius: 20rpx; |
|---|
| 2222 | + margin-top: 16rpx; |
|---|
| 2223 | + color: #ff5c2b; |
|---|
| 2224 | + font-size: 24rpx; |
|---|
| 2225 | + // font-weight: bold; |
|---|
| 2226 | + font-family: 'gotham'; |
|---|
| 2227 | + white-space: nowrap; |
|---|
| 2228 | + line-height: 39rpx; |
|---|
| 2229 | + } |
|---|
| 2230 | + |
|---|
| 2231 | + .pair_new_old { |
|---|
| 2232 | + font-size: 18rpx; |
|---|
| 2233 | + line-height: 24rpx; |
|---|
| 2234 | + margin-top: 10rpx; |
|---|
| 2235 | + color: #9e9e9e; |
|---|
| 2236 | + text-decoration: line-through; |
|---|
| 2237 | + text-align: center; |
|---|
| 2238 | + } |
|---|
| 2239 | + |
|---|
| 2240 | + } |
|---|
| 2241 | + } |
|---|
| 2242 | + |
|---|
| 2243 | + .pair_new_dots { |
|---|
| 2244 | + width: 100%; |
|---|
| 2245 | + position: absolute; |
|---|
| 2246 | + bottom: 14rpx; |
|---|
| 2247 | + left: 0; |
|---|
| 2248 | + display: flex; |
|---|
| 2249 | + justify-content: center; |
|---|
| 2250 | + margin-top: 12rpx; |
|---|
| 2251 | + |
|---|
| 2252 | + .pair_new_dot { |
|---|
| 2253 | + width: 8rpx; |
|---|
| 2254 | + height: 8rpx; |
|---|
| 2255 | + border-radius: 4rpx; |
|---|
| 2256 | + background: rgba(255, 255, 255, 0.5); |
|---|
| 2257 | + margin: 0 5rpx; |
|---|
| 2258 | + |
|---|
| 2259 | + &.on { |
|---|
| 2260 | + width: 34rpx; |
|---|
| 2261 | + background: #ffd53e; |
|---|
| 2262 | + } |
|---|
| 2263 | + } |
|---|
| 2264 | + } |
|---|
| 2265 | + } |
|---|
| 2266 | + |
|---|
| 2267 | + .pair_zone { |
|---|
| 2268 | + width: 335rpx; |
|---|
| 2269 | + height: 283rpx; |
|---|
| 2270 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleZone.png") center center/contain no-repeat; |
|---|
| 2271 | + box-sizing: border-box; |
|---|
| 2272 | + border-radius: 24rpx; |
|---|
| 2273 | + margin-top: 10rpx; |
|---|
| 2274 | + position: relative; |
|---|
| 2275 | + |
|---|
| 2276 | + .pair_zone_head { |
|---|
| 2277 | + display: flex; |
|---|
| 2278 | + align-items: center; |
|---|
| 2279 | + justify-content: space-between; |
|---|
| 2280 | + padding-top: 7rpx; |
|---|
| 2281 | + |
|---|
| 2282 | + .pair_zone_badge { |
|---|
| 2283 | + width: 162rpx; |
|---|
| 2284 | + text-align: center; |
|---|
| 2285 | + font-size: 27rpx; |
|---|
| 2286 | + line-height: 54rpx; |
|---|
| 2287 | + font-weight: bold; |
|---|
| 2288 | + white-space: nowrap; |
|---|
| 2289 | + color: #ffffff; |
|---|
| 2290 | + } |
|---|
| 2291 | + |
|---|
| 2292 | + .pair_zone_sub { |
|---|
| 2293 | + width: 172rpx; |
|---|
| 2294 | + text-align: center; |
|---|
| 2295 | + font-size: 27rpx; |
|---|
| 2296 | + line-height: 54rpx; |
|---|
| 2297 | + font-weight: bold; |
|---|
| 2298 | + color: #36c8d5; |
|---|
| 2299 | + } |
|---|
| 2300 | + } |
|---|
| 2301 | + |
|---|
| 2302 | + .pair_zone_swiper { |
|---|
| 2303 | + height: 200rpx; |
|---|
| 2304 | + margin-top: 26rpx; |
|---|
| 2305 | + border-radius: 16rpx; |
|---|
| 1386 | 2306 | overflow: hidden; |
|---|
| 1387 | 2307 | |
|---|
| 1388 | | - swiper { |
|---|
| 1389 | | - height: 100%; |
|---|
| 2308 | + .pair_zone_swiper_item { |
|---|
| 1390 | 2309 | width: 100%; |
|---|
| 1391 | | - overflow: hidden; |
|---|
| 1392 | | - font-size: 22rpx; |
|---|
| 1393 | | - color: #333333; |
|---|
| 2310 | + height: 138rpx; |
|---|
| 2311 | + |
|---|
| 2312 | + .pair_zone_img { |
|---|
| 2313 | + width: 300rpx; |
|---|
| 2314 | + height: 138rpx; |
|---|
| 2315 | + margin: 0 auto; |
|---|
| 2316 | + margin-top: 10rpx; |
|---|
| 2317 | + display: block; |
|---|
| 2318 | + border-radius: 16rpx; |
|---|
| 2319 | + } |
|---|
| 2320 | + |
|---|
| 2321 | + &.multi .pair_zone_img { |
|---|
| 2322 | + margin-left: 15rpx; |
|---|
| 2323 | + width: 280rpx; |
|---|
| 2324 | + height: 128rpx; |
|---|
| 2325 | + } |
|---|
| 2326 | + |
|---|
| 2327 | + } |
|---|
| 2328 | + |
|---|
| 2329 | + |
|---|
| 2330 | + } |
|---|
| 2331 | + |
|---|
| 2332 | + .pair_zone_dots { |
|---|
| 2333 | + width: 100%; |
|---|
| 2334 | + position: absolute; |
|---|
| 2335 | + bottom: 24rpx; |
|---|
| 2336 | + left: 0; |
|---|
| 2337 | + display: flex; |
|---|
| 2338 | + justify-content: center; |
|---|
| 2339 | + margin-top: 12rpx; |
|---|
| 2340 | + |
|---|
| 2341 | + .pair_zone_dot { |
|---|
| 2342 | + width: 8rpx; |
|---|
| 2343 | + height: 8rpx; |
|---|
| 2344 | + border-radius: 4rpx; |
|---|
| 2345 | + background: #e0e0e0; |
|---|
| 2346 | + margin: 0 5rpx; |
|---|
| 2347 | + |
|---|
| 2348 | + &.on { |
|---|
| 2349 | + width: 34rpx; |
|---|
| 2350 | + background: #ffd53e; |
|---|
| 2351 | + } |
|---|
| 2352 | + } |
|---|
| 2353 | + } |
|---|
| 2354 | + } |
|---|
| 2355 | +} |
|---|
| 2356 | + |
|---|
| 2357 | +.module_rank { |
|---|
| 2358 | + width: 690rpx; |
|---|
| 2359 | + height: 580rpx; |
|---|
| 2360 | + margin: 0 auto 20rpx; |
|---|
| 2361 | + box-sizing: border-box; |
|---|
| 2362 | + border-radius: 24rpx; |
|---|
| 2363 | + padding: 0 20rpx; |
|---|
| 2364 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank.png") center center/contain no-repeat; |
|---|
| 2365 | + |
|---|
| 2366 | + |
|---|
| 2367 | + .module_rank_head { |
|---|
| 2368 | + display: flex; |
|---|
| 2369 | + align-items: center; |
|---|
| 2370 | + justify-content: space-between; |
|---|
| 2371 | + padding-top: 7rpx; |
|---|
| 2372 | + |
|---|
| 2373 | + .module_rank_badge { |
|---|
| 2374 | + height: 47rpx; |
|---|
| 2375 | + line-height: 47rpx; |
|---|
| 2376 | + padding-left: 15rpx; |
|---|
| 2377 | + color: #fff; |
|---|
| 2378 | + font-size: 28rpx; |
|---|
| 2379 | + font-weight: bold; |
|---|
| 2380 | + } |
|---|
| 2381 | + |
|---|
| 2382 | + .module_rank_sub { |
|---|
| 2383 | + padding-right: 15rpx; |
|---|
| 2384 | + text-align: right; |
|---|
| 2385 | + font-size: 20rpx; |
|---|
| 2386 | + line-height: 32rpx; |
|---|
| 2387 | + padding-top: 15rpx; |
|---|
| 2388 | + color: #d5bb00; |
|---|
| 2389 | + } |
|---|
| 2390 | + } |
|---|
| 2391 | + |
|---|
| 2392 | + .module_rank_body { |
|---|
| 2393 | + margin-top: 16rpx; |
|---|
| 2394 | + border-radius: 20rpx; |
|---|
| 2395 | + |
|---|
| 2396 | + .module_rank_tabs { |
|---|
| 2397 | + width: 640rpx; |
|---|
| 2398 | + margin: 0 auto; |
|---|
| 2399 | + background: rgba(244, 255, 196, .7); |
|---|
| 2400 | + border-radius: 28rpx; |
|---|
| 2401 | + |
|---|
| 2402 | + .module_rank_tabsScroll { |
|---|
| 2403 | + width: 100%; |
|---|
| 2404 | + white-space: nowrap; |
|---|
| 2405 | + } |
|---|
| 2406 | + |
|---|
| 2407 | + .module_rank_tabs_wrapper { |
|---|
| 2408 | + width: max-content; |
|---|
| 2409 | + white-space: nowrap; |
|---|
| 2410 | + } |
|---|
| 2411 | + |
|---|
| 2412 | + .module_rank_tab { |
|---|
| 2413 | + display: inline-block; |
|---|
| 2414 | + position: relative; |
|---|
| 2415 | + font-size: 28rpx; |
|---|
| 2416 | + color: #000000; |
|---|
| 2417 | + line-height: 56rpx; |
|---|
| 2418 | + padding: 0 22rpx; |
|---|
| 2419 | + |
|---|
| 2420 | + &.on { |
|---|
| 2421 | + font-weight: bold; |
|---|
| 2422 | + |
|---|
| 2423 | + &::after { |
|---|
| 2424 | + content: ''; |
|---|
| 2425 | + position: absolute; |
|---|
| 2426 | + left: 50%; |
|---|
| 2427 | + bottom: 10rpx; |
|---|
| 2428 | + transform: translateX(-50%); |
|---|
| 2429 | + width: 48rpx; |
|---|
| 2430 | + height: 6rpx; |
|---|
| 2431 | + border-radius: 3rpx; |
|---|
| 2432 | + background: linear-gradient(90deg, #ffd53e 0%, #ff9c00 100%); |
|---|
| 2433 | + } |
|---|
| 2434 | + } |
|---|
| 1394 | 2435 | } |
|---|
| 1395 | 2436 | } |
|---|
| 1396 | 2437 | |
|---|
| 1397 | | - .iconfont { |
|---|
| 1398 | | - color: #999999; |
|---|
| 1399 | | - font-size: 20rpx; |
|---|
| 2438 | + .module_rank_list { |
|---|
| 2439 | + display: flex; |
|---|
| 2440 | + justify-content: space-between; |
|---|
| 2441 | + align-items: flex-start; |
|---|
| 2442 | + margin-top: 30rpx; |
|---|
| 2443 | + position: relative; |
|---|
| 2444 | + |
|---|
| 2445 | + .module_rank_item { |
|---|
| 2446 | + position: relative; |
|---|
| 2447 | + width: 32%; |
|---|
| 2448 | + box-sizing: border-box; |
|---|
| 2449 | + border-radius: 16rpx; |
|---|
| 2450 | + padding: 14rpx 12rpx 16rpx; |
|---|
| 2451 | + background: linear-gradient(180deg, #ffffff 0%, #eafbe0 100%); |
|---|
| 2452 | + margin-top: 44rpx; |
|---|
| 2453 | + |
|---|
| 2454 | + &.mid { |
|---|
| 2455 | + margin-top: 0; |
|---|
| 2456 | + } |
|---|
| 2457 | + |
|---|
| 2458 | + .rank_badge { |
|---|
| 2459 | + position: absolute; |
|---|
| 2460 | + left: -8rpx; |
|---|
| 2461 | + top: -10rpx; |
|---|
| 2462 | + width: 60rpx; |
|---|
| 2463 | + height: 68rpx; |
|---|
| 2464 | + |
|---|
| 2465 | + &.rank1 { |
|---|
| 2466 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank_num1.png") center center/contain no-repeat; |
|---|
| 2467 | + } |
|---|
| 2468 | + |
|---|
| 2469 | + &.rank2 { |
|---|
| 2470 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank_num2.png") center center/contain no-repeat; |
|---|
| 2471 | + } |
|---|
| 2472 | + |
|---|
| 2473 | + &.rank3 { |
|---|
| 2474 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank_num3.png") center center/contain no-repeat; |
|---|
| 2475 | + } |
|---|
| 2476 | + } |
|---|
| 2477 | + |
|---|
| 2478 | + .rank_pic { |
|---|
| 2479 | + border-radius: 12rpx; |
|---|
| 2480 | + overflow: hidden; |
|---|
| 2481 | + background: #f7f7f7; |
|---|
| 2482 | + |
|---|
| 2483 | + image { |
|---|
| 2484 | + width: 100%; |
|---|
| 2485 | + height: 150rpx; |
|---|
| 2486 | + display: block; |
|---|
| 2487 | + } |
|---|
| 2488 | + } |
|---|
| 2489 | + |
|---|
| 2490 | + .rank_buy { |
|---|
| 2491 | + font-size: 16rpx; |
|---|
| 2492 | + line-height: 24rpx; |
|---|
| 2493 | + margin-top: 15rpx; |
|---|
| 2494 | + color: #ff3000; |
|---|
| 2495 | + padding-left: 20rpx; |
|---|
| 2496 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank_hot.png") left 2rpx / auto 16rpx no-repeat; |
|---|
| 2497 | + } |
|---|
| 2498 | + |
|---|
| 2499 | + .rank_name { |
|---|
| 2500 | + margin-top: 4rpx; |
|---|
| 2501 | + font-size: 24rpx; |
|---|
| 2502 | + line-height: 32rpx; |
|---|
| 2503 | + height: 64rpx; |
|---|
| 2504 | + color: #222222; |
|---|
| 2505 | + display: -webkit-box; |
|---|
| 2506 | + -webkit-box-orient: vertical; |
|---|
| 2507 | + -webkit-line-clamp: 2; |
|---|
| 2508 | + overflow: hidden; |
|---|
| 2509 | + } |
|---|
| 2510 | + |
|---|
| 2511 | + .rank_price { |
|---|
| 2512 | + display: flex; |
|---|
| 2513 | + align-items: center; |
|---|
| 2514 | + justify-content: space-between; |
|---|
| 2515 | + margin-top: 10rpx; |
|---|
| 2516 | + |
|---|
| 2517 | + .rank_price_now { |
|---|
| 2518 | + color: #ff0000; |
|---|
| 2519 | + font-size: 24rpx; |
|---|
| 2520 | + font-family: 'gotham'; |
|---|
| 2521 | + white-space: nowrap; |
|---|
| 2522 | + overflow: hidden; |
|---|
| 2523 | + max-width: 150rpx; |
|---|
| 2524 | + overflow: hidden; |
|---|
| 2525 | + } |
|---|
| 2526 | + } |
|---|
| 2527 | + |
|---|
| 2528 | + .rank_old { |
|---|
| 2529 | + margin-top: 4rpx; |
|---|
| 2530 | + font-size: 20rpx; |
|---|
| 2531 | + white-space: nowrap; |
|---|
| 2532 | + overflow: hidden; |
|---|
| 2533 | + max-width: 150rpx; |
|---|
| 2534 | + overflow: hidden; |
|---|
| 2535 | + color: #999999; |
|---|
| 2536 | + text-decoration: line-through; |
|---|
| 2537 | + } |
|---|
| 2538 | + |
|---|
| 2539 | + .rank_cart { |
|---|
| 2540 | + position: absolute; |
|---|
| 2541 | + right: 12rpx; |
|---|
| 2542 | + bottom: 20rpx; |
|---|
| 2543 | + width: 34rpx; |
|---|
| 2544 | + height: 34rpx; |
|---|
| 2545 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleRank_buy.png") center center/contain no-repeat; |
|---|
| 2546 | + } |
|---|
| 2547 | + } |
|---|
| 2548 | + } |
|---|
| 2549 | + } |
|---|
| 2550 | +} |
|---|
| 2551 | + |
|---|
| 2552 | +.module_banner { |
|---|
| 2553 | + width: 690rpx; |
|---|
| 2554 | + margin: 0 auto 20rpx; |
|---|
| 2555 | + position: relative; |
|---|
| 2556 | + |
|---|
| 2557 | + .module_banner_swiper { |
|---|
| 2558 | + height: 150rpx; |
|---|
| 2559 | + border-radius: 20rpx; |
|---|
| 2560 | + overflow: hidden; |
|---|
| 2561 | + |
|---|
| 2562 | + .module_banner_img { |
|---|
| 2563 | + width: 100%; |
|---|
| 2564 | + height: 150rpx; |
|---|
| 2565 | + display: block; |
|---|
| 2566 | + border-radius: 20rpx; |
|---|
| 1400 | 2567 | } |
|---|
| 1401 | 2568 | } |
|---|
| 1402 | 2569 | |
|---|
| 1403 | | - .sticky-box { |
|---|
| 1404 | | - /* #ifndef APP-PLUS-NVUE */ |
|---|
| 2570 | + .module_banner_dots { |
|---|
| 2571 | + position: absolute; |
|---|
| 2572 | + left: 0; |
|---|
| 2573 | + right: 0; |
|---|
| 2574 | + bottom: 12rpx; |
|---|
| 1405 | 2575 | display: flex; |
|---|
| 1406 | | - position: -webkit-sticky; |
|---|
| 1407 | | - /* #endif */ |
|---|
| 1408 | | - position: sticky; |
|---|
| 1409 | | - /* #ifdef H5*/ |
|---|
| 1410 | | - top: var(--window-top); |
|---|
| 1411 | | - /* #endif */ |
|---|
| 2576 | + justify-content: center; |
|---|
| 1412 | 2577 | |
|---|
| 1413 | | - z-index: 99; |
|---|
| 1414 | | - flex-direction: row; |
|---|
| 1415 | | - margin: 0px; |
|---|
| 1416 | | - background: #f5f5f5; |
|---|
| 1417 | | - padding: 30rpx 0; |
|---|
| 2578 | + .module_banner_dot { |
|---|
| 2579 | + width: 8rpx; |
|---|
| 2580 | + height: 8rpx; |
|---|
| 2581 | + border-radius: 4rpx; |
|---|
| 2582 | + background: #e0e0e0; |
|---|
| 2583 | + margin: 0 5rpx; |
|---|
| 2584 | + |
|---|
| 2585 | + &.on { |
|---|
| 2586 | + width: 34rpx; |
|---|
| 2587 | + background: #ffd53e; |
|---|
| 2588 | + } |
|---|
| 2589 | + } |
|---|
| 2590 | + } |
|---|
| 2591 | +} |
|---|
| 2592 | + |
|---|
| 2593 | +.module_brand { |
|---|
| 2594 | + width: 684rpx; |
|---|
| 2595 | + height: 335rpx; |
|---|
| 2596 | + position: relative; |
|---|
| 2597 | + margin: 0 auto 20rpx; |
|---|
| 2598 | + box-sizing: border-box; |
|---|
| 2599 | + border-radius: 24rpx; |
|---|
| 2600 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/index_moduleBrand.png") center center/contain no-repeat; |
|---|
| 2601 | + |
|---|
| 2602 | + .module_brand_title { |
|---|
| 2603 | + text-align: center; |
|---|
| 2604 | + font-size: 34rpx; |
|---|
| 2605 | + font-weight: bold; |
|---|
| 2606 | + color: #0a9b4c; |
|---|
| 1418 | 2607 | } |
|---|
| 1419 | 2608 | |
|---|
| 1420 | | - .listAll { |
|---|
| 1421 | | - width: 20%; |
|---|
| 1422 | | - text-indent: 62rpx; |
|---|
| 1423 | | - font-size: 30rpx; |
|---|
| 1424 | | - border-left: 1px #eee solid; |
|---|
| 1425 | | - margin: 1% 0; |
|---|
| 1426 | | - padding: 5rpx; |
|---|
| 1427 | | - position: relative; |
|---|
| 2609 | + .module_brand_sub { |
|---|
| 2610 | + text-align: center; |
|---|
| 2611 | + font-size: 24rpx; |
|---|
| 2612 | + line-height: 60rpx; |
|---|
| 2613 | + color: #35bc62; |
|---|
| 2614 | + } |
|---|
| 2615 | + |
|---|
| 2616 | + .module_brand_swiper { |
|---|
| 2617 | + width: 645rpx; |
|---|
| 2618 | + height: 200rpx; |
|---|
| 2619 | + margin: 0 auto; |
|---|
| 2620 | + background: #fff; |
|---|
| 2621 | + border-radius: 20rpx; |
|---|
| 2622 | + |
|---|
| 2623 | + .module_brand_swiper_item { |
|---|
| 2624 | + width: 100%; |
|---|
| 2625 | + } |
|---|
| 2626 | + } |
|---|
| 2627 | + |
|---|
| 2628 | + .module_brand_box { |
|---|
| 2629 | + width: 645rpx; |
|---|
| 2630 | + height: 200rpx; |
|---|
| 2631 | + margin: 0 auto; |
|---|
| 2632 | + padding: 14rpx; |
|---|
| 2633 | + display: flex; |
|---|
| 2634 | + flex-wrap: wrap; |
|---|
| 2635 | + |
|---|
| 2636 | + .module_brand_item { |
|---|
| 2637 | + width: 21%; |
|---|
| 2638 | + height: 65rpx; |
|---|
| 2639 | + margin: 2%; |
|---|
| 2640 | + box-sizing: border-box; |
|---|
| 2641 | + border: 1rpx solid #eeeeee; |
|---|
| 2642 | + border-radius: 12rpx; |
|---|
| 2643 | + display: flex; |
|---|
| 2644 | + align-items: center; |
|---|
| 2645 | + justify-content: center; |
|---|
| 2646 | + |
|---|
| 2647 | + image { |
|---|
| 2648 | + width: 90%; |
|---|
| 2649 | + height: 80rpx; |
|---|
| 2650 | + } |
|---|
| 2651 | + } |
|---|
| 2652 | + } |
|---|
| 2653 | + |
|---|
| 2654 | + .module_brand_dots { |
|---|
| 2655 | + width: 100%; |
|---|
| 2656 | + left: 0; |
|---|
| 2657 | + bottom: 9rpx; |
|---|
| 2658 | + position: absolute; |
|---|
| 2659 | + margin-top: 16rpx; |
|---|
| 2660 | + display: flex; |
|---|
| 2661 | + justify-content: center; |
|---|
| 2662 | + |
|---|
| 2663 | + .module_brand_dot { |
|---|
| 2664 | + width: 8rpx; |
|---|
| 2665 | + height: 8rpx; |
|---|
| 2666 | + border-radius: 4rpx; |
|---|
| 2667 | + background: #e0e0e0; |
|---|
| 2668 | + margin: 0 6rpx; |
|---|
| 2669 | + |
|---|
| 2670 | + &.on { |
|---|
| 2671 | + width: 34rpx; |
|---|
| 2672 | + background: #ffd53e; |
|---|
| 2673 | + } |
|---|
| 2674 | + } |
|---|
| 2675 | + } |
|---|
| 2676 | +} |
|---|
| 2677 | + |
|---|
| 2678 | +.notice { |
|---|
| 2679 | + width: 100%; |
|---|
| 2680 | + height: 70rpx; |
|---|
| 2681 | + border-radius: 10rpx; |
|---|
| 2682 | + background-color: #fff; |
|---|
| 2683 | + margin-bottom: 25rpx; |
|---|
| 2684 | + line-height: 70rpx; |
|---|
| 2685 | + padding: 0 14rpx; |
|---|
| 2686 | + |
|---|
| 2687 | + .line { |
|---|
| 2688 | + color: #CCCCCC; |
|---|
| 2689 | + } |
|---|
| 2690 | + |
|---|
| 2691 | + .pic { |
|---|
| 2692 | + width: 130rpx; |
|---|
| 2693 | + height: 36rpx; |
|---|
| 1428 | 2694 | |
|---|
| 1429 | 2695 | image { |
|---|
| 1430 | | - position: absolute; |
|---|
| 1431 | | - left: 20rpx; |
|---|
| 1432 | | - top: 8rpx; |
|---|
| 2696 | + width: 100%; |
|---|
| 2697 | + height: 100%; |
|---|
| 2698 | + display: block !important; |
|---|
| 1433 | 2699 | } |
|---|
| 1434 | 2700 | } |
|---|
| 1435 | 2701 | |
|---|
| 1436 | | - .tab { |
|---|
| 1437 | | - position: relative; |
|---|
| 1438 | | - display: flex; |
|---|
| 1439 | | - font-size: 28rpx; |
|---|
| 1440 | | - white-space: nowrap; |
|---|
| 2702 | + .swipers { |
|---|
| 2703 | + height: 100%; |
|---|
| 2704 | + width: 444rpx; |
|---|
| 2705 | + overflow: hidden; |
|---|
| 1441 | 2706 | |
|---|
| 1442 | | - &__item { |
|---|
| 1443 | | - flex: 1; |
|---|
| 1444 | | - padding: 0 20rpx; |
|---|
| 2707 | + swiper { |
|---|
| 2708 | + height: 100%; |
|---|
| 2709 | + width: 100%; |
|---|
| 2710 | + overflow: hidden; |
|---|
| 2711 | + font-size: 22rpx; |
|---|
| 2712 | + color: #333333; |
|---|
| 2713 | + } |
|---|
| 2714 | + } |
|---|
| 2715 | + |
|---|
| 2716 | + .iconfont { |
|---|
| 2717 | + color: #999999; |
|---|
| 2718 | + font-size: 20rpx; |
|---|
| 2719 | + } |
|---|
| 2720 | +} |
|---|
| 2721 | + |
|---|
| 2722 | +.sticky-box { |
|---|
| 2723 | + /* #ifndef APP-PLUS-NVUE */ |
|---|
| 2724 | + display: flex; |
|---|
| 2725 | + position: -webkit-sticky; |
|---|
| 2726 | + /* #endif */ |
|---|
| 2727 | + position: sticky; |
|---|
| 2728 | + /* #ifdef H5*/ |
|---|
| 2729 | + top: var(--window-top); |
|---|
| 2730 | + /* #endif */ |
|---|
| 2731 | + |
|---|
| 2732 | + z-index: 99; |
|---|
| 2733 | + flex-direction: row; |
|---|
| 2734 | + margin: 0px; |
|---|
| 2735 | + background: #f5f5f5; |
|---|
| 2736 | + padding: 30rpx 0; |
|---|
| 2737 | +} |
|---|
| 2738 | + |
|---|
| 2739 | +.listAll { |
|---|
| 2740 | + width: 20%; |
|---|
| 2741 | + text-indent: 62rpx; |
|---|
| 2742 | + font-size: 30rpx; |
|---|
| 2743 | + border-left: 1px #eee solid; |
|---|
| 2744 | + margin: 1% 0; |
|---|
| 2745 | + padding: 5rpx; |
|---|
| 2746 | + position: relative; |
|---|
| 2747 | + |
|---|
| 2748 | + image { |
|---|
| 2749 | + position: absolute; |
|---|
| 2750 | + left: 20rpx; |
|---|
| 2751 | + top: 8rpx; |
|---|
| 2752 | + } |
|---|
| 2753 | +} |
|---|
| 2754 | + |
|---|
| 2755 | +.tab { |
|---|
| 2756 | + position: relative; |
|---|
| 2757 | + display: flex; |
|---|
| 2758 | + font-size: 28rpx; |
|---|
| 2759 | + white-space: nowrap; |
|---|
| 2760 | + |
|---|
| 2761 | + &__item { |
|---|
| 2762 | + flex: 1; |
|---|
| 2763 | + padding: 0 20rpx; |
|---|
| 2764 | + text-align: center; |
|---|
| 2765 | + height: 60rpx; |
|---|
| 2766 | + line-height: 60rpx; |
|---|
| 2767 | + color: #666; |
|---|
| 2768 | + |
|---|
| 2769 | + &.active { |
|---|
| 2770 | + color: #09C2C9; |
|---|
| 2771 | + } |
|---|
| 2772 | + } |
|---|
| 2773 | +} |
|---|
| 2774 | + |
|---|
| 2775 | +.tab__line { |
|---|
| 2776 | + display: block; |
|---|
| 2777 | + height: 6rpx; |
|---|
| 2778 | + position: absolute; |
|---|
| 2779 | + bottom: 0; |
|---|
| 2780 | + left: 0; |
|---|
| 2781 | + z-index: 1; |
|---|
| 2782 | + border-radius: 3rpx; |
|---|
| 2783 | + position: relative; |
|---|
| 2784 | + background: #2FC6CD; |
|---|
| 2785 | +} |
|---|
| 2786 | + |
|---|
| 2787 | +.scroll-view_H { |
|---|
| 2788 | + /* 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 */ |
|---|
| 2789 | + white-space: nowrap; |
|---|
| 2790 | + width: 100%; |
|---|
| 2791 | +} |
|---|
| 2792 | + |
|---|
| 2793 | + |
|---|
| 2794 | +.privacy-wrapper { |
|---|
| 2795 | + z-index: 999; |
|---|
| 2796 | + position: fixed; |
|---|
| 2797 | + left: 0; |
|---|
| 2798 | + top: 0; |
|---|
| 2799 | + width: 100%; |
|---|
| 2800 | + height: 100%; |
|---|
| 2801 | + background: #7F7F7F; |
|---|
| 2802 | + |
|---|
| 2803 | + .privacy-box { |
|---|
| 2804 | + position: absolute; |
|---|
| 2805 | + left: 50%; |
|---|
| 2806 | + top: 50%; |
|---|
| 2807 | + transform: translate(-50%, -50%); |
|---|
| 2808 | + width: 560rpx; |
|---|
| 2809 | + padding: 50rpx 45rpx 0; |
|---|
| 2810 | + background: #fff; |
|---|
| 2811 | + border-radius: 20rpx; |
|---|
| 2812 | + |
|---|
| 2813 | + .title { |
|---|
| 1445 | 2814 | text-align: center; |
|---|
| 1446 | | - height: 60rpx; |
|---|
| 1447 | | - line-height: 60rpx; |
|---|
| 1448 | | - color: #666; |
|---|
| 2815 | + font-size: 32rpx; |
|---|
| 2816 | + text-align: center; |
|---|
| 2817 | + color: #333; |
|---|
| 2818 | + font-weight: 700; |
|---|
| 2819 | + } |
|---|
| 1449 | 2820 | |
|---|
| 1450 | | - &.active { |
|---|
| 1451 | | - color: #09C2C9; |
|---|
| 2821 | + .content { |
|---|
| 2822 | + margin-top: 20rpx; |
|---|
| 2823 | + line-height: 1.5; |
|---|
| 2824 | + font-size: 26rpx; |
|---|
| 2825 | + color: #666; |
|---|
| 2826 | + text-indent: 54rpx; |
|---|
| 2827 | + |
|---|
| 2828 | + i { |
|---|
| 2829 | + font-style: normal; |
|---|
| 2830 | + color: $theme-color; |
|---|
| 2831 | + } |
|---|
| 2832 | + } |
|---|
| 2833 | + |
|---|
| 2834 | + .btn-box { |
|---|
| 2835 | + margin-top: 40rpx; |
|---|
| 2836 | + text-align: center; |
|---|
| 2837 | + font-size: 30rpx; |
|---|
| 2838 | + |
|---|
| 2839 | + .btn-item { |
|---|
| 2840 | + height: 82rpx; |
|---|
| 2841 | + line-height: 82rpx; |
|---|
| 2842 | + background: linear-gradient(90deg, #F67A38 0%, #F11B09 100%); |
|---|
| 2843 | + color: #fff; |
|---|
| 2844 | + border-radius: 41rpx; |
|---|
| 2845 | + } |
|---|
| 2846 | + |
|---|
| 2847 | + .btn { |
|---|
| 2848 | + padding: 30rpx 0; |
|---|
| 1452 | 2849 | } |
|---|
| 1453 | 2850 | } |
|---|
| 1454 | 2851 | } |
|---|
| 2852 | +} |
|---|
| 1455 | 2853 | |
|---|
| 1456 | | - .tab__line { |
|---|
| 1457 | | - display: block; |
|---|
| 1458 | | - height: 6rpx; |
|---|
| 1459 | | - position: absolute; |
|---|
| 1460 | | - bottom: 0; |
|---|
| 1461 | | - left: 0; |
|---|
| 1462 | | - z-index: 1; |
|---|
| 1463 | | - border-radius: 3rpx; |
|---|
| 1464 | | - position: relative; |
|---|
| 1465 | | - background: #2FC6CD; |
|---|
| 1466 | | - } |
|---|
| 2854 | +.page-index { |
|---|
| 2855 | + background-color: #f5f5f5; |
|---|
| 1467 | 2856 | |
|---|
| 1468 | | - .scroll-view_H { |
|---|
| 1469 | | - /* 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 */ |
|---|
| 1470 | | - white-space: nowrap; |
|---|
| 1471 | | - width: 100%; |
|---|
| 1472 | | - } |
|---|
| 1473 | | - |
|---|
| 1474 | | - |
|---|
| 1475 | | - .privacy-wrapper { |
|---|
| 2857 | + .mp-header { |
|---|
| 1476 | 2858 | z-index: 999; |
|---|
| 1477 | 2859 | position: fixed; |
|---|
| 1478 | 2860 | left: 0; |
|---|
| 1479 | 2861 | top: 0; |
|---|
| 1480 | 2862 | width: 100%; |
|---|
| 1481 | | - height: 100%; |
|---|
| 1482 | | - background: #7F7F7F; |
|---|
| 1483 | | - |
|---|
| 1484 | | - .privacy-box { |
|---|
| 1485 | | - position: absolute; |
|---|
| 1486 | | - left: 50%; |
|---|
| 1487 | | - top: 50%; |
|---|
| 1488 | | - transform: translate(-50%, -50%); |
|---|
| 1489 | | - width: 560rpx; |
|---|
| 1490 | | - padding: 50rpx 45rpx 0; |
|---|
| 1491 | | - background: #fff; |
|---|
| 1492 | | - border-radius: 20rpx; |
|---|
| 1493 | | - |
|---|
| 1494 | | - .title { |
|---|
| 1495 | | - text-align: center; |
|---|
| 1496 | | - font-size: 32rpx; |
|---|
| 1497 | | - text-align: center; |
|---|
| 1498 | | - color: #333; |
|---|
| 1499 | | - font-weight: 700; |
|---|
| 1500 | | - } |
|---|
| 1501 | | - |
|---|
| 1502 | | - .content { |
|---|
| 1503 | | - margin-top: 20rpx; |
|---|
| 1504 | | - line-height: 1.5; |
|---|
| 1505 | | - font-size: 26rpx; |
|---|
| 1506 | | - color: #666; |
|---|
| 1507 | | - text-indent: 54rpx; |
|---|
| 1508 | | - |
|---|
| 1509 | | - i { |
|---|
| 1510 | | - font-style: normal; |
|---|
| 1511 | | - color: $theme-color; |
|---|
| 1512 | | - } |
|---|
| 1513 | | - } |
|---|
| 1514 | | - |
|---|
| 1515 | | - .btn-box { |
|---|
| 1516 | | - margin-top: 40rpx; |
|---|
| 1517 | | - text-align: center; |
|---|
| 1518 | | - font-size: 30rpx; |
|---|
| 1519 | | - |
|---|
| 1520 | | - .btn-item { |
|---|
| 1521 | | - height: 82rpx; |
|---|
| 1522 | | - line-height: 82rpx; |
|---|
| 1523 | | - background: linear-gradient(90deg, #F67A38 0%, #F11B09 100%); |
|---|
| 1524 | | - color: #fff; |
|---|
| 1525 | | - border-radius: 41rpx; |
|---|
| 1526 | | - } |
|---|
| 1527 | | - |
|---|
| 1528 | | - .btn { |
|---|
| 1529 | | - padding: 30rpx 0; |
|---|
| 1530 | | - } |
|---|
| 1531 | | - } |
|---|
| 1532 | | - } |
|---|
| 1533 | | - } |
|---|
| 1534 | | - |
|---|
| 1535 | | - .page-index { |
|---|
| 1536 | | - background-color: #f5f5f5; |
|---|
| 1537 | | - |
|---|
| 1538 | | - .mp-header { |
|---|
| 1539 | | - z-index: 999; |
|---|
| 1540 | | - position: fixed; |
|---|
| 1541 | | - left: 0; |
|---|
| 1542 | | - top: 0; |
|---|
| 1543 | | - width: 100%; |
|---|
| 1544 | | - |
|---|
| 1545 | | - background: url("https://ossacmall.bluedeer.com.cn/app/static/images/page_commonBg.png") center top/100% auto no-repeat; |
|---|
| 1546 | | - .header { |
|---|
| 1547 | | - padding: 28rpx 30rpx; |
|---|
| 1548 | | - padding-top: 88rpx; |
|---|
| 1549 | | - } |
|---|
| 1550 | | - |
|---|
| 1551 | | - .serch-wrapper { |
|---|
| 1552 | | - width: 750rpx; |
|---|
| 1553 | | - margin: 0 auto; |
|---|
| 1554 | | - height: 100%; |
|---|
| 1555 | | - align-items: center; |
|---|
| 1556 | | - padding: 0 50rpx 0 160rpx; |
|---|
| 1557 | | - box-sizing: border-box; |
|---|
| 1558 | | - position: relative; |
|---|
| 1559 | | - |
|---|
| 1560 | | - .logo { |
|---|
| 1561 | | - width: 130rpx; |
|---|
| 1562 | | - height: 130rpx; |
|---|
| 1563 | | - border-radius: 50%; |
|---|
| 1564 | | - position: absolute; |
|---|
| 1565 | | - left: 0; |
|---|
| 1566 | | - top: 50%; |
|---|
| 1567 | | - margin-top: -65rpx; |
|---|
| 1568 | | - } |
|---|
| 1569 | | - |
|---|
| 1570 | | - image { |
|---|
| 1571 | | - display: block; |
|---|
| 1572 | | - width: 130rpx !important; |
|---|
| 1573 | | - height: 130rpx !important; |
|---|
| 1574 | | - box-sizing: border-box; |
|---|
| 1575 | | - } |
|---|
| 1576 | | - |
|---|
| 1577 | | - .input { |
|---|
| 1578 | | - display: flex; |
|---|
| 1579 | | - align-items: center; |
|---|
| 1580 | | - width: 300rpx; |
|---|
| 1581 | | - padding: 0 0 0 30rpx; |
|---|
| 1582 | | - background: #ffffff; |
|---|
| 1583 | | - // box-shadow:inset 0 0 0 1rpx #dcd8c5; |
|---|
| 1584 | | - border-radius: 25rpx; |
|---|
| 1585 | | - color: #cccccc; |
|---|
| 1586 | | - font-size: 28rpx; |
|---|
| 1587 | | - line-height: 30rpx; |
|---|
| 1588 | | - height: 30rpx; |
|---|
| 1589 | | - flex-wrap: nowrap; |
|---|
| 1590 | | - |
|---|
| 1591 | | - .iconfont { |
|---|
| 1592 | | - margin-right: 20rpx; |
|---|
| 1593 | | - font-size: 26rpx; |
|---|
| 1594 | | - color: #cccccc; |
|---|
| 1595 | | - } |
|---|
| 1596 | | - } |
|---|
| 1597 | | - } |
|---|
| 1598 | | - } |
|---|
| 1599 | | - |
|---|
| 1600 | | - |
|---|
| 1601 | | - .swiper { |
|---|
| 1602 | | - position: relative; |
|---|
| 1603 | | - width: 690rpx; |
|---|
| 1604 | | - height: 410rpx; |
|---|
| 1605 | | - margin: 0 auto; |
|---|
| 1606 | | - border-radius: 10rpx; |
|---|
| 1607 | | - overflow: hidden; |
|---|
| 1608 | | - margin-bottom: 25rpx; |
|---|
| 1609 | | - /* #ifdef MP */ |
|---|
| 1610 | | - z-index: 10; |
|---|
| 1611 | | - margin-top: 40rpx; |
|---|
| 1612 | | - |
|---|
| 1613 | | - /* #endif */ |
|---|
| 1614 | | - swiper, |
|---|
| 1615 | | - .swiper-item { |
|---|
| 1616 | | - width: 100%; |
|---|
| 1617 | | - height: 410rpx; |
|---|
| 1618 | | - } |
|---|
| 1619 | | - |
|---|
| 1620 | | - image { |
|---|
| 1621 | | - width: 100%; |
|---|
| 1622 | | - height: 387rpx; |
|---|
| 1623 | | - border-radius: 10rpx; |
|---|
| 1624 | | - } |
|---|
| 1625 | | - |
|---|
| 1626 | | - .wx-swiper-dots { |
|---|
| 1627 | | - bottom: 0rpx; |
|---|
| 1628 | | - } |
|---|
| 1629 | | - |
|---|
| 1630 | | - .wx-swiper-dots .wx-swiper-dot { |
|---|
| 1631 | | - width: 8rpx; |
|---|
| 1632 | | - height: 8rpx; |
|---|
| 1633 | | - border-radius: 4rpx; |
|---|
| 1634 | | - } |
|---|
| 1635 | | - |
|---|
| 1636 | | - .wx-swiper-dots .wx-swiper-dot-active { |
|---|
| 1637 | | - width: 20rpx; |
|---|
| 1638 | | - } |
|---|
| 1639 | | - |
|---|
| 1640 | | - .wx-swiper-dots .wx-swiper-dot:nth-of-type(n+2) { |
|---|
| 1641 | | - margin-left: 15rpx; |
|---|
| 1642 | | - } |
|---|
| 1643 | | - } |
|---|
| 1644 | | - |
|---|
| 1645 | | - .nav { |
|---|
| 1646 | | - opacity: 1; |
|---|
| 1647 | | - border-radius: 14rpx; |
|---|
| 1648 | | - width: 690rpx; |
|---|
| 1649 | | - margin: 0 auto; |
|---|
| 1650 | | - margin-bottom: 30rpx; |
|---|
| 1651 | | - |
|---|
| 1652 | | - .item { |
|---|
| 1653 | | - display: flex; |
|---|
| 1654 | | - flex-direction: column; |
|---|
| 1655 | | - align-items: center; |
|---|
| 1656 | | - justify-content: center; |
|---|
| 1657 | | - width: 20%; |
|---|
| 1658 | | - margin-top: 15rpx; |
|---|
| 1659 | | - |
|---|
| 1660 | | - :nth-child(1), |
|---|
| 1661 | | - :nth-child(2), |
|---|
| 1662 | | - :nth-child(3), |
|---|
| 1663 | | - :nth-child(4), |
|---|
| 1664 | | - :nth-child(5) { |
|---|
| 1665 | | - margin-top: 0; |
|---|
| 1666 | | - } |
|---|
| 1667 | | - |
|---|
| 1668 | | - .image { |
|---|
| 1669 | | - width: 136rpx; |
|---|
| 1670 | | - height: 136rpx; |
|---|
| 1671 | | - display: block; |
|---|
| 1672 | | - margin-left: 15rpx !important; |
|---|
| 1673 | | - display: block; |
|---|
| 1674 | | - } |
|---|
| 1675 | | - |
|---|
| 1676 | | - .menu-txt { |
|---|
| 1677 | | - font-size: 24rpx; |
|---|
| 1678 | | - color: #000000; |
|---|
| 1679 | | - } |
|---|
| 1680 | | - } |
|---|
| 1681 | | - } |
|---|
| 1682 | | - |
|---|
| 1683 | | - |
|---|
| 1684 | | - .nav-bd { |
|---|
| 1685 | | - display: flex; |
|---|
| 1686 | | - align-items: center; |
|---|
| 1687 | | - justify-content: space-between; |
|---|
| 1688 | | - |
|---|
| 1689 | | - .item { |
|---|
| 1690 | | - display: flex; |
|---|
| 1691 | | - flex-direction: column; |
|---|
| 1692 | | - align-items: center; |
|---|
| 1693 | | - justify-content: center; |
|---|
| 1694 | | - |
|---|
| 1695 | | - .txt { |
|---|
| 1696 | | - font-size: 32rpx; |
|---|
| 1697 | | - color: #000000; |
|---|
| 1698 | | - } |
|---|
| 1699 | | - |
|---|
| 1700 | | - .label { |
|---|
| 1701 | | - display: flex; |
|---|
| 1702 | | - align-items: center; |
|---|
| 1703 | | - justify-content: center; |
|---|
| 1704 | | - width: 124rpx; |
|---|
| 1705 | | - height: 32rpx; |
|---|
| 1706 | | - margin-top: 5rpx; |
|---|
| 1707 | | - font-size: 24rpx; |
|---|
| 1708 | | - color: #999; |
|---|
| 1709 | | - } |
|---|
| 1710 | | - |
|---|
| 1711 | | - &.active { |
|---|
| 1712 | | - color: $theme-color; |
|---|
| 1713 | | - |
|---|
| 1714 | | - .txt { |
|---|
| 1715 | | - color: $theme-color; |
|---|
| 1716 | | - } |
|---|
| 1717 | | - |
|---|
| 1718 | | - .label { |
|---|
| 1719 | | - background: linear-gradient(90deg, $bg-star 0%, $bg-end 100%); |
|---|
| 1720 | | - border-radius: 16rpx; |
|---|
| 1721 | | - color: #fff; |
|---|
| 1722 | | - } |
|---|
| 1723 | | - } |
|---|
| 1724 | | - } |
|---|
| 1725 | | - } |
|---|
| 1726 | | - |
|---|
| 1727 | | - .index-product-wrapper { |
|---|
| 1728 | | - margin-bottom: 110rpx; |
|---|
| 1729 | | - |
|---|
| 1730 | | - &.on { |
|---|
| 1731 | | - min-height: 1500rpx; |
|---|
| 1732 | | - } |
|---|
| 1733 | | - |
|---|
| 1734 | | - .list-box { |
|---|
| 1735 | | - display: flex; |
|---|
| 1736 | | - flex-wrap: wrap; |
|---|
| 1737 | | - justify-content: space-between; |
|---|
| 1738 | | - |
|---|
| 1739 | | - .item { |
|---|
| 1740 | | - width: 335rpx; |
|---|
| 1741 | | - margin-bottom: 20rpx; |
|---|
| 1742 | | - background-color: #fff; |
|---|
| 1743 | | - border-radius: 10rpx; |
|---|
| 1744 | | - overflow: hidden; |
|---|
| 1745 | | - |
|---|
| 1746 | | - image { |
|---|
| 1747 | | - width: 100%; |
|---|
| 1748 | | - height: 330rpx; |
|---|
| 1749 | | - } |
|---|
| 1750 | | - |
|---|
| 1751 | | - .text-info { |
|---|
| 1752 | | - padding: 10rpx 20rpx 15rpx; |
|---|
| 1753 | | - |
|---|
| 1754 | | - .title { |
|---|
| 1755 | | - color: #222222; |
|---|
| 1756 | | - } |
|---|
| 1757 | | - |
|---|
| 1758 | | - .old-price { |
|---|
| 1759 | | - margin-top: 8rpx; |
|---|
| 1760 | | - font-size: 26rpx; |
|---|
| 1761 | | - color: #AAAAAA; |
|---|
| 1762 | | - text-decoration: line-through; |
|---|
| 1763 | | - |
|---|
| 1764 | | - text { |
|---|
| 1765 | | - margin-right: 2px; |
|---|
| 1766 | | - font-size: 20rpx; |
|---|
| 1767 | | - } |
|---|
| 1768 | | - } |
|---|
| 1769 | | - |
|---|
| 1770 | | - .price { |
|---|
| 1771 | | - display: flex; |
|---|
| 1772 | | - align-items: flex-end; |
|---|
| 1773 | | - color: $theme-color; |
|---|
| 1774 | | - font-size: 34rpx; |
|---|
| 1775 | | - font-weight: 800; |
|---|
| 1776 | | - |
|---|
| 1777 | | - text { |
|---|
| 1778 | | - padding-bottom: 4rpx; |
|---|
| 1779 | | - font-size: 24rpx; |
|---|
| 1780 | | - font-weight: 800; |
|---|
| 1781 | | - } |
|---|
| 1782 | | - |
|---|
| 1783 | | - .txt { |
|---|
| 1784 | | - display: flex; |
|---|
| 1785 | | - align-items: center; |
|---|
| 1786 | | - justify-content: center; |
|---|
| 1787 | | - width: 28rpx; |
|---|
| 1788 | | - height: 28rpx; |
|---|
| 1789 | | - margin-left: 15rpx; |
|---|
| 1790 | | - margin-bottom: 10rpx; |
|---|
| 1791 | | - border: 1px solid $theme-color; |
|---|
| 1792 | | - border-radius: 4rpx; |
|---|
| 1793 | | - font-size: 22rpx; |
|---|
| 1794 | | - font-weight: normal; |
|---|
| 1795 | | - } |
|---|
| 1796 | | - } |
|---|
| 1797 | | - } |
|---|
| 1798 | | - } |
|---|
| 1799 | | - |
|---|
| 1800 | | - &.on { |
|---|
| 1801 | | - display: flex; |
|---|
| 1802 | | - } |
|---|
| 1803 | | - } |
|---|
| 1804 | | - } |
|---|
| 1805 | | - } |
|---|
| 1806 | | - |
|---|
| 1807 | | - .zoneList_title { |
|---|
| 1808 | | - font-size: 34rpx; |
|---|
| 1809 | | - line-height: 48rpx; |
|---|
| 1810 | | - width: 690rpx; |
|---|
| 1811 | | - margin: 0 auto; |
|---|
| 1812 | | - margin-bottom: 15rpx; |
|---|
| 1813 | | - font-weight: bold; |
|---|
| 1814 | | - color: #000000; |
|---|
| 1815 | | - } |
|---|
| 1816 | | - |
|---|
| 1817 | | - .zoneList_box { |
|---|
| 1818 | | - width: 100%; |
|---|
| 1819 | | - height: 305rpx; |
|---|
| 1820 | | - |
|---|
| 1821 | | - .zoneList_wrapper { |
|---|
| 1822 | | - width: max-content; |
|---|
| 1823 | | - white-space: nowrap; |
|---|
| 1824 | | - height: 305rpx; |
|---|
| 1825 | | - } |
|---|
| 1826 | | - |
|---|
| 1827 | | - .zoneList_item { |
|---|
| 1828 | | - display: inline-block; |
|---|
| 1829 | | - width: 540rpx; |
|---|
| 1830 | | - height: 305rpx; |
|---|
| 1831 | | - margin-left: 30rpx; |
|---|
| 1832 | | - |
|---|
| 1833 | | - :last-child { |
|---|
| 1834 | | - margin-right: 30rpx; |
|---|
| 1835 | | - } |
|---|
| 1836 | | - |
|---|
| 1837 | | - image { |
|---|
| 1838 | | - width: 540rpx; |
|---|
| 1839 | | - height: 305rpx; |
|---|
| 1840 | | - border-radius: 16rpx; |
|---|
| 1841 | | - } |
|---|
| 1842 | | - } |
|---|
| 1843 | | - |
|---|
| 1844 | | - &.isSingle { |
|---|
| 1845 | | - height: 390rpx; |
|---|
| 1846 | | - |
|---|
| 1847 | | - .zoneList_item { |
|---|
| 1848 | | - width: 690rpx; |
|---|
| 1849 | | - height: 390rpx; |
|---|
| 1850 | | - margin-right: 0; |
|---|
| 1851 | | - |
|---|
| 1852 | | - image { |
|---|
| 1853 | | - width: 690rpx; |
|---|
| 1854 | | - height: 390rpx; |
|---|
| 1855 | | - } |
|---|
| 1856 | | - } |
|---|
| 1857 | | - } |
|---|
| 1858 | | - } |
|---|
| 1859 | | - |
|---|
| 1860 | | - .pictrue { |
|---|
| 1861 | | - position: relative; |
|---|
| 1862 | | - } |
|---|
| 1863 | | - |
|---|
| 1864 | | - .fixed { |
|---|
| 1865 | | - z-index: 100; |
|---|
| 1866 | | - position: fixed; |
|---|
| 1867 | | - left: 0; |
|---|
| 1868 | | - top: 0; |
|---|
| 1869 | | - background: linear-gradient(90deg, red 50%, #ff5400 100%); |
|---|
| 1870 | | - |
|---|
| 1871 | | - } |
|---|
| 1872 | | - |
|---|
| 1873 | | - .mores-txt { |
|---|
| 1874 | | - width: 100%; |
|---|
| 1875 | | - align-items: center; |
|---|
| 1876 | | - justify-content: center; |
|---|
| 1877 | | - height: 70rpx; |
|---|
| 1878 | | - color: #999; |
|---|
| 1879 | | - font-size: 24rpx; |
|---|
| 1880 | | - |
|---|
| 1881 | | - .iconfont { |
|---|
| 1882 | | - margin-top: 2rpx; |
|---|
| 1883 | | - font-size: 20rpx; |
|---|
| 1884 | | - } |
|---|
| 1885 | | - } |
|---|
| 1886 | | - |
|---|
| 1887 | | - |
|---|
| 1888 | 2863 | |
|---|
| 1889 | | - .mp-bg { |
|---|
| 1890 | | - width: 100%; |
|---|
| 1891 | | - height: 900rpx; |
|---|
| 1892 | | - background-color: #f5f5f5; |
|---|
| 1893 | | - position: absolute; |
|---|
| 1894 | | - left: 0; |
|---|
| 1895 | | - top: 0; |
|---|
| 1896 | 2864 | background: url("https://ossacmall.bluedeer.com.cn/app/static/images/page_commonBg.png") center top/100% auto no-repeat; |
|---|
| 1897 | | - // border-radius: 0 0 30rpx 30rpx; |
|---|
| 2865 | + |
|---|
| 2866 | + .header { |
|---|
| 2867 | + padding: 28rpx 30rpx; |
|---|
| 2868 | + padding-top: 88rpx; |
|---|
| 2869 | + } |
|---|
| 2870 | + |
|---|
| 2871 | + .serch-wrapper { |
|---|
| 2872 | + width: 750rpx; |
|---|
| 2873 | + margin: 0 auto; |
|---|
| 2874 | + height: 100%; |
|---|
| 2875 | + align-items: center; |
|---|
| 2876 | + padding: 0 50rpx 0 160rpx; |
|---|
| 2877 | + box-sizing: border-box; |
|---|
| 2878 | + position: relative; |
|---|
| 2879 | + |
|---|
| 2880 | + .logo { |
|---|
| 2881 | + width: 130rpx; |
|---|
| 2882 | + height: 130rpx; |
|---|
| 2883 | + border-radius: 50%; |
|---|
| 2884 | + position: absolute; |
|---|
| 2885 | + left: 0; |
|---|
| 2886 | + top: 50%; |
|---|
| 2887 | + margin-top: -65rpx; |
|---|
| 2888 | + } |
|---|
| 2889 | + |
|---|
| 2890 | + image { |
|---|
| 2891 | + display: block; |
|---|
| 2892 | + width: 130rpx !important; |
|---|
| 2893 | + height: 130rpx !important; |
|---|
| 2894 | + box-sizing: border-box; |
|---|
| 2895 | + } |
|---|
| 2896 | + |
|---|
| 2897 | + .input { |
|---|
| 2898 | + display: flex; |
|---|
| 2899 | + align-items: center; |
|---|
| 2900 | + width: 300rpx; |
|---|
| 2901 | + padding: 0 0 0 30rpx; |
|---|
| 2902 | + background: #ffffff; |
|---|
| 2903 | + // box-shadow:inset 0 0 0 1rpx #dcd8c5; |
|---|
| 2904 | + border-radius: 25rpx; |
|---|
| 2905 | + color: #cccccc; |
|---|
| 2906 | + font-size: 28rpx; |
|---|
| 2907 | + line-height: 30rpx; |
|---|
| 2908 | + height: 30rpx; |
|---|
| 2909 | + flex-wrap: nowrap; |
|---|
| 2910 | + |
|---|
| 2911 | + .iconfont { |
|---|
| 2912 | + margin-right: 20rpx; |
|---|
| 2913 | + font-size: 26rpx; |
|---|
| 2914 | + color: #cccccc; |
|---|
| 2915 | + } |
|---|
| 2916 | + } |
|---|
| 2917 | + } |
|---|
| 1898 | 2918 | } |
|---|
| 1899 | 2919 | |
|---|
| 1900 | | - .user_info { |
|---|
| 1901 | | - width: 690rpx; |
|---|
| 1902 | | - height: 107rpx; |
|---|
| 1903 | | - margin: 0 auto; |
|---|
| 1904 | | - margin-top: 15rpx; |
|---|
| 2920 | + |
|---|
| 2921 | + .swiper { |
|---|
| 1905 | 2922 | position: relative; |
|---|
| 2923 | + width: 690rpx; |
|---|
| 2924 | + height: 410rpx; |
|---|
| 2925 | + margin: 0 auto; |
|---|
| 2926 | + border-radius: 10rpx; |
|---|
| 2927 | + overflow: hidden; |
|---|
| 2928 | + margin-bottom: 25rpx; |
|---|
| 2929 | + /* #ifdef MP */ |
|---|
| 2930 | + z-index: 10; |
|---|
| 2931 | + margin-top: 40rpx; |
|---|
| 1906 | 2932 | |
|---|
| 1907 | | - .user_head { |
|---|
| 1908 | | - width: 84rpx; |
|---|
| 1909 | | - height: 84rpx; |
|---|
| 1910 | | - box-sizing: border-box; |
|---|
| 1911 | | - border: 2rpx solid #FFE20E; |
|---|
| 1912 | | - background-color: #f5f5f5; |
|---|
| 1913 | | - border-radius: 50%; |
|---|
| 1914 | | - overflow: hidden; |
|---|
| 2933 | + /* #endif */ |
|---|
| 2934 | + swiper, |
|---|
| 2935 | + .swiper-item { |
|---|
| 2936 | + width: 100%; |
|---|
| 2937 | + height: 410rpx; |
|---|
| 2938 | + } |
|---|
| 1915 | 2939 | |
|---|
| 1916 | | - image { |
|---|
| 1917 | | - width: 84rpx; |
|---|
| 1918 | | - height: 84rpx; |
|---|
| 2940 | + image { |
|---|
| 2941 | + width: 100%; |
|---|
| 2942 | + height: 387rpx; |
|---|
| 2943 | + border-radius: 10rpx; |
|---|
| 2944 | + } |
|---|
| 2945 | + |
|---|
| 2946 | + .wx-swiper-dots { |
|---|
| 2947 | + bottom: 0rpx; |
|---|
| 2948 | + } |
|---|
| 2949 | + |
|---|
| 2950 | + .wx-swiper-dots .wx-swiper-dot { |
|---|
| 2951 | + width: 8rpx; |
|---|
| 2952 | + height: 8rpx; |
|---|
| 2953 | + border-radius: 4rpx; |
|---|
| 2954 | + } |
|---|
| 2955 | + |
|---|
| 2956 | + .wx-swiper-dots .wx-swiper-dot-active { |
|---|
| 2957 | + width: 20rpx; |
|---|
| 2958 | + } |
|---|
| 2959 | + |
|---|
| 2960 | + .wx-swiper-dots .wx-swiper-dot:nth-of-type(n+2) { |
|---|
| 2961 | + margin-left: 15rpx; |
|---|
| 2962 | + } |
|---|
| 2963 | + } |
|---|
| 2964 | + |
|---|
| 2965 | + .nav { |
|---|
| 2966 | + opacity: 1; |
|---|
| 2967 | + border-radius: 14rpx; |
|---|
| 2968 | + width: 690rpx; |
|---|
| 2969 | + margin: 0 auto; |
|---|
| 2970 | + margin-bottom: 30rpx; |
|---|
| 2971 | + |
|---|
| 2972 | + .item { |
|---|
| 2973 | + display: flex; |
|---|
| 2974 | + flex-direction: column; |
|---|
| 2975 | + align-items: center; |
|---|
| 2976 | + justify-content: center; |
|---|
| 2977 | + width: 20%; |
|---|
| 2978 | + margin-top: 15rpx; |
|---|
| 2979 | + |
|---|
| 2980 | + :nth-child(1), |
|---|
| 2981 | + :nth-child(2), |
|---|
| 2982 | + :nth-child(3), |
|---|
| 2983 | + :nth-child(4), |
|---|
| 2984 | + :nth-child(5) { |
|---|
| 2985 | + margin-top: 0; |
|---|
| 2986 | + } |
|---|
| 2987 | + |
|---|
| 2988 | + .image { |
|---|
| 2989 | + width: 136rpx; |
|---|
| 2990 | + height: 136rpx; |
|---|
| 2991 | + display: block; |
|---|
| 2992 | + } |
|---|
| 2993 | + |
|---|
| 2994 | + .menu-txt { |
|---|
| 2995 | + font-size: 24rpx; |
|---|
| 2996 | + color: #000000; |
|---|
| 1919 | 2997 | } |
|---|
| 1920 | 2998 | } |
|---|
| 2999 | + } |
|---|
| 1921 | 3000 | |
|---|
| 1922 | | - .user_level { |
|---|
| 1923 | | - width: 110rpx; |
|---|
| 1924 | | - height: 45rpx; |
|---|
| 1925 | | - position: absolute; |
|---|
| 1926 | | - left: 106rpx; |
|---|
| 1927 | | - top: 45rpx; |
|---|
| 1928 | 3001 | |
|---|
| 1929 | | - image { |
|---|
| 1930 | | - width: 110rpx; |
|---|
| 1931 | | - height: 45rpx; |
|---|
| 1932 | | - } |
|---|
| 1933 | | - } |
|---|
| 3002 | + .nav-bd { |
|---|
| 3003 | + display: flex; |
|---|
| 3004 | + align-items: center; |
|---|
| 3005 | + justify-content: space-between; |
|---|
| 1934 | 3006 | |
|---|
| 1935 | | - .user_name, |
|---|
| 1936 | | - .user_loginTips { |
|---|
| 1937 | | - font-size: 31rpx; |
|---|
| 1938 | | - line-height: 46rpx; |
|---|
| 1939 | | - color: #000000; |
|---|
| 1940 | | - font-weight: bold; |
|---|
| 1941 | | - position: absolute; |
|---|
| 1942 | | - left: 106rpx; |
|---|
| 1943 | | - top: 0; |
|---|
| 1944 | | - background: none; |
|---|
| 1945 | | - } |
|---|
| 3007 | + .item { |
|---|
| 3008 | + display: flex; |
|---|
| 3009 | + flex-direction: column; |
|---|
| 3010 | + align-items: center; |
|---|
| 3011 | + justify-content: center; |
|---|
| 1946 | 3012 | |
|---|
| 1947 | | - .user_careNum { |
|---|
| 1948 | | - color: #333333; |
|---|
| 1949 | | - position: absolute; |
|---|
| 1950 | | - right: 0; |
|---|
| 1951 | | - top: 0; |
|---|
| 1952 | | - text-align: right; |
|---|
| 1953 | | - font-size: 31rpx; |
|---|
| 1954 | | - line-height: 46rpx; |
|---|
| 1955 | | - |
|---|
| 1956 | | - .num { |
|---|
| 1957 | | - font-size: 40rpx; |
|---|
| 1958 | | - font-weight: bold; |
|---|
| 3013 | + .txt { |
|---|
| 3014 | + font-size: 32rpx; |
|---|
| 3015 | + color: #000000; |
|---|
| 1959 | 3016 | } |
|---|
| 1960 | 3017 | |
|---|
| 1961 | 3018 | .label { |
|---|
| 1962 | | - width: max-content; |
|---|
| 1963 | | - font-size: 21rpx; |
|---|
| 1964 | | - line-height: 42rpx; |
|---|
| 1965 | | - position: absolute; |
|---|
| 1966 | | - right: 0; |
|---|
| 1967 | | - top: 46rpx; |
|---|
| 1968 | | - padding-right: 30rpx; |
|---|
| 1969 | | - background: url("https://ossacmall.bluedeer.com.cn/app/static/images/i_info.png") right center/20rpx auto no-repeat; |
|---|
| 3019 | + display: flex; |
|---|
| 3020 | + align-items: center; |
|---|
| 3021 | + justify-content: center; |
|---|
| 3022 | + width: 124rpx; |
|---|
| 3023 | + height: 32rpx; |
|---|
| 3024 | + margin-top: 5rpx; |
|---|
| 3025 | + font-size: 24rpx; |
|---|
| 3026 | + color: #999; |
|---|
| 1970 | 3027 | } |
|---|
| 1971 | | - } |
|---|
| 1972 | 3028 | |
|---|
| 1973 | | - .btn_vip { |
|---|
| 1974 | | - width: max-content; |
|---|
| 1975 | | - position: absolute; |
|---|
| 1976 | | - right: 0; |
|---|
| 1977 | | - font-size: 21rpx; |
|---|
| 1978 | | - line-height: 42rpx; |
|---|
| 1979 | | - left: 226rpx; |
|---|
| 1980 | | - top: 46rpx; |
|---|
| 1981 | | - color: #333333; |
|---|
| 3029 | + &.active { |
|---|
| 3030 | + color: $theme-color; |
|---|
| 1982 | 3031 | |
|---|
| 1983 | | - .iconfont { |
|---|
| 1984 | | - font-size: 21rpx !important; |
|---|
| 1985 | | - } |
|---|
| 1986 | | - } |
|---|
| 3032 | + .txt { |
|---|
| 3033 | + color: $theme-color; |
|---|
| 3034 | + } |
|---|
| 1987 | 3035 | |
|---|
| 1988 | | - .btn_toLogin { |
|---|
| 1989 | | - position: absolute; |
|---|
| 1990 | | - left: 106rpx; |
|---|
| 1991 | | - top: 30rpx; |
|---|
| 1992 | | - font-size: 21rpx; |
|---|
| 1993 | | - line-height: 82rpx; |
|---|
| 1994 | | - color: #333333; |
|---|
| 1995 | | - |
|---|
| 1996 | | - .iconfont { |
|---|
| 1997 | | - font-size: 21rpx !important; |
|---|
| 3036 | + .label { |
|---|
| 3037 | + background: linear-gradient(90deg, $bg-star 0%, $bg-end 100%); |
|---|
| 3038 | + border-radius: 16rpx; |
|---|
| 3039 | + color: #fff; |
|---|
| 3040 | + } |
|---|
| 1998 | 3041 | } |
|---|
| 1999 | 3042 | } |
|---|
| 2000 | 3043 | } |
|---|
| 2001 | 3044 | |
|---|
| 2002 | | - .buy_list { |
|---|
| 2003 | | - width: 100%; |
|---|
| 2004 | | - height: 48rpx; |
|---|
| 3045 | + .index-product-wrapper { |
|---|
| 3046 | + margin-bottom: 110rpx; |
|---|
| 3047 | + |
|---|
| 3048 | + &.on { |
|---|
| 3049 | + min-height: 1500rpx; |
|---|
| 3050 | + } |
|---|
| 3051 | + |
|---|
| 3052 | + .list-box { |
|---|
| 3053 | + display: flex; |
|---|
| 3054 | + flex-wrap: wrap; |
|---|
| 3055 | + justify-content: space-between; |
|---|
| 3056 | + |
|---|
| 3057 | + .item { |
|---|
| 3058 | + width: 335rpx; |
|---|
| 3059 | + margin-bottom: 20rpx; |
|---|
| 3060 | + background-color: #fff; |
|---|
| 3061 | + border-radius: 10rpx; |
|---|
| 3062 | + overflow: hidden; |
|---|
| 3063 | + |
|---|
| 3064 | + image { |
|---|
| 3065 | + width: 100%; |
|---|
| 3066 | + height: 330rpx; |
|---|
| 3067 | + } |
|---|
| 3068 | + |
|---|
| 3069 | + .text-info { |
|---|
| 3070 | + padding: 10rpx 20rpx 15rpx; |
|---|
| 3071 | + |
|---|
| 3072 | + .title { |
|---|
| 3073 | + color: #222222; |
|---|
| 3074 | + } |
|---|
| 3075 | + |
|---|
| 3076 | + .old-price { |
|---|
| 3077 | + margin-top: 8rpx; |
|---|
| 3078 | + font-size: 26rpx; |
|---|
| 3079 | + color: #AAAAAA; |
|---|
| 3080 | + text-decoration: line-through; |
|---|
| 3081 | + |
|---|
| 3082 | + text { |
|---|
| 3083 | + margin-right: 2px; |
|---|
| 3084 | + font-size: 20rpx; |
|---|
| 3085 | + } |
|---|
| 3086 | + } |
|---|
| 3087 | + |
|---|
| 3088 | + .price { |
|---|
| 3089 | + display: flex; |
|---|
| 3090 | + align-items: flex-end; |
|---|
| 3091 | + color: $theme-color; |
|---|
| 3092 | + font-size: 34rpx; |
|---|
| 3093 | + font-weight: 800; |
|---|
| 3094 | + |
|---|
| 3095 | + text { |
|---|
| 3096 | + padding-bottom: 4rpx; |
|---|
| 3097 | + font-size: 24rpx; |
|---|
| 3098 | + font-weight: 800; |
|---|
| 3099 | + } |
|---|
| 3100 | + |
|---|
| 3101 | + .txt { |
|---|
| 3102 | + display: flex; |
|---|
| 3103 | + align-items: center; |
|---|
| 3104 | + justify-content: center; |
|---|
| 3105 | + width: 28rpx; |
|---|
| 3106 | + height: 28rpx; |
|---|
| 3107 | + margin-left: 15rpx; |
|---|
| 3108 | + margin-bottom: 10rpx; |
|---|
| 3109 | + border: 1px solid $theme-color; |
|---|
| 3110 | + border-radius: 4rpx; |
|---|
| 3111 | + font-size: 22rpx; |
|---|
| 3112 | + font-weight: normal; |
|---|
| 3113 | + } |
|---|
| 3114 | + } |
|---|
| 3115 | + } |
|---|
| 3116 | + } |
|---|
| 3117 | + |
|---|
| 3118 | + &.on { |
|---|
| 3119 | + display: flex; |
|---|
| 3120 | + } |
|---|
| 3121 | + } |
|---|
| 3122 | + } |
|---|
| 3123 | +} |
|---|
| 3124 | + |
|---|
| 3125 | +.zoneList_title { |
|---|
| 3126 | + font-size: 34rpx; |
|---|
| 3127 | + line-height: 48rpx; |
|---|
| 3128 | + width: 690rpx; |
|---|
| 3129 | + margin: 0 auto; |
|---|
| 3130 | + margin-bottom: 15rpx; |
|---|
| 3131 | + font-weight: bold; |
|---|
| 3132 | + color: #000000; |
|---|
| 3133 | +} |
|---|
| 3134 | + |
|---|
| 3135 | +.zoneList_box { |
|---|
| 3136 | + width: 100%; |
|---|
| 3137 | + height: 305rpx; |
|---|
| 3138 | + |
|---|
| 3139 | + .zoneList_wrapper { |
|---|
| 3140 | + width: max-content; |
|---|
| 3141 | + white-space: nowrap; |
|---|
| 3142 | + height: 305rpx; |
|---|
| 3143 | + } |
|---|
| 3144 | + |
|---|
| 3145 | + .zoneList_item { |
|---|
| 3146 | + display: inline-block; |
|---|
| 3147 | + width: 540rpx; |
|---|
| 3148 | + height: 305rpx; |
|---|
| 3149 | + margin-left: 30rpx; |
|---|
| 3150 | + |
|---|
| 3151 | + :last-child { |
|---|
| 3152 | + margin-right: 30rpx; |
|---|
| 3153 | + } |
|---|
| 3154 | + |
|---|
| 3155 | + image { |
|---|
| 3156 | + width: 540rpx; |
|---|
| 3157 | + height: 305rpx; |
|---|
| 3158 | + border-radius: 16rpx; |
|---|
| 3159 | + } |
|---|
| 3160 | + } |
|---|
| 3161 | + |
|---|
| 3162 | + &.isSingle { |
|---|
| 3163 | + height: 390rpx; |
|---|
| 3164 | + |
|---|
| 3165 | + .zoneList_item { |
|---|
| 3166 | + width: 690rpx; |
|---|
| 3167 | + height: 390rpx; |
|---|
| 3168 | + margin-right: 0; |
|---|
| 3169 | + |
|---|
| 3170 | + image { |
|---|
| 3171 | + width: 690rpx; |
|---|
| 3172 | + height: 390rpx; |
|---|
| 3173 | + } |
|---|
| 3174 | + } |
|---|
| 3175 | + } |
|---|
| 3176 | +} |
|---|
| 3177 | + |
|---|
| 3178 | +.pictrue { |
|---|
| 3179 | + position: relative; |
|---|
| 3180 | +} |
|---|
| 3181 | + |
|---|
| 3182 | +.fixed { |
|---|
| 3183 | + z-index: 100; |
|---|
| 3184 | + position: fixed; |
|---|
| 3185 | + left: 0; |
|---|
| 3186 | + top: 0; |
|---|
| 3187 | + background: linear-gradient(90deg, red 50%, #ff5400 100%); |
|---|
| 3188 | + |
|---|
| 3189 | +} |
|---|
| 3190 | + |
|---|
| 3191 | +.mores-txt { |
|---|
| 3192 | + width: 100%; |
|---|
| 3193 | + align-items: center; |
|---|
| 3194 | + justify-content: center; |
|---|
| 3195 | + height: 70rpx; |
|---|
| 3196 | + color: #999; |
|---|
| 3197 | + font-size: 24rpx; |
|---|
| 3198 | + |
|---|
| 3199 | + .iconfont { |
|---|
| 3200 | + margin-top: 2rpx; |
|---|
| 3201 | + font-size: 20rpx; |
|---|
| 3202 | + } |
|---|
| 3203 | +} |
|---|
| 3204 | + |
|---|
| 3205 | + |
|---|
| 3206 | + |
|---|
| 3207 | +.mp-bg { |
|---|
| 3208 | + width: 100%; |
|---|
| 3209 | + height: 900rpx; |
|---|
| 3210 | + background-color: #f5f5f5; |
|---|
| 3211 | + position: absolute; |
|---|
| 3212 | + left: 0; |
|---|
| 3213 | + top: 0; |
|---|
| 3214 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/page_commonBg.png") center top/100% auto no-repeat; |
|---|
| 3215 | + // border-radius: 0 0 30rpx 30rpx; |
|---|
| 3216 | +} |
|---|
| 3217 | + |
|---|
| 3218 | +.user_info { |
|---|
| 3219 | + width: 690rpx; |
|---|
| 3220 | + height: 107rpx; |
|---|
| 3221 | + margin: 0 auto; |
|---|
| 3222 | + margin-top: 15rpx; |
|---|
| 3223 | + position: relative; |
|---|
| 3224 | + |
|---|
| 3225 | + .user_head { |
|---|
| 3226 | + width: 84rpx; |
|---|
| 3227 | + height: 84rpx; |
|---|
| 3228 | + box-sizing: border-box; |
|---|
| 3229 | + border: 2rpx solid #FFE20E; |
|---|
| 3230 | + background-color: #f5f5f5; |
|---|
| 3231 | + border-radius: 50%; |
|---|
| 2005 | 3232 | overflow: hidden; |
|---|
| 2006 | | - position: relative; |
|---|
| 2007 | | - margin-top: 10rpx; |
|---|
| 2008 | 3233 | |
|---|
| 2009 | | - @keyframes moveAni { |
|---|
| 2010 | | - 0% { |
|---|
| 2011 | | - transform: none; |
|---|
| 2012 | | - } |
|---|
| 2013 | | - |
|---|
| 2014 | | - 100% { |
|---|
| 2015 | | - transform: translate(-50%, 0) |
|---|
| 2016 | | - } |
|---|
| 2017 | | - } |
|---|
| 2018 | | - |
|---|
| 2019 | | - .buy_wrapper { |
|---|
| 2020 | | - width: max-content; |
|---|
| 2021 | | - white-space: nowrap; |
|---|
| 2022 | | - animation: moveAni 1s linear both infinite; |
|---|
| 2023 | | - } |
|---|
| 2024 | | - |
|---|
| 2025 | | - .buy_item { |
|---|
| 2026 | | - display: inline-block; |
|---|
| 2027 | | - margin: 0 5rpx; |
|---|
| 2028 | | - width: max-content; |
|---|
| 2029 | | - font-size: 19rpx; |
|---|
| 2030 | | - line-height: 48rpx; |
|---|
| 2031 | | - background-color: rgba(255, 255, 255, .8); |
|---|
| 2032 | | - color: #333333; |
|---|
| 2033 | | - padding-left: 1em; |
|---|
| 2034 | | - padding-right: 1em; |
|---|
| 2035 | | - border-radius: 24rpx; |
|---|
| 3234 | + image { |
|---|
| 3235 | + width: 84rpx; |
|---|
| 3236 | + height: 84rpx; |
|---|
| 2036 | 3237 | } |
|---|
| 2037 | 3238 | } |
|---|
| 2038 | 3239 | |
|---|
| 2039 | | - .stats { |
|---|
| 3240 | + .user_level { |
|---|
| 3241 | + width: 110rpx; |
|---|
| 3242 | + height: 45rpx; |
|---|
| 2040 | 3243 | position: absolute; |
|---|
| 2041 | | - left: 0px; |
|---|
| 2042 | | - top: 0px; |
|---|
| 2043 | | - z-index: 2000000; |
|---|
| 2044 | | - width: 750rpx; |
|---|
| 2045 | | - height: var(--status-bar-height); |
|---|
| 2046 | | - background: #ffffff; |
|---|
| 3244 | + left: 106rpx; |
|---|
| 3245 | + top: 45rpx; |
|---|
| 3246 | + |
|---|
| 3247 | + image { |
|---|
| 3248 | + width: 110rpx; |
|---|
| 3249 | + height: 45rpx; |
|---|
| 3250 | + } |
|---|
| 2047 | 3251 | } |
|---|
| 2048 | 3252 | |
|---|
| 2049 | | - .couponList { |
|---|
| 2050 | | - width: 690rpx; |
|---|
| 2051 | | - height: 523rpx; |
|---|
| 2052 | | - margin: 0 auto; |
|---|
| 2053 | | - margin-bottom: 30rpx; |
|---|
| 2054 | | - position: relative; |
|---|
| 3253 | + .user_name, |
|---|
| 3254 | + .user_loginTips { |
|---|
| 3255 | + font-size: 31rpx; |
|---|
| 3256 | + line-height: 46rpx; |
|---|
| 3257 | + color: #000000; |
|---|
| 3258 | + font-weight: bold; |
|---|
| 3259 | + position: absolute; |
|---|
| 3260 | + left: 106rpx; |
|---|
| 3261 | + top: 0; |
|---|
| 3262 | + background: none; |
|---|
| 3263 | + } |
|---|
| 2055 | 3264 | |
|---|
| 2056 | | - .couponList_title { |
|---|
| 2057 | | - position: absolute; |
|---|
| 2058 | | - left: 30rpx; |
|---|
| 2059 | | - top: 60rpx; |
|---|
| 2060 | | - color: #ffffff; |
|---|
| 3265 | + .user_careNum { |
|---|
| 3266 | + color: #333333; |
|---|
| 3267 | + position: absolute; |
|---|
| 3268 | + right: 0; |
|---|
| 3269 | + top: 0; |
|---|
| 3270 | + text-align: right; |
|---|
| 3271 | + font-size: 31rpx; |
|---|
| 3272 | + line-height: 46rpx; |
|---|
| 3273 | + |
|---|
| 3274 | + .num { |
|---|
| 2061 | 3275 | font-size: 40rpx; |
|---|
| 2062 | 3276 | font-weight: bold; |
|---|
| 2063 | 3277 | } |
|---|
| 2064 | 3278 | |
|---|
| 2065 | | - image { |
|---|
| 2066 | | - width: 690rpx; |
|---|
| 2067 | | - height: 523rpx; |
|---|
| 2068 | | - } |
|---|
| 2069 | | - |
|---|
| 2070 | | - .couponList_btn { |
|---|
| 2071 | | - font-size: 24rpx; |
|---|
| 2072 | | - line-height: 48rpx; |
|---|
| 2073 | | - color: #000000; |
|---|
| 2074 | | - text-align: right; |
|---|
| 2075 | | - position: absolute; |
|---|
| 2076 | | - right: 34rpx; |
|---|
| 2077 | | - top: 138rpx; |
|---|
| 2078 | | - padding-right: 42rpx; |
|---|
| 2079 | | - text-decoration: underline; |
|---|
| 2080 | | - background: url("https://ossacmall.bluedeer.com.cn/app/static/images/h_hand.gif") right center/contain no-repeat; |
|---|
| 2081 | | - } |
|---|
| 2082 | | - |
|---|
| 2083 | | - .couponList_box { |
|---|
| 2084 | | - width: 630rpx; |
|---|
| 2085 | | - height: 260rpx; |
|---|
| 2086 | | - position: absolute; |
|---|
| 2087 | | - left: 30rpx; |
|---|
| 2088 | | - top: 200rpx; |
|---|
| 2089 | | - overflow: hidden; |
|---|
| 2090 | | - |
|---|
| 2091 | | - .couponList_wrapper { |
|---|
| 2092 | | - white-space: nowrap; |
|---|
| 2093 | | - } |
|---|
| 2094 | | - |
|---|
| 2095 | | - .couponList_item { |
|---|
| 2096 | | - width: 231rpx; |
|---|
| 2097 | | - height: 260rpx; |
|---|
| 2098 | | - display: inline-block; |
|---|
| 2099 | | - position: relative; |
|---|
| 2100 | | - background: url("https://ossacmall.bluedeer.com.cn/app/static/images/coupon_itemBg.png") center center/100% 100% no-repeat; |
|---|
| 2101 | | - margin-right: 25rpx; |
|---|
| 2102 | | - |
|---|
| 2103 | | - :last-child { |
|---|
| 2104 | | - margin-right: 0; |
|---|
| 2105 | | - } |
|---|
| 2106 | | - |
|---|
| 2107 | | - .give { |
|---|
| 2108 | | - font-weight: bold; |
|---|
| 2109 | | - font-size: 19rpx; |
|---|
| 2110 | | - color: #FFFFFF; |
|---|
| 2111 | | - text-align: center; |
|---|
| 2112 | | - font-style: normal; |
|---|
| 2113 | | - text-transform: none; |
|---|
| 2114 | | - background-color: #016DCC; |
|---|
| 2115 | | - border-radius: 14rpx 14rpx 14rpx 0; |
|---|
| 2116 | | - width: 49rpx; |
|---|
| 2117 | | - height: 28rpx; |
|---|
| 2118 | | - line-height: 28rpx; |
|---|
| 2119 | | - position: absolute; |
|---|
| 2120 | | - left: 8rpx; |
|---|
| 2121 | | - top: 0; |
|---|
| 2122 | | - z-index: 2; |
|---|
| 2123 | | - } |
|---|
| 2124 | | - |
|---|
| 2125 | | - .amount { |
|---|
| 2126 | | - font-size: 53rpx; |
|---|
| 2127 | | - line-height: 95rpx; |
|---|
| 2128 | | - width: max-content; |
|---|
| 2129 | | - position: absolute; |
|---|
| 2130 | | - left: 50%; |
|---|
| 2131 | | - transform: translate(-50%, 0); |
|---|
| 2132 | | - top: 34rpx; |
|---|
| 2133 | | - color: #000000; |
|---|
| 2134 | | - font-weight: bold; |
|---|
| 2135 | | - text-align: center; |
|---|
| 2136 | | - |
|---|
| 2137 | | - .unit { |
|---|
| 2138 | | - font-size: 0.5em; |
|---|
| 2139 | | - } |
|---|
| 2140 | | - } |
|---|
| 2141 | | - |
|---|
| 2142 | | - .amountSmall { |
|---|
| 2143 | | - font-size: 32rpx; |
|---|
| 2144 | | - line-height: 56rpx; |
|---|
| 2145 | | - top: 32rpx; |
|---|
| 2146 | | - |
|---|
| 2147 | | - .text2 { |
|---|
| 2148 | | - display: block; |
|---|
| 2149 | | - margin: 0 auto; |
|---|
| 2150 | | - font-size: 28rpx; |
|---|
| 2151 | | - line-height: 36rpx; |
|---|
| 2152 | | - width: max-content; |
|---|
| 2153 | | - padding: 0 21rpx; |
|---|
| 2154 | | - border: 1rpx solid #303030; |
|---|
| 2155 | | - } |
|---|
| 2156 | | - } |
|---|
| 2157 | | - |
|---|
| 2158 | | - .label { |
|---|
| 2159 | | - font-size: 24rpx; |
|---|
| 2160 | | - lineh-height: 30rpx; |
|---|
| 2161 | | - color: #000000; |
|---|
| 2162 | | - text-align: center; |
|---|
| 2163 | | - position: absolute; |
|---|
| 2164 | | - width: 100%; |
|---|
| 2165 | | - left: 0; |
|---|
| 2166 | | - top: -50rpx; |
|---|
| 2167 | | - } |
|---|
| 2168 | | - |
|---|
| 2169 | | - .name { |
|---|
| 2170 | | - width: 90%; |
|---|
| 2171 | | - left: 5%; |
|---|
| 2172 | | - line-height: 23rpx; |
|---|
| 2173 | | - font-size: 22rpx; |
|---|
| 2174 | | - color: #000000; |
|---|
| 2175 | | - text-align: center; |
|---|
| 2176 | | - position: absolute; |
|---|
| 2177 | | - top: 135rpx; |
|---|
| 2178 | | - transform: translate(0, -50%); |
|---|
| 2179 | | - white-space: normal; |
|---|
| 2180 | | - word-break: break-all; |
|---|
| 2181 | | - } |
|---|
| 2182 | | - |
|---|
| 2183 | | - .btn { |
|---|
| 2184 | | - position: absolute; |
|---|
| 2185 | | - width: 130rpx; |
|---|
| 2186 | | - font-size: 23rpx; |
|---|
| 2187 | | - line-height: 45rpx; |
|---|
| 2188 | | - text-align: center; |
|---|
| 2189 | | - background: #FFE20E; |
|---|
| 2190 | | - border-radius: 8rpx 8rpx 8rpx 8rpx; |
|---|
| 2191 | | - left: 50%; |
|---|
| 2192 | | - margin-left: -65rpx; |
|---|
| 2193 | | - bottom: 27rpx; |
|---|
| 2194 | | - |
|---|
| 2195 | | - &used { |
|---|
| 2196 | | - background: #efefef; |
|---|
| 2197 | | - } |
|---|
| 2198 | | - } |
|---|
| 2199 | | - } |
|---|
| 2200 | | - } |
|---|
| 2201 | | - } |
|---|
| 2202 | | - |
|---|
| 2203 | | - .goods_menuBox { |
|---|
| 2204 | | - width: 100%; |
|---|
| 2205 | | - box-sizing: border-box; |
|---|
| 2206 | | - // background: linear-gradient(180deg, #f5f5f5 0%, #ffffff 100%); |
|---|
| 2207 | | - background-color: #f5f5f5; |
|---|
| 2208 | | - position: -webkit-sticky; |
|---|
| 2209 | | - position: sticky; |
|---|
| 2210 | | - /* #ifdef H5*/ |
|---|
| 2211 | | - top: var(--window-top); |
|---|
| 2212 | | - /* #endif */ |
|---|
| 2213 | | - z-index: 99; |
|---|
| 2214 | | - |
|---|
| 2215 | | - .subMenu { |
|---|
| 2216 | | - width: 100%; |
|---|
| 2217 | | - } |
|---|
| 2218 | | - |
|---|
| 2219 | | - .subMenu_wrapper { |
|---|
| 3279 | + .label { |
|---|
| 2220 | 3280 | width: max-content; |
|---|
| 2221 | | - white-space: nowrap; |
|---|
| 2222 | | - padding-left: 30rpx; |
|---|
| 3281 | + font-size: 21rpx; |
|---|
| 3282 | + line-height: 42rpx; |
|---|
| 3283 | + position: absolute; |
|---|
| 3284 | + right: 0; |
|---|
| 3285 | + top: 46rpx; |
|---|
| 3286 | + padding-right: 30rpx; |
|---|
| 3287 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/i_info.png") right center/20rpx auto no-repeat; |
|---|
| 2223 | 3288 | } |
|---|
| 2224 | | - |
|---|
| 2225 | | - .subMenu_item { |
|---|
| 2226 | | - // display: inline-block; |
|---|
| 2227 | | - // min-width: 3em; |
|---|
| 2228 | | - text-align: center; |
|---|
| 2229 | | - font-size: 27rpx; |
|---|
| 2230 | | - color: #979797; |
|---|
| 2231 | | - height: 100rpx; |
|---|
| 2232 | | - box-sizing: border-box; |
|---|
| 2233 | | - margin-right: 10rpx; |
|---|
| 2234 | | - .text{ |
|---|
| 2235 | | - width: max-content; |
|---|
| 2236 | | - display: inline-block; |
|---|
| 2237 | | - position: relative; |
|---|
| 2238 | | - line-height: 40rpx; |
|---|
| 2239 | | - padding-left: 14rpx; |
|---|
| 2240 | | - padding-right: 14rpx; |
|---|
| 2241 | | - margin-top:30rpx; |
|---|
| 2242 | | - margin-bottom: 30rpx; |
|---|
| 2243 | | - } |
|---|
| 2244 | | - } |
|---|
| 2245 | | - |
|---|
| 2246 | | - .subMenu_item:last-child { |
|---|
| 2247 | | - margin-right: 30rpx; |
|---|
| 2248 | | - } |
|---|
| 2249 | | - |
|---|
| 2250 | | - .subMenu_item.on { |
|---|
| 2251 | | - color: #ffffff; |
|---|
| 2252 | | - font-weight: bold; |
|---|
| 2253 | | - position: relative; |
|---|
| 2254 | | - .text { |
|---|
| 2255 | | - background: linear-gradient(to right,#ffdc37,#fd9b2b); |
|---|
| 2256 | | - border-radius: 20rpx; |
|---|
| 2257 | | - font-weight: bold; |
|---|
| 2258 | | - } |
|---|
| 2259 | | - } |
|---|
| 2260 | | - |
|---|
| 2261 | 3289 | } |
|---|
| 2262 | 3290 | |
|---|
| 2263 | | - .goodsSection { |
|---|
| 3291 | + .btn_vip { |
|---|
| 3292 | + width: max-content; |
|---|
| 3293 | + position: absolute; |
|---|
| 3294 | + right: 0; |
|---|
| 3295 | + font-size: 21rpx; |
|---|
| 3296 | + line-height: 42rpx; |
|---|
| 3297 | + left: 226rpx; |
|---|
| 3298 | + top: 46rpx; |
|---|
| 3299 | + color: #333333; |
|---|
| 3300 | + |
|---|
| 3301 | + .iconfont { |
|---|
| 3302 | + font-size: 21rpx !important; |
|---|
| 3303 | + } |
|---|
| 3304 | + } |
|---|
| 3305 | + |
|---|
| 3306 | + .btn_toLogin { |
|---|
| 3307 | + position: absolute; |
|---|
| 3308 | + left: 106rpx; |
|---|
| 3309 | + top: 30rpx; |
|---|
| 3310 | + font-size: 21rpx; |
|---|
| 3311 | + line-height: 82rpx; |
|---|
| 3312 | + color: #333333; |
|---|
| 3313 | + |
|---|
| 3314 | + .iconfont { |
|---|
| 3315 | + font-size: 21rpx !important; |
|---|
| 3316 | + } |
|---|
| 3317 | + } |
|---|
| 3318 | +} |
|---|
| 3319 | + |
|---|
| 3320 | +.buy_list { |
|---|
| 3321 | + width: 100%; |
|---|
| 3322 | + height: 48rpx; |
|---|
| 3323 | + overflow: hidden; |
|---|
| 3324 | + position: relative; |
|---|
| 3325 | + margin-top: 10rpx; |
|---|
| 3326 | + |
|---|
| 3327 | + @keyframes moveAni { |
|---|
| 3328 | + 0% { |
|---|
| 3329 | + transform: none; |
|---|
| 3330 | + } |
|---|
| 3331 | + |
|---|
| 3332 | + 100% { |
|---|
| 3333 | + transform: translate(-50%, 0) |
|---|
| 3334 | + } |
|---|
| 3335 | + } |
|---|
| 3336 | + |
|---|
| 3337 | + .buy_wrapper { |
|---|
| 3338 | + width: max-content; |
|---|
| 3339 | + white-space: nowrap; |
|---|
| 3340 | + animation: moveAni 1s linear both infinite; |
|---|
| 3341 | + } |
|---|
| 3342 | + |
|---|
| 3343 | + .buy_item { |
|---|
| 3344 | + display: inline-block; |
|---|
| 3345 | + margin: 0 5rpx; |
|---|
| 3346 | + width: max-content; |
|---|
| 3347 | + font-size: 19rpx; |
|---|
| 3348 | + line-height: 48rpx; |
|---|
| 3349 | + background-color: rgba(255, 255, 255, .8); |
|---|
| 3350 | + color: #333333; |
|---|
| 3351 | + padding-left: 1em; |
|---|
| 3352 | + padding-right: 1em; |
|---|
| 3353 | + border-radius: 24rpx; |
|---|
| 3354 | + } |
|---|
| 3355 | +} |
|---|
| 3356 | + |
|---|
| 3357 | +.stats { |
|---|
| 3358 | + position: absolute; |
|---|
| 3359 | + left: 0px; |
|---|
| 3360 | + top: 0px; |
|---|
| 3361 | + z-index: 2000000; |
|---|
| 3362 | + width: 750rpx; |
|---|
| 3363 | + height: var(--status-bar-height); |
|---|
| 3364 | + background: #ffffff; |
|---|
| 3365 | +} |
|---|
| 3366 | + |
|---|
| 3367 | +.couponList { |
|---|
| 3368 | + width: 690rpx; |
|---|
| 3369 | + height: 523rpx; |
|---|
| 3370 | + margin: 0 auto; |
|---|
| 3371 | + margin-bottom: 30rpx; |
|---|
| 3372 | + position: relative; |
|---|
| 3373 | + |
|---|
| 3374 | + .couponList_title { |
|---|
| 3375 | + position: absolute; |
|---|
| 3376 | + left: 30rpx; |
|---|
| 3377 | + top: 60rpx; |
|---|
| 3378 | + color: #ffffff; |
|---|
| 3379 | + font-size: 40rpx; |
|---|
| 3380 | + font-weight: bold; |
|---|
| 3381 | + } |
|---|
| 3382 | + |
|---|
| 3383 | + image { |
|---|
| 2264 | 3384 | width: 690rpx; |
|---|
| 2265 | | - position: relative; |
|---|
| 2266 | | - margin: 0 auto; |
|---|
| 3385 | + height: 523rpx; |
|---|
| 3386 | + } |
|---|
| 2267 | 3387 | |
|---|
| 3388 | + .couponList_btn { |
|---|
| 3389 | + font-size: 24rpx; |
|---|
| 3390 | + line-height: 48rpx; |
|---|
| 3391 | + color: #000000; |
|---|
| 3392 | + text-align: right; |
|---|
| 3393 | + position: absolute; |
|---|
| 3394 | + right: 34rpx; |
|---|
| 3395 | + top: 138rpx; |
|---|
| 3396 | + padding-right: 42rpx; |
|---|
| 3397 | + text-decoration: underline; |
|---|
| 3398 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/h_hand.gif") right center/contain no-repeat; |
|---|
| 3399 | + } |
|---|
| 2268 | 3400 | |
|---|
| 2269 | | - .goodsList { |
|---|
| 2270 | | - height: 100rpx; |
|---|
| 2271 | | - overflow: hidden; |
|---|
| 3401 | + .couponList_box { |
|---|
| 3402 | + width: 630rpx; |
|---|
| 3403 | + height: 260rpx; |
|---|
| 3404 | + position: absolute; |
|---|
| 3405 | + left: 30rpx; |
|---|
| 3406 | + top: 200rpx; |
|---|
| 3407 | + overflow: hidden; |
|---|
| 3408 | + |
|---|
| 3409 | + .couponList_wrapper { |
|---|
| 3410 | + white-space: nowrap; |
|---|
| 2272 | 3411 | } |
|---|
| 2273 | 3412 | |
|---|
| 2274 | | - .list { |
|---|
| 2275 | | - .list_column{ |
|---|
| 3413 | + .couponList_item { |
|---|
| 3414 | + width: 231rpx; |
|---|
| 3415 | + height: 260rpx; |
|---|
| 3416 | + display: inline-block; |
|---|
| 3417 | + position: relative; |
|---|
| 3418 | + background: url("https://ossacmall.bluedeer.com.cn/app/static/images/coupon_itemBg.png") center center/100% 100% no-repeat; |
|---|
| 3419 | + margin-right: 25rpx; |
|---|
| 3420 | + |
|---|
| 3421 | + :last-child { |
|---|
| 3422 | + margin-right: 0; |
|---|
| 3423 | + } |
|---|
| 3424 | + |
|---|
| 3425 | + .give { |
|---|
| 3426 | + font-weight: bold; |
|---|
| 3427 | + font-size: 19rpx; |
|---|
| 3428 | + color: #FFFFFF; |
|---|
| 3429 | + text-align: center; |
|---|
| 3430 | + font-style: normal; |
|---|
| 3431 | + text-transform: none; |
|---|
| 3432 | + background-color: #016DCC; |
|---|
| 3433 | + border-radius: 14rpx 14rpx 14rpx 0; |
|---|
| 3434 | + width: 49rpx; |
|---|
| 3435 | + height: 28rpx; |
|---|
| 3436 | + line-height: 28rpx; |
|---|
| 3437 | + position: absolute; |
|---|
| 3438 | + left: 8rpx; |
|---|
| 3439 | + top: 0; |
|---|
| 3440 | + z-index: 2; |
|---|
| 3441 | + } |
|---|
| 3442 | + |
|---|
| 3443 | + .amount { |
|---|
| 3444 | + font-size: 53rpx; |
|---|
| 3445 | + line-height: 95rpx; |
|---|
| 3446 | + width: max-content; |
|---|
| 3447 | + position: absolute; |
|---|
| 3448 | + left: 50%; |
|---|
| 3449 | + transform: translate(-50%, 0); |
|---|
| 3450 | + top: 34rpx; |
|---|
| 3451 | + color: #000000; |
|---|
| 3452 | + font-weight: bold; |
|---|
| 3453 | + text-align: center; |
|---|
| 3454 | + |
|---|
| 3455 | + .unit { |
|---|
| 3456 | + font-size: 0.5em; |
|---|
| 3457 | + } |
|---|
| 3458 | + } |
|---|
| 3459 | + |
|---|
| 3460 | + .amountSmall { |
|---|
| 3461 | + font-size: 32rpx; |
|---|
| 3462 | + line-height: 56rpx; |
|---|
| 3463 | + top: 32rpx; |
|---|
| 3464 | + |
|---|
| 3465 | + .text2 { |
|---|
| 3466 | + display: block; |
|---|
| 3467 | + margin: 0 auto; |
|---|
| 3468 | + font-size: 28rpx; |
|---|
| 3469 | + line-height: 36rpx; |
|---|
| 3470 | + width: max-content; |
|---|
| 3471 | + padding: 0 21rpx; |
|---|
| 3472 | + border: 1rpx solid #303030; |
|---|
| 3473 | + } |
|---|
| 3474 | + } |
|---|
| 3475 | + |
|---|
| 3476 | + .label { |
|---|
| 3477 | + font-size: 24rpx; |
|---|
| 3478 | + lineh-height: 30rpx; |
|---|
| 3479 | + color: #000000; |
|---|
| 3480 | + text-align: center; |
|---|
| 3481 | + position: absolute; |
|---|
| 3482 | + width: 100%; |
|---|
| 3483 | + left: 0; |
|---|
| 3484 | + top: -50rpx; |
|---|
| 3485 | + } |
|---|
| 3486 | + |
|---|
| 3487 | + .name { |
|---|
| 3488 | + width: 90%; |
|---|
| 3489 | + left: 5%; |
|---|
| 3490 | + line-height: 23rpx; |
|---|
| 3491 | + font-size: 22rpx; |
|---|
| 3492 | + color: #000000; |
|---|
| 3493 | + text-align: center; |
|---|
| 3494 | + position: absolute; |
|---|
| 3495 | + top: 135rpx; |
|---|
| 3496 | + transform: translate(0, -50%); |
|---|
| 3497 | + white-space: normal; |
|---|
| 3498 | + word-break: break-all; |
|---|
| 3499 | + } |
|---|
| 3500 | + |
|---|
| 3501 | + .btn { |
|---|
| 3502 | + position: absolute; |
|---|
| 3503 | + width: 130rpx; |
|---|
| 3504 | + font-size: 23rpx; |
|---|
| 3505 | + line-height: 45rpx; |
|---|
| 3506 | + text-align: center; |
|---|
| 3507 | + background: #FFE20E; |
|---|
| 3508 | + border-radius: 8rpx 8rpx 8rpx 8rpx; |
|---|
| 3509 | + left: 50%; |
|---|
| 3510 | + margin-left: -65rpx; |
|---|
| 3511 | + bottom: 27rpx; |
|---|
| 3512 | + |
|---|
| 3513 | + &used { |
|---|
| 3514 | + background: #efefef; |
|---|
| 3515 | + } |
|---|
| 2276 | 3516 | } |
|---|
| 2277 | 3517 | } |
|---|
| 3518 | + } |
|---|
| 3519 | +} |
|---|
| 2278 | 3520 | |
|---|
| 2279 | | - .loadingTips { |
|---|
| 3521 | +.goods_menuBox { |
|---|
| 3522 | + width: 100%; |
|---|
| 3523 | + box-sizing: border-box; |
|---|
| 3524 | + // background: linear-gradient(180deg, #f5f5f5 0%, #ffffff 100%); |
|---|
| 3525 | + background-color: #f5f5f5; |
|---|
| 3526 | + position: -webkit-sticky; |
|---|
| 3527 | + position: sticky; |
|---|
| 3528 | + /* #ifdef H5*/ |
|---|
| 3529 | + top: var(--window-top); |
|---|
| 3530 | + /* #endif */ |
|---|
| 3531 | + z-index: 99; |
|---|
| 3532 | + |
|---|
| 3533 | + .subMenu { |
|---|
| 3534 | + width: 100%; |
|---|
| 3535 | + } |
|---|
| 3536 | + |
|---|
| 3537 | + .subMenu_wrapper { |
|---|
| 3538 | + width: max-content; |
|---|
| 3539 | + white-space: nowrap; |
|---|
| 3540 | + padding-left: 30rpx; |
|---|
| 3541 | + } |
|---|
| 3542 | + |
|---|
| 3543 | + .subMenu_item { |
|---|
| 3544 | + // display: inline-block; |
|---|
| 3545 | + // min-width: 3em; |
|---|
| 3546 | + text-align: center; |
|---|
| 3547 | + font-size: 27rpx; |
|---|
| 3548 | + color: #979797; |
|---|
| 3549 | + height: 100rpx; |
|---|
| 3550 | + box-sizing: border-box; |
|---|
| 3551 | + margin-right: 10rpx; |
|---|
| 3552 | + |
|---|
| 3553 | + .text { |
|---|
| 2280 | 3554 | width: max-content; |
|---|
| 2281 | | - padding-left: 60rpx; |
|---|
| 2282 | | - font-size: 27rpx; |
|---|
| 2283 | | - line-height: 60rpx; |
|---|
| 2284 | | - margin: 0 auto; |
|---|
| 2285 | | - color: #DDDDDD; |
|---|
| 2286 | | - background: url('https://ossacmall.bluedeer.com.cn/app/static/images/h_loading.png') left center/41rpx auto no-repeat; |
|---|
| 3555 | + display: inline-block; |
|---|
| 3556 | + position: relative; |
|---|
| 3557 | + line-height: 40rpx; |
|---|
| 3558 | + padding-left: 14rpx; |
|---|
| 3559 | + padding-right: 14rpx; |
|---|
| 3560 | + margin-top: 30rpx; |
|---|
| 3561 | + margin-bottom: 30rpx; |
|---|
| 2287 | 3562 | } |
|---|
| 3563 | + } |
|---|
| 2288 | 3564 | |
|---|
| 2289 | | - .pauseView { |
|---|
| 2290 | | - width: 100%; |
|---|
| 2291 | | - height: 100%; |
|---|
| 2292 | | - position: absolute; |
|---|
| 2293 | | - left: 0; |
|---|
| 2294 | | - top: 0; |
|---|
| 2295 | | - z-index: 2; |
|---|
| 3565 | + .subMenu_item:last-child { |
|---|
| 3566 | + margin-right: 30rpx; |
|---|
| 3567 | + } |
|---|
| 3568 | + |
|---|
| 3569 | + .subMenu_item.on { |
|---|
| 3570 | + color: #ffffff; |
|---|
| 3571 | + font-weight: bold; |
|---|
| 3572 | + position: relative; |
|---|
| 3573 | + |
|---|
| 3574 | + .text { |
|---|
| 3575 | + background: linear-gradient(to right, #ffdc37, #fd9b2b); |
|---|
| 3576 | + border-radius: 20rpx; |
|---|
| 3577 | + font-weight: bold; |
|---|
| 2296 | 3578 | } |
|---|
| 2297 | 3579 | } |
|---|
| 2298 | | - .specialZone_box{ |
|---|
| 2299 | | - padding: 30vw 0 0 0; |
|---|
| 2300 | | - background-color: red; |
|---|
| 2301 | | - .specialZone_item{ |
|---|
| 2302 | | - width: 33%; |
|---|
| 2303 | | - margin-bottom: 10vw; |
|---|
| 2304 | | - float: left; |
|---|
| 2305 | | - .specialGoodItem_image{ |
|---|
| 2306 | | - display: block; |
|---|
| 2307 | | - width: 20vw; |
|---|
| 2308 | | - height: 20vw; |
|---|
| 2309 | | - margin: 0 auto; |
|---|
| 2310 | | - } |
|---|
| 2311 | | - } |
|---|
| 3580 | + |
|---|
| 3581 | +} |
|---|
| 3582 | + |
|---|
| 3583 | +.goodsSection { |
|---|
| 3584 | + width: 690rpx; |
|---|
| 3585 | + position: relative; |
|---|
| 3586 | + margin: 0 auto; |
|---|
| 3587 | + |
|---|
| 3588 | + |
|---|
| 3589 | + .goodsList { |
|---|
| 3590 | + height: 100rpx; |
|---|
| 3591 | + overflow: hidden; |
|---|
| 2312 | 3592 | } |
|---|
| 2313 | | - .index_lottery{ |
|---|
| 2314 | | - width: 687rpx; |
|---|
| 2315 | | - margin: 45rpx auto 0 auto; |
|---|
| 2316 | | - .index_lottery_img{ |
|---|
| 3593 | + |
|---|
| 3594 | + .list { |
|---|
| 3595 | + .list_column {} |
|---|
| 3596 | + } |
|---|
| 3597 | + |
|---|
| 3598 | + .loadingTips { |
|---|
| 3599 | + width: max-content; |
|---|
| 3600 | + padding-left: 60rpx; |
|---|
| 3601 | + font-size: 27rpx; |
|---|
| 3602 | + line-height: 60rpx; |
|---|
| 3603 | + margin: 0 auto; |
|---|
| 3604 | + color: #DDDDDD; |
|---|
| 3605 | + background: url('https://ossacmall.bluedeer.com.cn/app/static/images/h_loading.png') left center/41rpx auto no-repeat; |
|---|
| 3606 | + } |
|---|
| 3607 | + |
|---|
| 3608 | + .pauseView { |
|---|
| 3609 | + width: 100%; |
|---|
| 3610 | + height: 100%; |
|---|
| 3611 | + position: absolute; |
|---|
| 3612 | + left: 0; |
|---|
| 3613 | + top: 0; |
|---|
| 3614 | + z-index: 2; |
|---|
| 3615 | + } |
|---|
| 3616 | +} |
|---|
| 3617 | + |
|---|
| 3618 | +.specialZone_box { |
|---|
| 3619 | + padding: 30vw 0 0 0; |
|---|
| 3620 | + background-color: red; |
|---|
| 3621 | + |
|---|
| 3622 | + .specialZone_item { |
|---|
| 3623 | + width: 33%; |
|---|
| 3624 | + margin-bottom: 10vw; |
|---|
| 3625 | + float: left; |
|---|
| 3626 | + |
|---|
| 3627 | + .specialGoodItem_image { |
|---|
| 2317 | 3628 | display: block; |
|---|
| 2318 | | - width: 100%; |
|---|
| 2319 | | - height: auto; |
|---|
| 3629 | + width: 20vw; |
|---|
| 3630 | + height: 20vw; |
|---|
| 3631 | + margin: 0 auto; |
|---|
| 2320 | 3632 | } |
|---|
| 2321 | 3633 | } |
|---|
| 3634 | +} |
|---|
| 3635 | + |
|---|
| 3636 | +.index_lottery { |
|---|
| 3637 | + width: 687rpx; |
|---|
| 3638 | + margin: 45rpx auto 0 auto; |
|---|
| 3639 | + |
|---|
| 3640 | + .index_lottery_img { |
|---|
| 3641 | + display: block; |
|---|
| 3642 | + width: 100%; |
|---|
| 3643 | + height: auto; |
|---|
| 3644 | + } |
|---|
| 3645 | +} |
|---|
| 2322 | 3646 | </style> |
|---|