<template>
	<view>
		<view class="head-box"></view>
		<uv-navbar autoBack title="活动详情" leftIconColor="#fff" :bgColor="bgColor" height="100rpx" :titleStyle="{color:'#fff'}"></uv-navbar>
		
		<view class="content">
			<view class="content-head">
				
				<uv-swiper :list="imageArr"
				keyName="image" 
				height="406rpx" radius="30rpx" 
				bgColor="transparent" indicator
				indicatorMode="dot"></uv-swiper>
				
				<!-- <image class="image-box" :src="imageArr" mode="aspectFill"></image> -->
				<view class="msg-box">
					<view class="msg-box-title">{{activityDetails.title}}</view>
					<view class="msg-box-time">开始时间：{{activityDetails.startTime}}</view>
					<view class="msg-box-address">
						<view class="msg-box-address-text">活动地址：{{activityDetails.address}}</view>
						<view class="address-icon" @click="daohang">
							<image src="@/static/image/home/address-icon-2.png" mode="aspectFill"></image>
							<view>导航</view>
						</view>
					</view>
					<view class="lingdui-box">
						<image class="use-img" :src="adminUserInfo.headImage" mode="aspectFill"></image>
						<view class="lingdui-msg">
							<view class="lingdui-msg-name">
								<view>{{adminUserInfo.nickName}}</view>
								<view class="name-tip">主理人</view>
							</view>
							<view>
								<uv-rate :count="count" 
								disabled
								v-model="numValue" size="23" activeColor="#FFA200"></uv-rate>
							</view>
						</view>
						<view class="add-wx" @click="$refs.ewmpopup.open();">添加微信</view>
					</view>
				</view>
			</view>
			<view class="lv-miaoshu">
				<view class="title-box">活动描述</view>
                <view class="value-box">
                    <view class="uv-content lv-msg-box">
                        <uv-parse :content="activityDetails.details"></uv-parse>
                    </view>
                </view>
                
				<!-- <view class="value-box">
					<view class="lv-msg-box">
						当金黄的落叶轻柔地铺满了小城的每个角落，我们知道，最温柔的季节已悄然而至。在这个收获的季节里，我们诚挚邀请您加入我们的秋日私旅
					</view>
				</view> -->
				<view class="title-box">注意事项</view>
				<view class="value-box">
					<view class="lv-msg-box">
						<uv-parse :content="activityDetails.precautions"></uv-parse>
					</view>
				</view>
			</view>
		</view>
		<view class="bottom-box">
			<view class="price-box">
				<view class="peice-val"><text>￥</text>{{activityDetails.price}}</view>
				<view>报名费用</view>
			</view>
			<view class="caozuo-box">
				
				<view class="caozuo-item border-r"
				@click="collect"
				v-if="!isCollect">
					<image src="./static/shoucang-icon.png" 
					mode=""></image>
					<text>收藏</text>
				</view>
				
				<view class="caozuo-item border-r isCollect"
				@click="collect"
				style=""
				v-else>
					<text>已收藏</text>
				</view>
				
				<button type="primary" style="background-color: transparent;height: 100rpx;font-size: 20rpx;padding: 0;" open-type="share" >
					<view class="caozuo-item">
						<image src="./static/zhuanfa-icon.png" mode=""></image>
						<text style="line-height: initial;">转发</text>
					</view>
				</button>
			</view>
			<!-- <view class="btn-box" @click="toBaoming">立即报名</view> -->
			<!-- <view class="btn-box end-btn">已结束</view> -->
			
			<view class="btn-box" 
			v-if="activityDetails.state == 0"
			@click="toBaoming">立即报名</view>
			
			<view class="btn-box-2" 
			v-if="activityDetails.state == 1"
			>已结束</view>
		</view>
	
		<uv-popup ref="popup" mode="bottom" bgColor="">
			<view class="popup-cont">
				<view class="popup-title">
					<view></view>
					<view>选择活动状态</view>
					<uv-icon name="close" color="#fff" @click="$refs.popup.close();"></uv-icon>
				</view>
				<view class="popup-list">
					<view class="list-item" 
					v-for="(item,i) in typeList" :key="i" 
					@click="chooseClick(item,i)">
						<view class="item-l" :class="chooseIndex == i ? 'chooose-class' : ''">
							<view>{{item.name}}</view>
							<view class="item-l-val">￥{{item.price}}</view>
						</view>
						<uv-icon name="checkmark" color="#FF5858" v-if="chooseIndex == i"></uv-icon>
					</view>
				</view>
				<view class="confirm-box">
					<uv-button @click="confirmClick(chooseIndex)" text="确定" color="#381615" shape="circle" :customStyle="btnCustomStyle"></uv-button>
				</view>
			</view>
		</uv-popup>
		
		<uv-popup ref="ewmpopup" mode="center" round="30rpx">
			<view class="pop-cont">
				<uv-image :src="ewmImg" width="380rpx" height="380rpx"></uv-image>
			</view>
		</uv-popup>
	</view>
