<template>
	<view class="page">
		<block v-if="(isdata)">
			<header-nav-menu ref="headerNavMenu" :menu="nav_nemu"></header-nav-menu>
			<scroll-view class='u-pa1 fix-titlenview-trans' scroll-y="true" :scroll-top="scposition" @scroll="scrolltoupper">
				<view class="m-banner-ad">
					<swiper :indicator-dots="false" autoplay="true" interval="3000" duration="300" @change="swiperImg">
						<swiper-item v-for="(item, ii) in ProductInfo.productPicList" :key="ii">
							<view class="no_goods" v-if="product_freight_info.if_store==0">
								<view class="no_shadow"></view>
								<text class="no_goods_tip">{{ __('售罄，补货中') }}</text>
							</view>
							<image lazy-load class="slide-image" mode="aspectFill" :src="(item.Path)" :data-src="(item.Path)" @click="previewProductImg" />
						</swiper-item>
					</swiper>
					<navigator v-if="(ProductInfo.product_video)" :url="ProductInfo.pv_url" class="video">
						<image lazy-load src="/static/images/play.png" style="width:100rpx;height:100rpx"></image>
					</navigator>
					<view class="indicator-point" v-if="ProductInfo.productPicList.length">
						{{ currentSwipperImageIndex }}/{{ ProductInfo.productPicList.length }}
					</view>

					<view class="u-p-opt">
						<view style='position:relative'>
							<view :class="'navtext'" @click="PDCollection" :data-id="(ProductInfo.item_id)" v-if="false">
								<view class="quicknav">
									<view :class="['iconfont', isCollection?'icon-favoritesfilling':'icon-favorite', isCollection?' highlight ':'']"></view>
								</view>
							</view>
							<view :class="'navtext'" @click="addToWestore" :data-id="(ProductInfo.item_id)" v-if="Config.PLANTFORM_FX_WESTORE_ENABLE">
								<view class="quicknav">
									<view :class="['iconfont zc zc-add']"></view>
								</view>
							</view>
						</view>
					</view>
				</view>
				<view :class="['product-info', ProductInfo.activity_base_row ? 'activity-fixtop' : '']">
					<view class="seckill" v-if="(ProductInfo.isShowCountdown || ProductInfo.is_pa)">
						<view class="seckill-left">
							<view class="discountPrice">{{ __('￥') }}
								<text>{{ number_format(ProductInfo.ShowPrice, 2) }}</text>
								<label class="m-price-tip" v-if="(ProductInfo.activityType=='GROUPBOOKING')">
									{{ sprintf(__('%s人团省￥%s'), ProductInfo.UserLimit, number_format(ProductInfo.SavePrice)) }}
								</label>
								<text v-else class="m-info-delprice">
									{{ __('￥') }} {{ number_format(ProductInfo.product_unit_price, 2) }}
								</text>
							</view>
						</view>
						<view class="seckill-right">
							<view style="display: flex;flex-direction: row-reverse;">
								<image lazy-load src="/static/images/seckill.png" v-if="ProductInfo.activityType!=='GROUPBOOKING'"></image>
								<image lazy-load src="/static/images/groupbook.png" v-if="ProductInfo.activityType=='GROUPBOOKING'"></image>
							</view>
							<view class="Time">
								<text style="margin-right: 5px;">{{ __('还剩') }}</text>
								<text class="time">{{ hours }}</text>
								<text class="time-tip">:</text>
								<text class="time">{{ minutes }}</text>
								<text class="time-tip">:</text>
								<text class="time">{{ seconds }}</text>
							</view>
						</view>
					</view>

					<view class="m-cells" style="margin-top:0rpx" v-if="true">
						<view class="m-cell m-info-box">
							<view class="m-cell-bd">
								<view class="m-info-price" v-if="!ProductInfo.isShowCountdown">
									<block v-if="ProductInfo.ShowPrice">
										<text>{{ __('￥') }}</text>
										{{ number_format(ProductInfo.ShowPrice, 2) }}
										<text class="m-info-delprice" v-if="(ProductInfo.activityType=='GROUPBOOKING')">
											{{ __('￥') }}{{ number_format(ProductInfo.ItemSalePrice, 2) }}
										</text>
									</block>

									<text class="m-info-delprice" v-if="(ProductInfo.MarketPrice) && !(ProductInfo.activityType=='GROUPBOOKING')">
										{{ __('￥') }}{{ number_format(ProductInfo.MarketPrice, 2) }}
									</text>

									<block v-if="ProductInfo.item_unit_points">
										<text style="margin-left: 20rpx;">+
											<text style="font-size:32rpx">{{ ProductInfo.item_unit_points }}</text>
											{{ __('积分') }}
										</text>
									</block>

									<block v-if="ProductInfo.item_unit_sp">
										<text style="margin-left: 20rpx;">+
											<text style="font-size:32rpx">{{ ProductInfo.item_unit_sp }}</text>
											{{ __('众宝') }}
										</text>
									</block>

									<view class="tag-view" v-if="ProductInfo.item_rebate > 0">
										<uni-tag :text="sprintf(__('返利￥%.2f'), number_format(ProductInfo.item_rebate, 2))" type="lancerdt" size="small" inverted="1" circle="true" data-type="groupbuy" style="height: 40rpx;line-height: 40rpx;"></uni-tag>
									</view>

									<view class="tag-view" v-if="ProductInfo.item_fx_cps > 0">
										<uni-tag :text="sprintf(__('佣金￥%.2f'), number_format(ProductInfo.item_fx_cps, 2))" type="lancerdt" size="small" inverted="1" circle="true" data-type="groupbuy" style="height: 40rpx;line-height: 40rpx;"></uni-tag>
									</view>

									<view style="display: flex;flex-flow: column;">
										<label class="m-price-tip" v-if="(ProductInfo.activityType=='GROUPBOOKING')">
											{{ sprintf(__('%s人团省￥%s'), ProductInfo.UserLimit, number_format(ProductInfo.SavePrice, 2)) }}
										</label>
										<!--拼团倒计时-->
										<view class="progressBarBox" v-if="(ProductInfo.activityType=='GROUPBOOKING')">
											{{ __('距离结束还剩:') }}
											<block v-if="(days>1)">
												<text class="m-FGB-time">{{ days }}</text>
												<text class="m-FGB-time-tip">{{ __('天') }}</text>
											</block>
											<block v-else>
												<text class="m-FGB-time-tip">:</text>
												<text class="m-FGB-time">{{ hours }}</text>
												<text class="m-FGB-time-tip">:</text>
												<text class="m-FGB-time">{{ minutes }}</text>
												<text class="m-FGB-time-tip">:</text>
												<text class="m-FGB-time">{{ seconds }}</text>
											</block>
										</view>
									</view>


									<view class="progressBarBox" v-if="(ProductInfo.activityType=='GROUPBOOKING' && isJoin)">
										<view class="progressBarBox-content">
											<label :style="'width:' + ((ProductInfo.UserNum/ProductInfo.UserLimit)*100) + '%'"></label>
											<view class="progressBarBox-text">
												<text>
													{{ sprintf(__('还差%s人成团'), ProductInfo.UserLimit - ProductInfo.UserNum) }}
												</text>
											</view>
										</view>
									</view>
									<!--拼团倒计时-->

									<block v-if="plantformInfo.config.product_salenum_flag">
										<view class="selled" v-if="(ProductInfo.is_virtual && ProductInfo.analytics_row && ProductInfo.analytics_row.product_sale_num>0)">
											<view class="num">{{ __('已服务') }}
												<text style="color:red">{{ ProductInfo.analytics_row.product_sale_num || 0 }}</text>
												{{ __('人次') }}
											</view>
										</view>
										<view class="selled" v-if="(!ProductInfo.is_virtual && ProductInfo.analytics_row && ProductInfo.analytics_row.product_sale_num>0)">
											<view class="num">{{ __('已售') }}
												<text style="color:red;margin-left: 2px;">
													{{ ProductInfo.analytics_row.product_sale_num || 0 }}
												</text>
												{{ __('') }}
											</view>
										</view>
									</block>
									<view class="favorite-share">
										<label @click="PDCollection" :data-id="(ProductInfo.item_id)" :class="['iconfont', isCollection?'icon-favoritesfilling':'icon-favorite', isCollection?' highlight ':'']">
										</label>
										<label class="iconfont zc zc-share" @click='onShareBox(1)'></label>
									</view>
								</view>	
								<view class="name-box">
									<view class="m-info-name" style="font-weight: bold;">{{ ProductInfo.product_name }}</view>
									<view class="favorite-share" v-if="(ProductInfo.isShowCountdown)">
										<label @click="PDCollection" :data-id="(ProductInfo.item_id)" :class="['iconfont', isCollection?'icon-favoritesfilling':'icon-favorite', isCollection?' highlight ':'']">
										</label>
										<label class="iconfont zc zc-share" @click='onShareBox(1)'></label>
									</view>
								</view>
								<label class="name-subtitle" v-if="ProductInfo.ProductTips">{{ ProductInfo.product_tips || " " }}</label>
							</view>
						</view>
						<view class="m-cell m-cell-access m-info-sp" v-if="(ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_ONE_PIECE_DISCOUNT)">
							<view class="m-cell-bd">
								<text class="m-info-tip" style="color:#0a0322;font-weight:800">{{ __('活动') }}</text>
								<label class="m-imfo-sp-selext" style="color:#0a0322;font-weight:800;font-size:20rpx">
									{{ __('单件折扣 ') }}{{ ProductInfo.one_piece_discount }}{{ __('折') }}
									<block v-if="ProductInfo.activity_item_row.activity_use_level_name">
										{{ __('，需会员等级 ') }}{{ ProductInfo.activity_item_row.activity_use_level_name }}
									</block>
								</label>
							</view>
						</view>
						<view v-if="(ProductInfo.SpecLst.length>0)" class="m-cell m-cell-access m-info-sp" @click="ckselectsp">
							<view class="m-cell-bd">
								<text class="m-info-tip">{{ __('已选') }}</text>
								<label class="m-imfo-sp-selext m-panel-sp-labellist">
									<block v-for="(items, i) in ProductInfo.SpecLst" :key="i">
										<!-- #ifdef H5 -->
										<block v-for="(item, ii) in items.svLst" :key="i + '_' + ii">
											<label v-if="(item.IsChecked)" class="m-panel-sp-sellabel" style="margin: 0;margin-left:10rpx;padding: 0 8rpx;">{{ item.Name }}</label>
										</block>
										<!-- #endif -->
										<!-- #ifndef H5 -->
										<block v-for="(item, ii) in items.svLst" :key="ii">
											<label v-if="(item.IsChecked)" class="m-panel-sp-sellabel" style="margin: 0;margin-left:10rpx;padding: 0 8rpx;">{{ item.Name }}</label>
										</block>
										<!-- #endif -->
									</block>
								</label>
							</view>
							<view class="m-cell-ft"></view>
						</view>


						<view v-if="false" class="m-cell m-cell-access m-info-sp" @click="onSelectAddress">
							<view class="m-cell-bd">
								<text class="m-info-tip">{{ __('产地') }}</text>
								<label class="m-imfo-sp-selext">
									南京
								</label>

								<label class="m-imfo-sp-selext" style="float: right;">
									溯源
								</label>
							</view>
							<view class="m-cell-ft"></view>
						</view>

						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_GIFTBAG" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1132)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('组合购') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>

						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_GIFT" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1102)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('满即送') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>
						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_BARGAIN" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1101)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('加价购') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>
						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_MANHUI" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1108)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('满返') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>
						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_MULTIPLE_FOLD" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1133)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('多件折') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>
						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_REDUCTION" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1107)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('满减') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>

						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_REDUCTION_AGAIN" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1140)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('折上折') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>

						<view v-if="ProductInfo.activity_item_row.activity_type_id == StateCode.ACTIVITY_TYPE_DOUBLE_POINTS" class="m-cell m-cell-access m-info-sp" @click="showActivityDetail(1136)">
							<view class="m-cell-bd" style="color:red">
								<text class="m-info-tip">{{ __('多倍积分') }}</text>
								<label class="m-imfo-sp-selext">
									{{ ProductInfo.activity_item_row.activity_name }}
								</label>
							</view>
							<view class="m-cell-ft">{{ __('查看详情') }}</view>
						</view>

						<view class="m-cell m-cell-access m-info-sp" @click="onSelectAddress" v-if="!(ProductInfo.is_virtual)">
							<view class="m-cell-bd">
								<text class="m-info-tip">{{ __('送至') }}</text>
								<label class="m-imfo-sp-selext">
									{{ product_freight_info.district_info }}
								</label>

								<label class="m-imfo-sp-selext">
									{{ product_freight_info.if_store_cn }}
								</label>

								<label class="m-imfo-sp-selext">
									{{ product_freight_info.if_freight_label || '' }}
								</label>
							</view>
							<view class="m-cell-ft"></view>
						</view>
						<view class="m-policy" v-if="(wholesale_policy_rows.length > 0)">
							<view class="m-cell-bd" style="padding:20rpx 30rpx;display:flex;flex-wrap: nowrap;">
								<view class="m-imfo-sp-title" style="width:50%;">
									{{ __('价格') }}
								</view>

								<view class="m-imfo-sp-title">
									{{ __('起批量') }}
								</view>
							</view>
							<view class="m-cell-bd" style="padding:20rpx 30rpx;display:flex;flex-wrap: nowrap;" v-for="(row,ii) in wholesale_policy_rows" :key="ii">
								<label class="m-imfo-sp-money" style="width:50%;">
									<span>{{ __('￥') }}</span>{{ row.policy_wholesale_price }}
								</label>

								<label class="m-imfo-sp-selext">
									{{ row.item_quantity_str }}
								</label>
							</view>
						</view>

						<view v-if="true" class="m-cell m-cell-access m-info-sp">
							<view class="m-cell-bd">
								<text class="m-info-tip">{{ __('服务') }}</text>
								<label class="m-imfo-sp-selext" style="">
									{{ sprintf(__('由 %s 发货并提供售后服务'), store_info.store_name) }}
								</label>
								<view style="margin-left:56rpx;" v-if="ProductInfo.contractlist.length > 0">
									<label style="margin-left: 12rpx;margin-right: 0rpx;font-size: 12px;" v-for="(ct, ci) in ProductInfo.contractlist" :key="ci">
										<image lazy-load :src="(ct.contract_type_icon)" style="margin-top:-6rpx;margin-right: 6rpx;width: 30rpx;height: 30rpx;vertical-align: middle;" />
										{{ ct.contract_type_name }}
									</label>
								</view>
							</view>
						</view>
					</view>


					<!-- 优惠券展示 -->
					<view class="m-cells" style="margin-top:0;" v-if="(voucherList.length>0)">
						<view class="m-cell m-cell-access m-info-sp">
							<view class="m-cell-bd coupon">
								<text class="m-info-tip">{{ __('优惠') }}</text>
								<view style="position: relative;">
									<view class="m-coupon-item1" v-for="(item, ii) in voucherList" :key="ii">
										<view class="m-coupon-info">
											<view class="m-coupon-text" style="display: flex;">
												<label style="font-size: 12px;">{{ item.activity_name }}</label>
												<text>
													{{sprintf(__('满￥%s 减￥%s'), item.activity_rule.requirement.buy.subtotal, item.activity_rule.voucher_price)}}{{ item.activity_remark }}
												</text>
												<!-- <text>
                          {{sprintf(__('有效日期至：%s'), item.activity_endtime)}}
                        </text> -->
											</view>
											<!-- <view class="m-coupon-price">
                        <view class="price-content-box ">
                          <label>{{__('￥')}}</label>{{number_format(item.activity_rule.voucher_price,1)}}
                        </view>
                      </view> -->
										</view>
										<!-- <view v-if="(0)" @click="receivenowWeixin" :data-cardId="(item.CardId)" class="m-coupon-btn" :data-id="(item.Id)"
                    :data-isreceive="(item.IsCanReceive)">
                      <label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{item.IsCanReceive == 0 ? __('立即领取'):__('已经领取') }}</label>
                    </view>
                    <view class="m-coupon-btn" @click="doReceive" :data-isreceive="(item.if_gain ? '1' : '-1')" :data-id="(item.activity_id)"
                    :data-point="(item.activity_rule.requirement.points.needed)">
                      <label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{item.if_gain ? __('立即领取'):__('已经领取') }}</label>
                    </view> -->
									</view>
									<button @click="showCouponDetail()" type="warn" size="mini" style="position: absolute;top: 50%;right: 0rpx;transform: translateY(-50%);">{{ __('领取') }}
									</button>
								</view>
							</view>
						</view>
					</view>
					<uni-popup ref="popup2" type="bottom">
						<view class="m-coupon-list" v-if="(voucherList.length>0)" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;height:700rpx;display: flex;flex-direction: column;padding:30rpx">
							<scroll-view scroll-y style="height: calc(100% - 60px)">
								<view class="m-coupon-item" v-for="(item, ii) in voucherList" :key="ii">
									<view class="m-coupon-info">
										<view class="m-coupon-text">
											<label>{{ item.activity_name }}</label>
											<text>
												{{sprintf(__('满￥%s 减￥%s'), item.activity_rule.requirement.buy.subtotal, item.activity_rule.voucher_price)}}{{ item.activity_remark }}
											</text>
											<text>
												{{ sprintf(__('有效日期至：%s'), item.activity_endtime) }}
											</text>
										</view>
										<view class="m-coupon-price">
											<view class="price-content-box ">
												<label>{{ __('￥') }}</label>{{ number_format(item.activity_rule.voucher_price, 1) }}
											</view>
										</view>
									</view>
									<view v-if="(0)" @click="receivenowWeixin" :data-cardId="(item.CardId)" class="m-coupon-btn" :data-id="(item.Id)" :data-isreceive="(item.IsCanReceive)">
										<label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{
                        item.IsCanReceive == 0 ? __('立即领取') : __('已经领取')
                      }}</label>
									</view>
									<view class="m-coupon-btn" @click="doReceive" :data-isreceive="(item.if_gain ? '1' : '-1')" :data-id="(item.activity_id)" :data-point="(item.activity_rule.requirement.points.needed)">
										<label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{
                        item.if_gain ? __('立即领取') : __('已经领取')
                      }}</label>
									</view>
								</view>
							</scroll-view>
							<button v-if="!voucherReceiveAllFlag" class="u-btn u-btn-default" style="margin-top:20rpx;margin:0;padding:0" @click="getCoupon">
								{{ __('一键领取') }}
							</button>
						</view>
					</uni-popup>

					<view class="m-panel m-panel-access m-comment m-fg-comment" v-if="(ProductInfo.activityType=='GROUPBOOKING' && GB_rows.length>0)">
						<view class="m-panel-hd">{{ __('进行中的拼团') }}</view>
						<view class="m-panel-bd" :style="(!isAll?'max-height:382rpx;overflow:hidden;':'')">
							<view @click="groupBuying" v-for="(item, ii) in GB_rows" :key="ii" :data-gb_id="(item.gb_id)" class="m-media-box m-media-box-appmsg">
								<view class="m-media-box-hd">
									<image lazy-load class="m-media-box-thumb" :src="(item.user_avatar)" />
								</view>
								<view class="m-media-box-bd">
									<label class="m-media-box-title">{{ item.user_nickname }}</label>
									<text class="m-media-box-desc">{{ __('正在开团中') }}</text>
								</view>
								<view class="m-media-box-bd m-media-box-bd-tip">
									<label class="m-media-box-title m-media-box-title-tip">
										{{ sprintf(__('还差%s人成团'), item.gb_quantity - item.gb_amount_quantity) }}
									</label>
									<text v-if="(item.Time.days>=1)" class="m-media-box-desc m-media-box-desc-tip">
										{{ sprintf(__('剩余%s天 结束'), item.Time.days) }}
									</text>
									<text v-else class="m-media-box-desc m-media-box-desc-tip">
										{{ sprintf(__('剩余%s:%s:%s结束'), item.Time.hour, item.Time.min, item.Time.sec) }}
									</text>
								</view>
								<view class="m-media-box-bd">
									<button class="u-btn u-btn-default" style="margin-top:20rpx">{{ __('立即参团') }}</button>
								</view>
							</view>
						</view>
						<view class="m-panel-ft" @click="lookall" v-if="(ProductInfo.activityType=='GROUPBOOKING' && GB_rows.length>2)">
							<a href="javascript:void(0);" class="m-cell m-cell-access m-cell-link">
								<view class="m-cell-bd" v-if="(!isAll)">{{ __('查看全部参团') }}</view>
								<view class="m-cell-bd" v-else>{{ __('收起') }}</view>
								<text class="m-cell-ft"></text>
							</a>
						</view>
					</view>

					<!--参团部分-->


					<!--评论-->
					<view class="evaluate" v-if="ProductInfo.last_comment_rows.length > 0 ">
						<view class="evaluate-top">
							<label class="left">{{ __('用户评价') }}({{ ProductInfo.analytics_row ? ProductInfo.analytics_row.product_evaluation_num : 0 }})</label>
							<navigator :url="'/pages/product/commentlist?id=' + (proId)" class="evaluate-right">
								<label class="right">{{ __('全部评价') }}</label>
							</navigator>
						</view>
						<view class="evaluate-bottom">
							<scroll-view scroll-x="true" class="scroll-view_H" style="background:rgba(255,255,255,1);">
								<view class="scroll-view-item_H" v-for="(item, i) in ProductInfo.last_comment_rows" :key="i" style="width: auto;">
									<view class="uesr-evaluate">
										<view class="uesr-evaluate-center">
											<view class="center-top">
												<view class="user-image">
													<image style="width:100%;height:100%;border-radius:50%;" :src="(item.user_avatar)" />
												</view>
												<label class="user-name">{{ item.user_name }}</label>
											</view>
											<view class="user-text"><label>{{ item.comment_content || __('无评论') }}</label></view>
										</view>
									</view>
								</view>
							</scroll-view>
						</view>
					</view>

					<!--店铺信息-->
					<view class="m-store" v-if="(Config.MULTISHOP_ENABLE && !if_saas_status && !isStoreFlag)">
						<view class="m-store-info">
							<view class="m-store-radi">
								<image :src="store_info.store_logo" style="width: 100%;height: 100%;">
							</view>
							<label style="height:29rpx;font-size:30rpx;font-family:Alibaba PuHuiTi;font-weight:500;color:rgba(51,51,51,1);position: absolute;margin-top:14rpx;margin-left:139rpx">{{ store_info.store_name }}</label>
							<label style="width:200rpx;height:23rpx;font-size:24rpx;font-family:Alibaba PuHuiTi;font-weight:400;color:rgba(102,102,102,1);position: absolute;margin-top:60rpx;margin-left:139rpx">{{ sprintf(__('在售商品%s件'), store_info.store_product_num) }}</label>
							<navigator :url="'/pagesub/index/store' + '?store_id=' + (ProductInfo.store_id)" hover-class="none" class="evaluate-right" style="margin-top:32rpx;">
								<label class="right">{{ __('进店看看') }}</label>
							</navigator>
						</view>
						<view v-if="store_info.store_o2o_flag==1 && store_info.store_latitude && store_info.store_longitude && store_info.store_address" style="height: 100rpx;">
							<view style="padding: 0 30rpx;height: 44rpx;">
								<view class="m-cell-bd" style="width: 100%;">
									<text class="m-info-tip" style="margin-right: 10rpx;font-size: 12px;">{{ __('营业时间') }} :</text>
									<text class="m-info-tip" style="font-size: 12px;">{{ store_info.store_opening_hours || '00:00' }} - {{ store_info.store_close_hours || '00:00' }}</text>
								</view>
							</view>
							<view style="padding: 0 30rpx;">
								<view class="m-cell-bd" style="display: flex;" @click.stop="gotomap" :data-address="(store_info.store_address)" :data-name="(store_info.store_name)" :data-lat="(store_info.store_latitude)" :data-lng="(store_info.store_longitude)">
									<view class="m-info-tip location-addr" style="display: flex;flex:1;margin-right: 10rpx;width: 500rpx;float:left;font-size: 12px;">
										{{ store_info.store_address }}
									</view>

									<label style="display: flex;float:right;">
										<image style="width:20rpx;height:26rpx;margin-top:10rpx;" src='https://static.lancerdt.com/xcxfile/appicon/img/location.png'></image>
										<label class="u-font" style="line-height: 1.8;font-size: 12px;">{{ __('距您') }}
											{{ store_info.distance }}</label>
									</label>

								</view>
							</view>
						</view>
						<scroll-view class="scroll-view_H" scroll-x="true" style="height:390rpx;margin-top: 0px">
							<navigator :url="(store_info.store_type==3?'/pages/product/details':'/pages/product/detail') + '?pid=' + (item.item_id)" v-for="(item,i) in store_product_list" :key="i" hover-class="none" class="scroll-view-item_H" style="width:210rpx;height:340rpx;margin-left:30rpx;margin-top:20rpx;">
								<view class="m-store-item-image">
									<image :src="item.product_image" style="width: 100%;height: 100%;">
								</view>
								<view class="m-store-item-name"><label class="ellipsis">{{ item.product_name }}</label></view>

								<view class="m-store-item-price">
									<label>{{ __('￥') }}{{ sprintf(__('%.2f'), number_format(item.item_unit_price, 2)) }}</label>
								</view>
							</navigator>
						</scroll-view>
					</view>

					<!--店铺信息-->
					<view class="m-panel m-panel-access goods-detail-store" v-if="(chain_rows.length>0)">
						<block v-if="(chain_rows.length>0)">
							<view class="m-panel-hd store_name">
								{{ __('门店信息') }}
							</view>
							<view class="m-panel-bd" style="height: 200rpx;">
								<scroll-view class="m-nearbylist" scroll-y="true" @scrolltolower="scrollbottom">
									<view class='list-box' @click="gopage" :data-chain_id="(item.chain_id)" v-for="(item, index) in chain_rows" :key="index">
										<view class='item-box'>
											<view class='flex-box'>
												<image :src='item.chain_img' class='flex-shop'></image>
												<label class='flex-title'>{{ item.chain_name }}</label>
												<view class='flex-postion'>
													<image src='https://static.lancerdt.com/xcxfile/appicon/img/location.png'></image>
													<label>{{ item.distance }}</label>
												</view>
											</view>
											<view class='flex-info'>
												<view class='flex-info-box' @click.stop="call" :data-phone="item.chain_mobile"><label class='flex-info-title'>{{ __('商家电话：') }}</label><label style='color:#0095fd'>{{ item.chain_mobile }}</label></view>
												<view class='flex-info-box' @click.stop="gotomap" :data-address="(item.chain_district_info)" :data-name="(item.chain_name)" :data-lat="(item.chain_lat)" :data-lng="(item.chain_lng)">
													<label class='flex-info-title'>{{ __('商家地址：') }}</label><label>{{ item.chain_district_info }}</label>
												</view>
												<image src='https://static.lancerdt.com/xcxfile/appicon/img/right.png'></image>
											</view>
										</view>
									</view>
								</scroll-view>
							</view>
						</block>
					</view>
					<view v-if="(chain_rows.length>0)" class="m-panel-hd store_name" @click="gochainlist" :data-store_id="(ProductInfo.store_id)" :data-item_id="(ProductInfo.item_id)">
						{{ sprintf(__('查看全部%s家门店地址'), chain_rows.length) }}
					</view>

					<!--店铺信息-->
					<view class="m-panel m-panel-access goods-detail-store" v-if="(Config.MULTISHOP_ENABLE && !if_saas_status && !isStoreFlag) && false">
						<navigator redirect="true" :url="'/pagesub/index/store?store_id=' + (ProductInfo.store_id)">
							<view class="m-panel-hd store_name" style="height: 44rpx;">
								<label class="iconfont icon-store"></label>
								<label class="icon-mall" v-if="(store_info.store_is_selfsupport)">{{ __('自营') }}</label>
								<label class="icon-mall" style="color:#333;">{{ store_info.store_name }}</label>
							</view>
							<view class="m-panel-bd" style="clear: both;"> <!-- v-if="(!store_info.store_is_selfsupport)"  -->
								<view class="store-rate">
									<label class="equal" style="width: 33%;">{{ __('描述相符') }}
										<view style="padding-left: 10rpx;">{{ store_info.store_credit.store_desccredit.credit }}</view>
										<!--<i></i>-->
									</label>
									<label class="equal" style="width: 33%;text-align: center;">{{ __('服务态度') }}
										<view style="padding-left: 10rpx;">
											{{ store_info.store_credit.store_servicecredit.credit || '--' }}
										</view>
										<!--<i></i>-->
									</label>
									<label class="equal" style="width: 33%;text-align: right;">{{ __('发货速度') }}
										<view style="padding-left: 10rpx;">
											{{ store_info.store_credit.store_deliverycredit.credit || '--' }}
										</view>
										<!--<i></i>-->
									</label>
								</view>

								<view class="item-more"></view>
							</view>
						</navigator>
					</view>


					<!--评论-->
					<view :class="'m-panel m-panel-access m-comment ' + ((ProductInfo.analytics_row && ProductInfo.analytics_row.product_evaluation_num>0)?'':'hide')" v-if="false">
						<view class="m-panel-hd">
							{{ __('评价') }}（{{ ProductInfo.analytics_row ? ProductInfo.analytics_row.product_evaluation_num : 0 }}）
							<label v-if="(ProductInfo.analytics_row && ProductInfo.analytics_row.evaluation_percent)">{{ __('好评度') }}
								<text>{{ ProductInfo.analytics_row.evaluation_percent }}%</text>
							</label>
						</view>
						<view class="m-panel-bd">
							<view class="m-media-box m-media-box-appmsg" v-if="(ProductInfo.last_comment_row)">
								<view class="m-media-box-hd">
									<image lazy-load class="m-media-box-thumb" :src="(ProductInfo.last_comment_row.user_avatar)" />
								</view>
								<view class="m-media-box-bd">
									<label class="m-media-box-title">{{ ProductInfo.last_comment_row.user_nickname }}</label>
									<view class="m-media-box-desc">
										<view style="margin-bottom:10rpx;">
											<label style="margin-right:10rpx;font-size:20rpx;">
												{{ ProductInfo.last_comment_row.item_name }}
											</label>
										</view>
										<label v-if="(ProductInfo.last_comment_row.comment_content!=null)">
											{{ ProductInfo.last_comment_row.comment_content }}
										</label>
									</view>

									<view class="m-media-box-info">
										<view class="m-media-box-info-meta m-start" v-for="(itemIndex, i) in [1, 2, 3, 4, 5]" :key="i">
											<label :class="'iconfont icon-start ' + ((itemIndex<=ProductInfo.last_comment_row.comment_scores)?'sel':'')" :data-index="(itemIndex)" :data-type="1"></label>
										</view>
										<view class="m-media-box-info-meta m-tiem">{{ ProductInfo.last_comment_row.comment_time }}</view>
										<view class="m-media-list">
											<image lazy-load v-for="(item, ii) in ProductInfo.last_comment_row.comment_image" :key="ii" :src="(item)" @click="ImgTap"></image>
										</view>
									</view>
								</view>
							</view>
						</view>
						<view class="m-panel-ft" v-if="(ProductInfo.analytics_row && ProductInfo.analytics_row.product_evaluation_num>1)">
							<navigator :url="'/pages/product/commentlist?id=' + (proId)" class="m-cell m-cell-access m-cell-link">
								<view class="m-cell-bd">{{ __('查看全部评论') }}</view>
								<text class="m-cell-ft"></text>
							</navigator>
						</view>
					</view>

					<block v-if="false">
						<!--问答-->
						<view :class="'m-panel m-panel-access m-comment'" v-if="(faq_rows.length>0)" :data-product_id="proId" @click="listFaq">
							<view class="m-cell m-cell-access m-info-sp">
								<view class="m-cell-bd">
									<text class="m-info-tip">
										{{ __('问大家') }}（{{ ProductInfo.analytics_row ? ProductInfo.analytics_row.product_ask_num : 0 }}）
									</text>
								</view>
								<view class="m-cell-ft">{{ __('查看全部') }}</view>
							</view>
							<view class="m-panel-bd">
								<view class="m-media-box m-media-box-appmsg" style="padding-top: 20rpx;padding-bottom: 20rpx;" v-for="(faq_row, idx) in faq_rows" :key="idx">
									<view class="m-media-box-bd">
										<view class="m-media-box-desc">
											<label style="padding:6rpx;font-size:20rpx;background-color: #f30213;color: #fff;">
												{{ __('问') }}
											</label>
											<label style="margin-left:10rpx;font-size:20rpx;">
												{{ faq_row.story_title }}
											</label>
											<label style="float: right;">
												{{ sprintf(__('%d 个回答'), faq_row.story_comment_count) }}
											</label>
										</view>
									</view>
								</view>
							</view>
						</view>
						<view :class="'m-panel m-panel-access m-comment'" v-else>
							<view class="m-panel-hd">{{ __('暂无问答') }}
							</view>
						</view>
						<view :class="'m-panel m-panel-access m-comment'">
							<view class="m-panel-bd">
								<view class="m-media-box m-media-box-appmsg" style="padding-top: 16rpx;padding-bottom: 16rpx;">
									<view class="m-media-box-bd">
										<view class="m-media-box-desc">
											<label style="padding:6rpx;font-size:20rpx;background-color: #f30213;color: #fff;">
												{{ __('问大家') }}
											</label>
											<label style="margin-left:10rpx;font-size:20rpx;">
												{{ __('宝贝好不好，问过已买过的人') }}
											</label>
											<navigator :url="'/community/community/post?pid=' + proId" class="u-link-btn" style="padding: 5px 10px;border: 1px solid #DB384C;font-size: 11px;color: #DB384C;border-radius: 25px;float: right;">
												{{ __('去提问') }}
											</navigator>
										</view>
									</view>
								</view>
							</view>
						</view>
					</block>

				</view>
				<view>
					<view class="m-panel-access m-detail">
						<view class="m-tab">
							<view class="m-navbar">
								<view :class="'m-navbar-item ' + (tapindex==1?'m-navbar-item-on':'')" v-if="(ProductInfo.product_detail)" @click="picDetail">
									{{ __('商品详情') }}
								</view>
								<view :class="'m-navbar-item ' + (tapindex==2?'m-navbar-item-on':'')" v-if="(ProductInfo.product_extension)" @click="spcParam">
									{{ __('规格参数') }}
								</view>
								<view :class="'m-navbar-item ' + (tapindex==3?'m-navbar-item-on':'')" v-if="(ProductInfo.product_param)" @click="packingList">
									{{ __('包装清单') }}
								</view>
								<block v-if="(ProductInfo.activityType=='GROUPBOOKING')">
									<view :class="'m-navbar-item ' + (tapindex==4?'m-navbar-item-on':'')" @click="showFightGroup">
										{{ __('拼团玩法') }}
									</view>
								</block>
								<block v-else>
								</block>
								<view :class="'m-navbar-item ' + (tapindex==5?'m-navbar-item-on':'')" v-if="(ProductInfo.product_service)" @click="showServiceTab">
									{{ __('售后服务') }}
								</view>
								<view :class="'m-navbar-item ' + (tapindex==6?'m-navbar-item-on':'')" v-if="(isVoucher)" @click="showVoucherTab">
									{{ __('优惠信息') }}
								</view>
							</view>
						</view>
						<view :class="'m-RichText ' + (tapindex==1?'':'hide')" v-if="ProductInfo.product_detail">
							<wxParse :content="ProductInfo.product_detail" :imageProp="{lazyLoad:true, mode:'widthFix'}" />
						</view>
						<view :class="'m-RichText ' + (tapindex==2?'':'hide')" v-if="ProductInfo.product_extension">
							<wxParse :content="ProductInfo.product_extension" :imageProp="{lazyLoad:true, mode:'widthFix'}" />
						</view>
						<view :class="'m-RichText ' + 'm-Packinglist ' + (tapindex==3?'':'hide')" v-if="ProductInfo.product_param">
							<wxParse :content="ProductInfo.product_param" :imageProp="{lazyLoad:true, mode:'widthFix'}" />
						</view>
						<view v-if="(ProductInfo.activity_type_id == StateCode.ACTIVITY_TYPE_GROUPBOOKING)" :class="'m-Packinglist ' + (tapindex==4?'':'hide')" style="background-color:#fff;font-size:12px;">
							<view class="groupbooking-rule">
								<view class="groupbooking-rule-title">
									<span class="red-dot"></span>{{ __('开团玩法') }}
							</view>
								<view class="groupbooking-rule-line"></view>
								<view class="flex-container">
									<view class="flex-item">
										<image lazy-load class="flex-item-img" src="/static/images/groupbooking/ptg.png" />
										<view>{{ __('开团/参团') }}</view>
							</view>
									<view class="arrow">
										<image lazy-load class="right-arrow" src="/static/images/groupbooking/right_arrow.png" />
									</view>
									<view class="flex-item">
										<image lazy-load class="flex-item-img" src="/static/images/groupbooking/yqhy.png" />
										<view>{{ __('邀请好友') }}</view>
									</view>
									<view class="arrow">
										<image lazy-load class="right-arrow" src="/static/images/groupbooking/right_arrow.png" />
									</view>
									<view class="flex-item">
										<image lazy-load class="flex-item-img" src="/static/images/groupbooking/cg.png" />
										<view>{{ __('拼团完成') }}</view>
									</view>
								</view>

								<view style="font-size:12px;line-height:50rpx;">
									<view style="text-align:left;">
										{{ __('活动时间') }}：{{  ProductInfo.activity_item_row.activity_starttime }} -
										{{ ProductInfo.activity_item_row.activity_endtime }}
									</view>
									<view style="text-align:left;">
										{{ sprintf(__('开团支付后，需在%s天内邀请%s人参团，人数不足自动退款。'), ProductInfo.DayLimit, ProductInfo.UserLimit) }}
									</view>
									<view style="text-align:left;">{{ __('拼团商品会尽快发货。') }}</view>
									<view style="text-align:left;line-height: 20px;" class="highlight">
								<view>{{ __('① 选择商品') }}</view>
								<view>{{ __('② 支付开团或参团') }}</view>
								<view>{{ __('③ 等待好友参团支付') }}</view>
								<view>{{ __('④ 达到人数拼团成功') }}</view>
							</view>
									<view style="text-align:left;">{{ __('如在限定时间内参团人数没达成，系统自动退款。') }}</view>
								</view>

							</view>

						</view>
						<view :class="' m-Packinglist ' + (tapindex==5?'':'hide')" v-if="ProductInfo.product_service">
							<rich-text type="text" :nodes="(ProductInfo.product_service)" />
						</view>
						<view :class="(tapindex==6?'':'hide')">
							<view class="m-coupon-list">
								<block v-if="(voucherList.length>0)">
									<view class="m-coupon-item" v-for="(item, ii) in voucherList" :key="ii">
										<view class="m-coupon-info">
											<view class="m-coupon-text">
												<label>{{ item.activity_name }}</label>
												<text>
													{{sprintf(__('满￥%s 减￥%s'), item.activity_rule.requirement.buy.subtotal, item.activity_rule.voucher_price)}}{{ item.activity_remark }}
												</text>
												<text>
													{{ sprintf(__('有效日期至：%s'), item.activity_endtime) }}
												</text>
											</view>
											<view class="m-coupon-price">
												<view class="price-content-box ">
													<label>{{ __('￥') }}</label>{{ item.activity_rule.voucher_price }}
												</view>
											</view>
										</view>
										<view v-if="(0)" @click="receivenowWeixin" :data-cardId="(item.CardId)" class="m-coupon-btn" :data-id="(item.Id)" :data-isreceive="(item.IsCanReceive)">
											<label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{
                          item.IsCanReceive == 0 ? __('立即领取') : __('已经领取')
                        }}</label>
										</view>
										<view class="m-coupon-btn" @click="doReceive" :data-isreceive="(item.if_gain ? '1' : '-1')" :data-id="(item.activity_id)" :data-point="(item.activity_rule.requirement.points.needed)">
											<label :class="'btn-coupon ' + ( item.if_gain ? '' : 'btn-coupon-gray')">{{
                          item.if_gain ? __('立即领取') : __('已经领取')
                        }}</label>
										</view>
									</view>

								</block>
								<view class="m-nullcontent" v-else>
									<view class="m-nullpage-middle">
										<label class="iconfont icon-meiyougengduo"></label>
										<view class="m-null-tip">
											<text>{{ __('亲~什么都没有') }}</text>
											<text>{{ __('没有可领的优惠券~') }}</text>
										</view>
									</view>
								</view>
							</view>
							<!--<view class="msk1" v-if="(0)" @click.stop="outertouch">
                        <view class="m-coupon-box" @click.stop="innertouch">
                            <view class="m-coupon-box-top">

                            </view>
                            <view class="m-coupon-box-content">

                                <view class="m-coupon-box-title">
                                    优惠券领取成功
                                    <view class="m-coupon-box-tip">点击右上角分享给好友</view>
                                </view>
                                <scroll-view scroll-y="true" class="m-coupon-box-list">
                                    <view class="m-coupon-box-item" v-for="(Coupons)">
                                        <label>{{item.activity_rule.voucher_price}}</label>
                                        <text>{{item.activity_name}}</text>
                                    </view>
                                </scroll-view>
                            </view>
                            <view class="m-coupon-box-bottom">

                            </view>
                            <view class="u-close-btn" @click.stop="outertouch">✕</view>
                        </view>
                    </view>-->
						</view>
					</view>
					<view class="m-tips" v-if="(!IsChannel)">
						<view class="m-tips-logo">
							<image lazy-load mode="aspectFit" src="/static/images/logo_tech.png"></image>
						</view>
						<view class="m-tips-str">{{ __('商城套件系统提供技术支持') }} {{ versionNumber }}</view>
					</view>
				</view>

				<view class="u-cleanbox"></view>
			</scroll-view>

      <view class="is-rest" v-if="store_info.store_biz_state == 2"></view>

			<view  class="m-footer-btn bottom-safearea" :class="ProductInfo.is_virtual ? 'm-fg-btn' : ''" v-if="(ProductInfo.activityType!='GROUPBOOKING') && store_info.store_biz_state == 1">

				<block v-if="(ProductInfo.is_virtual)">
					<view class="m-footer-btn-list">
						<view class="m-footer-btn-item" style="width: 50%;" :data-id="(proId)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" v-if="(Config.MULTISHOP_ENABLE && !if_saas_status && !isStoreFlag)">
							<navigator redirect="true" :url="'/pagesub/index/store?store_id=' + (ProductInfo.store_id)" class="u-go-home1">
								<view class="m-footer-btn-icon">
									<!--<contact-button size="27" type="default-dark" session-from="weapp">
			                </contact-button>-->
									<label class="iconfont icon-store "></label>
								</view>
								<text>{{ __('店铺') }}</text>
							</navigator>
						</view>
						<view class="m-footer-btn-item" style="width: 50%;" @click="PDCollection" :data-id="(ProductInfo.item_id)">
							<view class="m-footer-btn-icon">
								<label :class="['iconfont', isCollection?'icon-favoritesfilling':'icon-favorite', isCollection?' highlight ':'']"></label>
							</view>
							<text>{{ isCollection ? __('已收藏') : __('收藏') }}</text>
						</view>
						<view class="m-footer-btn-item" :data-id="(ProductInfo.item_id)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" :data-type="10" @click="tplGoToPage" v-if="(chatUrl)" style="width: 50%;">
							<view class="m-footer-btn-icon">
								<!--<contact-button size="27" type="default-dark" session-from="weapp">
			            </contact-button>-->
								<label class="iconfont icon-more "></label>
							</view>
							<text>{{ __('客服') }}</text>
						</view>
					</view>
					<block v-if="(!ProductInfo.normalStatus)">
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('立即预约') }}
						</view>
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('商品已下架') }}
						</view>
					</block>
					<block v-else-if="(!ProductInfo.ifStore)">
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('立即预约') }}
						</view>
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('库存不足') }}
						</view>
					</block>
					<block v-else-if="(ProductInfo.Status=='offline'||ProductInfo.Pstatus=='offline'||ProductInfo.IsDelete)">
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('立即预约') }}
						</view>
						<view class="m-footer-btn-main m-footer-desable" style="width: 70%;">
							{{ __('商品已下架') }}
						</view>
					</block>
					<block v-else>
						<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main m-now" style="width: 70%;" @click="ckselectsp1">
							{{ __('立即预约') }}
						</view>
						<view v-else class="m-footer-btn-main m-now" style="width: 70%;" @click.stop="buynow">
							{{ __('立即预约') }}
						</view>
						<!--<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main" @click="ckselectsp">
			      {{__('加入购物车')}}
			    </view>
			    <view v-else class="m-footer-btn-main" @click.stop="addCart">
			      {{__('加入购物车')}}
			    </view>-->
					</block>
				</block>
				<block v-else>
					<view class="m-footer-btn-list">
						<view class="m-footer-btn-item" :data-id="(proId)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" v-if="(Config.MULTISHOP_ENABLE && !if_saas_status && !isStoreFlag)">
							<navigator redirect="true" :url="'/pagesub/index/store?store_id=' + (ProductInfo.store_id)" class="u-go-home1">
								<view class="m-footer-btn-icon">
									<!--<contact-button size="27" type="default-dark" session-from="weapp">
			                </contact-button>-->
									<label class="iconfont icon-store "></label>
								</view>
								<text>{{ __('店铺') }}</text>
							</navigator>
						</view>
						<view class="m-footer-btn-item" @click="PDCollection" :data-id="(ProductInfo.item_id)" v-if="(!chatUrl)">
							<view class="m-footer-btn-icon">
								<label :class="['iconfont', isCollection?'icon-favoritesfilling':'icon-favorite', isCollection?'highlight ':'']"></label>
							</view>
							<text>{{ isCollection ? __('已收藏') : __('收藏') }}</text>
						</view>

						<view class="m-footer-btn-item" :data-id="(proId)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" :data-type="10" @click="tplGoToPage" v-if="(chatUrl)">
							<view class="m-footer-btn-icon">
								<!--<contact-button size="27" type="default-dark" session-from="weapp">
			            </contact-button>-->
								<label class="iconfont icon-more "></label>
							</view>
							<text>{{ __('客服') }}</text>
						</view>
						<view data-url="/pages/index/cart" class="m-footer-btn-item" @click="goTabBar">
							<view class="m-footer-btn-icon">
								<label class="iconfont icon-cart "></label>
								<uni-badge v-if="cartNum>0" :text="cartNum" type="danger" style="margin-top: -12rpx;margin-left: -12rpx;"></uni-badge>
							</view>
							<text>{{ __('购物车') }}</text>
						</view>
					</view>
					<block v-if="(!ProductInfo.normalStatus)">
						<view class="m-footer-btn-main m-footer-desable m-footer-btn-main-left">
							{{ __('立即购买') }}
						</view>
						<view class="m-footer-btn-main m-footer-desable m-footer-btn-main-right">
							{{ __('商品已下架') }}
						</view>
					</block>
					<block v-else-if="(!ProductInfo.ifStore)">
						<view class="m-footer-btn-main m-footer-desable m-footer-btn-main-left">
							{{ __('立即购买') }}
						</view>
						<view class="m-footer-btn-main m-footer-desable m-footer-btn-main-right">
							{{ __('库存不足') }}
						</view>
					</block>
					<block v-else>
						<block v-if="ProductInfo.activity_type_id == StateCode.ACTIVITY_TYPE_GROUPBOOKING">
							<view v-if="true" class="m-footer-btn-main m-footer-btn-main-left" :data-type="1" @click="ckselectsp">
								{{ __('加入购物车') }}
							</view>
							<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main m-footer-btn-main-right m-now" @click="ckselectsp1">
								{{ isJoin ? __('立即参团') : __('发起拼团') }}
							</view>
							<view v-else class="m-footer-btn-main m-footer-btn-main-right m-now" @click.stop="immediatelyGroupbooking">
								<!-- 不需要选择数量使用： buynow -->
								{{ isJoin ? __('立即参团') : __('发起拼团') }}
							</view>
						</block>
						<block v-else>
							<view class="m-footer-btn-main m-footer-btn-main-left" @click="ckselectsp">
								{{ __('加入购物车') }}
							</view>
							<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main m-footer-btn-main-right m-now" @click="ckselectsp1">
								{{ __('立即购买') }}
							</view>
							<view v-else class="m-footer-btn-main m-footer-btn-main-right m-now" @click.stop="ckselectsp1">
								<!-- 不需要选择数量使用： buynow -->
								{{ __('立即购买') }}
							</view>
						</block>
					</block>


				</block>
			</view>

			<view class="m-footer-btn m-fg-btn bottom-safearea" v-if="(ProductInfo.activityType=='GROUPBOOKING') && store_info.store_biz_state == 1">
				<view class="m-footer-btn-list">
					<view class="m-footer-btn-item" style="width: 50%;" :data-id="(proId)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" v-if="(Config.MULTISHOP_ENABLE && !if_saas_status && !isStoreFlag)">
						<navigator redirect="true" :url="'/pagesub/index/store?store_id=' + (ProductInfo.store_id)" class="u-go-home1">
							<view class="m-footer-btn-icon">
								<!--<contact-button size="27" type="default-dark" session-from="weapp">
			            </contact-button>-->
								<label class="iconfont icon-store "></label>
							</view>
							<text>{{ __('店铺') }}</text>
						</navigator>
					</view>
					<view class="m-footer-btn-item" style="width: 50%;" @click="PDCollection" :data-id="(proId)" v-if="(!chatUrl)">
						<view class="m-footer-btn-icon">
							<label :class="'iconfont ' + (isCollection?'icon-favoritesfilling':'icon-favorite') + (isCollection?' highlight ':'')"></label>
						</view>
						<text>{{ isCollection ? __('已收藏') : __('收藏') }}</text>
					</view>
					<view class="m-footer-btn-item" style="width: 50%;" :data-id="(proId)" :data-name="(store_info.store_name)" :data-keyword="(ProductInfo.keyWord)" :data-appid="(AppId)" :data-appurl="(chatUrl)" :data-type="10" @click="tplGoToPage" v-if="(chatUrl)">
						<view class="m-footer-btn-icon">
							<!--<contact-button size="27" type="default-dark" session-from="weapp">
			        </contact-button>-->
							<label class="iconfont icon-more "></label>
						</view>
						<text>{{ __('客服') }}</text>
					</view>
				</view>

        
				<block v-if="ProductInfo.activity_type_id == StateCode.ACTIVITY_TYPE_GROUPBOOKING">
					<view v-if="true" class="m-footer-btn-main m-footer-btn-main-left" :data-type="1" @click="ckselectsp">
						<view style="height: 16px;line-height: 26px;font-size: 12px;">{{ __('￥') }}{{ number_format(ProductInfo.ItemSalePrice, 2) }}</view>
						<view style="height: 30px;line-height: 30px;">{{ __('加入购物车') }}</view>
					</view>
					<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main m-footer-btn-main-right m-now" @click="ckselectsp1">
						<view style="height: 16px;line-height: 26px;font-size: 12px;">{{ __('￥') }}{{ number_format(ProductInfo.ShowPrice, 2) }}</view>
						<view style="height: 30px;line-height: 30px;">{{ isJoin ? __('立即参团') : __('发起拼团') }}</view>
					</view>
					<view v-else class="m-footer-btn-main m-footer-btn-main-right m-now" @click.stop="immediatelyGroupbooking">
						<view style="height: 16px;line-height: 26px;font-size: 12px;">{{ __('￥') }}{{ number_format(ProductInfo.ShowPrice, 2) }}</view>
						<!-- 不需要选择数量使用： buynow -->
						<view style="height: 30px;line-height: 30px;">{{ isJoin ? __('立即参团') : __('发起拼团') }}</view>
					</view>
				</block>
				<block v-else>
					<view class="m-footer-btn-main m-footer-btn-main-left" @click="ckselectsp">
						{{ __('加入购物车') }}
					</view>
					<view v-if="(ProductInfo.SpecLst.length>0)" class="m-footer-btn-main m-footer-btn-main-right m-now" @click="ckselectsp1">
						{{ __('立即购买') }}
					</view>
					<view v-else class="m-footer-btn-main m-footer-btn-main-right m-now" @click.stop="ckselectsp1">
						<!-- 不需要选择数量使用： buynow -->
						{{ __('立即购买') }}
					</view>
				</block>
			</view>

			<view :class="'m-panel-sp ' + (selectsp==0?'hide':'') " @click.stop="closesp">
				<view :class="'m-panel-sp-content ' + (selectct==0?'bounceOutDown animated':'bounceInUp animated')" @click.stop>
					<view class="m-panel-sp-pinfo">
						<view class="m-panel-sp-pimg">
							<image lazy-load :src="(selectimg||ProductInfo.productPicList[0].Path)" />
						</view>
						<view class="m-panel-sp-pname">
							<view class="m-pprice" v-if="(ProductInfo.activityType=='GROUPBOOKING'&&isModified)">
								{{ __('￥') }}{{ number_format(ProductInfo.ItemSalePrice, 2) }}
							</view>
							<view class="m-pprice" v-if="(ProductInfo.activityType!='GROUPBOOKING')">

								<block v-if="ProductInfo.ShowPrice">
									{{ __('￥') }}{{ number_format(ProductInfo.ShowPrice, 2) }}
								</block>

								<block v-if="ProductInfo.item_unit_points">
									<text style="margin-left: 20rpx;font-size: 22rpx;">+
										<text style="font-size:26rpx">{{ ProductInfo.item_unit_points }}</text>
										{{ __('积分') }}
									</text>
								</block>

								<block v-if="ProductInfo.item_unit_sp">
									<text style="margin-left: 20rpx;font-size: 22rpx;">+
										<text style="font-size:26rpx">{{ ProductInfo.item_unit_sp }}</text>
										{{ __('众宝') }}
									</text>
								</block>

							</view>
							<view class="m-pprice" v-if="(ProductInfo.activityType=='GROUPBOOKING'&&!isModified)">
								{{ __('￥') }}{{ number_format(ProductInfo.ShowPrice, 2) }}
							</view>

							<view class="m-pstock">{{ sprintf(__('库存%s件'), ProductInfo.ifStore ? ProductInfo.item_quantity : 0) }}
							</view>
							<view v-if="(ProductInfo.SpecLst.length)" class="m-pspec">{{ __('已选择：') }}
								<block v-for="(items, i) in ProductInfo.SpecLst" :key="i">
									<!-- #ifdef H5 -->
									<block v-for="(item, ii) in items.svLst" :key="i + '_' + ii">
										<span v-if="(item.IsChecked)" style="margin-left: 4rpx;">{{ item.Name }}</span>
									</block>
									<!-- #endif -->
									<!-- #ifndef H5 -->
									<block v-for="(item, ii) in items.svLst" :key="ii">
										<span v-if="(item.IsChecked)" style="margin-left: 4rpx;">{{ item.Name }}</span>
									</block>
									<!-- #endif -->
								</block>
							</view>
						</view>
						<view class="uni-icon uni-icon-closeempty m-panel-sp-icon" color="#888" @click="closesp"></view>
					</view>
					<scroll-view class="m-panel-sp-listbox" scroll-y="true">
						<block v-if="b2bFlag && ProductInfo.product_spec.length>0">
							<view class="m-panel-sp-listbox-item">
								<block v-if="(ProductInfo.product_spec[0])">
									<text>{{ ProductInfo.product_spec[0].name }}：</text>
									<block v-for="(items, key1) in ProductInfo.product_spec[0].item" :key="key1">
										<view class="m-panel-sp-labellist1">
											<!-- {{key1}}
											{{ProductInfo.product_spec[0].item}}
											{{typeof(ProductInfo.item_spec[key1])}}  :data-unit_id="ProductInfo.item_spec[key1].id"-->
											<label :class="items.select ? 'm-panel-sp-sellabel' : 'm-panel-sp-sellabel-no'" @click="selectS(items, key1, items.name, $event)" :data-ckid="items.select ? ProductInfo.SpecLst[0].svLst[key1].Id : items.id" :data-unit_id="1" :data-spid="items.id" :data-enable="(ProductInfo.spec_item_map[items.id])">{{ items.name }}</label>
											<!-- ckid-颜色id  unitid-规格id  spid 规格商品id-->
										</view>
										<view class="m-panel-sp-labellist" :class="items.select ? 'm-panel-sp-labellist' : 'm-panel-sp-labellist2'">
										</view>
									</block>
								</block>
								<block v-for="(item, ii) in product_uniqid" :key="ii">
									<label :class="item[6] == color ? 'm-panel-sp-sellabel m-ys' : 'm-panel-sp-sellabel1 m-ys'" style="width:94%;float:left;height:50rpx;line-height:50rpx;overflow:hidden;padding-left:10rpx;">
										{{ item[4] }}
										<view class="u-cart-num" style="margin-top:-6rpx;float:right">
											<view class="example-body" style="height:100%">
												<uni-number-box :min="0" :max="item[5]" :value="numberValue" :id="ii" @change="changes($event, ii)" />
											</view>
										</view>
										<text style="float:right">{{ sprintf(__('库存%s件'), item[5] ? item[5] : 0) }}</text>
									</label>
								</block>
							</view>
						</block>
						<block v-for="(items, key1) in ProductInfo.SpecLst" :key="key1" v-else>
							<view class="m-panel-sp-listbox-item">
								<view class="m-cells-title">{{ items.Name }}</view>
								<view class="m-panel-sp-labellist">
									<text>{{ ProductInfo.product_spec[key1].name }}：</text>
									<!-- #ifdef H5 -->
									<block v-for="(item, ii) in items.svLst" :key="key1 + '_' + ii">
										<label v-if="(item.IsChecked)" class="m-panel-sp-sellabel">{{ item.Name }}</label>
										<label v-else :data-ckid="(items.ckid)" :data-unit_id="(items.unit_id)" :data-spid="(item.Id)" :data-enable="(ProductInfo.spec_item_map[item.Id])" :class="(ProductInfo.spec_item_map[item.Id] ? ' ' : 'item_disabled')" @click.stop="selectSpec">{{ item.Name }}
										</label>
									</block>
									<!-- #endif -->
									<!-- #ifndef H5 -->
									<block v-for="(item, ii) in items.svLst" :key="ii">
										<label v-if="(item.IsChecked)" class="m-panel-sp-sellabel">{{ item.Name }}</label>
										<label v-else :data-ckid="(items.ckid)" :data-unit_id="(items.unit_id)" :data-spid="(item.Id)" :data-enable="(ProductInfo.spec_item_map[item.Id])" :class="(ProductInfo.spec_item_map[item.Id] ? ' ' : 'item_disabled')" @click.stop="selectSpec">{{ item.Name }}
										</label>
									</block>
									<!-- #endif -->
								</view>
							</view>
						</block>

						<!-- <view style="height:96rpx;width:100%;"></view> -->
					</scroll-view>
					<view style="height:calc(140rpx + env(safe-area-inset-bottom))"></view>
					<view :class="['m-m-panel-sp-btn', (ProductInfo.ifStore && ProductInfo.normalStatus) ? '' : 'm-footer-desable']">
						<view class="m-pprice" style="width:50%;float:left;height:100rpx;line-height:100rpx;text-align:center" v-if="b2bFlag && ProductInfo.product_spec.length>0">
							{{ __('￥') }}{{ number_format(price, 2) }}&nbsp;&nbsp;&nbsp;&nbsp;{{ __('数量:') }} {{ quantity }}
						</view>
						<view class="m-m-panel-sp-lbtn" :style="(ProductInfo.activity_type_id == StateCode.ACTIVITY_TYPE_GROUPBOOKING&&isModified==false?'display:none':'')" v-else>
							<view style="width: 100rpx">{{ __('数量') }}</view>
							<view class="u-cart-num" style="margin-top:10rpx">
								<view class="u-num-btn" @click.stop="sub">-</view>
								<input type="number" v-model="numval" @blur="writenum" />
								<view class="u-num-btn" @click.stop="add">+</view>
							</view>
						</view>

						<block v-if="(ProductInfo.activity_type_id == StateCode.ACTIVITY_TYPE_GROUPBOOKING)">
							<view v-if="(!ProductInfo.normalStatus)" class="m-m-panel-sp-rbtn m-footer-btn-main-right m-footer-desable" style="width:100%">
								{{ __('商品已下架') }}
							</view>
							<view v-else-if="(!ProductInfo.ifStore)" class="m-m-panel-sp-rbtn m-footer-btn-main-right m-footer-desable" style="width:100%">
								{{ __('库存不足') }}
							</view>
							<block v-else>
								<block v-if="(addCartFlag)">
									<view v-if="(b2bFlag && ProductInfo.product_spec.length>0)" class="m-m-panel-sp-rbtn m-footer-btn-main" style="width:100%" @click.stop="addCart">
										{{ __('加入购物车') }}
									</view>
									<view v-else class="m-m-panel-sp-rbtn m-footer-btn-main-right" style="width:100%" @click.stop="addCart">
										{{ __('加入购物车') }}
									</view>
								</block>
								<view class="m-m-panel-sp-rbtn m-footer-btn-main-right" style="width:100%" @click.stop="immediatelyGroupbooking" v-else-if="(!isJoin)">
									{{ __('立即开团') }}
								</view>
								<view class="m-m-panel-sp-rbtn m-footer-btn-main-right" style="width:100%" @click.stop="immediatelyGroupbooking" v-else-if="(isJoin)">
									{{ __('立即参团') }}
								</view>
							</block>
						</block>
						<block v-else>
							<view v-if="(!ProductInfo.normalStatus)" class="m-m-panel-sp-rbtn m-footer-btn-main-right m-footer-desable" style="width:100%">
								{{ __('商品已下架') }}
							</view>
							<view v-else-if="(!ProductInfo.ifStore)" class="m-m-panel-sp-rbtn m-footer-btn-main-right m-footer-desable" style="width:100%">
								{{ __('库存不足') }}
							</view>
							<block v-else-if="ProductInfo.kind_id != 1201">
								<view class="m-m-panel-sp-rbtn m-footer-btn-main-right" @click.stop="buynow">
									{{ __('立即预约') }}
								</view>
							</block>
							<block v-else>
								<block v-if="(addCartFlag)">
									<view v-if="(b2bFlag && ProductInfo.product_spec.length>0)" class="m-m-panel-sp-rbtn m-footer-btn-main" @click.stop="addCart">
										{{ __('加入购物车') }}
									</view>
									<view v-else class="m-m-panel-sp-rbtn m-footer-btn-main-right" @click.stop="addCart">
										{{ __('加入购物车') }}
									</view>
								</block>
								<block v-else-if="(buyFlag)">
									<view v-if="(b2bFlag && ProductInfo.product_spec.length>0)" class="m-m-panel-sp-rbtn  m-footer-btn-main" @click.stop="buynow">
										{{ __('立即购买') }}
									</view>
									<view v-else class="m-m-panel-sp-rbtn  m-footer-btn-main-right" @click.stop="buynow">
										<label v-if="ProductInfo.kind_id != 1201">{{ __('立即预约') }}</label>
										<label v-else>{{ __('立即购买') }}</label>
									</view>
								</block>
							</block>
						</block>
					</view>
				</view>
			</view>
		</block>
		<view class="m-nullpage" v-else>
			<view class="m-nullpage-middle" v-if="loaded">
				<label class="iconfont icon-meiyougengduo"></label>
				<view class="m-null-tip">
					<text>{{ __('什么都没有！') }}</text>
				</view>
			</view>
			<view class="m-nullpage-middle" v-else>
				<loading></loading>
			</view>
		</view>

		<!-- 弹出层 -->
		<uni-popup ref="popup" type="center">
			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_GIFTBAG">
				<view class="uni-banner giftbag" v-if="ProductInfo.giftbag_item_data" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;height:700rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_name }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-for="(g_b_item,i) in ProductInfo.giftbag_item_data" :key="i">
							<view>
								<view hover-class="none" :data-pid="(g_b_item.item_id)" :data-state="(g_b_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="g_b_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ g_b_item.product_name }}</label>
										</view>
										<view class="m-project-tips" v-if="false">
											<label>X{{ (g_b_item.activity_quantity) }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(g_b_item.item_unit_price, 2) }}</label>
											<label style="margin-left: 10rpx">x {{ (g_b_item.activity_quantity) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						{{ __('套餐内包含以上商品，原价共') }}
						<span style="color: red;font-size: 16px;font-weight: bold;">{{ ProductInfo.activity_old_price }}</span>
						{{ __('元，组合购买价') }}
						<span style="color: red;font-size: 16px;font-weight: bold;">{{ ProductInfo.activity_item_row.activity_rule.giftbag_amount }}</span>
						{{ __('元，可省去') }}<span style="color: red;font-size: 16px;font-weight: bold;">{{ ProductInfo.activity_diff_price }}</span>{{ __('元') }}
					</view>

					<view class="go_buy">
						<button type="warn" class="mini-btn" @click="goGiftBag" style="border-radius:7px!important;line-height:96rpx;height: 48px;background:#2c394d;font-size:18px;width: 100%;">
							{{ __('立即购买') }}
						</button>
					</view>
				</view>
			</block>

			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_GIFT">
				<view class="uni-banner giftbag" v-if="ProductInfo.gift_rows" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;height:700rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_name }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-for="(g_item,i) in ProductInfo.activity_item_row.activity_rule.item_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(g_item.item_id)" :data-state="(g_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="g_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ g_item.product_name }}</label>
										</view>
										<view class="m-project-tips">
											<label></label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(g_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>
					<block v-if="ProductInfo.activity_item_row.activity_rule.activity_join_mode == 1">
						<view class="gift-rule" v-for="(rule,r) in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							<!--按数量-->
							{{ sprintf(__('当前商品购买%s件，赠送以上商品自选最多%s件'), rule.total, rule.max_num) }}
						</view>
					</block>

					<block v-else>
						<view class="gift-rule" v-for="(rule,r) in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							<!--按数量-->
							{{ sprintf(__('当前商品购买满%s元，赠送以上商品自选最多%s件'), rule.total, rule.max_num) }}
						</view>
					</block>
				</view>
			</block>

			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_BARGAIN">
				<view class="uni-banner giftbag" v-if="ProductInfo.activity_item_row" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;height:700rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_name }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-for="(g_item,i) in ProductInfo.activity_item_row.activity_rule.item_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(g_item.item_id)" :data-state="(g_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="g_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ g_item.product_name }}</label>
										</view>
										<view class="m-project-tips">
											<label></label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(g_item.item_replace_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<block>
						<view class="gift-rule" v-for="(rule,r) in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							<!--按数量-->
							{{ sprintf(__('购买同一加价购活动商品满%s元，可换购商品%s件'), rule.total, rule.max_num) }}
						</view>
					</block>
				</view>
			</block>

			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_REDUCTION">
				<view class="uni-banner giftbag" v-if="ProductInfo.activity_item_row" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_title }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-if="ProductInfo.activity_item_row" v-for="(reduction_again_item,i) in ProductInfo.activity_item_row.reduction_item_data" :key="i">
							<view>
								<view hover-class="none" :data-pid="(reduction_again_item.item_id)" :data-state="(reduction_again_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="reduction_again_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ reduction_again_item.product_name }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(reduction_again_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						<view v-if="ProductInfo.activity_item_row.reduction_rule" v-for="(rule_items, r) in ProductInfo.activity_item_row.reduction_rule" :key="r">
							满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>元，可省去<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.max_num }}</span>元
						</view>
					</view>

				</view>
			</block>

			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_MANHUI">
				<view class="uni-banner giftbag" v-if="ProductInfo.activity_item_row" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_title }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-if="ProductInfo.activity_item_row" v-for="(reduction_again_item,i) in ProductInfo.activity_item_row.activity_rule.item_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(reduction_again_item.item_id)" :data-state="(reduction_again_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="reduction_again_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ reduction_again_item.product_name }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(reduction_again_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						<view v-if="ProductInfo.activity_item_row.activity_rule" v-for="(rule_items, r) in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							单笔订单满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>元，可返<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.activity_title }}</span>满返券
						</view>
					</view>

				</view>
			</block>

			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_MULTIPLE_FOLD">
				<view class="uni-banner giftbag" v-if="ProductInfo.fold_rows" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_title }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-if="ProductInfo.fold_rows" v-for="(fold_rows_item,i) in ProductInfo.fold_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(fold_rows_item.item_id)" :data-state="(fold_rows_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="fold_rows_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ fold_rows_item.product_name }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(fold_rows_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						<view v-if="ProductInfo.activity_item_row.activity_rule.rule" v-for="(rule_items, r)  in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							购买活动任意产品满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>件，可打<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.max_num / 10 }}</span>折
						</view>
					</view>

				</view>
			</block>
			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_REDUCTION_AGAIN">
				<view class="uni-banner giftbag" v-if="ProductInfo.activity_item_row" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_title }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-for="(reduction_again_item,i) in ProductInfo.activity_item_row.activity_rule.item_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(reduction_again_item.item_id)" :data-state="(reduction_again_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="reduction_again_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ reduction_again_item.product_name }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(reduction_again_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						<view v-if="ProductInfo.activity_item_row.activity_rule.rule" v-for="(rule_items, r)  in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							单笔订单满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>元，可折上折<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.max_num }}</span>元
						</view>
					</view>

				</view>
			</block>
			<block v-if="activity_type_id == StateCode.ACTIVITY_TYPE_DOUBLE_POINTS">
				<view class="uni-banner giftbag" v-if="ProductInfo.activity_item_row" style="box-shadow: 2px 9px 11px #001;background:#FFFFFF;border-radius: 7px;width: 680rpx;padding:26rpx;">
					<label class="activity-title">{{ ProductInfo.activity_item_row.activity_title }}</label>
					<scroll-view class="scroll-view_H" scroll-x="true">
						<view class="scroll-view-item_H" v-for="(reduction_again_item,i) in ProductInfo.activity_item_row.activity_rule.item_rows" :key="i">
							<view>
								<view hover-class="none" :data-pid="(reduction_again_item.item_id)" :data-state="(reduction_again_item.product_state_id)" @click="gotoDetail">
									<view class="product-l-img">
										<image style="width:100%;height:100%" :src="reduction_again_item.product_image" />
									</view>

									<view class="product-l-price">
										<view class="product_name">
											<label>{{ reduction_again_item.product_name }}</label>
										</view>
										<view class="price-new" style="color:#c0a080;">
											<label>{{ __('￥') }}{{ number_format(reduction_again_item.item_unit_price, 2) }}</label>
										</view>
									</view>
								</view>
							</view>
						</view>
					</scroll-view>

					<view class="gift-rule">
						<view v-if="ProductInfo.activity_item_row.activity_rule.rule" v-for="(rule_items, r)  in ProductInfo.activity_item_row.activity_rule.rule" :key="r">
							<view v-if="ProductInfo.activity_item_row.activity_rule.activity_join_mode == 2">
								单笔订单满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>元，可返积分倍数<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.points_double }}</span>，
								返积分基数<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.points_standard }}</span>
							</view>
							<view v-else>
								单笔订单该活动商品件数满<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.total }}</span>件，可返积分倍数<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.points_double }}</span>，
								返积分基数<span style="color: red;font-size: 16px;font-weight: bold;">{{ rule_items.points_standard }}</span>
							</view>

						</view>
					</view>

				</view>
			</block>


		</uni-popup>

		<view :class="'m-panel-sp ' + (shareBoxFlag==0?'hide':'') " @click.stop="closeNativeShare">
			<view :class="'m-panel-sp-content ' + (shareContetnFlag==0?'bounceOutDown animated':'bounceInUp animated')" @click.stop>
				<view class="page-body">
					<!-- #ifdef APP-PLUS -->
					<view class="btn-area" v-if="providerList.length > 0">
						<block v-for="(value,index) in providerList" :key="index">
							<button type="primary" v-if="value" :disabled="shareType === 5 && value.name !== '分享到微信好友'" @tap="share(value)">{{ value.name }}
							</button>
						</block>
					</view>
					<!-- #endif -->
					<!-- #ifdef MP-WEIXIN -->
					<view class="btn-area">
						<button type="primary" open-type="share">{{ __('分享') }}</button>
					</view>
					<!-- #endif -->

					<view class="uni-icon uni-icon-closeempty m-panel-sp-icon" color="#888" @click="closeNativeShare"></view>
				</view>
			</view>
		</view>

		<!-- #ifdef APP-PLUS -->
		<share-box-app :shareDataDefault="shareData" ref="shareBoxApp"></share-box-app>
		<!-- #endif -->

		<!-- #ifdef H5 -->
		<share-box-h5 :shareDataDefault="shareData" ref="shareBoxH5"></share-box-h5>
		<!-- #endif -->

		<!-- #ifndef APP-PLUS -->
		<share-box-mp :shareDataDefault="shareData" @cancelShare="cancelShare" @showCodeImg="showCodeImg" @shareQRCode="shareQRCode" @saveImg="saveImg" ref="shareBoxMp"></share-box-mp>
		<!-- #endif -->

		<mpvue-city-picker :themeColor="themeColor" ref="mpvueCityPicker" :pickerValueDefault="cityPickerValueDefault" @onCancel="onCancel" @onConfirm="onConfirm"></mpvue-city-picker>

		<quick-nav @onReturnTop="onReturnTop" @onShareBox="onShareBox" :isquicknav="isquicknav" v-show="selectsp==0"></quick-nav>
    <loginPopup :show="showLoginPopup" @close="closeLoginPopup"></loginPopup>
    </view>
