<template>
	<view class="bg">
		<view class="topImg relative">
			<img v-if="headImg" :src="showImg(headImg)" class="topImg" mode="aspectFill">
			<view class="icon-back"  :style="{top:systemInfo.textTop,left:'19rpx'}" @click="goBack()" >
				<uni-icons type="left" size="24" color="#242424"></uni-icons>
			</view>
		</view>
		
		
		<view class="goodBox">
			<navigator :url="'/subPackages/ticketBooking/detail?id='+item.id" class="goodItem flex-column" v-for="(item,index) in list" :key="index">
				<view class="left-image flex-shrink-0 relative">
					<image class="left-image " :src="showImg(item.image)" mode="aspectFill"></image>
					<view class="collect" @click="like(item)">
						<image src="https://tongli.sz-trip.com/uploads/20240826/81b1f86ff8534db09472853b4c0b6748.png" v-if="item.is_collect"></image>
						<image src="https://tongli.sz-trip.com/uploads/20240826/564af778708591f5de29174d3b14bbff.png" v-else></image>
					</view>
					
				</view>
				
				<view class="contentBox flex-column flex-1 h-1rpx">
					<view class="title text-overflow">{{item.title}}</view>
					<view class="flex-between">
						<view class="tag-container">
							<view class="tag">盐都精选</view>
							<view class="tag">盐都精选</view>
						</view>
						<view class="priceBox">
							<view class="price">{{showPrice(item.price)}}</view>
						</view>
					</view>
					<view class="flex-between">
						<view class="distance">距您约602m</view>
						<view class="order-btn">立即预定</view>
					</view>

					
				</view>
			</navigator>
		</view>
		<view class="finished-text" v-if="finished">没有更多数据了</view>
	</view>
</template>

<script>
	export default{
		data(){
			return {
				systemInfo: {
					height:"0px",
					textHeight:"0px",
					textTop:"0px",
					contentTop: '0px',
				},
				
				list: [],
				finished: false,
				headImg:null,
				navList: [],
				actNavIndex: 0,
				type_id: 9,//演出票务的景点分类id
			}
		},
		onShow() {
			this.headImg = 'https://tongli.sz-trip.com/uploads/20240826/8653c32761e01ee683505eddba1ae22b.png'
			this.finished = false
			this.list = [
				{id:1, title:'景点名称景点名称景点名称 景点名称', 
				address:'景点名称景点名称景点名称 景点名称景点名称景点名称景点名称 景点名称',price:10000,
				image:'https://tongli.sz-trip.com/uploads/20240826/a87488f6225789aa19dbb437671d388d.png',
				}
			]
			// this.getHeadImg('piaowu')
		},
		onLoad(options) {
			let that = this
			uni.getSystemInfo({
			  success(res) {
			    console.log(res)
			    that.systemInfo.height =res.windowHeight+'px'
				const menu=uni.getMenuButtonBoundingClientRect()
				that.systemInfo.textHeight=menu.height+"px"
				that.systemInfo.textTop=menu.top+"px"
				that.systemInfo.contentTop = (menu.height + menu.top)+"px"
			    console.log(that.systemInfo)
			  }
			})
		},
		  
		methods: {
			// 价格显示
			showPrice(price) {
				return (price && price != 0) ? (price / 100).toFixed(0) : '0'
			},
			getHeadImg(type){
				this.headImg = null
				this.Post(
					{
						type,
					},
					'https://yjdtadmin.sz-trip.com/api/public_service/getKumgangHeadImgList'
				).then(res => {
					this.headImg = res.data[0].image
				});
			},
			// 根据景点标签获取景点列表
			getList(){
				this.Post({
					tag_id: this.navList[this.actNavIndex].id,
					offset: this.list.length,
					limit: 10
				},'https://yjdtadmin.sz-trip.com/api/scenic/getScenicByTagId').then(res => {
					this.list = [...this.list, ...res.data];
					if (res.data.length < 10) {
						this.finished = true
					}
				})
			},
			
			// 收藏按钮
			like(item){
				this.Post({
					type: 4,
					id: item.id
				}, 'https://yjdtadmin.sz-trip.com/api/scenic/collect').then(res => {
					if (res.code == 200) {
						uni.showToast({title: res.msg})
						if (item.is_collect == 1) {
							item.is_collect = 0
						} else {
							item.is_collect = 1
						}
					}
				})
			},
		},
		onReachBottom() {
			setTimeout(() => {
				if (!this.finished) this.getList()
			},1000)
		}
	}
</script>

<style scoped lang="scss">
	*{
		box-sizing: border-box;
		font-family: PingFangSC;
	}
	.bg{
		min-height: 100vh;
		background: #FFFFFF;
	}
	.topImg{
		width: 100%;
		height: 440rpx;
		.icon-back{
			position: absolute;
			display: flex;
			align-items: center;
			z-index: 50;
		}
	}
	
	
	.goodBox{
		width: 100%;
		z-index: 2;
		padding: 26rpx;
		
		.goodItem{
			width: 100%;
			height: 525rpx;
			background: #FFFFFF;
			box-shadow: 0rpx 0rpx 9rpx 0rpx rgba(153,153,153,0.38);
			margin-bottom: 26rpx;
			border-radius: 13rpx;
			.left-image{
				width: 100%;
				height: 321rpx;
				border-radius: 13rpx 13rpx 0rpx 0rpx;
				
				.collect{
					position: absolute;
					top: 22rpx;
					right: 22rpx;
					width: 51rpx;
					height: 51rpx;
					background: rgba(0,0,0,0.5);
					border-radius: 50%;
					display: flex;
					align-items: center;
					justify-content: center;
					image{
						width: 35rpx;
						height: 35rpx;
					}
				}
			}
			
			.contentBox{
				padding:19rpx 26rpx;
				width: 100%;
				justify-content: space-between;
				
				.title{
					width: 100%;
					font-weight: bold;
					font-size: 31rpx;
					color: #000000;
				}
				
				.tag-container{
					display: flex;
					.tag{
						background: rgba(205,233,209,0.3);
						border-radius: 7rpx 5rpx 5rpx 7rpx;
						border: 1px solid rgba(135,205,147,0.3);
					
						padding: 4rpx 14rpx;
						font-weight: 500;
						font-size: 25rpx;
						color: #4E7956;
						text-align: center;
						margin-right: 12rpx;
					}
				}
				
				
				.priceBox{
					.price{
						font-family: PingFang SC;
						font-weight: bold;
						font-size: 33rpx;
						color: #F02A2A;
						text-align: right;
					}
					.price::before{
						content: '￥';
						color: #F02A2A;
						font-size: 24rpx;
					}
					.price::after{
						content: '起';
						color: #999;
						font-size: 24rpx;
						font-weight: normal;
					}
				}
				
				.distance{
					font-family: PingFang SC;
					font-weight: 500;
					font-size: 27rpx;
					color: #999999;
				}
				.order-btn{
					width: 173rpx;
					height: 55rpx;
					background: #70B57F;
					border-radius: 27rpx 27rpx 27rpx 27rpx;
					font-weight: bold;
					font-size: 29rpx;
					color: #FFFFFF;
					text-align: center;
					line-height: 55rpx;
				}
			
			}
		}
	}
</style>