<template>
	<view v-if="allShow">
		<!--bargin/detail/detail.wxml-->
		<view class="banner">
			<swiper class="swiper" @change="swiperChange" :current="current" autoplay="true" circular="true"
				duration="1000">
				<block v-for="(item, index) in bannerUrls" :key="index">
					<swiper-item autoplay="true">
						<image :src="item + '?x-oss-process=style/w750-auto'" mode="aspectFit"></image>
					</swiper-item>
				</block>
			</swiper>
			<view class="dots dflex">
				<block v-for="(item, index) in bannerUrls" :key="index">
					<view :class="'dot ' + (index == swiperCurrent ? ' active' : '')" :data-current="index"
						@tap="dotEvent"></view>
				</block> 
			</view>
		</view>
		<!-- <view class="notification_bar" wx:if="{{isNotice}}">
	<swiper class="swiper_container" vertical="true" autoplay="true" circular="false" duration="1000" interval="5000" easing-function="easeInOutCubic" class="bar_box dflex">
		<swiper-item class="bar_con dflex" wx:for="{{contentList}}" wx:key="item">
			<view class="bar dflex">
				<image class="bar_left" src="{{item.pic}}" />
				<text class="bar_text">最新订单来自</text>
				<text class="bar_text">{{item.name}}，</text>
				<text class="bar_text">{{item.time}}</text>
			</view>
		</swiper-item>
	</swiper>