</template>

<script>

	export default{
		data() {
			return {
				activityDetails:{},
				adminUserInfo:{},
				btnCustomStyle:{
					color:'#FF5858'
				},
				chooseIndex:0,
				bgColor:'transparent',
				count:5,
				numValue:0,
				ewmImg:'',
				typeList:[
					// {
					// 	name:'早鸟票',
					// 	price: 0
					// },
					// {
					// 	name:'单人票',
					// 	price: 0
					// },
					// {
					// 	name:'尊享票',
					// 	price: 0
					// }
				],
				activityId:'',
				isCollect : false,
			}
		},
		computed:{
			imageArr() {
				return this.activityDetails.image
				&& this.activityDetails.image.split(',')
			}
		},
		onShareAppMessage(res) {
			console.log(res)
			if (res.from === 'button') {
				// 来自详情页页面内分享按
				return {
					title:this.activityDetails.title,
					path: `/pages_order/huodong-detail?activityId=${this.activityId}`,
					imageUrl: this.imageArr[0],
					success: function(res) {
						// 转发成功
						console.log('转发成功')
					},
					fail: function(res) {
						// 转发失败
					}
				};
			} 
			// 设置转发的参数
			return {
				title:this.activityDetails.title,
				path: `/pages_order/huodong-detail?activityId=${this.activityId}`,
				imageUrl: this.imageArr[0],
				success: function(res) {
						console.log(res, '发生过是');
						if (res.errMsg == 'shareAppMessage:ok') {
								console.log("成功", res)
						}
				},
				fail: function(res) {
					console.log("失败", res)
				}
			}
		},
		onPageScroll(e) {
			if(e.scrollTop > 50) {
				this.bgColor = '#49070c'
			}else{
				this.bgColor = 'transparent'
			}
		},
		onLoad({activityId}) {
			this.activityId = activityId
			this.activityInfo(activityId)
		},
		methods:{
			daohang() {
				uni.openLocation({
					latitude: Number(this.activityDetails.latitude),
					longitude: Number(this.activityDetails.longitude),
					success: function () {
						console.log('success');
					},
					fail:(error)=> {
						console.log('error',error);
					}
				});
			},
			activityInfo(activityId) {
				let data = {activityId}
				if(uni.getStorageSync('token')){
					data.token = uni.getStorageSync('token')
				}
				this.$api('activityInfo', data,res=> {
					if(res.code==200) {
						
						let adminUser = res.result.adminUser || {}
						
						this.activityDetails = res.result.activityInfo
						this.numValue = adminUser.num
						this.ewmImg = adminUser.img
						this.adminUserInfo =  res.result.adminUserInfo
						this.isCollect =  res.result.collect
						
						this.typeList = []
						
						if(res.result.activityInfo.birdPrice){
							this.typeList.push({
								price : res.result.activityInfo.birdPrice,
								name : '早鸟票',
								type : 0,
							})
						}
						if(res.result.activityInfo.personPrice){
							this.typeList.push({
								price : res.result.activityInfo.personPrice,
								name : '单人票',
								type : 1,
							})
						}
						if(res.result.activityInfo.expensivePrice){
							this.typeList.push({
								price : res.result.activityInfo.expensivePrice,
								name : '尊享票',
								type : 2,
							})
						}
						
						// this.typeList[0].price = res.result.activityInfo.birdPrice;
						// this.typeList[1].price = res.result.activityInfo.personPrice;
						// this.typeList[2].price = res.result.activityInfo.expensivePrice;
					}
				})
			},
			toBaoming() {
				this.$refs.popup.open();
			},
			chooseClick(item,i) {
				this.chooseIndex = i
			},
			collect(){
				this.$api('collect', {
					id : this.activityId,
					type : 0,
				}, res => {
					this.activityInfo(this.activityId)
					if(res.code == 200){
						uni.showToast({
							title: res.message,
							icon: 'none'
						})
					}
				})
			},
			confirmClick(typePrice) {
				this.$api('createOrder',{
					id:this.activityId,
					typePrice: this.typeList[typePrice].type,
					type:0
				},res=>{
					if(res.code === 200) {
						uni.navigateTo({
							url: '/pages_order/payOrder?id=' + res.result.id
						})
						// uni.requestPaymentWxPay(res)
						// .then(res => {
						// 	uni.showToast({
						// 		title: '下单成功',
						// 		icon: 'none'
						// 	})
							
						// 	setTimeout(uni.switchTab, 800, {
						// 		url: '/pages/index/cart'
						// 	})
							
						// }).catch(n => {
						// 	// setTimeout(uni.switchTab, 800, {
						// 	// 	url: '/pages/index/cart'
						// 	// })
						// })
					}
				})
			}
		}
	}