</template>

<script>
function getNowFormatDate() {
  var e = new Date(),
    t = "-",
    n = e.getMonth() + 1,
    r = e.getDate();
  n >= 1 && n <= 9 && (n = "0" + n), r >= 0 && r <= 9 && (r = "0" + r);
  var i = e.getFullYear() + t + n + t + r;
  return i;
}

import uniPopup from "../../components/uni-popup/uni-popup.vue";
import mpvueCityPicker from "../../components/mpvue-citypicker/mpvueCityPicker.vue";

import wxParse from "@/components/u-parse/u-parse.vue";

import shareBoxMp from "../../components/share-box-mp.vue";
import shareBoxApp from "../../components/share-box-app.vue";
import shareBoxH5 from "../../components/share-box-h5.vue";

import quickNav from "../../components/quick-nav.vue";
import headerNavMenu from "../../components/header-nav-menu.vue";

import uniBadge from "../../components/uni-badge.vue";
import uniNumberBox from "@/components/uni-number-box/uni-number-box.vue";
import uniTag from "@/components/uni-tag/uni-tag.vue";
import loading from "@/components/loading.vue";
import { mapMutations, mapState } from "vuex";
import loginPopup from "../../components/loginPopup.vue";
var intervalDate;
var intervalPt;
var intervalCt;
var intervalTimeAct;