</view> -->
		<view class="group">
			<image src="/activity/static/activity/images/kjbg.jpg" class="ptbg"></image>
			<view class="groups dflex">
				<view class="left">
					<view class="price">砍后价￥<text>{{act.money}}</text></view>
					<view class="pin"><text class="origin"
							v-if="act.orPrice!=0&&act.orPrice>act.money">原价￥{{act.orPrice?act.orPrice:''}}</text>
						<block v-if="act.orPrice!=0&&act.orPrice>act.money"> | </block>{{count ? count:0}}人已参与
					</view>
				</view>
				<view class="right">
					<image src="/activity/static/activity/images/kanjia.png" class="tuan"></image>
					<view class="endtime dflex">

						<view>{{act.start==false&&act.end==false?'距开始':'距结束'}}</view>
						<block v-if="timer.length==4">
							<block v-if="timer[0] !=0"><text>{{timer[0]}}</text>天</block>
							<text>{{timer[1]}}</text>:
							<text>{{timer[2]}}</text>:
							<text>{{timer[3]}}</text>
						</block>
						<block v-else>
							<text>{{timer[0]}}</text>:
							<text>{{timer[1]}}</text>:
							<text>{{timer[2]}}</text>
						</block>
					</view>
				</view>
			</view>
		</view>

		<view class="info bgfff">
			<view class="infos dflex">
				<view class="title flex">{{pro.title?pro.title:''}}</view>
				<view class="share" @tap="showShare">
					<image src="/static/pages/images/fxico.png"></image>分享
				</view>
			</view>
			<view class="guarantee dflex" v-if="guarantee.length>0">
				<view class="cont dflex">
					<view v-for="(item, index) in guarantee" :key="index" class="dflex li">
						<image src="/activity/static/activity/images/guarantee.png"></image>{{item}}
					</view>
				</view>
			</view>
		</view>

		<view class="detinfo mt20 bgfff">
			<!-- isOtc 0 默认 1 处方药 2 非处方药 3 医疗器械 4 食品类 5 海外购 -->
			<block v-if="act.isOtc!=5">
			<block v-if="is_open_shop == 1 && ascription">
			<view class="xiaodian dflex malr20" v-if="((act.isMeCommission != 1 || act.isMeCommission != '1') && act.oneCommission>0) || ((act.isMeCommission == 1 || act.isMeCommission == '1') && act.twoCommission>0) || act.serviceShopRate">
				<image src="/static/pages/images/xdbg1.png" class="xdbg"></image>
				<view class="shouyi flex" v-if="((act.isMeCommission != 1 || act.isMeCommission != '1') && act.oneCommission>0) || ((act.isMeCommission == 1 || act.isMeCommission == '1') && act.twoCommission>0)">
					<text>分销收益</text>
					<view v-if="act.isMeCommission == 0"><text>￥</text>{{act.oneCommission}}</view>
					<view v-else><text>￥</text>{{act.twoCommission}}</view>
				</view>
				<view class="shouyi flex" v-if="act.serviceShopRate">
					<text>小店服务费</text>
					<view><text>￥</text>{{act.serviceShopRate}}</view>
				</view>
				<view class="dflex" v-if="act.isJoinShop">
					<view class="fenxiang" @tap="showShare">分享推广</view>
					<navigator :url="url" hover-class="none" class="goShop">去小店</navigator>
				</view>
				<view class="addshop" @tap="addShop" v-else>添加到小店</view>
			</view>
			</block>
			<block v-else>
			<view class="xiaodian dflex malr20" v-if="((act.isMeCommission != 1 || act.isMeCommission != '1') && act.oneCommission>0) || ((act.isMeCommission == 1 || act.isMeCommission == '1') && act.twoCommission>0)">
				<image src="/static/pages/images/xdbg1.png" class="xdbg"></image>
				<view class="shouyi flex">
					<text>分销收益</text>
					<view v-if="act.isMeCommission == 0"><text>￥</text>{{act.oneCommission}}</view>
					<view v-else><text>￥</text>{{act.twoCommission}}</view>
				</view>
				<navigator url="/promote/apply/apply" hover-class="none" class="fenxiang" v-if="isDistriUser != 2">我要推广</navigator>
				<view class="fenxiang" @tap="showShare" v-else>分享推广</view>
			</view>
			</block>
			</block>
			<!-- <view class="item dflex">
		<label>优惠券</label>
		<view class="quan flex dflex">
			<view class="flex dflex">
				<text>满500减50</text>
				<text>满200减10</text>
			</view>
			<view class="ling dflex">领券<image src="/pages/images/more3.png"></image>
			</view>
		</view>
	</view> -->
			<view class="item pro-sel dflex" v-if="pro.propertiesList && pro.propertiesList.length > 0"
				@click="pro.stock > 0 ? addShopCart() : ''">
				<label>已选</label>
				<view class="flex">{{pro.properties}}</view>
				<image src="/static/pages/images/more.png" class="mrico"></image>
			</view>
			<view class="item dflex">
				<label>配送至</label>
				<view class="flex" @tap="toAddress">
					<view class="address">{{address.address?address.address:''}}{{address.house?address.house:''}}
					</view>
					<view class="huo" v-if="pro.isTimely == 1"><text>现货</text>，现在下单，预计2小时后送达</view>
				</view>
				<image src="/static/pages/images/more2.png" class="more" @tap="toAddress"></image>
			</view>
			<view class="item dflex">
				<label>门店</label>
				<view class="flex" @tap="toMerchant">
					<view class="address">{{merchant.title}}</view>
				</view>
			</view>
		</view>
		<!-- 砍价情况 -->
		<view class="zutuan bgfff mt20"
			v-if="(activityPurchaseRecordListDTO&&activityPurchaseRecordListDTO.length > 0)||(act.activityPurchaseRecordListDTO&&act.activityPurchaseRecordListDTO.length>0)">
			<view class="zu-tit dflex">{{act.activityPurchaseRecordListDTO.length}}人正在砍价，可直接参与<icon
					class="icon iconfont icon-bottom"
					@tap="activityPurchaseRecordListDTO.length>1&&activityDot.length>0?clickmore():''"> </icon>
			</view>
			<view class="zu-list">
				<block v-for="(item, index) in activityPurchaseRecordListDTO" :key="index">
					<view class="li dflex" @tap="toKanjia" :data-id="item.id" :data-acid="item.groupMainP.acpId"
						:data-proid="item.groupMainP.productId" :data-superid="item.groupMainP.id"
						:data-userid="item.groupMainP.userId" :data-end="item.end">
						<image :src="item.groupMainP.uavatar" mode="aspectFit"></image>
						<view class="zu-name flex">{{item.groupMainP.unickName}}</view>
						<view class="zu-ren">
							<view class="cha" v-if="item.groupMainP.bargainingAmount == 0">已砍到底价</view>
							<view class="cha" v-else>
								只差<text>¥{{item.groupMainP.bargainingAmount>0 ? item.groupMainP.bargainingAmount : ((act.orPrice)*10000-(act.money)*10000)/10000}}</text>到底价
							</view>
							<view class="zu-time" v-if="item.end ||item.groupMainP.bargainingAmount == 0">已结束</view>
							<view class="zu-time" v-else>剩余<text>{{item.times}}</text></view>
						</view>
						<view
							:class="'zu-btn ' + (item.groupMainP.bargainingAmount == 0 || item.end ? 'end' : 'mbglinear')"
							v-if="item.groupMainP.bargainingAmount == 0">查看详情</view>
						<view
							:class="'zu-btn ' + (item.groupMainP.bargainingAmount == 0 || item.end ? 'end' : 'mbglinear')"
							v-else>帮TA砍价
						</view>

					</view>
				</block>
			</view>
		</view>



		<!--  商品详情等页面 -->
		<product-footer ref="list" @scoreTab="scoreTab" id="list" :detail="nodes" :imgs="imgs" :proId="pro.id"
			v-if="pro.id" :form="form" @showTab="showTab" @freshen="freshenFun"></product-footer>

		<v-share :hide-toast="hideShare" :product="pro" :code-url="codeUrl" a-type="5" @onFather="click"></v-share>

		<view class="placeholder-view" :style="'height:' + (bottomBlankHeight + 140) + 'rpx'"></view>
		<view class="bot fixed bgfff dflex" :style="'padding-bottom: ' + (bottomBlankHeight + 20) + 'rpx'" >
			<contact-button img-url="/static/pages/images/kfico.png" class-name="botbtn" button-text="在线客服"></contact-button>
			<!-- <navigator class="botbtn" open-type="switchTab" url="/pages/cart/cart" hover-class="none">
		<image src="/pages/images/gwc.png"></image>购物车<text class="message" wx:if="{{pro.count > 0}}">{{pro.count}}</text>
	</navigator> -->
			<!-- <view class="botbtn" bindtap="clickCollect">
		<image src="/pages/images/shoucang_h.png" wx:if="{{pro.isCollect}}"></image>
		<image src="/pages/images/shoucang.png" wx:else></image>收藏
	</view> -->
			<!-- <view class="addcart">加入购物车</view> -->
			<view class="gmbtn" @tap="atOnceBuy">￥{{salePrice}} 下单购买</view>
			<block v-if="act.start==true">
				<view class="ctbtn mbglinear" @tap="toKjDetail" v-if="isBargain||isuser">我的砍价</view>
				<view class="ctbtn mbglinear" @tap="create" :data-actid="act.id"
					v-if="act.end==false&&!isBargain&&!isuser">发起砍价</view>
				<view class="ctbtn end" v-if="act.end==true&&!isBargain&&!isuser">活动已结束</view>
			</block>

			<block v-if="act.start==false&&act.end==false">
				<view class="remind mbggreen dflex" v-if="act.start==false&&isRemind" @tap="cancelActivityRemind"
					:data-index="index" data-type="2">取消预约</view>
				<view class="remind mbggreen dflex" v-if="act.start==false&&!isRemind" @tap="addActivityRemind">
					<icon class="iconfont icon-yugao" :data-index="index" data-type="2"></icon>预约提醒
				</view>
			</block>
		</view>

		<!-- 商品规格 -->
		<block v-if="isShow">
			<product-popup :product="popup" order-type="1" @hidePopup="hidePopup" :merchant="merchant"
				:merchant-id="query.merchantId" :shopId="query.shopId"></product-popup>
		</block>

		<view class="contact_index" @tap="goTop">
			<image src="/static/pages/images/backtop.png"></image>顶部
		</view>

		<!-- 查看更多 -->
		<view class="mask" @tap="eliminate" v-if="show" catchtouchmove="true"></view>
		<view class="page" :style="'margin:-' + (windowHeight/2) + 'px 0 0 -' + (windowWidth/2) + 'px'">
			<view class="ptuanmode" catchtouchmove="true" v-if="show">

				<view class="zu-list">
					<view class="pttop">正在砍价</view>
					<scroll-view scroll-y="true" style="max-height: 550rpx;">
						<view v-for="(item, index) in activityDot" :key="index" class="li dflex" @tap="toKanjia"
							:data-id="item.id" :data-acid="item.groupMainP.acpId"
							:data-proid="item.groupMainP.productId" :data-superid="item.groupMainP.id"
							:data-userid="item.groupMainP.userId" :data-end="item.end">
							<image :src="item.groupMainP.uavatar" mode="aspectFit"></image>
							<view class="zu-name flex">{{item.groupMainP.unickName}}</view>
							<view class="zu-ren">
								<view class="cha" v-if="item.groupMainP.bargainingAmount == 0">已砍到底价</view>
								<view class="cha" v-else>
									只差<text>¥{{item.groupMainP.bargainingAmount>0 ? item.groupMainP.bargainingAmount : ((act.orPrice)*10000-(act.money)*10000)/10000}}</text>到底价
								</view>
								<view class="zu-time" v-if="item.end ||item.groupMainP.bargainingAmount == 0">已结束</view>
								<view class="zu-time" v-else>剩余<text>{{item.times}}</text></view>
							</view>
							<view
								:class="'zu-btn ' + (item.groupMainP.bargainingAmount == 0 || item.end ? 'end' : 'mbglinear')"
								v-if="item.groupMainP.bargainingAmount == 0">查看详情</view>
							<view
								:class="'zu-btn ' + (item.groupMainP.bargainingAmount == 0 || item.end ? 'end' : 'mbglinear')"
								v-else>帮TA砍价
							</view>

						</view>
					</scroll-view>
					<view class="tole" v-if="activityDot.length==21">--仅显示20个正在砍价的人--</view>
				</view>
			</view>
		</view>
		<!-- 添加到小店成功 -->
		<view class="mask" :hidden="isHide" @tap="hidePop"></view>
		<view class="suc" :hidden="isHide">
			<image :src="picUrlss+'tjcg1.png'" class="tjcg1"></image>
			<image src="/static/pages/images/tjcg.png" class="tjcg"></image>
			<text>快去我的小店看看吧</text>
			<view class="shopcc dflex">
				<view class="shop" @tap="showShare">分享推广</view>
				<navigator :url="url" hover-class="none" class="shop" >我的小店</navigator>
			</view>
			<!-- <view class="share-btn dflex">
				<button class="wxfriend dflex" open-type="share">
					<image src="/static/pages/images/wechat.png"></image>
					微信好友
				</button>
				<view class="wxposter dflex" @tap="generatePoster">
					<image src="/static/pages/images/poster.png"></image>
					生成海报
				</view>
			</view> -->
			<image src="/static/pages/images/close2.png" class="suc-close" @tap="hidePop"></image>
		</view>
		<block v-if="isPopupLogin">
			<product-login :about="about" @hidePopupLogin="hidePopupLogin"></product-login>
		</block>
	</view>