</script>

<style lang="scss">
	page {
		background-color: #060504;
	}
</style>
<style lang="scss" scoped>
	.pop-cont {
		border-radius: 30rpx;
		padding: 10rpx;
	}
	.head-box {
		background: url('@/static/image/nav-bg.png') no-repeat;
		background-size: 100% 100%;
		width: 100%;
		height: 534rpx;
		position: absolute;
		z-index: -1;
	}
	.content {
		margin-top: 40rpx;
		padding: 0 30rpx 170rpx;
		padding-top: calc(var(--status-bar-height) + 130rpx);
		.content-head {
			position: relative;
			.image-box {
				width: 100%;
				height: 546rpx;
				border-radius: 12rpx;
			}
			.msg-box {
				background: #1B1713;
				border-radius: 27rpx 27rpx 67rpx 67rpx;
				position: absolute;
				top: 429rpx;
				left: 0;
				right: 0;
				padding-top: 38rpx;
				.msg-box-title {
					font-weight: 500;
					font-size: 32rpx;
					color: #FFFFFF;
					margin-bottom: 40rpx;
					padding-left: 38rpx;
				}
				.msg-box-time {
					font-weight: 400;
					font-size: 27rpx;
					color: #999999;
					padding-left: 38rpx;
				}
				.msg-box-address {
					font-weight: 400;
					font-size: 27rpx;
					color: #999999;
					padding-left: 38rpx;
					padding-right: 30rpx;
					margin-top: 24rpx;
					display: flex;
					justify-content: space-between;
					&-text {
						flex: 1;
					}
					.address-icon {
						font-weight: 400;
						font-size: 23rpx;
						color: #999999;
						display: flex;
						image {
							width: 25rpx;
							height: 27rpx;
							margin-right: 8rpx;
						}
					}
				}
				.lingdui-box {
					margin-top: 43rpx;
					height: 130rpx;
					background: #26201A;
					border-radius: 60rpx;
					display: flex;
					align-items: center;
					padding: 0 40rpx;
					.use-img {
						width: 86rpx;
						height: 86rpx;
						border-radius: 50%;
					}
					.lingdui-msg {
						flex: 1;
						margin-left: 24rpx;
						.lingdui-msg-name {
							font-weight: 500;
							font-size: 29rpx;
							color: #E6E6E6;
							display: flex;
							align-items: center;
							margin-bottom: 11rpx;
							.name-tip {
								padding: 0 20rpx;
								height: 27rpx;
								background: #3C2D17;
								border-radius: 0rpx 12rpx 12rpx 12rpx;
								font-weight: 500;
								font-size: 19rpx;
								color: #FFA200;
								line-height: 27rpx;
								margin-left: 14rpx;
							}
						}
					}
					.add-wx {
						width: 172rpx;
						height: 51rpx;
						background: #3C2D17;
						border-radius: 23rpx 23rpx 23rpx 23rpx;
						text-align: center;
						line-height: 51rpx;
						font-weight: 400;
						font-size: 25rpx;
						color: #FF8A00;
					}
				}
			}
		}
		.title-box {
			font-weight: 500;
			font-size: 33rpx;
			color: #E6E6E6;
			text-align: center;
			position: relative;
			&::after {
				content: "";
				position: absolute;
				top: 50%;
				left: 0;
				transform: translate(0,-50%);
				width: 100%;
				height: 12rpx;
				background: url(@/static/image/home/title-line.png) no-repeat;
				background-size: 100% 100%;
			}
		}
		.lv-miaoshu {
			margin-top: 370rpx;
			.value-box {
				background: #1B1713;
				border-radius: 27rpx;
				margin-top: 35rpx;
				margin-bottom: 52rpx;
				.tabs-box {
					border-bottom: 1px solid #2D241B;
				}
				.lv-msg-box {
					padding: 20rpx 40rpx;
					font-weight: 400;
					font-size: 27rpx;
					color: #fff;
					line-height: 41rpx;
				}
			}
		}
	}
	.bottom-box {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		height: 150rpx;
		background-color: #1B1713;
		display: flex;
		align-items: center;
		padding: 0 40rpx;
		.price-box {
			font-weight: 400;
			font-size: 25rpx;
			color: #999999;
			flex: 1;
			.peice-val {
				font-weight: 500;
				font-size: 40rpx;
				color: #FF3535;
				margin-bottom: 15rpx;
				text {
					font-size: 26rpx;
				}
			}
		}
		.caozuo-box {
			display: flex;
			align-items: center;
			.caozuo-item {
				font-weight: 400;
				font-size: 20rpx;
				color: #999999;
				padding: 0 35rpx;
				text-align: center;
				height: 100rpx;
				display: flex;
				flex-direction: column;
				align-items: center;
				image {
					width: 48rpx;
					height: 48rpx;
					margin-bottom: 10rpx;
				}
			}
			.border-r {
				position: relative;
				// border-right: 1px solid #4A3E32;
				&::after {
					content: "";
					width: 2rpx;
					height: 47rpx;
					position: absolute;
					right: 0;
					top: 50%;
					transform: translate(0,-50%);
					background-color: #4A3E32;
				}
			}
			.isCollect{
				color: #f40;
				font-size: 28rpx;
				height: 100%;
				display: flex;
				align-items: center;
			}
		}
		.btn-box {
			width: 252rpx;
			height: 74rpx;
			font-weight: 500;
			font-size: 32rpx;
			color: #FFFFFF;
			text-align: center;
			line-height: 74rpx;
			background: url(@/static/image/home/hdqd-btn.png) no-repeat;
			background-size: 100% 100%;
		}
		.btn-box-2 {
			width: 252rpx;
			height: 74rpx;
			font-weight: 500;
			font-size: 32rpx;
			text-align: center;
			line-height: 74rpx;
			background-size: 100% 100%;
			background: #333;
			color: #999;
			border-radius: 45rpx;
			margin-bottom: 13rpx;
		}
		.end-btn {
			background: #666666;
			border-radius: 37rpx 37rpx 37rpx 37rpx;
		}
	}

	.popup-cont {
		width: 95%;
		margin: 0 auto;
		background-image: linear-gradient(to top, #000000, #331212);
		height:662rpx;
		border-radius: 33rpx 33rpx 0 0;
		.popup-title {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 54rpx 52rpx;
			font-weight: 500;
			font-size: 29rpx;
			color: #999999;
		}
		.popup-list {
			padding: 0 50rpx;
			.list-item {
				display: flex;
				justify-content: space-between;
				align-items: center;
				height: 110rpx;
				border-bottom: 1px solid #3F3535;
				.item-l {
					font-weight: 500;
					font-size: 29rpx;
					color: #CCCCCC;
					display: flex;
					align-items: center;
					.item-l-val {
						margin-left: 40rpx;
					}
				}
				.chooose-class {
					color: #FF5858;
				}
			}
		}
		.confirm-box {
			padding: 0 50rpx;
			margin-top: 30rpx;
			.confirm-btn-box {
				
			}
		}
	}
</style>