export default {
  data() {
    return {
      numberValue: 0,
      b2bFlag: 0,
      proIds: [],
      product_uniqid: [],
      ss: ["ss1", "ss2", "ss3", "ss4", "ss5"],
      color: "",
      price: 0,
      quantity: 0,

      options: {},
      isMore: false,
      selectsp: 0,
      selectct: 0,
      proId: 0,
      CommentImgList: [],
      splist: [],
      splistStr: [],
      numval: 1,
      stock: 1,
      inputval: 1,
      skuid: 0,
      selectimg: "",
      pname: "",
      desc: "",
      isCollection: false,
      MEID: 0,
      activity_id: 0,
      activity_type_id: 0,
      gb_id: null,
      eventId: 0,
      Parameters: [],
      acticity_ids: [],
      isdata: false,
      loaded: false,
      tapindex: 1,
      IsChannel: true,
      FGInfo: {},
      GB_rows: [],
      isAll: false,
      Time: {},
      ProductInfo: {
        productPicList: [],
        last_comment_row: {},
        last_comment_rows: [],
        analytics_row: {},
        contractlist: [],
      },
      store_product_list: [],
      store_product_num: 0,
      faq_rows: [],
      store_info: {},
      chain_rows: [],
      Coupons: [],
      isCancelSuccess: true,
      isCancel: true,
      CouponAmount: 0,
      user_is_new: 0,
      addCartFlag: false, //{{__('加入购物车')}}标记
      buyFlag: false, //{{__('立即购买')}}标记
      isVoucher: false,
      virtual_flag: false,
      versionNumber: "",
      CashData: {},
      PageQRCodeInfo: {
        Path: "",
        IsShare: false,
        IsShareBox: false,
        IsJT: false,
      },
      isModified: true,
      timer: null,
      days: "",
      hours: "",
      minutes: "",
      seconds: "",
      isShare: true,
      if_saas_status: false,
      isStoreFlag: 0, //店铺内打开
      voucherList: [],
      voucherReceiveAllFlag: false,

      AppId: "",
      chatUrl: "",

      isJoin: false,

      ispage: false,

      shareData: {
        shareText: "澜驰商城系统，支持原生App、微信小程序，邀请你一起体验！",
        shareTitle: "澜驰商城系统，支持原生App、微信小程序，邀请你一起体验！",
        href: "https://www.suteshop.com",
        image: "",
        price: 0,
      },

      shareText: "澜驰商城系统，支持原生App、微信小程序，邀请你一起体验！",
      shareTitle: "澜驰商城系统，支持原生App、微信小程序，邀请你一起体验！",
      href: "https://www.suteshop.com",
      image: "",

      shareBoxFlag: 0,
      shareContetnFlag: 0,

      shareType: 0,
      providerList: [],

      wholesale_policy_rows: [],
      scposition: 0,
      old: {
        scposition: 0,
      },
      isnav: true,
      screenHeight: 0,
      isquicknav: false,

      Id: 0,
      needed_point: 0,

      cityPickerValueDefault: [1, 2, 3],
      themeColor: "#007AFF",
      product_freight_info: {
        content: "无货",
        district_info: "上海市/上海市",
        if_store: false,
      },

      latitude: "",
      longitude: "",
      url: "",
      is_chain: 0,
      currentSwipperImageIndex: 1,
      showLoginPopup: false,
    };
  },
  metaInfo() {
    return {
      meta: [
        {
          name: "og:url",
          content: this.$.sprintf(
            "%s/h5/pages/product/detail?pid=%d&uid=%d",
            this.Config.SiteUrl,
            this.proId,
            this.userInfo.user_id
          ),
        },
        {
          name: "og:type",
          content: "article",
        },
        {
          name: "og:title",
          content: this.pname,
        },
        {
          name: "og:description",
          content: this.desc || this.pname,
        },
        {
          name: "og:image",
          content: this.ProductInfo.productPicList.length
            ? this.ProductInfo.productPicList[0].Path
            : "",
        },
      ],

      title: this.pname,
    };
  },
  components: {
    shareBoxMp,
    shareBoxApp,
    shareBoxH5,
    quickNav,
    uniBadge,
    mpvueCityPicker,
    wxParse,
    uniTag,
    uniNumberBox,
    loading,
    headerNavMenu,
    uniPopup,
    loginPopup,
  },
  computed: {
    ...mapState([
      "Config",
      "StateCode",
      "notice",
      "plantformInfo",
      "shopInfo",
      "userInfo",
      "hasLogin",
      "cartNum",
    ]),
    nav_nemu: function () {
      return [
        {
          url: "/pages/index/index",
          type: "switchTab",
          icon: "zc-dianpu",
          name: this.__("首页"),
        },
        {
          url: "/member/member/message",
          type: "navigate",
          icon: "zc-zaixian-im",
          name: this.__("消息"),
        },
        {
          url: "/member/member/favorites",
          type: "navigate",
          icon: "zc-shoucang11",
          name: this.__("我的关注"),
        },
        {
          url: "/member/member/browse",
          type: "navigate",
          icon: "zc-zuji",
          name: this.__("浏览记录"),
        },
      ];
    },
  },
  onLoad: async function (options) {
    uni.setNavigationBarTitle({
      title: this.__("商品详情"),
    });

    await this.$onLaunched;
    var that = this;
    if (options.scene) {
      var scene = decodeURIComponent(options.scene);
      var opts = {};

      opts = that.$.parse_str(scene);

      options = Object.assign(options, opts);
    }

    that.$.getSystemInfo({
      success: function (t) {
        that.setData({
          screenHeight: t.screenHeight,
        });
      },
    });

    this.setData({
      options: options,
      isStoreFlag: options.is_store_flag ? parseInt(options.is_store_flag) : 0,
      if_saas_status: this.Config.SAAS_STATUS,
    });

    /*
			this.setData({
				versionNumber: this.plantformInfo.versionNumber
			});
			*/
    var n = {
      productId: options.pid,
    };
    that.InitData(options);

    this.getPlantformInfo(function (plantformInfo) {
      that.setData({
        b2bFlag: plantformInfo.config.b2b_flag,
      });
    });
  },
  onShareAppMessage() {
    // #ifdef MP-WEIXIN
    wx.showShareMenu({
      withShareTicket: true,
      menus: ["shareAppMessage", "shareTimeline"],
    });
    // #endif

    return {
      imageUrl: this.ProductInfo.productPicList[0].Path,
      title: this.pname,
      path:
        "/pages/product/detail?pid=" +
        this.proId +
        "&uid=" +
        this.userInfo.user_id,
    };
  },
  /**
   * 用户点击右上角分享朋友圈
   */
  onShareTimeline: function () {
    return {
      title: this.pname,
      query: {
        uid: this.userInfo.user_id,
        pid: this.proId,
      },
      imageUrl: this.ProductInfo.productPicList[0].Path,
    };
  },
  onBackPress() {
    if (this.$refs.mpvueCityPicker.showPicker) {
      this.$refs.mpvueCityPicker.pickerCancel();
      return true;
    }

    // #ifdef APP-PLUS
    if (this.$refs.shareBoxApp.showBoxView) {
      this.$refs.shareBoxApp.cancel();
      return true;
    }
    // #endif

    // #ifdef H5
    if (this.$refs.shareBoxH5.showBoxView) {
      this.$refs.shareBoxH5.cancel();
      return true;
    }
    // #endif

    // #ifdef MP-WEIXIN
    if (this.$refs.shareBoxMp.showBoxView) {
      this.$refs.shareBoxMp.cancel();
      return true;
    }
    // #endif
  },
  onUnload() {
    clearInterval(intervalDate);
    clearInterval(intervalPt);
    clearInterval(intervalCt);
    clearInterval(intervalTimeAct);

    this.showLoginPopup = false;

    if (this.$refs.mpvueCityPicker.showPicker) {
      this.$refs.mpvueCityPicker.pickerCancel();
    }

    // #ifdef APP-PLUS
    if (this.$refs.shareBoxApp.showBoxView) {
      this.$refs.shareBoxApp.cancel();
    }
    // #endif

    // #ifdef H5
    if (this.$refs.shareBoxH5.showBoxView) {
      this.$refs.shareBoxH5.cancel();
    }
    // #endif

    // #ifdef MP-WEIXIN
    if (this.$refs.shareBoxMp.showBoxView) {
      this.$refs.shareBoxMp.cancel();
    }
    // #endif
  },
  onNavigationBarButtonTap(e) {
    var that = this;

    if (e.index === 0) {
      that.onMenu(e);
    } else if (e.index === 1) {
      that.onShareBox(e);
    } else {
      uni.showToast({
        title: "你点了收藏按钮",
        icon: "none",
      });
    }
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this.InitProduct(true);
  },
  methods: {
    ...mapMutations([
      "login",
      "logout",
      "getPlantformInfo",
      "forceUserInfo",
      "getUserInfo",
      "setCartNum",
    ]),
    //生成的海报图片
    createPoster(e) {
      this.productPoster = e;
      if (this.productPoster) {
        uni.hideLoading();
        this.$refs.shareBoxMp.path = this.productPoster;
      }
    },

    swiperImg: function (e) {
      this.currentSwipperImageIndex = e.detail.current + 1;
    },
    InitData: function (options) {
      var that = this;
      this.setData({
        proId: options.pid,
        splistStr: [],
        gb_id: parseInt(options.gb_id),
        isJoin:
          !that.$.isNull(options.gb_id) && options.gb_id != 0 ? true : false,
      });

      that.$.isNull(this.userInfo)
        ? this.getUserInfo(function (user) {
            that.InitProduct(false);
            that.setData({
              IsChannel: this.shopInfo.IsChannel,
            });
            that.setData({
              user_is_new: 0,
              //user_is_new: this.userInfo.user_is_new,
              CouponAmount: 10,
              //CouponAmount: this.userInfo.CouponAmount
            });
          })
        : that.InitProduct(false);

      //that.notice.postNotificationName("RefreshProduct", false)
    },
    initChain: function () {
      let that = this;

      that.$.getLocation({
        type: "wgs84",
        success: function (response) {
          that.setData({
            latitude: response.latitude,
            longitude: response.longitude,
          });

          that.getNearChain();
        },
        fail: function () {
          that.setData({
            isdata: true,
          });

          that.$.confirm(that.__("手机定位失败"));

          that.getNearChain();
        },
      });
    },
    getNearChain: function () {
      let that = this;

      let chain_params = {
        store_id: that.store_info.store_id,
        item_id: that.proId,
        lat: that.latitude,
        lng: that.longitude,
      };

      that.$.request({
        url: that.Config.URL.store.getNearChain,
        data: chain_params,
        loading: false,
        success: function (data, status, msg, code) {
          if (status == 200) {
            for (let i = 0; i < data.items.length; i++) {
              data.items[i]["distance"] = that.$.distanceFormat(
                data.items[i]["distance"]
              );

              let coord = that.$.bMapTransQQMap(
                data.items[i]["chain_lng"],
                data.items[i]["chain_lat"]
              );
              data.items[i]["chain_lng"] = coord.lng;
              data.items[i]["chain_lat"] = coord.lat;
            }

            that.setData({
              chain_rows: data.items,
            });
          }
        },
      });
    },

    gotomap: function (e) {
      console.info(e);
      var that = this;

      that.$.openLocation({
        latitude: parseFloat(e.currentTarget.dataset.lat),
        longitude: parseFloat(e.currentTarget.dataset.lng),
        name: e.currentTarget.dataset.name,
        address: e.currentTarget.dataset.address,
        scale: 28,
      });
    },

    gopage: function (e) {
      var that = this;

      this.$.gotopage(
        "/chain/chain/index?chain_id=" + e.currentTarget.dataset.chain_id
      );
    },

    call: function (e) {
      let that = this;
      that.$.makePhoneCall({
        phoneNumber: e.currentTarget.dataset.phone,
      });
    },

    InitProduct: function (force_refresh) {
      if (typeof force_refresh == "undefined") {
        force_refresh = true;
      }

      var that = this;

      //存入本地
      let district_id = uni.getStorageSync("district_id");

      var params = {
        item_id: that.proId,
        gb_id: that.gb_id,
        comment_flag: 1, //如果有，则读取一条评论
      };

      if (district_id) {
        params.district_id = district_id;
      }

      that.$.request({
        url: this.Config.URL.product.item,
        data: params,
        loading: false,
        ajaxCache: {
          timeout: this.Config.CACHE_EXPIRE,
          forceRefresh: force_refresh,
        },

        success: function (data, status, msg, code) {
          if (200 == status) {
            clearInterval(intervalDate);
            clearInterval(intervalPt);
            clearInterval(intervalCt);
            clearInterval(intervalTimeAct);
            that.$report("fb_mobile_content_view", data.item_row);

            that.setData({
              product_freight_info: data.product_freight_info,
            });
            data.item_row.ProductName = data.item_row.product_item_name;
            data.item_row.ProductTips = data.item_row.product_tips;
            data.item_row.MarketPrice = Math.max(
              data.item_row.item_unit_price,
              data.item_row.item_sale_price,
              data.item_row.item_market_price
            );
            data.item_row.ItemSalePrice = data.item_row.item_unit_price;
            data.item_row.ShowPrice = data.item_row.item_sale_price;

            if (data.item_row.MarketPrice <= data.item_row.ItemSalePrice) {
              data.item_row.MarketPrice = 0;
            }

            data.item_row.normalStatus =
              data.item_row.product_state_id ==
              that.StateCode.PRODUCT_STATE_NORMAL;
            data.item_row.ifStore = data.product_freight_info.if_store;
            data.item_row.isShowCountdown =
              that.StateCode.ACTIVITY_TYPE_LIMITED_DISCOUNT ==
                data.item_row.activity_type_id ||
              that.StateCode.ACTIVITY_TYPE_GROUPBOOKING ==
                data.item_row.activity_type_id
                ? true
                : false;
            data.item_row.activityType =
              that.StateCode.ACTIVITY_TYPE_GROUPBOOKING ==
              data.item_row.activity_type_id
                ? "GROUPBOOKING"
                : false;
            data.item_row.productPicList = [];

            data.item_row.pv_url =
              "/pagesub/video/video?pid=" +
              data.item_row.product_id +
              "&url=" +
              encodeURIComponent(data.item_row.product_video) +
              "&title=" +
              encodeURIComponent(data.item_row.product_name);

            for (var i = 0; i < data.item_row.item_image_row.length; i++) {
              data.item_row.productPicList[i] = {};
              data.item_row.productPicList[i].Path =
                data.item_row.item_image_row[i];
              data.item_row.productPicList[i].Video = false;
            }
            data.item_row.SpecLst = [];

            //for b2b
            data.item_row.Ids = [];

            for (var t in data.item_row.product_spec) {
              for (var s in data.item_row.product_spec[t].item) {
                if (data.item_row.product_spec[t].item[s].select == 1) {
                  that.setData({
                    color: data.item_row.product_spec[0].item[0].name,
                  });
                }
              }
            }

            for (var n in data.item_row.product_spec) {
              data.item_row.SpecLst[n] = {};
              data.item_row.SpecLst[n].svLst = [];
              data.item_row.SpecLst[n].unit_id =
                data.item_row.product_spec[n].id;

              //for b2b
              data.item_row.Ids[n] = {};
              data.item_row.Ids[n].info = [];
              data.item_row.Ids[n].id = data.item_row.product_spec[n].id;

              for (var r in data.item_row.product_spec[n].item) {
                data.item_row.SpecLst[n].svLst[r] = {};
                data.item_row.SpecLst[n].svLst[r].Id =
                  data.item_row.product_spec[n].item[r].id;
                data.item_row.SpecLst[n].svLst[r].Name =
                  data.item_row.product_spec[n].item[r].name;
                data.item_row.Ids[n].info[r] =
                  data.item_row.product_spec[n].item[r].id; //for b2b
                if (
                  data.item_row.item_spec[n].item.id ==
                  data.item_row.product_spec[n].item[r].id
                ) {
                  data.item_row.SpecLst[n].svLst[r].IsChecked = true;
                } else {
                  data.item_row.SpecLst[n].svLst[r].IsChecked = false;
                }
                if (
                  !that.selectimg &&
                  data.item_row.product_spec_image_row[
                    data.item_row.product_spec[n].item[r].id
                  ]
                ) {
                  data.item_row.SpecLst[n].svLst[r].imagePath =
                    data.item_row.product_spec_image_row[
                      data.item_row.product_spec[n].item[r].id
                    ];
                } else {
                  //data.item_row.SpecLst[n].svLst[r].imagePath = data.item_row.product_image;
                  data.item_row.SpecLst[n].svLst[r].imagePath =
                    data.item_row.product_image ||
                    data.item_row.product_spec_image_row[
                      data.item_row.product_spec[n].item[r].id
                    ];
                }
              }
            }

            //倒计时
            //activity_item_row.activity_endtime
            if (data.item_row.isShowCountdown || data.item_row.is_pa) {
              if (data.item_row.is_pa) {
                data.item_row.product_sale_time = that.$.strtotime(
                  data.item_row.pa_endtime
                );
              } else {
                data.item_row.product_sale_time = that.$.strtotime(
                  data.item_row.activity_item_row.activity_endtime
                );
              }

              let end_diff_time =
                data.item_row.product_sale_time * 1000 - new Date().getTime();

              intervalCt = setInterval(function () {
                var n = (end_diff_time -= 1e3);
                n < 0
                  ? (clearInterval(),
                    that.setData({
                      hours: "00",
                      minutes: "00",
                      seconds: "00",
                    }))
                  : that.setData({
                      hours: that.$.doubleNum(Math.floor(n / 1e3 / 60 / 60)),
                      minutes: that.$.doubleNum(
                        Math.floor((n / 1e3 / 60) % 60)
                      ),
                      seconds: that.$.doubleNum(Math.floor((n / 1e3) % 60)),
                    });
              }, 1e3);
            }

            //拼团
            if (data.item_row.activityType == "GROUPBOOKING") {
              data.item_row.EventStartTime =
                data.item_row.activity_item_row.activity_rule.activity_starttime;
              data.item_row.EventEndTime =
                data.item_row.activity_item_row.activity_rule.activity_endtime;

              data.item_row.DayLimit =
                data.item_row.activity_item_row.activity_rule.group_days_limit;
              data.item_row.UserLimit =
                data.item_row.activity_item_row.activity_rule.group_quantity;
              data.item_row.SavePrice =
                data.item_row.item_unit_price - data.item_row.item_sale_price;
              data.item_row.UserNum =
                data.item_row.activity_item_row.gb_amount_quantity;
              //data.item_row.end_diff_time = (new Date(data.item_row.activity_item_row.activity_endtime.replace(/-/g, "/")))
              data.item_row.end_diff_time =
                new Date(
                  data.item_row.activity_item_row.activity_endtime
                ).getTime() - new Date().getTime();
              that.setData({
                activity_id: data.item_row.activity_id,
              });

              /*
								intervalPt = setInterval(function(clear) {
									var n = data.item_row.end_diff_time -= 1e3;
									if (n < 0) {
										clearInterval(clear);
										that.setData({
											days: "00",
											hours: "00",
											minutes: "00",
											seconds: "00",
										});
									} else {
										that.setData({
											days: that.$.doubleNum(Math.floor(n / 1e3 / 60 / 60 / 24)),
											hours: that.$.doubleNum(Math.floor(n / 1e3 / 60 / 60 % 24)),
											minutes: that.$.doubleNum(Math.floor(n / 1e3 / 60 % 60)),
											seconds: that.$.doubleNum(Math.floor(n / 1e3 % 60)),
										});
									}
								}, 1e3);

                 */
            }

            if (!that.$.isNull(data.item_row.activityType)) {
              if (
                data.item_row.activityType == "GROUPBOOKING" &&
                data.item_row.activity_id > 0
              ) {
                that.findOffered(data.item_row.activity_id);

                clearInterval(intervalTimeAct);
                intervalTimeAct = setInterval(function () {
                  that.setData({
                    Time: that.$.FormatTime(
                      data.item_row.activity_item_row.activity_endtime
                    ),
                    MEID: data.item_row.activity_id,
                  });
                }, 1e3);
              }
            }

            if (data.item_row.SpecLst.length > 0) {
              for (var n in data.item_row.SpecLst) {
                for (var r in data.item_row.SpecLst[n].svLst) {
                  data.item_row.SpecLst[n].svLst[r].IsChecked &&
                    ((data.item_row.SpecLst[n].ckid =
                      data.item_row.SpecLst[n].svLst[r].Id),
                    that.splist.push(data.item_row.SpecLst[n].svLst[r].Id),
                    that.splistStr.push(data.item_row.SpecLst[n].svLst[r].Name),
                    that.setData({
                      selectimg: data.item_row.SpecLst[n].svLst[r].imagePath,
                    }));

                  data.item_row.product_spec[n].item[r].IsChecked &&
                    ((data.item_row.product_spec[n].ckid =
                      data.item_row.product_spec[n].item[r].id),
                    that.splist.push(data.item_row.product_spec[n].item[r].id),
                    that.splistStr.push(
                      data.item_row.product_spec[n].item[r].name
                    ),
                    that.setData({
                      selectimg:
                        data.item_row.product_spec[n].item[r].imagePath,
                    }));
                }
              }
            } else {
              that.setData({
                selectimg: data.item_row.product_image,
              });
            }

            var perm_id = that.$.getStorageSync("uid");
            var perm_key = that.$.getStorageSync("ukey");
            that.$.setNavigationBarTitle({
              title: data.item_row.product_item_name,
            });

            //data.item_row.product_detail = '<style>img{max-width:100%!important;height:auto;}</style>' + data.item_row.product_detail;
            //data.item_row.product_detail = data.item_row.product_detail.replace(/\<img/gi, '<img style="max-width:100%;height:auto" ')

            data.item_row.product_detail &&
              (data.item_row.product_detail =
                data.item_row.product_detail.replace(
                  new RegExp("<img ", "gm"),
                  '<img style="max-width:100%;height:auto;display: flex;" '
                ));
            data.item_row.product_param &&
              (data.item_row.product_param =
                data.item_row.product_param.replace(
                  new RegExp("<img ", "gm"),
                  '<img style="max-width:100%;height:auto;display: flex;" '
                ));
            data.item_row.product_extension &&
              (data.item_row.product_extension =
                data.item_row.product_extension.replace(
                  new RegExp("<img ", "gm"),
                  '<img style="max-width:100%;height:auto;display: flex;" '
                ));
            data.item_row.product_service &&
              (data.item_row.product_service =
                data.item_row.product_service.replace(
                  new RegExp("<img ", "gm"),
                  '<img style="max-width:100%;height:auto;display: flex;" '
                ));

            let chat_url = that.$.sprintf(
              "/im/chat/chat?uid=%s&item_id=%s",
              data.store_info.user_id,
              data.item_row.item_id
            );
            that.setData({
              chatUrl: chat_url,
            });

            if (true) {
              /*
								that.$.request({
									url: that.Config.URL.user.kefu_config,
									data: {user_id: data.store_info.user_id, store_id:data.store_info.store_id},
									loading: false,
									success: function(rd, r_status, r_msg, code) {
										if (r_status == 200) {
											let chat_url = that.$.sprintf("/im/chat/chat?uid=%s&item_id=%s", rd.friend_id, data.item_row.item_id);
											that.setData({
												chatUrl: chat_url
											});
										}
										else
										{
											that.$.alert(r_msg);
										}
									}
								});
								*/
            } else {
            }

            that.setData({
              ProductInfo: data.item_row,
              product_uniqid: data.item_row.product_uniqid,
              store_info: data.store_info,
              isCollection: data.is_favorite > 0 ? true : false,
              skuid: data.item_row.item_id,
              Parameters: data.item_row.product_param,
              desc: data.item_row.ProductTips,
              pname: data.item_row.product_item_name,
              stock: data.item_row.item_quantity,
            });

            that.store_info.distance = 0;
            /*
							  							var i = data.item_row.product_detail;
							  							i = i.replace(/&amp;nbsp;/g, "");
							  							//WxParse.wxParse("pinfo", "html", i, that);

							  							var p = data.item_row.product_param;
							  							p = p.replace(/&amp;nbsp;/g, "");
							  							//WxParse.wxParse("product_param", "html", p, that);

							  							var c = data.item_row.product_extension;
							  							c = c.replace(/&amp;nbsp;/g, "");
							  							WxParse.wxParse("product_extension", "html", c, that);

							  							var s = data.item_row.product_service;
							  							s = s.replace(/&amp;nbsp;/g, "");
							  							//WxParse.wxParse("Services", "html", s, that);
							  							*/

            that.setData({
              isdata: true,
            });

            that.getCouponlist();

            if (that.Config.CHAIN_ENABLE) {
              that.initChain();
            }

            //读取帮助信息
            that.getFaq(data.item_row.product_id);

            //计算店铺距离

            /**
             * 计算两个经纬度的距离(米)
             */
            let getDistance = function (lat1, lng1, lat2, lng2) {
              var radLat1 = (lat1 * Math.PI) / 180.0;
              var radLat2 = (lat2 * Math.PI) / 180.0;
              var a = radLat1 - radLat2;
              var b = (lng1 * Math.PI) / 180.0 - (lng2 * Math.PI) / 180.0;
              var s =
                2 *
                Math.asin(
                  Math.sqrt(
                    Math.pow(Math.sin(a / 2), 2) +
                      Math.cos(radLat1) *
                        Math.cos(radLat2) *
                        Math.pow(Math.sin(b / 2), 2)
                  )
                );
              s = s * 6378.137; // EARTH_RADIUS;
              s = Math.round(s * 10000) / 10;
              return s;
            };

            that.store_info.store_o2o_flag = 1;
            if (that.store_info.store_o2o_flag) {
              that.$.getLocation({
                type: "wgs84",
                success: function (response) {
                  that.setData({
                    latitude: response.latitude,
                    longitude: response.longitude,
                  });

                  //that.store_info.distance = 100;

                  let d = getDistance(
                    that.latitude,
                    that.longitude,
                    that.store_info.store_latitude,
                    that.store_info.store_longitude
                  );
                  console.info(
                    that.latitude,
                    that.longitude,
                    that.store_info.store_latitude,
                    that.store_info.store_longitude
                  );
                  console.info(d);
                  that.store_info.distance = that.$.distanceFormat(d || 0);
                },
                fail: function () {},
              });
            }
          } else {
            that.setData({
              isdata: false,
            });
          }

          if (200 != status) {
          } else {
            //初始化微信分享
            let $title = that.pname;
            let $desc = that.desc;
            let $link = that.$.sprintf(
              "%s/h5/pages/product/detail?pid=%s",
              that.Config.SiteUrl,
              that.proId
            );
            let $img_url = that.ProductInfo.productPicList[0].Path;

            //初始化微信分享
            that.$.wxShare($title, $desc, $link, $img_url);

            that.getStoreProdcutList();
          }

          that.setData({
            loaded: true,
          });

          that.$.stopPullDownRefresh();
        },
        complete: function (res, status) {},
      });
    },

    getFaq: function (product_id) {
      let that = this;

      let faq_params = {
        product_id: product_id,
        rows: 2,
      };
      that.$.request({
        url: this.Config.URL.sns.story_lists,
        data: faq_params,
        loading: false,
        /*
					                    ajaxCache: {
					                        timeout: Config.CACHE_EXPIRE
					                    }, */
        success: function (data, status, msg, code) {
          if (status == 200) {
            that.faq_rows = data.items;

            if ("analytics_row" in that.ProductInfo) {
              if (
                that.ProductInfo.analytics_row &&
                "product_ask_num" in that.ProductInfo.analytics_row
              ) {
                that.ProductInfo.analytics_row.product_ask_num = data.records;
              }
            }
          }
        },
      });
    },

    listFaq: function (e) {
      //this.$.gopage(this.$.sprintf('/community/community/lists?pid=%s', e.currentTarget.dataset.product_id));
      this.$.gopage(
        this.$.sprintf(
          "/community/community/lists?pid=%s",
          this.ProductInfo.product_id
        )
      );
    },

    ckselectsp: function (e) {
      if (!this.hasLogin) {
        this.showLoginPopup = true;
        return;
      }
      this.setData({
        //change: e.currentTarget.offsetLeft,
        selectsp: 1,
        selectct: 1,
        addCartFlag: true,
        buyFlag: false,
      }),
        e.currentTarget.dataset.type == 1
          ? this.setData({
              isModified: true,
            })
          : this.setData({
              isModified: false,
            });
    },
    ckselectsp1: function (e) {
      if (!this.hasLogin) {
        this.showLoginPopup = true;
        return;
      }
      // console.log(this)

      this.setData({
        //change: e.currentTarget.offsetLeft,
        selectsp: 1,
        selectct: 1,
        buyFlag: true,
        addCartFlag: false,
      });
    },
    closesp: function (e) {
      var that = this;
      that.setData({
        selectct: 0,
        /*flag: false*/
      });

      setTimeout(function () {
        that.setData({
          selectsp: 0,
        });
      }, 1e2);
    },

    selectSpec: function (e) {
      let that = this;
      if (!e.target.dataset.enable) {
        return;
      }

      /*
				this.setData({
					buyFlag: true,
					addCartFlag: false
				})
        */

      /*$(self).addClass("current").siblings().removeClass("current");
				//拼接属性
				var curEle = $(".spec").find("a.current");
				var curSpec = [];
				that.$.each(curEle, function (i, v)
				{
				    // convert to int type then sort
				    curSpec.push(parseInt($(v).attr("specs_value_id")) || 0);
				});
				var spec_string = curSpec.sort(function (a, b)
				{
				    return a - b;
				}).join("-");
				//获取商品ID
				window.item_id = myData.product_uniqid[spec_string][0];
				get_detail(window.item_id);*/
      var params = {
          spid: e.target.dataset.spid,
          ckid: e.target.dataset.ckid,
          unit_id: e.target.dataset.unit_id,
        },
        n = [],
        r = this.splist;

      var uniqid,
        spec_ids = [];
      for (var spec_key in that.ProductInfo.item_spec) {
        if (params.unit_id == that.ProductInfo.item_spec[spec_key].id) {
          spec_ids.push(params.spid);
        } else {
          spec_ids.push(that.ProductInfo.item_spec[spec_key].item.id);
        }
      }

      uniqid = spec_ids
        .sort(function (a, b) {
          return a - b;
        })
        .join("-");

      var item_id = that.ProductInfo.product_uniqid[uniqid][0];

      if (that.b2bFlag) {
        return;
      }

      that.setData({
        proId: item_id,
      });

      that.InitProduct(false);

      /*
				that.$.xsr(that.$.makeUrl(api.GetProductlistSpc, params), function (t) {
				    that.$.isNull(t.Info[0].activityType) || t.Info[0].activityType == "GROUPBOOKING" && t.Info[0].activity_id > 0 && that.findOffered(t.Info[0].activity_id);
				    for (var n in t.Info[0].SpecLst) for (var r in t.Info[0].SpecLst[n].svLst) t.Info[0].SpecLst[n].svLst[r].IsChecked && (t.Info[0].SpecLst[n].ckid = t.Info[0].SpecLst[n].svLst[r].Id, that.splist.push(t.Info[0].SpecLst[n].svLst[r].Id), that.splistStr.push(t.Info[0].SpecLst[n].svLst[r].Name)), t.Info[0].SpecLst[n].svLst[r].Id == e.target.dataset.spid && that.setData({selectimg: t.Info[0].SpecLst[n].svLst[r].imagePath});
				    that.$.setNavigationBarTitle({title: t.Info[0].SalesName}), that.setData({
				        ProductInfo: t.Info[0],
				        skuid: t.Info[0].item_id,
				        pname: t.Info[0].ProductName,
				        Parameters: t.Info[0].ProductParameters ? that.Grouping(t.Info[0].ProductParameters) : [],
				        stock: t.Info[0].Stock
				    })
				})
				*/
    },
    sub: function () {
      this.unifiedNum(2);
    },
    add: function () {
      this.unifiedNum(1);
    },
    writenum: function (e) {
      this.setData({
        inputval: e.detail.value,
      }),
        this.unifiedNum(3);
    },
    unifiedNum: function (e) {
      let that = this;
      var t = {
        value: parseInt(this.numval),
        stock: parseInt(this.stock),
        inputval: parseInt(this.inputval),
      };
      if (t.stock <= 0) {
        that.$.alert(that.__("亲~商品没有库存啦！"));
        return;
      }
      e == 1
        ? (t.value = t.value + 1)
        : e == 2
        ? (t.value = t.value - 1)
        : ((t.value = t.inputval),
          this.setData({
            numval: t.inputval,
          }));
      if (t.value > t.stock) {
        this.setData({
          numval: t.stock,
        });
        return;
      }
      if (t.value <= 0) {
        this.setData({
          numval: 1,
        });
        return;
      }
      this.setData({
        numval: t.value,
      });
    },
    addCart: async function () {
      var that = this;

      if (that.b2bFlag) {
        that.addCartBat();
        return;
      }

      var params = {
        item_id: that.proId,
        proName: that.pname,
        cart_quantity: that.numval,
        activity_id: that.ProductInfo.activity_id,

        SKU_Id: that.skuid,
      };

      if (that.stock <= 0) {
        that.$.alert("亲~商品没有库存啦！");
        return;
      }

      await this.$store.dispatch(`addCart`, {
        params: params,
        callback: (data, status, msg, code) => {
          if (status == 200) {
            that.$.alert(that.__("添加购物车成功"));

            that.setData({
              numval: 1,
              inputval: 1,
            });

            if (that.plantformInfo.prodcut_addcart_flag) {
              that.$store.dispatch(`getCartList`, function (data) {});
            }
          }

          that.setData({
            selectct: 0,
          });

          setTimeout(function () {
            that.setData({
              selectsp: 0,
            });
          }, 1e3);
        },
      });

      /*
				that.$.request({
				  url: this.Config.URL.cart.add,
				  data: params,
				  success: function (data, status, msg, code) {
				    if (status == 200) {
				      //that.notice.postNotificationName("RefreshProduct", true);
				      that.$report('fb_mobile_add_to_cart', data);

				      //
				      that.notice.postNotificationName("RefreshCart", parseInt(that.numval));

				      that.setCartNum({
				        type: 'add',
				        num: parseInt(that.numval)
				      });

				      that.$.alert(that.__('添加购物车成功'));

				      that.setData({
				        numval: 1,
				        inputval: 1
				      })

				    }

				    that.setData({
				      selectct: 0
				    });

				    setTimeout(function () {
				      that.setData({
				        selectsp: 0
				      })
				    }, 1e3);
				  }
				});
				 */
    },

    //for b2b
    //商品数量
    changes(e, id) {
      var that = this;
      var t = that.product_uniqid[id][0];
      that.proIds[id] = {
        item_id: t,
        quantity: e,
      };
      this.setprice();
    },

    //计算价格
    setprice: function () {
      var that = this;
      var price = 0;
      var quantity = 0;
      for (var i in that.proIds) {
        price = price + that.proIds[i].quantity * that.product_uniqid[i][1];
        quantity += that.proIds[i].quantity;
      }

      this.setData({
        price: price,
        quantity: quantity,
      });
    },
    selectS: function (e, k, d, evnet) {
      var that = this;
      that.setData({
        color: d,
      });
      if (e.select == 1) {
        return true;
      }
      // evnet.target.dataset.unit_id = 1002;
      var p = that.ProductInfo.product_spec[0].item;
      for (var l = 0; l < p.length; l++) {
        if (p[l].select == 1) {
          p[l].select = 0;
        }
      }

      e.select = 1;
      // this.setData({
      // 	proId: items.id
      // });
      that.selectSpec(evnet);
    },

    addCartBat: function () {
      var that = this;
      var pat = [];
      if (that.ProductInfo.SpecLst.length > 0) {
        for (var i in that.proIds) {
          if (that.proIds[i].quantity > 0) {
            pat.push(that.proIds[i]);
          }
        }

        if (pat.length <= 0) {
          that.$.alert("亲~请选择商品！");
          return;
        }
      } else {
        pat = [
          {
            item_id: that.options.pid,
            quantity: 1,
          },
        ];
      }
      var params = {
        par: JSON.stringify(pat),
        prd: that.options.pid,
      };
      that.$.request({
        url: this.Config.URL.cart.batchadd,
        data: params,
        success: function (data, status, msg, code) {
          if (status == 200) {
            //that.notice.postNotificationName("RefreshProduct", true);

            //
            that.notice.postNotificationName("RefreshCart", that.numval);

            that.setCartNum({
              type: "add",
              num: that.numval,
            });

            that.$.alert("添加进货车成功");

            that.setData({
              numval: 1,
              inputval: 1,
            });
          } else {
            that.$.alert(msg);
          }

          that.setData({
            selectct: 0,
          });

          setTimeout(function () {
            that.setData({
              selectsp: 0,
            });
          }, 1e3);
        },
      });
    },

    PDCollection: function (e) {
      var that = this;
      if (this.isCollection) {
        var params = {
          item_id: e.currentTarget.dataset.id,
        };

        that.$.request({
          url: this.Config.URL.user.wish_item_remove,
          data: params,
          success: function (data, status, msg, code) {
            if (200 == status) {
              that.setData({
                isCollection: false,
              });
            }

            that.$.alert(that.__("已取消收藏！"));
          },
        });
      } else {
        var params = {
          item_id: e.currentTarget.dataset.id,
        };
        that.$.request({
          url: this.Config.URL.user.wish_item_add,
          data: params,
          success: function (data, status, msg, code) {
            if (200 == status) {
              that.setData({
                isCollection: true,
              });
            }

            that.$.alert(that.__("已收藏！"));
          },
        });
      }
    },

    addToWestore: function (e) {
      var that = this;

      var params = {
        item_id: e.currentTarget.dataset.id,
        store_id: this.store_info.store_id,
        product_id: this.ProductInfo.product_id,
      };

      that.$.request({
        url: this.Config.URL.user.direct_store_add,
        data: params,
        success: function (data, status, msg, code) {
          if (status == 200) {
            that.$.alert(msg);
          } else {
            that.$.alert(msg);
          }
        },
      });
    },
    picDetail: function () {
      this.setData({
        tapindex: 1,
      });
    },
    spcParam: function () {
      this.setData({
        tapindex: 2,
      });
    },

    packingList: function () {
      this.setData({
        tapindex: 3,
      });
    },

    showFightGroup: function () {
      this.setData({
        tapindex: 4,
      });
    },

    showServiceTab: function () {
      this.setData({
        tapindex: 5,
      });
    },

    showVoucherTab: function () {
      //this.getCouponlist()
      this.setData({
        tapindex: 6,
      });
    },

    Grouping: function (e) {
      var t = {},
        n = [];
      for (var r = 0; r < e.length; r++) {
        var i = e[r];
        if (!t[i.ParameterGroupId])
          n.push({
            ParameterGroupId: i.ParameterGroupId,
            name: i.ParameterGroupName,
            data: [i],
          }),
            (t[i.ParameterGroupId] = i);
        else
          for (var s = 0; s < n.length; s++) {
            var o = n[s];
            if (o.ParameterGroupId == i.ParameterGroupId) {
              o.push(i);
              break;
            }
          }
      }
      return n;
    },
    //单规格，不需要选规格，默认购买一个。
    buynow: function (e) {
      var that = this;
      var params = {
        item_id: that.proId,
        proName: that.pname,
        cart_quantity: that.numval,
        activity_id: that.ProductInfo.activity_id,

        SKU_Id: that.skuid,
      };

      //for b2b
      if (that.b2bFlag && that.ProductInfo.SpecLst.length > 0) {
        var pat = [];
        for (var i in that.proIds) {
          if (that.proIds[i].quantity > 0) {
            var t = that.proIds[i].item_id + "|" + that.proIds[i].quantity;
            pat.push(t);
          }
        }

        if (pat.length <= 0) {
          that.$.alert("亲~请选择商品！");
          return;
        }
        var str = pat.join(",");
        that.$.navigateTo({
          url:
            "/pages/checkout/checkout?ifcart=0&cart_id=" +
            str +
            "&prd=" +
            that.options.pid,
        }),
          this.setData({
            selectct: 0,
          });
      } else {
        that.$.navigateTo({
          url:
            "/pages/checkout/checkout?ifcart=0&cart_id=" +
            params.item_id +
            "|" +
            params.cart_quantity,
        }),
          this.setData({
            selectct: 0,
          });
      }

      var n = this;
      setTimeout(function () {
        n.setData({
          selectsp: 0,
        });
      }, 1e3);
    },
    checkChainProduct: function (e) {
      var that = this;
      var params = {
        item_id: that.proId,
        proName: that.pname,
        cart_quantity: that.numval,
        activity_id: that.ProductInfo.activity_id,
        SKU_Id: that.skuid,
      };

      that.$.request({
        url: that.Config.URL.isProduct,
        data: params,
        dataType: "json",
        success: function (data, status, msg, code) {
          if (data.length == 0) {
            that.$.showModal({
              title: that.__("提示"),
              content: that.__("您的默认门店没有该商品，是否继续购买？"),
              success: function (res) {
                if (res.confirm) {
                  that.setData({
                    url:
                      "/pages/checkout/checkout?ifcart=0&cart_id=" +
                      params.item_id +
                      "|" +
                      params.cart_quantity,
                  });
                }
              },
            });
          } else {
            that.setData({
              url:
                "/pages/checkout/checkout?ifcart=0&cart_id=" +
                params.item_id +
                "|" +
                params.cart_quantity +
                "&chain_id=" +
                data.chain_id,
            });
          }
        },
      });
    },
    ILObuynow: function (e) {
      let that = this;
      var t = {
        Amount: this.numval,
        ProductId: this.proId,
        item_id: this.skuid,
        AddTime: getNowFormatDate(),
        orderType: 0,
        isFightGroup: "1",
        ProductSaleName: this.pname,

        speStr: JSON.stringify(this.splistStr)
          .replace("[", "")
          .replace("]", "")
          .replace(/\,/g, "  ")
          .replace(/\"/g, ""),
      };
      that.$.navigateTo({
        url:
          "/pages/checkout/checkout?ifcart=0&cart_id=" +
          this.proId +
          "|" +
          this.numval,
      });
    },
    immediatelyGroupbooking: function () {
      var that = this;
      var e = {
        Amount: 1,
        ProductId: this.proId,
        orderType: 1,
        activity_id: this.MEID,
        isOwner: "true",
        isFightGroup: "2",
        item_id: this.skuid,
        AddTime: getNowFormatDate(),
        ownGroupId: 0,
        ProductSaleName: this.pname,

        speStr: JSON.stringify(this.splistStr)
          .replace("[", "")
          .replace("]", "")
          .replace(/\,/g, "  ")
          .replace(/\"/g, ""),
      };

      //console.info("/pages/checkout/checkout?single_activity=1&ifcart=0&cart_id=" + that.proId + "|" + 1 + "&activity_id=" + this.activity_id + "&gb_id=" + this.gb_id);
      that.$.navigateTo({
        url:
          "/pages/checkout/checkout?single_activity=1&ifcart=0&cart_id=" +
          that.proId +
          "|" +
          1 +
          "&activity_id=" +
          this.activity_id +
          "&gb_id=" +
          this.gb_id,
        success: function () {
          //console.info('success');
        },
        fail: function () {
          //console.info('fail');
        },
        complete: function () {
          //console.info('complete');
        },
      });
    },
    groupBuying: function (e) {
      var that = this,
        gb_id = e.currentTarget.dataset.gb_id;
      that.$.navigateTo({
        url:
          "/pages/checkout/checkout?single_activity=1&ifcart=0&cart_id=" +
          that.proId +
          "|" +
          1 +
          "&activity_id=" +
          that.activity_id +
          "&gb_id=" +
          gb_id,
      });
    },
    findOffered: function (activity_id) {
      var that = this;
      var params = {
        activity_id: activity_id,
        rows: 4,
      };

      that.setData({
        GB_rows: [],
      });

      that.$.request({
        url: this.Config.URL.user.listsGroupbooking,
        data: params,
        loading: false,
        success: function (data, status, msg, code) {
          if (200 == status && data.items.length > 0) {
            intervalDate = setInterval(function () {
              data.items.forEach(function (e) {
                e.Time = {};
                e.end_diff_time =
                  new Date(e.gb_endtime.replace(/-/g, "/")).getTime() -
                  new Date().getTime();
                var n = e.end_diff_time - 1e3;

                if (n < 0) {
                  e.Time.days = "00";
                  e.Time.hour = "00";
                  e.Time.min = "00";
                  e.Time.sec = "00";
                } else {
                  e.Time.days = that.$.doubleNum(
                    Math.floor(n / 1e3 / 60 / 60 / 24)
                  );
                  e.Time.hour = that.$.doubleNum(
                    Math.floor((n / 1e3 / 60 / 60) % 24)
                  );
                  e.Time.min = that.$.doubleNum(
                    Math.floor((n / 1e3 / 60) % 60)
                  );
                  e.Time.sec = that.$.doubleNum(Math.floor((n / 1e3) % 60));
                }
                // e.Time = that.$.FormatTime(e.activity_endtime)
              });
              that.setData({
                GB_rows: data.items,
              });
            }, 1e3);
          } else {
            that.setData({
              /*flag: false,*/
              ispage: false,
            });
          }
        },
      });
      /* 拼团 that.$.xsr(that.$.makeUrl(fgapi.GetGoingGroupEventByEventId, {EventId: e}), function (e) {
				    e.Info.length > 0 && (intervalDate = setInterval(function () {
				            e.Info.forEach(function (e) {
				                e.Time = that.$.FormatTime(e.EventEndTimeStr)
				            }), that.setData({GB_rows: e.Info})
				        },
				        1e3))
				})*/
    },
    lookall: function () {
      this.isAll
        ? this.setData({
            isAll: false,
          })
        : this.setData({
            isAll: true,
          });
    },
    userFGType: function (e, t) {
      let that = this;
      var n = {
        OwnGroupId: e,
      };
      /* 加入拼团that.$.xsr(that.$.makeUrl(fgapi.IsUserJoinGroupEvnet, n), function (e) {
				    that.$.isNull(e) ? t() || "" : e.Code != 1 ? e.Info[0].IsSuccess ? that.$.alert("恭喜您已经参团成功!") : e.Info[0].IsPaySuccess ? that.$.alert("您已经参加过该团!") : that.$.alert("您已经参加过该团，请尽快支付!") : t() || ""
				})*/
    },
    /*
			    doReceive: function () {
			        this.cancel(), this.userReceiveCoupon()
			    },*/
    cancel: function () {
      this.setData({
        isCancel: false,
      });
    },
    cancelsuccess: function () {
      this.setData({
        isCancelSuccess: true,
      });
    },
    //优惠券一键领取
    getCoupon() {
      const counPonList = this.voucherList.filter((item) => {
        if (item.if_gain) {
          return item.activity_id;
        }
      });

      if (counPonList.length == 0) {
        this.voucherReceiveAllFlag = false;
      }

      const couponIds = counPonList.map((item) => item.activity_id);

      couponIds.forEach((id, index) => {
        this.addVoucher(id, index === couponIds.length - 1);
      });
    },
    doReceive: function (e) {
      var that = this;
      if (e.currentTarget.dataset.isreceive == -1) {
        return;
      }
      that.setData({
        Id: e.currentTarget.dataset.id,
        needed_point: e.currentTarget.dataset.point,
      });
      that.getUserReceiveCoupon();
    },
    getUserReceiveCoupon: function () {
      var point = this.voucherList.needed_point,
        that = this;
      if (point > 0) {
        that.$.confirm(
          that.sprintf(that.__("确定消耗 %d 兑换优惠券?"), point),
          function (e) {
            if (e.confirm) {
              that.addVoucher();
            }
          },
          true
        );
      } else {
        that.addVoucher();
      }
    },
    addVoucher: function () {
      var that = this;
      var params = {
        activity_id: this.Id,
        Code: this.Code,
        user_is_new: 0,
      };
      that.$.request({
        url: this.Config.URL.user.voucher_add,
        data: params,
        success: function (data, status, msg, code) {
          if (200 == status) {
            that.$.alert(that.__("领取成功!"));
            that.getCouponlist();
          } else {
            that.$.alert(msg);
          }
        },
      });
    },
    gotoDetail: function (e) {
      console.log(e);
      var state = e.currentTarget.dataset.state;
      var pid = e.currentTarget.dataset.pid;

      this.$.navigateTo({
        url: "/pages/product/detail?pid=" + pid,
      });
    },
    ImgTap: function (e) {
      var that = this,
        n = [];
      for (var r in this.ProductInfo.last_comment_row.comment_image)
        n.push(this.ProductInfo.last_comment_row.comment_image[r]);
      var i = e.target.dataset.src;
      that.$.previewImage({
        current: i,
        urls: n,
      });
    },
    previewProductImg: function (e) {
      var that = this,
        n = [];
      for (var r in this.ProductInfo.productPicList) {
        n.push(this.ProductInfo.productPicList[r].Path);
      }

      var i = e.target.dataset.src;

      that.$.previewImage({
        current: i,
        urls: n,
      });
    },

    goTabBar: function (e) {
      var that = this;
      that.$.goToTabBar(that, e.currentTarget.dataset.url);
    },

    cancelShare: function (e) {},
    showCodeImg: function (e) {},
    shareQRCode: function (e) {},
    saveImg: function (e) {},

    shareBox: function (e) {
      // 如允许点击超链接跳转，则应该打开一个新页面，并传入href，由新页面内嵌webview组件负责显示该链接内容
      // #ifdef APP-PLUS
      this.setData({
        shareBoxFlag: 1,
        shareContetnFlag: 1,
      });
      // #endif
      // #ifdef MP-WEIXIN
      this.setData({
        PageQRCodeInfo: {
          Path: "",
          IsShare: true,
          IsShareBox: true,
          IsJT: false,
        },
      });
      // #endif
    },

    //跳转门店列表
    gochainlist: function (e) {
      this.$.gotopage(
        "/chain/chain/list?store_id=" +
          e.currentTarget.dataset.store_id +
          "&item_id=" +
          e.currentTarget.dataset.item_id
      );
    },
    /* 商品优惠券 */
    getCouponlist: function () {
      var params = {
          store_id: this.store_info.store_id,
          // item_id: this.skuid
        },
        that = this;
      that.$.request({
        url: this.Config.URL.point.voucher,
        data: params,
        loading: false,
        success: function (data, status, msg, code) {
          for (let i = 0; data.items.length > i; i++) {
            data.items[i].activity_endtime = that.$.dateFormat(
              data.items[i].activity_endtime,
              "yyyy-MM-dd"
            );
          }
          if (200 == status && data.items.length > 0) {
            that.setData({
              voucherList: data.items,
              isVoucher: true,
            });

            const counPonList = that.voucherList.filter((item) => {
              if (item.if_gain) {
                return item.activity_id;
              }
            });

            if (counPonList.length > 0) {
              that.voucherReceiveAllFlag = false;
            } else {
              that.voucherReceiveAllFlag = true;
            }

            //判断是否显示
            if (6 == that.tapindex) {
            } else {
              //判断是否显示代金券
              if (
                that.ProductInfo.product_detail ||
                that.ProductInfo.product_extension ||
                that.ProductInfo.product_param ||
                that.ProductInfo.activityType == "GROUPBOOKING" ||
                that.ProductInfo.product_service
              ) {
              } else {
                that.setData({
                  tapindex: 6,
                });
              }
            }
          } else {
            that.setData({
              isVoucher: false,
            });
          }
        },
        fail: function (data) {
          that.setData({
            isVoucher: false,
          });
        },
      });
    },
    getStoreProdcutList: function () {
      var that = this;
      var params = {
        store_id: this.ProductInfo.store_id,
      };
      // console.log(params)
      that.$.request({
        url: this.Config.URL.store.product,
        data: params,
        loading: false,
        ajaxCache: {
          timeout: this.Config.CACHE_EXPIRE,
        },
        success: function (data, status, msg, code) {
          that.setData({
            store_product_list: data.items,
            store_product_num:
              data.items.length >= 30
                ? data.items.length + "+"
                : data.items.length, //在售商品
          });
        },
      });
    },
    outertouch: function () {
      this.setData({
        virtual_flag: true,
      });
    },
    innertouch: function () {
      this.setData({
        virtual_flag: false,
      });
    },
    tplGoToPage: function (e) {
      let that = this;

      if (!this.hasLogin) {
        this.showLoginPopup = true;
        return;
      }

      //先判断是否登录
      this.forceUserInfo(function (user) {
        var t = e.currentTarget.dataset;
        //that.$.gopage(t.appurl);

        that.$.request({
          url: that.Config.URL.user.kefu_config,
          data: {
            user_id: that.store_info.user_id,
            store_id: that.store_info.store_id,
          },
          loading: false,
          success: function (rd, r_status, r_msg, code) {
            if (r_status == 200) {
              let chat_url = that.$.sprintf(
                "/im/chat/chat?uid=%s&item_id=%s",
                rd.friend_id,
                that.skuid
              );

              that.setData({
                chatUrl: chat_url,
              });

              that.$.gopage(chat_url);
            } else {
              that.$.alert(r_msg);
            }
          },
        });
      });

      return;

      switch (parseInt(t.type)) {
        case 1:
          that.$.gopage("/pages/product/detail?pid=" + t.id);
          break;
        case 2:
          that.$.gopage(
            "/pages/product/list?store_category_id=" +
              (t.id || 0) +
              "&cname=" +
              t.name
          );
          break;
        case 3:
          that.$.gopage("/pages/product/list?pname=" + t.keyword);
          break;
        case 4:
          that.$.gopage(t.appurl);
          break;
        case 5:
          that.$.gopage(t.appurl);
          break;
        case 6:
          that.$.gopage(t.appurl);
          break;
        case 7:
          that.$.navigateToMiniProgram({
            appId: t.appid,
            path: t.appurl,
          });
          break;
        case 8:
          that.$.gopage("/pagesub/diy-page/diy-page?id=" + t.id);
          break;
        case 9:
          that.$.gopage(
            "/pagesub/webpage/webpage?u=" +
              encodeURIComponent(t.appurl) +
              "&tn=" +
              t.name +
              "&tc=" +
              t.appid +
              "&tb=" +
              t.keyword
          );
          break;
        case 10:
          that.$.gopage(
            "/pagesub/webpage/web?u=" +
              encodeURIComponent(t.appurl) +
              "&tn=" +
              t.name +
              "&tc=" +
              t.appid +
              "&tb=" +
              t.keyword
          );
      }
    },
    closeNativeShare: function () {
      var that = this;
      that.setData({
        shareContetnFlag: 0,
        flag: false,
      });

      setTimeout(function () {
        that.setData({
          shareBoxFlag: 0,
        });
      }, 1e2);
    },
    scrolltoupper: function (t) {
      this.old.scposition = t.detail.scrollTop;

      t.detail.scrollTop >= this.screenHeight
        ? this.setData({
            isquicknav: true,
          })
        : this.setData({
            isquicknav: false,
          });
    },
    onMenu: function (t) {
      this.$refs.headerNavMenu.showBoxView =
        !this.$refs.headerNavMenu.showBoxView;
    },
    onShareBox: function (e) {
      let that = this;
      var $href = that.$.sprintf(
        "%s/tmpl/product_detail.html?item_id=%d&FX=%d",
        this.Config.WapSiteUrl,
        this.skuid,
        this.userInfo.user_id
      );

      $href = that.$.sprintf(
        "%s/h5/pages/product/detail?pid=%d&uid=%d",
        that.Config.SiteUrl,
        this.proId,
        this.userInfo.user_id
      );
      // 如允许点击超链接跳转，则应该打开一个新页面，并传入href，由新页面内嵌webview组件负责显示该链接内容
      // #ifdef APP-PLUS

      // #endif

      // #ifdef MP-WEIXIN
      $href = that.$.sprintf(
        "%s/pages/product/detail?pid=%d&uid=%d",
        this.Config.WapSiteUrl,
        this.proId,
        this.userInfo.user_id
      );
      // #endif

      this.setData({
        shareData: {
          shareTitle: this.pname,
          shareText: this.desc,
          href: $href,
          image: this.ProductInfo.productPicList[0].Path,
          price: this.number_format(this.ProductInfo.ItemSalePrice, 2),
        },
      });

      // 如允许点击超链接跳转，则应该打开一个新页面，并传入href，由新页面内嵌webview组件负责显示该链接内容
      // #ifdef APP-PLUS
      this.$refs.shareBoxApp.show();
      // #endif

      //海报
      if (e == 3) {
        // #ifndef APP-PLUS
        this.$refs.shareBoxMp.show();
        // #endif
      } else {
        // #ifdef H5
        if (that.$.ifUniApp()) {
          this.$refs.shareBoxH5.show();
        } else {
          this.$refs.shareBoxMp.show();
        }
        // #endif

        // #ifdef MP-WEIXIN
        this.$refs.shareBoxMp.show();
        // #endif
      }
    },
    onReturnTop: function () {
      let that = this;
      // 清除上一次的定时器
      if (that.timer !== null) {
        clearInterval(that.timer);
      }
      that.setData({
        scposition: this.old.scposition,
      });

      that.timer = setInterval(function () {
        let speed = that.scposition / 4;
        speed = Math.ceil(speed);
        if (that.scposition <= 0 || !that.scposition) {
          clearInterval(that.timer);
        }
        that.scposition = that.scposition - speed;
      }, 30);
    },

    scrollbottom: function () {
      if (this.flag) {
        var e = this;
        e.setData({
          flag: false,
        }),
          clearTimeout(t);
        var t = setTimeout(function () {
          e.setData({
            type: e.type,
            page: parseInt(e.page) + 1,
            rows: 10,
          }),
            e.getNearChain();
        }, 500);
      }
    },
    // 三级联动选择
    onSelectAddress(e) {
      this.$refs.mpvueCityPicker.show();
    },

    onCancel(e) {
      //console.log(e)
    },

    onConfirm(e) {
      let that = this;
      let district_info = that.$.isNull(e.label.toString())
        ? that.__("请选择地址")
        : e.label.toString();
      let product_freight_info = this.product_freight_info;
      product_freight_info.district_info = district_info;

      let item_row = this.ProductInfo;

      this.setData({
        product_freight_info: product_freight_info,
      });

      var params = {
        item_id: this.proId,
        district_id: e.value[1],
      };

      //

      //存入本地
      uni.setStorageSync("district_id", params.district_id);

      that.$.request({
        url: this.Config.URL.product.shipping_district,
        data: params,
        success: function (data, status, msg, code) {
          if (200 == status) {
            item_row.ifStore = data.product_freight_info.if_store;

            that.setData({
              product_freight_info: data.product_freight_info,
              ProductInfo: item_row,
            });
          }
        },
      });
    },
    showActivityDetail(e) {
      var that = this;
      that.activity_type_id = e;
      that.$refs.popup.open();
    },
    showCouponDetail() {
      var that = this;
      that.$refs.popup2.open();
    },

    goGiftBag() {
      var that = this;
      uni.navigateTo({
        url: "/activity/giftbag/detail?aid=" + that.ProductInfo.activity_id,
      });
    },
    closeLoginPopup() {
      this.showLoginPopup = false;
    },
  },
};
</script>


<style lang="scss">
@import "../../styles/_variables.scss";

.page-body {
  padding: 40rpx;

  button {
    margin: 20rpx 20rpx;
  }

  .m-panel-sp-icon {
    position: absolute;
    right: 20rpx;
    top: 10rpx;

    color: #888;
  }
}

.discuss-evaluate {
  background: #fff;
  margin-top: 10rpx;

  .discuss-evaluate-top {
    position: relative;
    height: 70rpx;
    background: rgba(255, 255, 255, 1);
    margin-top: 24rpx;
    margin-left: 30rpx;
    padding-top: 10rpx;
  }
}

.discuss-item {
  .user-evaluate-center {
    height: 200rpx;
    border-bottom: 1px dotted #ccc;

    .user-text {
      height: auto;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      margin-right: 20rpx;
      text-indent: 1em;
    }

    .user-no-text {
      text-align: center;
    }
  }
}

.m-banner-ad {
  width: 750rpx;
  height: 750rpx;
  position: relative;
  background-color: #fff;
}

.m-banner-ad swiper {
  width: 100%;
  height: 100%;
}

.slide-image {
  width: 100%;
  height: 100%;
}

.m-detail {
  /*min-height: 500rpx;*/
}

.m-info-box {
  font-size: 32rpx;
}

.m-cells {
  margin-top: 20rpx;
  background: transparent;
  border-radius: 12rpx;

  .m-cell {
    background: #ffffff;
    padding: 24rpx 24rpx;
    margin-bottom: 20rpx;
    border-radius: 12rpx;
  }
}

.m-info-box label {
  color: $default-skin-bg;
  display: block;
  font-size: 28rpx;
}

.m-info-price {
  color: $secondary-skin-color;
  font-size: 48rpx;
  font-family: PingFangSC-Medium, PingFang SC;
  font-weight: 500;
  line-height: 66rpx;

  span {
    padding: 0 8rpx;
  }
}

.m-info-price text {
  font-size: 12px;
  font-family: PingFangSC-Light, PingFang SC;
  font-weight: 300;
  //color: #888888;
  line-height: 40rpx;
}

.m-info-delprice {
  color: #888;
  margin-left: 10rpx;
  text-decoration: line-through;
  position: relative;
}

/*优惠券样式 start*/
.m-coupon-list {
  margin-top: 36rpx;
}

.m-coupon-item {
  width: 700rpx;
  height: 192rpx;
  margin: 10rpx auto;
  background: url(https://static.lancerdt.com/xcxfile/appicon/Coupon_V2.png)
    no-repeat;
  background-size: contain;
  box-sizing: border-box;
  padding: 12rpx;
}

.m-coupon-info {
  float: left;
  width: 486rpx;
  margin-left: 30rpx;
  margin-top: 9.5rpx;
}

.m-coupon-btn {
  float: left;
  width: 110rpx;
  margin-left: 30rpx;
  line-height: 36rpx;
  text-align: center;
  font-size: 24rpx;
  color: #fff;
}

.btn-coupon {
  display: inline-block;
  width: 28rpx;
}

.btn-coupon-gray {
  //color: #888;
}

.m-coupon-text {
  float: left;
  width: 300rpx;
}

.m-coupon-text label {
  display: inline-block;
  color: #333;
  font-size: 28rpx;
  width: 250rpx;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 32rpx;
}

.m-coupon-text text {
  display: inline-block;
  width: 350rpx;
  font-size: 24rpx;
  color: #888;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 32rpx;
}

.m-coupon-price {
  float: left;
  height: 132rpx;
  color: $default-skin-bg;
  font-weight: bold;
  line-height: 132rpx;
  width: 180rpx;
  position: relative;
  font-size: 75rpx;
}

.price-content-box {
  position: absolute;
  left: -35rpx;
  text-align: center;
  width: 280rpx;
  font-size: 40rpx;
}

.price-content-box label {
  font-size: 32rpx;
}

/*优惠券样式 end*/

.dis {
  display: flex;
  justify-content: flex-end;
  /*width: 360rpx;*/
  flex: 1;
  float: right;
  line-height: 74rpx;
}

.dis .num {
  font-size: 24rpx;
  font-weight: bold;
  color: #717171;
  padding-right: 20rpx;
  text-align: right;
}

.selled {
  display: flex;
  justify-content: flex-end;
  width: 180rpx;
  float: right;
  line-height: 74rpx;
  flex: 1;
}

.selled .num {
  font-size: 24rpx;
  color: #717171;
  padding-right: 20rpx;
  text-align: right;
}

.m-info-tip {
  font-size: 28rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #888888;
  //line-height: 60rpx;
}

.m-info-sp {
  font-size: 28rpx;
}

.m-info-sp label {
  margin-left: 20rpx;
}

.m-comment .m-media-box-title {
  font-size: 28rpx;
}

.m-comment .m-media-box-hd {
  border-radius: 100%;
  overflow: hidden;
  vertical-align: top;
}

.m-start label {
  font-size: 24rpx;
}

.m-media-box-info-meta {
  padding-right: 5rpx;
}

.sel {
  color: $default-skin-bg;
  font-size: 24rpx;
}

.m-tiem {
  float: right;
}

.m-panel-hd label {
  float: right;
}

.m-panel-hd text {
  color: $default-skin-bg;
  margin-left: 10rpx;
}

.m-comment .m-media-box-info-meta {
  font-size: 24rpx;
  font-weight: 100;
}

.g-flex-item {
  font-size: 28rpx;
  padding: 10rpx;
  border-top: 1rpx solid #d5d5d5;
  border-right: 1rpx solid #d5d5d5;
}

.m-Packinglist {
  font-size: 28rpx;
  padding: 20rpx;
}

/*底部按钮 start*/
.m-footer-btn {
  width: 94%;
  padding: 0rpx 24rpx;
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: #fff;
  text-align: center;
  z-index: 3;

  display: flex;
  flex-direction: row;
  align-items: center;
  border-top: 2rpx solid #eeeeee;

  .iconfont {
    font-size: 20px;
    font-weight: 600;
  }
}

.m-footer-btn-list {
  /*width: 50%;*/
  height: 100%;
  position: relative;
  float: left;
  display: flex;
  flex-direction: row;
}

.m-footer-btn-list::before {
  // content: " ";
  position: absolute;
  left: 0;
  top: -2rpx;
  right: 0;
  height: 2rpx;
  border-bottom: 2rpx solid #d5d5d5;
  color: #cccccc;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  // z-index: 3;
}

.m-footer-btn-item {
  position: relative;
  float: left;
  width: 110rpx;
  font-size: 24rpx;
  color: #888;
  line-height: 40rpx;
  padding: 8rpx 0;
  // border-right: 1rpx solid #d5d5d5;
  box-sizing: border-box;
  flex: 1;
}

.no_goods {
  .no_shadow {
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 11;
    opacity: 0.7;
    background-color: #b2b2b2;
  }

  .no_goods_tip {
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 12;
    text-align: center;
    height: 120rpx;
    line-height: 120rpx;
  }

  position: absolute;
  z-index: 10;
  height: 120rpx;
  line-height: 120rpx;
  color: #fff;
  font-size: 26rpx;
  width: 100%;
  bottom: 0;
  left: 0;
  width: 100%;
}

.m-footer-btn-item:last-child {
  border: none;
}

.m-footer-btn-icon {
  width: 50rpx;
  height: 50rpx;
  line-height: 50rpx;
  margin: 0 auto;
  position: relative;
}

.m-footer-btn-item image {
  width: 40rpx;
  height: 40rpx;
}

.m-footer-btn-item contact-button {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0;
}

.m-footer-btn-main {
  width: 25%;
  // height: 100%;
  float: left;
  background-color: #ff9402;
  color: #fff;

  height: 48px;
  line-height: 92rpx;
  font-weight: 500;
  font-size: 32rpx;
  flex: 1;

  border-radius: 18rpx;
}

.m-footer-desable {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}

.m-now {
  background-color: #ff0136;
}

/*底部按钮 end*/
/*选择规格遮罩 start*/
.m-panel-sp {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 4;
  background-color: rgba(0, 0, 0, 0.2);
}

.m-panel-sp-content {
  background-color: #fff;
  position: absolute;
  width: 100%;
  bottom: 0;
  box-shadow: 0px -10rpx 15rpx rgba(0, 0, 0, 0.35);
  border-radius: 20rpx;
}

.m-panel-sp-pinfo {
  height: 170rpx;
  box-sizing: border-box;
  padding: 20rpx;
  position: relative;

  padding-bottom: 0;
}

.m-panel-sp-pimg {
  width: 200rpx;
  height: 200rpx;
  position: absolute;
  top: -50rpx;
  background-color: #fff;
  border-radius: 8rpx;
  box-sizing: border-box;
  padding: 10rpx;
  box-shadow: 0px 0rpx 10rpx rgba(0, 0, 0, 0.35);
  float: left;
}

.m-panel-sp-pimg image {
  width: 100%;
  height: 100%;
}

.m-panel-sp-pname {
  float: left;
  margin-left: 216rpx;
  font-size: 28rpx;
  line-height: 40rpx;

  margin-top: 6rpx;
}

.m-panel-sp-pname .m-pprice {
  color: $default-skin-bg;
  font-size: 32rpx;
  line-height: 50rpx;
  font-weight: bold;

  display: inline;
}

.m-panel-sp-icon {
  position: absolute;
  right: 10rpx;
  top: 10rpx;
  z-index: 9999;
}

/* .m-panel-sp-listbox{height: 604rpx;} */
.m-panel-sp-listbox-item {
  //border-top: 1rpx solid #d5d5d5;
  box-sizing: border-box;
  padding: 10rpx 20rpx;
}

.m-panel-sp-listbox-item .m-cells-title {
  color: black;
  padding-left: 0;
}

.m-panel-sp-labellist {
}

.m-panel-sp-labellist label {
  display: inline-block;
  font-size: 24rpx;
  padding: 10rpx 15rpx;
  border-radius: 8rpx;
  margin: 10rpx;
  color: #888;
  border: 1rpx solid #d5d5d5;
}

/* for b2b */
.m-panel-sp-labellist1 label {
  display: block;
  font-size: 24rpx;
  padding: 10rpx 15rpx;
  border-radius: 8rpx;
  margin: 10rpx;
  color: #888;
  border: 1rpx solid #d5d5d5;
  float: left;
  /*width: 8%;*/
  text-align: center;
  margin-top: 13px;
  margin-bottom: 25px;
}

.m-panel-sp-sellabel-no {
  /*
  color: #d5d5d5 !important;
  border: 1rpx solid #d5d5d5 !important;
  */
  float: left !important;
  // position: absolute;
  left: 20%;
  top: 9.3%;
}

.uni-numbox {
  // margin-left: 64%;
  display: inline-flex;
  height: 100% !important;
  width: 100%;
}

.uni-numbox__plus {
  height: 100%;
}

.m-panel-sp-labellist2 {
  display: none;
}

.m-panel-sp-sellabel1 {
  display: none !important;
}

.m-ys {
  float: left;
  height: 35px;
  line-height: 35px;
  overflow: hidden;
  width: 100%;
  border-radius: 5px;
  margin: 5px;
}

/* end for b2b */
.product-info {
  .m-panel-sp-sellabel {
    border: 0 !important;
    color: #888 !important;
    margin: 0 5px;
    padding: 0;

    font-size: 14px;
  }
}

.activity-fixtop {
  padding-top: 1px !important;
}

.m-panel-sp-sellabel {
  color: $default-skin-bg !important;
  border: 1rpx solid $default-skin-bg !important;
}

.m-panel-sp-sellabel-b2b {
  color: #888 !important;
  border: 1px solid #d5d5d5 !important;
}

.m-panel-sp-sellabel-b2b-h {
  color: $default-skin-bg !important;
  border: 1rpx solid $default-skin-bg !important;
}

.m-m-panel-sp-btn {
  height: 80rpx;
  //width: 100%;
  width: 94%;
  position: absolute;
  bottom: 0;
  left: 0;

  background-color: #fff;
  bottom: 0;
  bottom: constant(safe-area-inset-bottom);
  bottom: env(safe-area-inset-bottom);
  padding: 24rpx;
  display: flex;
}

.m-m-panel-sp-lbtn {
  float: left;
  width: 50%;
  //border-top: 1rpx solid #d5d5d5;
  border: 2rpx solid $default-skin-bg;
  border-right: 0;
  text-align: center;
  border-radius: 9px 0px 0px 9px;

  display: flex;
  line-height: 76rpx;
  height: 76rpx;
}

.m-m-panel-sp-rbtn {
  width: 50%;
  float: left;
  background-color: $default-skin-bg;
  line-height: 80rpx;
  font-size: 32rpx;
  color: #fff;
  text-align: center;
  font-weight: 500;
}

/*选择规格遮罩 end*/
.m-null-product {
  color: #888;
  font-size: 32rpx;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -80rpx;
  margin-top: -76rpx;
}

.m-null-product label {
  font-size: 100rpx;
}

.m-navbar {
  background-color: transparent;
}

.m-navbar-item {
  padding: 20rpx 0;
  font-size: 14px;
}

.m-navbar-item:after {
  border: none;
}

.m-navbar-item.m-navbar-item-on {
  background-color: transparent;
  //background-color: #fff;
  //color: $default-skin-bg;
}

.m-navbar-item.m-navbar-item-on::before {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 6rpx;
  //border-bottom: 6rpx solid $default-skin-bg;
  color: #cccccc;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  z-index: 3;
}

/*拼团*/
.progressBarBox {
  float: right;
  color: #888;
  font-size: 24rpx;
  margin-right: 20rpx;
  font-weight: 200;
  line-height: 64rpx;
}

.progressBarBox label {
  color: #333;
  font-weight: 200;
  font-size: 24rpx;
}

.m-FGB-time {
  display: inline-block;
  background-color: #666666;
  padding: 5rpx;
  color: #fff !important;
  border-radius: 4rpx;
  min-width: 28rpx;
  height: 28rpx;
  line-height: 28rpx;
  text-align: center;
}

.m-FGB-time-tip {
  margin: 0 4rpx;
}

.m-fightGroupsBox .m-media-box-bd {
  font-size: 24rpx;
  color: #888;
  padding: 10rpx 30rpx;
  line-height: 40rpx;
}

.u-fg {
  font-size: 32rpx;
  line-height: 40rpx;
  box-sizing: border-box;
  padding: 10rpx;
}

.u-fg view:first-child {
  font-size: 24rpx;
}

.m-fg-btn .m-footer-btn-list {
  width: 30%;
}

.m-fg-btn .m-footer-btn-main {
  width: 35%;
}

.m-fg-comment {
  margin-bottom: 20rpx;
  margin-top: 0px;
}

.m-fg-comment .m-media-box {
  padding: 24rpx 15rpx;
}

.m-fg-comment .m-media-box-bd {
  line-height: 50rpx;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.m-media-box-title-tip {
  color: $default-skin-bg;
  font-size: 24rpx !important;
}

.m-media-box-desc-tip {
  color: #333;
  font-size: 24rpx;
}

.m-media-box-bd .u-btn {
  padding: 0;
  margin: 0 20rpx;
  width: 160rpx;
  float: right;
  font-size: 24rpx;
  line-height: 50rpx;
  margin-top: 10rpx;
}

.m-fg-comment .m-media-box-hd {
  margin-right: 10rpx;
  width: 80rpx;
  height: 80rpx;
}

.m-media-box-bd-tip {
  text-align: center;
}

.m-price-tip {
  padding: 5rpx 10rpx;
  color: #fff !important;
  background-color: $default-skin-bg;
  display: inline-block !important;
  font-weight: 200;
  font-size: 24rpx !important;
  position: relative;
  margin-left: 10rpx;
  border-radius: 4rpx;
  top: -10rpx;
}

.m-price-tip::after {
  position: absolute;
  content: "";
  border: solid 10rpx $default-skin-bg;
  border-color: transparent $default-skin-bg transparent transparent;
  left: -15rpx;
  top: 50%;
  margin-top: -10rpx;
}

.progressBarBox-content {
  width: 160rpx;
  height: 15rpx;
  background-color: #d5d5d5;
  border-radius: 20rpx;
}

.progressBarBox-content label {
  height: 15rpx;
  background-color: #ffc001;
  border-radius: 20rpx;
}

.progressBarBox-text {
  text-align: center;
}

.progressBarBox-text text {
  font-size: 24rpx !important;
  font-weight: 200;
}

/*拼团*/
/*当前拼团*/
.currentFG {
  padding: 20rpx;
  background-color: #fff;
  margin-top: 20rpx;
  text-align: center;
}

.currentFG-item {
  display: inline-block;
  width: 100rpx;
  height: 100rpx;
  border-radius: 100%;
  overflow: hidden;
}

.currentFG-item image {
  width: 100%;
  height: 100%;
}

/*当前拼团*/
.u-tap-btn {
  position: fixed;
  right: 20rpx;
  bottom: 150rpx;
  z-index: 3;
}

.u-go-home {
  border-radius: 100%;
  width: 80rpx;
  height: 80rpx;
  border: 1px solid #eee;
  font-size: 20rpx;
  text-align: center;
  background-color: #fff;
  box-shadow: 0px 4rpx 8rpx rgba(0, 0, 0, 0.35);
  z-index: 2;
  opacity: 0.8;
  line-height: 80rpx;
  margin-bottom: 20rpx;
}

.u-go-home .iconfont {
  font-size: 40rpx;
}

.m-media-list {
  float: left;
  width: 100%;
}

.m-media-list image {
  width: 115rpx;
  height: 115rpx;
  box-sizing: border-box;
  margin: 10rpx;
  border: 1rpx solid #eee;
}

.m-media-box-appmsg {
  align-items: initial;
}

.wxParse-p image {
  vertical-align: top;
}

.video {
  position: absolute;
  bottom: 40rpx;
  left: 44%;
}

.seckill {
  display: flex;
  height: 120rpx;
  color: #fff;
  background: linear-gradient(270deg, #db384c 0%, #ff7495 100%);
  border-radius: 11px 11px 0 0;
  position: relative;
  //bottom: -11px;
  //padding-bottom: 11px;
}

.seckill-left {
  width: 70%;
  padding-left: 20rpx;
  //background: #ff0136;
  display: flex;
  flex-flow: column;

  margin: auto;
}

.seckill-right {
  width: 35%;
  //background: rgb(254, 234, 233);
  display: flex;
  //align-items: center;
  justify-content: center;
  flex-flow: column;

  text-align: right;
  padding-right: 20rpx;
  margin-top: 10rpx;

  image {
    width: 166rpx;
    height: 44rpx;
  }
}

.seckill-left .discountPrice {
  margin-top: 2rpx;

  text.m-info-delprice {
    font-size: 12px;
    color: #fff;
  }
}

.seckill-left .discountPrice text {
  font-size: 56rpx;
}

.seckill-left .Price {
  display: flex;
  margin-bottom: 10rpx;
}

.seckill-left .Price image {
  width: 166rpx;
  height: 44rpx;
}

.seckill-left .Price view {
  text-decoration: line-through;
  margin-left: 20rpx;
  font-size: 28rpx;
  display: flex;
  align-items: center;
}

.seckill-right .endTime {
  //color: #ff0136;
  margin-bottom: 16rpx;
}

.seckill-right .Time {
  font-size: 12px;
  padding-top: 4rpx;
}

.seckill-right .time {
  //padding: 8rpx 8rpx;
  font-size: 14px;
  border-radius: 10rpx;
  //background: #ff0136
}

.seckill-right .time-tip {
  //color: #ff0136;
  //margin: 0 6rpx
}

// 拼团信息
.groupbooking {
  display: flex;
  height: 140rpx;
  color: #fff;
  background: linear-gradient(270deg, #ff3055 0%, #ff564e 100%);
  height: 160rpx;

  .m-info-price {
    color: $secondary-skin-color;
    font-size: 48rpx;
    font-family: PingFangSC-Medium, PingFang SC;
    font-weight: 500;

    span {
      padding: 0 8rpx;
    }
  }

  .m-info-price text {
    font-size: 28rpx;
    font-weight: 300;
  }

  .progressBarBox {
    position: relative;
    bottom: 0rpx;
    left: 140rpx;
  }
}

.groupbooking .label .userLimt {
  background-color: #fff;
  padding: 20rpx 30rpx;
  width: 80rpx;
  height: 22rpx;
  border-radius: 100rpx;
  font-size: 22rpx;
  font-weight: bold;
  display: flex;
  color: $default-skin-bg;
  justify-content: center;
  align-items: center;
  position: relative;
  left: 200rpx;
  bottom: 65rpx;
}

.groupbooking .label {
  color: #fff;
  margin: 10rpx;
}

.groupbooking .endlabel {
  color: #febea1;
}

.groupbooking .m-info-delprice {
  color: #ffb2b2;
  position: relative;
  top: 40rpx;
  right: 180rpx;
  font-size: 24rpx;
}

.groupbooking-name {
  background: #fff;
  height: 100rpx;
  padding: 20rpx;
  margin-bottom: 20rpx;
}

.groupbooking-rule {
  background: #fff;
  padding: 20rpx;
  margin-bottom: 20rpx;
  font-size: 30rpx;

  .groupbooking-rule-title {
    padding: 10rpx;
    display: flex;
    align-items: center;
  }

  .red-dot {
    content: "";
    width: 6rpx;
    height: 32rpx;
    background-color: red;
    margin-right: 8px;
  }

  .groupbooking-rule-line {
    border-bottom: 2rpx solid #eee;
  }

  .flex-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20rpx;
  }

  .flex-item {
    text-align: center;
  }

  .arrow {
    display: flex;
    align-items: center;
  }

  .flex-item-img {
    width: 50rpx;
    height: 50rpx;
  }

  .right-arrow {
    width: 40rpx;
    height: 40rpx;
  }
}

/* 店铺信息 */

.goods-detail-store .store_name {
  font-size: 32rpx;
  color: #333;
}

.m-cells::after {
  height: 0;
  border-bottom: 0;
}

.goods-detail-store label {
  font-size: 44rpx;
  float: left;
  line-height: 48rpx;
}

.goods-detail-store label.icon-mall {
  color: #f30213;
  font-size: 32rpx !important;
  margin: auto 6rpx;
}

.goods-detail-store .store-rate {
  margin: 6rpx 30rpx 0rpx;
}

.goods-detail-store .store-rate label {
  display: inline-block;
  width: 33.33%;
  height: 80rpx;
  font-size: 26rpx;
  line-height: 80rpx;
  color: #999999;
  padding: auto 60rpx;
}

.goods-detail-store .store-rate label view {
  display: inline-block;
  vertical-align: middle;
  font-size: 26rpx;
  font-weight: 600;
}

.goods-detail-store .store-rate label i {
  display: inline-block;
  vertical-align: middle;
  width: 0.7rem;
  height: 0.7rem;
  font-size: 0.45rem;
  line-height: 0.7rem;
  font-style: normal;
  text-align: center;
  border-radius: 0.1rem;
}

.goods-detail-store .store-rate label.equal view,
.goods-detail-store .store-rate label.high view {
  margin-left: 4rpx;
  color: #f30213;
}

.goods-detail-store .store-rate label.equal i,
.goods-detail-store .store-rate label.high i {
  color: #fff;
  background-color: #f30213;
}

.goods-detail-store .store-rate label.low view {
  color: #48cfae;
}

.goods-detail-store .store-rate label.low i {
  color: #fff;
  background-color: #48cfae;
}

/* share */
.textarea-wrp {
  padding: 0 20rpx;
}

.page-section {
  margin-bottom: 20rpx;
}

.textarea {
  border: 2rpx solid #d8d8d8;
  padding: 10rpx;
  height: 90rpx;
  width: 690rpx;
}

.uni-input {
  border: 2rpx solid #d8d8d8;
  padding: 0 10rpx;
  width: 690rpx;
}

.uni-uploader-body {
  display: flex;
  justify-content: center;
}

radio-group {
  box-sizing: border-box;
  width: 100%;
  padding: 0 30rpx;
  display: flex;
  justify-content: space-between;
}

.item_disabled {
  background-color: #ddd !important;
  cursor: not-allowed;
}

.m-footer-btn-icon .uni-badge {
  position: absolute;
  z-index: 9;
  margin-left: -4rpx;
  margin-top: -10rpx;
}

/* */
.u-p-opt {
  position: absolute;
  right: 20rpx;
  bottom: 110rpx;
}

.navtext {
  margin-bottom: 20rpx;
}

.quicknav {
  width: 80rpx;
  height: 80rpx;
  border-radius: 50%;
  border: 1rpx solid #eee;

  .iconfont {
    text-align: center;
    vertical-align: middle;
    line-height: 80rpx;
    height: 80rpx;
    font-size: 40rpx;
  }

  .iconfont.zc {
    text-align: center;
    vertical-align: middle;
    line-height: 80rpx;
    height: 80rpx;
    font-size: 40rpx;
    color: #7a7a7a;
  }
}

.u-p-opt .navtext:first-child {
}

.u-p-opt .navtext:last-child {
  margin-bottom: 0rpx;
}

/* 修正"app-plus": {
                "titleNView": {
                    "type": "transparent"

                    scroll view 问题
*/
.fix-titlenview-trans {
  height: calc(100% + 88rpx);
}

/* near chain*/
.m-nearbylist label {
  font-size: 26rpx;
}

.list-box {
  background-color: #fff;
  color: #333;
}

.item-box {
  padding: 20rpx;
  border-bottom: 1rpx solid #eee;
}

.flex-box {
  display: flex;
  align-items: center;
  position: relative;
}

.flex-shop {
  width: 30rpx;
  height: 30rpx;
}

.m-imfo-sp-selext-name {
  margin-left: 25rpx;
  max-width: 60%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.flex-title {
  font-size: 30rpx;
  margin-left: 10rpx;
  max-width: 75%;
  overflow: hidden;
  height: 40rpx;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flex-postion {
  display: flex;
  align-items: center;
  position: absolute;
  right: 0;
}

.flex-postion image {
  width: 20rpx;
  height: 26rpx;
}

.flex-postion label {
  font-size: 24rpx;
  color: #9b9b9b;
  margin-left: 10rpx;
}

.m-nearbylist {
  position: absolute;
  width: 100%;
  height: 100%;
}

.flex-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.flex-info view {
  margin: 10rpx 0 0 0;
  font-size: 28rpx;
}

.flex-info-box {
  display: flex;
  align-items: flex-start;
}

.flex-info label {
  display: inline-block;
  vertical-align: top;
  word-wrap: break-word;
  width: 520rpx;
}

.flex-info image {
  width: 40rpx;
  height: 40rpx;
  position: absolute;
  right: 10rpx;
}

.flex-info-title {
  flex-basis: 145rpx;
}

.open_ba {
  width: 80%;
  margin: 0 auto;
}

.open_dl {
  width: 34%;
  height: 79rpx;
  background: #33cc66;
  border-radius: 20rpx;
  text-align: center;
  color: #fff;
  margin: 79rpx auto 0 auto;
  line-height: 75rpx;
}

.nearbylist-item {
  padding: 20rpx 30rpx;
  border-bottom: 1px solid #eee;
  background: white;
}

.nearbylist-item:last-child {
  border: none;
}

.item-info {
  position: relative;
  font-size: 28rpx;
}

.item-name {
  display: inline-block;
  font-size: 30rpx;
}

.item-phone {
  line-height: 45rpx;
  display: flex;
  align-items: center;
}

.item-distance {
  float: right;
  font-size: 26rpx;
  color: #bbb;
}

.item-address {
  position: relative;
  font-size: 26rpx;
  color: #bbb;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  margin-right: 40rpx;
  line-height: 40rpx;
}

.item-info::after {
  content: " ";
  display: inline-block;
  height: 12rpx;
  width: 12rpx;
  border-width: 4rpx 4rpx 0 0;
  border-color: #ebebe7;
  border-style: solid;
  -webkit-transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
  transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
  top: -4rpx;
  position: absolute;
  top: 72%;
  right: 4rpx;
  padding: 3rpx;
}

.m-nearbylist {
  height: 100%;
  position: absolute;
}

.tag-view {
  /* #ifndef APP-PLUS-NVUE */
  display: inline-flex;
  /* #endif */
  flex-direction: column;
  margin: 10rpx 15rpx;
  justify-content: center;
}

.evaluate {
  height: 360rpx;
  background: rgba(255, 255, 255, 1);

  margin-bottom: 10px;
  border-radius: 6px;
}

.evaluate-top {
  position: relative;
  height: 80rpx;
  background: rgba(255, 255, 255, 1);
  padding-top: 20rpx;
  margin-left: 30rpx;
}

.right {
  width: 150rpx;
  height: 24rpx;
  font-size: 26rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: $main-skin-color;

  margin-right: 8rpx;
}

.evaluate-right {
  position: absolute;
  margin-top: -52rpx;
  right: 56rpx;

  &:after {
    content: " ";
    display: inline-block;
    height: 12rpx;
    width: 12rpx;
    border-width: 4rpx 4rpx 0 0;
    border-color: #999999;
    border-style: solid;
    -webkit-transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
    transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
    position: relative;
    top: -4rpx;
    position: absolute;
    top: 50%;
    margin-top: -8rpx;
    /*right: 4rpx;*/
  }
}

.evaluate-bottom {
  background: rgba(255, 255, 255, 1);
  //position: absolute;
  //margin-top: 80rpx;
}

.uesr-evaluate {
  width: 644rpx;
  height: 200rpx;
  // background:rgba(244,244,244,1);
  border-radius: 8rpx;
  float: left;
  padding-top: 20rpx;
  padding-left: 30rpx;
}

.uesr-evaluate-center {
  width: 100%;
  height: 200rpx;
  background: rgba(244, 244, 244, 1);
  border-radius: 0rpx 8rpx 8rpx 0rpx;
  float: left;
}

.more-items {
}

.more-items-title {
  width: 100%;
  height: 100rpx;
  background: rgba(244, 244, 244, 1);
}

.uesr-evaluate-image {
  width: 200rpx;
  height: 200rpx;
  border-radius: 0rpx 8rpx 8rpx 0rpx;
  background: rgba(255, 255, 255, 1);
  float: left;
}

.center-top {
  width: 360rpx;
  height: 60rpx;
  // background:rgba(255,255,255,1);
  margin: 20rpx 20rpx;
  text-align: left;
}

.user-image {
  width: 60rpx;
  height: 60rpx;
  background: rgba(244, 244, 244, 1);
  border-radius: 50%;
  float: left;
}

.user-name {
  width: 176rpx;
  height: 24rpx;
  font-size: 26rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: rgba(153, 153, 153, 1);
  margin: 0 20rpx;
  overflow: hidden;
}

.user-text {
  /* width:360rpx; */
  height: 80rpx;
  // background:rgba(255,255,255,1);
  margin-left: 20rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  
}

.user-text label {
  width: 360rpx;
  height: 80rpx;
  font-size: 32rpx;
  font-family: Alibaba PuHuiTi;
  line-height: 22rpx;
  font-weight: 400;
  color: rgba(51, 51, 51, 1);
  word-wrap: break-word;
  word-break: normal;
}

.p-adds {
  width: 750rpx;
  height: 100rpx;
  background: rgba(255, 255, 255, 1);
  margin-top: 20rpx;
}

.p-adds-left {
  width: 100rpx;
  height: 100rpx;
  float: left;
}

.p-adds-left label {
  width: 60rpx;
  height: 25rpx;
  font-size: 26rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: rgba(153, 153, 153, 1);
  position: absolute;
  margin-left: 30rpx;
  margin-top: 30rpx;
}

.p-adds-right {
  width: 600rpx;
  height: 100rpx;
  float: right;
}

.p-adds-right label {
  position: absolute;
  margin-top: 30rpx;
  font-size: 26rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: rgba(51, 51, 51, 1);
}

.evaluate-top .left {
  width: 228rpx;
  height: 31rpx;
  font-size: 32rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 500;
  color: rgba(51, 51, 51, 1);
}

.m-store {
  //width: 100%;
  //height: 460rpx;
  background: rgba(255, 255, 255, 1);
  margin-bottom: 20rpx;
  border-radius: 6px;
}

.is-rest{
  position: fixed;
  height: 10%;
  width: 100%;
  bottom: 0;

  &::before{
    content: "门店已打烊";
    position: absolute;
    bottom: 0;
    height: 100%;
    width: 100%;
    text-align: center;
    line-height: 100rpx;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
  }
}

.m-store-info {
  position: relative;
  //width: 750rpx;
  height: 120rpx;
  background: rgba(255, 255, 255, 1);

  padding: 24rpx;
  padding-left: 0px;
  padding-bottom: 0px;
  background: #ffffff;
  border-radius: 12rpx;

  .info-brand {
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #888888;
    line-height: 40rpx;
    padding: 20rpx 0;

    label {
      padding: 0 20rpx;
      font-family: PingFangSC-Regular, PingFang SC;
      font-weight: 400;
      color: #222222;
    }
  }

  .m-store-name {
    padding: 0 30rpx;

    .m-name {
      font-size: 32rpx;
      font-family: PingFangSC-Medium, PingFang SC;
      font-weight: 500;
      color: #222222;
      line-height: 44rpx;
    }

    .m-quantity {
      font-size: 28rpx;
      font-family: PingFangSC-Regular, PingFang SC;
      font-weight: 400;
      color: #555555;
      line-height: 40rpx;
      padding: 6rpx 0;
    }
  }
}

.m-store-radi {
  width: 80rpx;
  height: 80rpx;
  background: linear-gradient(
    45deg,
    rgba(105, 178, 25, 1),
    rgba(121, 202, 32, 1)
  );
  border-radius: 50%;
  position: absolute;
  margin: 20rpx 30rpx;
}

.m-store-radi label {
  width: 58rpx;
  height: 28rpx;
  font-size: 30rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 500;
  color: rgba(255, 255, 255, 1);
  position: absolute;
  margin: 12rpx;
}

.m-store-items {
  width: 100%;
  height: 380rpx;
  background: rgba(255, 255, 255, 1);
  white-space: normal;
}

.m-store-item {
  width: 210rpx;
  height: 340rpx;
  // background:rgba(244,255,232,1);
  float: left;
  margin-top: 20rpx;
  margin-left: 30rpx;
}

.m-store-item-image {
  width: 210rpx;
  height: 210rpx;
  border-radius: 8rpx;
  background: rgba(242, 242, 242, 1);
}

.m-store-item-name label {
  /* width:150rpx; */
  height: 60rpx;
  font-size: 26rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: rgba(51, 51, 51, 1);
  line-height: 60rpx;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.m-store-item-price label {
  width: 100px;
  height: 30px;
  font-size: 20rpx;
  font-family: Alibaba PuHuiTi;
  font-weight: 400;
  color: #ff5a00;
  text-align: center;
}

.scroll-view_H {
  white-space: nowrap;
  width: 100%;
  background-color: #fff;
  margin-top: 24rpx;
  border-radius: 12rpx;
}

.scroll-view-item {
  height: 300rpx;
  line-height: 300rpx;
  text-align: center;
  font-size: 36rpx;
}

.scroll-view-item_H {
  display: inline-block;
  /* height: 260rpx; */
  // line-height: 300rpx;
  text-align: center;
  font-size: 36rpx;
}

.m-policy {
  background-color: #ffe7d0;
}

.m-imfo-sp-title {
  color: #a5988f;
}

.m-imfo-sp-money {
  color: #ff7300;
}

.bottom-safearea {
  padding-bottom: 0;
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}

.activity-title {
  height: 96rpx;
  width: 100%;
  line-height: 96rpx;
  /* padding: 5px; */
  text-align: center;
  font-size: 52rpx;
  color: #c0a080;
  display: block;
}

.product-item {
  border: 1px dashed #c5a789;
  height: 500rpx;
  margin-top: 20rpx;
  overflow-y: scroll;
  overflow-x: none;
  padding: 10px;
  border-radius: 8px;
}

.gift-item {
  border: 1px solid #dadadc;
  margin-top: 2px;
}

.gift-rule {
  margin-top: 18rpx;
  font-size: 24rpx;
  margin-bottom: 18rpx;
  color: #c0a080;
}

.scroll-view_H {
  white-space: nowrap;
  width: 100%;
  height: 344rpx;
}

.scroll-view-item {
  height: 300rpx;
  line-height: 300rpx;
  text-align: center;
  font-size: 36rpx;
}

.scroll-view-item_H {
  display: inline-block;
  //width: 640rpx;
  height: 344rpx;
  background: #ffffff;
  opacity: 1;
  border-radius: 16rpx;
  margin-right: 24rpx;
}

.product-l-img {
  width: 240rpx;
  height: 240rpx;
  background: rgba(0, 0, 0, 0);
  opacity: 1;
  border-radius: 16rpx 16rpx 0rpx 0rpx;
}

.product-l-price {
  width: 208rpx;
  height: 88rpx;
  background: rgba(255, 255, 255, 1);
  // padding:8rpx 16rpx;
  margin-top: 10px;

  .product_name {
    font-size: 12px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 28rpx;
    color: #002951;
    opacity: 1;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .m-project-tips {
    height: 18rpx;
    font-size: 14rpx;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 18rpx;
    color: #002951;
    opacity: 0.6;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 4rpx 0rpx;
  }

  .price-new {
    font-size: 12px;
    font-family: Arial;
    font-weight: 400;
    line-height: 34rpx;
    color: #ff4142;
    opacity: 1;
    margin: 5px 0;
  }
}

.evaluate {
  .scroll-view_H {
    white-space: nowrap;
    width: 100%;
    height: 255rpx;
    // margin-left: 24rpx;
    margin-top: 0px;
  }

  .scroll-view-item {
    height: 300rpx;
    line-height: 300rpx;
    text-align: center;
    font-size: 36rpx;
  }

  .scroll-view-item_H {
    display: inline-block;
    height: 260rpx !important;
    // line-height: 300rpx;
    // text-align: center;
    font-size: 36rpx;
  }
}

.sgar {
  color: #fff !important;
  font-weight: 400;
  font-size: 20rpx;
  background: #333959;
  padding: 0rpx 15rpx !important;
  border-radius: 5rpx;
  display: inline-block !important;
  margin: 0rpx 10rpx 0rpx 50rpx !important;
}

.m-cell-bd.coupon {
  display: flex;
  align-items: flex-start;
  line-height: 1;

  .m-info-tip {
    white-space: nowrap;
    margin-top: 10rpx;
  }

  .m-coupon-item1 {
    height: initial;
    margin: 0;
    padding: 0;

    .m-coupon-info {
      margin-left: 24rpx;

      width: 560rpx;
    }

    .m-coupon-text {
      width: 100%;

      uni-text {
        width: 100%;
      }
    }
  }
}

.product-info {
  padding: 24rpx;
  padding-bottom: 0;

  .info-content {
    background: #ffffff;
    border-radius: 12rpx;
    border-radius: 11px 11px 0 0;
    padding: 24rpx 0px 24rpx 24rpx;

    .min-quantity {
      background: #a76e38;
      border-radius: 200rpx 0px 0px 200rpx;
      font-size: 24rpx;
      font-family: PingFangSC-Regular, PingFang SC;
      font-weight: 400;
      color: #ffffff;
      line-height: 34rpx;
      padding: 10rpx 18rpx;
      right: 23rpx;
      margin-top: 15rpx;
    }

    .m-info-name {
      font-size: 32rpx;
      font-family: PingFangSC-Medium, PingFang SC;
      font-weight: 500;
      color: #222222;
      line-height: 44rpx;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      /*设置多少行*/
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis;
      margin: 10rpx 0;

      padding-right: 24rpx;
      font-weight: bold;
    }

    .m-info-tips {
      font-size: 26rpx;
      font-family: PingFangSC-Regular, PingFang SC;
      font-weight: 400;
      color: #888888;
      padding: 2rpx 0;
      line-height: 36rpx;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }
}

.m-item {
  border-radius: 4rpx;
  border: 1rpx solid #ff3300;
  font-size: 24rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #ff3300;
  line-height: 34rpx;
  padding: 4rpx;
}

.m-footer-btn-main-left {
  border-radius: 18rpx 0px 0px 18rpx !important;
}

.m-footer-btn-main-right {
  background: $default-skin-bg;

  border-radius: 0px 18rpx 18rpx 0px !important;
}

.m-m-panel-sp-rbtn {
  border-radius: 18rpx 18rpx 18rpx 18rpx;
}

.m-pstock {
  display: inline;
  margin-left: 20rpx;
}

.m-pspec {
  background: #f5f5f5;
  border-radius: 12rpx;
  font-size: 24rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #222222;
  line-height: 34rpx;
  padding: 10rpx;
  margin-top: 10rpx;

  display: table;
}

.spec-info {
  width: 216rpx;
  height: 290rpx;
  background: #f5f5f5;
  border-radius: 12rpx;
  float: left;
  margin-right: 14rpx;
  margin-right: 14rpx;
  margin-bottom: 14rpx;
  border: 1rpx solid #eeeeee;

  .spec-image {
    width: 194rpx;
    height: 194rpx;
    padding: 14rpx 12rpx 0rpx 14rpx;
  }

  .spec-info-name {
    font-size: 24rpx;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #222222;
    line-height: 33rpx;
    padding: 4rpx 10rpx;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    word-wrap: break-word;
    white-space: normal !important;
    -webkit-line-clamp: 2; // 想要超出三行显示 就把这里改成3就好了

    text-align: center;
  }
}

.spec-checked {
  border: 2rpx solid $default-skin-bg;
  background: rgba(167, 110, 56, 0.1);
}

.m-customized {
  display: flex;
  padding: 46rpx 24rpx;
  font-size: 28rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  line-height: 40rpx;

  .m-customized-left {
    width: 8%;
    color: #555555;
  }

  .m-customized-center {
    color: #222222;
    padding: 0 28rpx;
    width: 50%;
  }

  .m-customized-right {
    color: #222222;
    width: 30%;
    text-align: right;
  }
}

.m-input-quantity {
  padding: 24rpx;
  display: flex;
  justify-content: space-between;
}

.m-price {
  display: flex;
  justify-content: flex-end;
  font-size: 28rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #222222;
  line-height: 40rpx;
  padding: 22rpx 24rpx;
}

.split-line {
  border: 0.5pt solid #eeeeee;
  width: 100%;
}

.split-lines {
  border: 0.5pt solid #eeeeee;
  width: 360px;
  margin-left: 13px;
  margin-top: 15px;
}

.customized-info {
  display: flex;
  align-items: center;
  padding: 14rpx 24rpx 34rpx 24rpx;
  font-size: 28rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #555555;
  line-height: 40rpx;

  span {
    padding: 0 18rpx;
  }
}

.policy-quantity {
  font-size: 26rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #888888;
  line-height: 36rpx;
}

.popup-content {
  width: 566rpx;
  position: relative;
  background-repeat: no-repeat;
  background-size: 100% 100%;

  .p-top {
    width: 100%;
    height: 140rpx;
  }

  .close-img {
    position: absolute;
    bottom: -132rpx;
    left: 44%;

    image {
      width: 64rpx;
      height: 64rpx;
    }
  }

  .p-content {
    font-size: 32rpx;
    line-height: 40rpx;
    text-align: center;
    padding: 50rpx 0;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
  }

  .p-bottom {
    display: flex;
    justify-content: space-between;
    padding: 0 60rpx;

    .button {
      width: 180rpx;
      height: 80rpx;
      border-radius: 18rpx;
      border: 1rpx solid #a76e38;
      text-align: center;
      line-height: 80rpx;
      margin-top: 15px;
      font-size: 32rpx;
      font-family: PingFangSC-Regular, PingFang SC;
      font-weight: 400;
      color: #a76e38;
    }

    .button-right {
      background: #a76e38;
      color: #fff;
    }
  }
}

.nav-head-box {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  /* #ifdef MP */
  width: 76%;
  /* #endif */
  background: rgba(255, 255, 255, 0);

  .back {
    position: absolute;
    left: 0;
    top: 13rpx;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100rpx;
    height: 64rpx;

    // 返回
    .back-one {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 50rpx;
      height: 50rpx;
      background-color: rgba(0, 0, 0, 0.3);
      border-radius: 100%;

      text {
        display: flex;
        width: 20rpx;
        height: 20rpx;
        border-left: 2rpx solid #ffffff;
        border-bottom: 2rpx solid #ffffff;
        transform: rotate(45deg);
      }
    }

    .action {
      background-color: transparent;

      text {
        border-color: #555555;
      }
    }
  }

  // 分享更多
  .share {
    position: absolute;
    right: 0;
    top: 13rpx;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100rpx;
    height: 64rpx;
  }
}

.selext-parameter {
  overflow: hidden; //超出的文本隐藏
  display: -webkit-box;
  -webkit-line-clamp: 1; // 超出多少行
  -webkit-box-orient: vertical;
}

.indicator-point {
  position: absolute;
  background: #000000;
  border-radius: 21px;
  opacity: 0.3;
  right: 24rpx;
  bottom: 38rpx;

  font-size: 24rpx;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #ffffff;
  line-height: 34rpx;
  padding: 4rpx 20rpx;
}

.ttd::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 2rpx solid #ebebe7 !important;
  color: #ebebe7;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

/*Grid*/
.spec-box-grids {
  position: relative;
  overflow: hidden;
  clear: both;

  background-color: #ffffff;
  white-space: nowrap;
  width: 534rpx;

  font-size: 14px;
  line-height: 64rpx;
  padding-left: 16rpx;

  .spec-box-grid {
    margin-right: 14rpx;
    display: inline-block;
    text-align: center;

    &.active {
      .spec-box-grid-label {
        color: #c0a080;
        // background-color: pink;
      }
    }
  }

  .spec-box-grid-border {
    border-right: 1rpx solid #d9d9d9;
    border-bottom: 1rpx solid #d9d9d9;
  }

  .spec-box-grid:active {
    background-color: #ececec;
  }

  .spec-box-grid-icon {
    width: 68rpx;
    height: 68rpx;
    margin: 0 auto;

    image {
      display: block;
      width: 100%;
      height: 100%;
    }
  }

  .spec-box-grid-label {
    margin-top: 10rpx;
  }

  .spec-box-grid-label {
    display: block;
    text-align: center;
    color: #000;
    font-size: 24rpx;
    line-height: 40rpx;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
}

.spec-box-grids-border {
  border-top: 1rpx solid #d9d9d9;
  border-left: 1rpx solid #d9d9d9;
}

.active {
  background-color: #c0a080;
}

.favorite-share {
  display: flex;
  margin-left: auto;
  text-align: center;
  background: #ffffff;
  line-height: 60rpx;
  color: #999;

  .iconfont {
    font-size: 22px;
    color: #999;
    line-height: 24px;
  }

  label:first-child {
    margin-right: 20rpx;
  }

  .highlight {
    color: #db384c !important;
  }

  margin-top: auto;
  margin-bottom: auto;
}

.icon-share {
  font-weight: 700;
  padding-right: 8rpx;
}

.m-info-price {
  display: flex;
  align-items: center;
  // padding-right: 24rpx;
}

.name-box {
  display: flex;
}

.name-subtitle {
}

.m-info-box {
  label {
    color: #888;
    //margin-top: 16rpx;
  }
}

/* #ifdef MP */
.icon-cart {
  margin-left: -2rpx;
}

/* #endif */

.detail-text {
  line-height: 36px;
  height: 30px;
  margin-right: 12px;

  .text {
    margin-right: 10rpx;
  }
}

.ap {
  color: red;
  font-size: 16px;
  font-weight: bold;
  margin: auto 6rpx;
}

.activity-intro-box {
  .activity-intro-desc {
    font-size: 12px;
    flex: 1;
    line-height: 64rpx;
  }
}

// /deep/ .m-panel-sp-listbox {
//   .uni-scroll-view{
//     position: unset;
//   }
// }
</style>