</template>

<script>
	const app = getApp();
	const req = require("../../../utils/request.js");
	const utils = require("../../../utils/util.js");
	var QQMapWX = require("../../../utils/qqmap.js");
	const requsetmessage = require("../../../utils/requestmessage.js");
	const route = require("../../../utils/route");
	const api = require("../../../utils/api.js");
	import productFooter from "../../../components/product_footer/index";
	import productPopup from "../../../components/product-popup/index";
	import vShare from "../../../components/share/share";
	import productLogin from "../../../components/product-login/index";

	export default {
		data() {
			return {
				picUrlss: req.public.picUrls,
				bottomBlankHeight: app.globalData.isIPhoneX ? 68 : 0,
				swiperCurrent: 0,
				bannerUrls: [],
				isShow: false,
				pro: {},
				timer: [],
				isRemind: false,
				hideShare: true,
				codeUrl: '',
				bgUrl: "/activity/static/activity/images/share_pintuan.jpg",
				contentList: [{
					pic: "/static/pages/images/bar.png",
					name: '好风依旧',
					time: '4秒前'
				}, {
					pic: "/static/pages/images/bar.png",
					name: '杨鑫',
					time: '20秒前'
				}, {
					pic: "/static/pages/images/bar.png",
					name: '杨鑫',
					time: '5秒前'
				}],
				isNotice: false,
				activityPurchaseRecordListDTO: [],
				isBargain: false,
				//是否发起砍价
				form: {
					page: 1,
					limit: 10
				},
				freshen: true //是否更新页面
					,
				current: "",
				query: "",
				merchant: "",
				merchantId: "",
				shopId: "",
				imgs: "",
				nodes: "",
				salePrice: "",
				isuser: false,
				acid: "",
				act: "",
				activityDot: "",
				isStates: 0,
				address: {},
				popup: "",
				bargainId: "",
				count: "",
				show: false,
				tabIndex: "",
				guarantee: "",
				is_open_comments: "",
				switch: true,
				about:{},
				allShow:false,
				isHide: true,//添加小店成功弹窗
				url: '',
				is_open_shop: '',//商户是否开启分销
				ascription: false,//是否开启小店
				isDistriUser: 0, // 判断用户是否是分销员 2为分销员
				isPopupLogin: false
			};
		},

		components: {
			productFooter,
			productPopup,
			vShare,
			productLogin
		},
		props: {},
		onLoad: function(options) {
			this.query = options;
			this.setData({
				query: options
			});

			if (options.scene) {
				this.scene = options.scene;
			}

			if (options.isShare) {
				this.query.id = options.id;
				this.query.acid = options.acid;
				req.setStorage('pidCode', options.userId);
				req.setStorage('pidCode', options.userId);
				let params = {
					userId: options.userId,
					merchantId: options.merchantId ? options.merchantId : '',
				}
				this.bindUser(params);
			}
			setInterval(() => {
				this.setData({
					isNotice: true
				});
			}, 10000);
		},
		onShow: async function() {
			let that = this
			if (this.freshen) {
				await this.loadCodeParams();
				if(that.scene){
					await that.bindUser(that.query);
				}
				this.getGuarantee().then(data => {
					if (this.switch) {
						api.getMerchant(this.query, req, data => {
							that.loadDefaultAddress();
							if (data == 1) {
								api.locationShow()
							} else {
								that.getuserInfos(data);
								if (data.type == 5) {
									that.query.merchantId = data.merchantDTO.id
									that.query.shopId = data.id
								} else {
									that.query.merchantId = data.id
								}
								if (req.getStorage('userInfo') && that.merchant.id != data.id) {
									this.loadProudct();
									let pages = getCurrentPages();
									var prevPage = pages[pages.length - 2];
									if (prevPage) {
										prevPage.$vm.setData({
											freshen: true
										});
									}
								} else {
									this.loadProudct();
								}
								that.merchant = data
							}
						})
					}
				})
				// this.loadDefaultAddress();
				await this.browsRecound(this.query.id);
				this.initState();
				// let merchant = req.getStorage('defaultMerchant');
				// this.setData({ merchant: merchant });
				// this.getMerchant();
			}
		},


		onShareAppMessage: function() {
			let merchantId = '';
			let path = '/activity/bargain/detail/detail?id=' + this.query.id + '&acid=' + this.query.acid +
				'&isShare=' + true;
			if (!req.getStorage('userInfo').id) {} else {
				path += '&userId=' + req.getStorage('userInfo').id;
			}

			let shopId = '';
			if (req.getStorage('MERCHANT') && req.getStorage('MERCHANT').id != null) {
				path += '&merchantId=' + req.getStorage('MERCHANT').id;
				merchantId = req.getStorage('MERCHANT').id;

				if (req.getStorage('smallShop') && req.getStorage('MERCHANT').id != null) {
					path += '&shopId=' + req.getStorage('smallShop').id;
					shopId = req.getStorage('smallShop').id;
					merchantId = req.getStorage('smallShop').merchantDTO.id;
				}
			}


			route.share(1, req.getStorage('userInfo').id, path, merchantId, shopId, 9, this.query.acid + '_' + this
				.query.id);
			return {
				title: this.pro.title,
				imageUrl: this.pro.pic,
				path: path
			}; // return {
			//   title: this.data.pro.title,
			//   imageUrl: this.data.pro.pic,
			//   path: 'activity/bargain/detail/detail?id=' + this.query.id + '&acid=' + this.query.acid + '&isShare=' + true + '&userId=' + req.getStorage('userInfo').id+'&merchantId='+this.data.query.merchantId
			// }
		},

		onUnload() {
			this.clearAllTimer();
			if (this.timer) clearInterval(this.timer);
		},

		onHide() {
			this.clearAllTimer();
		},

		onReachBottom() {
			if (this.is_open_comments == 1 && this.tabIndex == 2) {
				this.form.page++;
				this.setData({
					['form.page']: this.form.page
				});
				// this.selectComponent("#list").loadScore(this.current);
				this.$refs.list.loadScore(this.current);
			}
		},

		methods: {
			bindUser(par){
				let userInfo = req.getStorage('userInfo');
				if(!userInfo){
					// uni.login({
					// 	success(res) {
					// 		let params = {
					// 			code: res.code,
					// 			parentId: par.userId,
					// 			merchantId: par.merchantId ? par.merchantId : par.shopId ? par.shopId : ''
					// 		}
					// 		return new Promise((resolve,reject)=>{
					// 			req.postRequest('/api/v2/login', params, data => {
					// 				resolve();
					// 			});
					// 		})
					// 	}
					// });
					// this.isPopupLogin = true;
					req.silenceLogin(par.userId, par.merchantId ? par.merchantId : par.shopId ? par.shopId : '');
				}
			},
			click(e) {
		
				this.hideShare = e
			},
			showShare() {
				// #ifndef H5
				req.isLogin().then(success => {
					if (success) {
						this.getCodeUrl()
						this.setData({
							hideShare: false
						});
					}
				});
				// #endif
			},

			/**
			 * 轮播切换
			 */
			swiperChange({
				detail
			}) {
				if (this.current == 0 && this.swiperCurrent > 1) {
					//卡死时，重置current为正确索引
					this.setData({
						current: this.swiperCurrent
					});
				} else {
					//正常轮转时，记录正确页码索引
					this.setData({
						swiperCurrent: detail.current
					});
				}
			},

			dotEvent(e) {
				this.setData({
					current: e.currentTarget.dataset.current
				});
			},

			browsRecound(id) {
				let from = {
					bindId: id,
					type: 9,
					page: '/activity/bargain/detail/detail?id=' + this.query.id + '&acid=' + this.query.acid
				};
				if (this.query.isShare) {
					from.shareType = 1;
					from.page = '/activity/bargain/detail/detail?id=' + this.query.id + '&acid=' + this.query.acid +
						'&isShare=' + true;

					if (!this.query.userId) {} else {
						from.page += '&userId=' + this.query.userId;
					}

					if (!this.query.merchantId) {} else {
						from.merchantId = this.query.merchantId;
					}

					if (!this.query.shopId) {} else {
						from.shopId = this.query.shopId;
					}

					if (!this.query.userId) {} else {
						from.uid = this.query.userId;
					}
				}

				if (this.query.isShareTimeline) {
					from.shareType = 2;
					from.page = '/activity/bargain/detail/detail?id=' + this.query.id + '&acid=' + this.query.acid +
						'&isShareTimeline=' + true;

					if (!this.query.userId) {} else {
						from.page += '&userId=' + this.query.userId;
					}

					if (!this.query.merchantId) {} else {
						from.merchantId = this.query.merchantId;
					}

					if (!this.query.shopId) {} else {
						from.shopId = this.query.shopId;
					}

					if (!this.query.userId) {} else {
						from.uid = this.query.userId;
					}
				}
				return new Promise((resolve,reject)=>{
					req.postRequest('/api/browse', from, data => {resolve()});
				})
			},

			loadCodeParams() {
				let _ts = this;

				return new Promise((resolve, reject) => {
					if (!_ts.scene) {
						resolve();
						return false;
					}

					req.getRequest('/api/code/params', {
						scene: _ts.scene
					}, data => {
						this.query.id = data.scene.split('_')[0];
						this.query.acid = data.scene.split('_')[1];
						this.query.merchantId = data.scene.split('_')[2];
						this.query.shopId = data.scene.split('_')[3];
						this.query.userId = data.userId;
						req.setStorage('pidCode', data.userId);
						resolve();
					});
				});
			},

			getCodeUrl() {
				let that = this; //获取小程序码
				const query = this.query;
				// const params = {
				// 	page: 'activity/bargain/detail/detail',
				// 	scene: that.pro.id + '_' + query.acid+'_'+query.merchantId
				// };
				let scene = that.pro.id + '_' + query.acid;
				if (req.getStorage('MERCHANT') && req.getStorage('MERCHANT').id != null) {
					scene += '_' + req.getStorage('MERCHANT').id;
					if (req.getStorage('smallShop') && req.getStorage('MERCHANT').id != null) {
						scene += '_' + req.getStorage('smallShop').id;
					}
				}
		
				const params = {
					page: 'activity/bargain/detail/detail',
					scene: scene
				};
				req.getRequest('/api/program/codev', params, url => {
					that.setData({
						codeUrl: url
					});
				});
			},

			async loadProudct() {
				let that = this;
				await that.loadActivity();
				const query = that.query;
				let isShowLoading = false;
				
				if (!isShowLoading) {
					req.loadIng('加载中');
					isShowLoading = true;
				}
				req.getRequest('/api/product/detail', {
					id: query.id
				}, data => {
					var nodes = data.detail;

					// if (nodes) {
					// 	if (nodes.indexOf("src") >= 0) {
					// 		//正则匹配所有图片路径
					// 		var imgs = [];
					// 		nodes = nodes.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/gi, function(match, capture) {
					// 			imgs.push(capture);
					// 			that.setData({
					// 				imgs: imgs
					// 			});
					// 			return '';
					// 		});
					// 	}
					// }
					let propertiesList = []
					if (data.propertiesList && data.propertiesList.length > 0) {
						data.propertiesList.map(it => {
							propertiesList.push(it.value);
						})
					}
					data.properties = propertiesList.join(' / ')
					that.setData({
						bannerUrls: data.images,
						pro: data,
						nodes: nodes,
						'pro.salePrice': this.act.money,
						salePrice: data.salePrice,
						// 'pro.stock': this.act.quantity,
						'pro.stock': this.act.quantity - this.act.payQuantity,
						'pro.payQuantity': this.act.payQuantity,
						'pro.maxBuy': this.act.maxBuy,
						allShow:true
					});
					if (isShowLoading) {
						uni.hideLoading();
						isShowLoading = false;
					}
					// that.getCodeUrl();
				});
			},

			loadActivity() {
				let that = this;
				const query = this.query;
				return new Promise((resolve, reject) => {
					let from = {
						id: query.acid,
						type: 5,
					}
					if(!this.query.merchantId){}else{
						from.merchantId=this.query.merchantId
					}
					let userInfo = req.getStorage('userInfo');
					if(userInfo.listShopBase && userInfo.listShopBase.length >0 ){
						from.shopId = userInfo.listShopBase[0].id;
					}
					req.getRequest('/api/activity/detailNew', from, data => {
						/**
						 * 判断活动是否结束，结束，2秒后为用户跳转至该商品的详情页面
						 */
						// if (data.end) {
						//   this.setData({ start: data.end })
						//   wx.showToast({
						//     title: '活动已结束，两秒后将为您跳转至该商品页面',
						//     icon: 'none',
						//     success: function () {
						//       setTimeout(function () {
						//         wx.redirectTo({ url: '/product/detail/detail?id=' + data.productId })
						//       }, 2000);
						//     }
						//   })
						// }
						this.getMy();
						if (data.activityPurchaseRecordListDTO) {
							data.activityPurchaseRecordListDTO.forEach(res => {
								if (req.getStorage('userInfo').id == res.groupMainP.userId) {
									this.setData({
										isuser: true,
										acid: res.groupMainP.id
									});
								}
							});
						}

						this.setData({
							act: data,
							isRemind: data.remindId
						});
						if (data.activityPurchaseRecordListDTO) {
							let groupList = [];
							data.activityPurchaseRecordListDTO.map(item => {
								if (item.groupList) {
									groupList.push(item.groupList[item.groupList.length - 1]);
								}
							});
							// console.log(groupList);
							// data.activityPurchaseRecordListDTO.map((item, index) => {
							// 	groupList.map((gItem, gIndex) => {
							// 		console.log(gIndex, index,"123");
							// 		if (gIndex == index) {
							// 			console.log(gItem);
							// 			item.groupMainP.bargainingAmount = parseFloat(gItem
							// 				.afterAmount - that.act.money).toFixed(2);
							// 			return item;
							// 		}
							// 	});
							// });
							// console.log(data.activityPurchaseRecordListDTO);
							let activityPurchaseRecordListDTO;
							let arr;

							if (data.activityPurchaseRecordListDTO) {
								activityPurchaseRecordListDTO = data.activityPurchaseRecordListDTO.slice(0,
									2);
								arr = data.activityPurchaseRecordListDTO.slice(0, 21);
							}

							this.setData({
								activityPurchaseRecordListDTO: activityPurchaseRecordListDTO,
								activityDot: arr
							});
							// console.log(activityPurchaseRecordListDTO, arr);
						}
						this.bargainingCount(); 
						this.initTimer(data);
						this.groupItemTimer(1);
						this.groupItemTimer();
						resolve();
					});
				});
			},
			// 获取用户信息
			getuserInfos(data) {
				let userInfo = req.getStorage('userInfo');
				if (userInfo && userInfo.listShopBase && userInfo.listShopBase != null && userInfo.listShopBase.length >
					0) {
					if (userInfo.listShopBase[0].merchant_id == data.id && data.type != 5) {
						let url = '/mine/shop/shop?merchantId=' + userInfo.listShopBase[0].merchant_id + '&shopId=' + userInfo.listShopBase[0].id;
						this.url = url;
						this.ascription = true;
					}
				}
			},
			getMy() {
				let that = this;
				let userInfo = req.getStorage('userInfo');
				if(!userInfo || userInfo == null) return false;
				req.getRequest('/api/user/my', {}, data => {
					that.isDistriUser = data.isDistriUser;
				});
			},

			initTimer(group) {
				//计时器
				let _ts = this; //group.endTime


				let nowTime = new Date(group.nowTime.replace(/-/g, '/')).getTime();
				let startTime = new Date(group.startTime.replace(/-/g, '/')).getTime();
				let endTime = new Date(group.endTime.replace(/-/g, '/')).getTime();
				if (!group.start) endTime = startTime;
				let times = parseInt((endTime - nowTime) / 1000);
				let data = {}; //判断是否已开始

				if (nowTime - startTime > 0) {
					//开始了
					_ts.setData({
						isStates: 1
					});
				} else {
					//未开始
					_ts.setData({
						isStates: 0
					});
				}

				_ts.setData(data);

				if (times > 0) {
					_ts.timer = setInterval(() => {
						times--;

						if (times <= 0) {
							//重新加载列表
							_ts.setData({
								'act.end': true
							});

							return false;
						}

						let n = utils.formatDayTimes(times);

						_ts.setData({
							timer: n.split(/:|天/g)
						});
					}, 1000);
				} else {
					_ts.setData({
						isStates: 2
					});
				}
			},

			//组团倒计时
			groupItemTimer(type) {
				//社区拼图定时器
				let _ts = this;

				let group;

				if (type == 1) {
					group = this.activityPurchaseRecordListDTO;
				} else {
					group = this.activityDot;
				}

				if (group && group.length > 0) {
					let pageList = group;

					for (let i = 0, len = pageList.length; i < len; i++) {
						let group = pageList[i];
						let nowTime = new Date(this.act.nowTime.replace(/-/g, '/')).getTime();
						let endTime = new Date(group.endDate.replace(/-/g, '/'))
							.getTime(); // let actend=new Date(this.data.act.endTime.replace(/-/g, '/')).getTime();
						// let times
						// if(actend-endTime>0){
						//    times = parseInt((endTime - nowTime) / 1000);
						// }else{
						//   times = parseInt((actend - nowTime) / 1000);
						// }

						let times = parseInt((endTime - nowTime) / 1000); // console.log(group)
						// group.map(item => {
						//   item.end = false
						//   return item;
						// })

						if (times < 0) {
							let data = {};

							if (type == 1) {
								data['activityPurchaseRecordListDTO[' + i + '].end'] = true;
							} else {
								data['activityDot[' + i + '].end'] = true;
							}

							_ts.setData(data);
						}

						let timer = setInterval(() => {
							times--;
							let data = {};

							if (times === 0) {
								//重新加载列表
								clearInterval(timer);
							} else {
								let n = utils.formatDayTimes(times);

								if (type == 1) {
									data['activityPurchaseRecordListDTO[' + i + '].times'] = n;
								} else {
									data['activityDot[' + i + '].times'] = n;
								}
							}

							_ts.setData(data);
						}, 1000);
						let fs = [];

						if (type == 1) {
							fs['activityPurchaseRecordListDTO[' + i + '].timer'] = timer;
						} else {
							fs['activityDot[' + i + '].timer'] = timer;
						} // this.clearAllTimer()


						_ts.setData(fs);
					}
				}
			},

			clearAllTimer() {
				if (this.activityPurchaseRecordListDTO) {
					this.activityPurchaseRecordListDTO.forEach(it => {
						clearInterval(it.timer);
						clearInterval(it.times);
					});
				}

				if (this.activityDot) {
					this.activityDot.forEach(it => {
						clearInterval(it.timer);
						clearInterval(it.times);
					});
				}
			},

			loadDefaultAddress() {
				if (req.isAuth()) {
					req.g('/api/address/default', data => {
						if (data) this.setData({
							address: data
						});
						else this.pointLocation();
					}, true);
				} else {
					this.pointLocation();
				}
			},

			toAddress() {
				app.globalData.openPage('mine/address/address');
			},

			toMerchant() {
				if(this.about.User_Limit_Store==1){
					
				}else{
				app.globalData.openPage('pages/nearby/nearby?isChoose=true');
				}
			},

			pointLocation() {
				//定位当前位置
				let _ts = this;

				QQMapWX.initMap();
				req.getLocation(res => {
					QQMapWX.reverseGeocoder(res, data => {
						_ts.setData({
							['address.address']: data.address
						});
					});
				});
			},

			atOnceBuy() {
				//立即购买
				// if (this.data.isStates == 0) return req.msg('活动还未开始');
				// if (this.data.isStates == 2) return req.msg('活动已结束');
				// if(this.data.start) return req.msg('活动已结束');
				let popup = this.pro;
				popup.salePrice = this.pro.actualPrice;
				popup.stock = this.pro.stock;
				this.setData({
					isShow: true,
					popup: popup
				});
			},

			addActivityRemind() {
				req.postRequest('/api/activity/remind', {
					activityId: this.act.id
				}, res => {
					requsetmessage.remind();
					req.msg('订阅提醒成功');
					this.setData({
						isRemind: true
					});
				});
			},

			cancelActivityRemind(event) {
				if (req.header.appId == 'ZQ1VK5oc17I387E') {

				} else {
					req.postRequest('/api/activity/cancel/remind', {
						id: this.act.id
					}, res => {
						req.msg('取消提醒成功');
						this.setData({
							isRemind: false
						});
					});
				}
			},

			hidePopup() {
				this.setData({
					isShow: false
				});
			},
			hidePopupLogin(data) {
				this.isPopupLogin = false;
			},

			clickCollect() {
				let _ts = this;

				req.postRequest('/api/collect', {
					bindId: this.pro.id,
					type: 1
				}, data => {
					_ts.setData({
						'pro.isCollect': !_ts.pro.isCollect
					});
				});
			},

			goTop: function(e) {
				// 一键回到顶部
				if (uni.pageScrollTo) {
					uni.pageScrollTo({
						scrollTop: 0
					});
				} else {
					uni.showModal({
						title: '提示',
						content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
					});
				}
			},

			create(event) {
				req.isLogin().then(success => {});
				if (!req.getStorage('userInfo')) return false;
				if (this.isStates == 0) return req.msg('活动还未开始');
				if (this.isStates == 2) return req.msg('活动已结束');
				let that = this;
				let end = event.currentTarget.dataset.end;
				if (end == true) return req.msg('活动已结束');
				let acpId = event.currentTarget.dataset.acid;
				let actid = event.currentTarget.dataset.actid;
				let superid = event.currentTarget.dataset.superid;
				let proid = this.pro.id;
				let userid = event.currentTarget.dataset.userid;
				let param = {
					acpId: acpId,
					actId: this.act.actId,
					productId: proid,
					type: 5,
					initOrPart: userid == req.getStorage('userInfo').id ? 1 : 2,
					superiorId: superid
				};
				req.getRequest('/api/activity/participationActivity', param, res => {
					//判断是否帮砍过
					if (res.state == 1) {
						let url = 'activity/bargain/kjDetail/kjDetail?id=' + superid + '&proid=' + this.pro.id +
							'&merchantId=' + this.query
							.merchantId;
						if (userid !== req.getStorage('userInfo').id) url += '&isShow=' + true;
						app.globalData.openPage(url);
						return false;
					}

					let params = {
						acpId: this.act.id,
						type: 5
					};

					if (superid) {
						params.superiorId = superid;
					}

					req.postRequest('/api/activity/carterActivityPurchaseRecords', params, res => {
						if (res) {
							let money = '';
							let id = '';
							if (superid) money = res, id = superid;
							else id = res;
							app.globalData.openPage('activity/bargain/kjDetail/kjDetail?id=' + id +
								'&money=' + money + '&proid=' +
								proid);
						}
					});
				});
			},

			initState() {
				//判断是否发起砍价
				let params = {
					acpId: this.act.id,
					actId: this.act.actId,
					productId: this.act.productId,
					type: 5,
					initOrPart: 1
				};
				return new Promise((resolve, reject) => {
					req.getRequest('/api/activity/participationActivity', params, res => {
						if (res.state == 1) {
							this.setData({
								isBargain: true,
								bargainId: res.id
							});
						} else if (res.state != 1) {
							this.setData({
								isBargain: false
							});
						}

						resolve();
					});
				});
			},

			toKjDetail(event) {
				event.currentTarget.dataset.id;
				app.globalData.openPage('activity/bargain/kjDetail/kjDetail?id=' + this.acid + '&proid=' + this.pro.id +
					'&merchantId=' + this.query.merchantId);
			},

			toKanjia(event) {
				req.isLogin().then(success => {});
				let acid = event.currentTarget.dataset.id;
				let proid = event.currentTarget.dataset.proid;
				app.globalData.openPage('activity/bargain/kjDetail/kjDetail?id=' + acid + '&proid=' + proid +
					'&merchantId=' + this
					.query.merchantId);
			},

			onShareTimeline() {
				let merchantId = '';
				let path = 'id=' + this.query.id + '&acid=' + this.query.acid + '&isShareTimeline=' + true;

				if (!req.getStorage('userInfo').id) {} else {
					path += '&userId=' + req.getStorage('userInfo').id;
				}

				// console.log(this.merchantId);
				let shopId = '';


				if (req.getStorage('MERCHANT') && req.getStorage('MERCHANT').id != null) {
					path += '&merchantId=' + req.getStorage('MERCHANT').id;
					merchantId = req.getStorage('MERCHANT').id;

					if (req.getStorage('smallShop') && req.getStorage('MERCHANT').id != null) {
						path += '&shopId=' + req.getStorage('smallShop').id;
						shopId = req.getStorage('smallShop').id;
						merchantId = req.getStorage('smallShop').merchantDTO.id;
					}
				}


				let url = '/activity/bargain/detail/detail?' + path;
				route.share(2, req.getStorage('userInfo').id, url, merchantId, shopId, 9, this.query.acid + '_' + this
					.query.id);
				return {
					title: (req.getStorage("userInfo").nickName?req.getStorage("userInfo").nickName:'') + '邀请您参与砍价：'+this.pro.title,
					query: path,
					imageUrl: this.pro.pic
				}; // return {
				//   title: this.data.pro.title,
				//   imageUrl: this.data.pro.pic
				// }
			},

			// 获取砍价活动总人数
			bargainingCount() {
				if (!req.getStorage('userInfo')) return false;
				let param = {
					acpId: this.query.acid,
					actId: this.act.actId,
					productId: this.act.productId
				}
				// console.log(param,"------------------------")
				req.getRequest('/api/activity/bargainingCount', param, data => {
					this.setData({
						count: data
					});
				});
			},

			clickmore() {
				// let arrayShow = [];
				// let index = 0;
				// for (let i = index; i < index + 5; i++) {
				//   if (this.data.activityPurchaseRecordListDTO[i]) {
				//     arrayShow.push(this.data.activityPurchaseRecordListDTO[i]);
				//     index = i;
				//   }
				// }
				// index = index + 1;
				// if(arrayShow.length>=20){
				//   return req.msg("仅显示20个正在拼团的人")
				// }
				// this.setData({arrayShow:arrayShow})
				// this.groupItemTimer()
				this.getPage();
				this.setData({
					show: true
				});
			},

			eliminate() {
				this.setData({
					show: false
				});
			},

			getPage() {
				//获取系统信息:获取当前屏幕可见区域的宽和高
				let that = this;
				uni.getSystemInfo({
					success: function(res) {
						that.setData({
							"windowWidth": res.windowWidth,
							//可使用窗口宽度，单位px
							"windowHeight": res.windowHeight //可使用窗口高度，单位px

						});
						// console.log(res.windowWidth, that.windowWidth);
						// console.log(res.windowHeight, that.windowHeight);
					}
				});
			},

			showTab: function(e) {
				this.setData({
					tabIndex: e.detail
				});
			},
			scoreTab: function(e) {
				this.form.page = 0;
				this.setData({
					current: e.detail,
					['form.page']: 1
				});
			},
			freshenFun: function(e) {
				this.setData({
					freshen: e.detail
				});
			},

			// 获取品种保证
			getGuarantee() {
				return new Promise((data, rej) => {
					req.getRequest('/api/config', {}, res => {
						req.setStorage("configRes", JSON.stringify(res))
						this.about=res
						data(res)
						if (this.merchant && this.merchant.isDefault == 1 || this.query.acid) {
							// 切割;拿到数组，然后在过滤掉空值
							if (res.b2c_service_guarantee && res.b2c_service_guarantee != null) {
								this.setData({
									guarantee: res.b2c_service_guarantee.split(";").filter(it => {
										return it = it && it.trim();
									})
								});
							}
						} else {
							if (res.o2o_service_guarantee && res.b2c_service_guarantee != null) {
								this.setData({
									guarantee: res.o2o_service_guarantee.split(";").filter(it => {
										return it = it && it.trim();
									})
								});
							}
						} // if(res.Is_Store_Price_Stock){
						//   this.setData({Is_Store_Price_Stock:res.Is_Store_Price_Stock})
						// }
						if (res.is_open_shop) {
							this.is_open_shop = res.is_open_shop;
						}

						if (res.is_open_comments) {
							this.setData({
								is_open_comments: res.is_open_comments
							});
						} // this.setData({ show_membership_price: res.show_membership_price, Is_Store_Price_Stock: res.Is_Store_Price_Stock, is_open_shop: res.is_open_shop })

					});
				})
			},
			// 是否开启小店
			isShop() {
				if (req.getStorage('distribution')) {
					dist = req.getStorage('distribution')
					this.setData({
						distr: dist
					})
					console.log(dist)
					if (dist.distributionSmallShopOpen == 1) {
						req.postRequest('/api/shopBase/isOpenShop', {}, data => {
							this.setData({
								isshop: data
							})
							console.log(data)
						})
					}
				}
			},
			addShop() { //添加到小店
				req.postRequest('/api/shopProduct/save', {
					productId: this.act.id,
					type: 7
				}, data => {
					this.act.isJoinShop = true;
					this.isHide = false;
				})
			},
			hidePop() { //添加到小店
				this.setData({
					isHide: true
				})
			},

		}
	};
</script>
<style>
	@import "./detail.css";
</style>
