<template>
	<view>
		<view class="listActivity">
			<u-empty mode="list" text="暂无活动" marginTop="50" v-if="list.length==0&&!isloading"></u-empty>
			<view class="activityBox" v-for="(item,index) in list" :key="index" @click="openInfo(item)">
				<view class="activityBox-top">
					<image :src='item.cover_upload.url' style="width: 100%;height: 333rpx;"></image>
					<view class="book-status">
						{{item.rate_name}}
					</view>
					<view class="book-num" v-if="item.orders_count>0">
						<text class="book-num-y"> {{isUnde(item.orders_count)}} </text>
						<text>人已报名</text>
					</view>
				</view>
				<view class="activityBox-content flex-col">
					<view class="activityBox-row">
						<text class="activityBox-title">{{isUnde(item.name)}}</text>
					</view>
					<view class="activityBox-row flex-row justify-between">
						<view class="tag tag_green activityBox_btn">
							<text>{{isUnde(item.type_name)}}</text>
						</view>
						<block v-if="item.orders_count==item.total">
							<view class="tag" v-if="item.isCanBook">
								<text>已约满</text>
							</view>
							<view class="tag" v-else>
								<text>{{item.rate_name}}</text>
							</view>
						</block>
						<block v-else>
							<view class="tag" :class="{activityBox_btn:item.isCanBook}">
								<text>{{item.isCanBook?"立即报名":"不可报名"}}</text>
							</view>
						</block>
					</view>

					<view class="activityBox-row">
						<text class="icon-shijian iconfont"></text>
						<text>活动时间：{{timeFormat(item.start_time,"yyyy年MM月DD日")}} {{getHm(item.start_time)}}-{{getHm(item.end_time)}}</text>

					</view>
					<!-- <view class="activityBox-row">
						<text class="icon-huodongfangshi iconfont"></text>
						<text>活动方式：{{isUnde(item.area_name)}}</text>

					</view> -->
					<view class="activityBox-row">
						<text class="icon-huodong iconfont"></text>
						<text>活动地址：{{isUnde(item.address)}}</text>
					</view>

					<view class="activityBox-row">
						<text class="icon-renshu iconfont"></text>
						<text>人数限制：{{isUnde(item.total)==0?'不限':isUnde(item.total)}}</text>
					</view>
					<view class="activityBox-row flex-row align-center" style="margin-bottom: 0rpx;"
						@click.stop="tothere(item)">
						<text class="icon-ditu-dibiao iconfont"></text>
						<text>距离：{{isUnde(item.distance)}}km</text>
						<view class="tomap">
							<text class="icon-daohang1 iconfont" style="margin-right: 0;"></text>
						</view>
					</view>

				</view>
			</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				showInfo: true,
				list: [],
				latitude: "",
				longitude: "",
				isloading: true
			}
		},
		onLoad() {
			var that = this;
			wx.getLocation({
				success(res) {
					console.log(res)
					that.latitude = res.latitude;
					that.longitude = res.longitude;
					that.loadActivity()
				}
			})
		},
		onShareAppMessage() {
			return this.util.shareInfo
		},
		methods: {
			tothere(item) {
				uni.openLocation({
					latitude: parseFloat(item.latitude),
					longitude: parseFloat(item.longitude),
					name: item.name,
					address: item.address
				})
			},
			openInfo(obj) {

				uni.navigateTo({
					url: "info?id=" + obj.id
				})
			},
			loadActivity() {
				var that = this;
				var nt = new Date();
				that.isloading = true;
				this.util.request({
					api: '/api/mobile/activity/index',
					data: {
						latitude: that.latitude,
						longitude: that.longitude,
						page_size: 100
					},
					utilSuccess: function(res) {
						for (var mod of res.data) {
							mod.isCanBook = that.$moment(nt).isBefore(mod.end_plan);
						}
						that.list = res.data;
						that.isloading = false;
					},
					utilFail: function(res) {

					}
				})
			},
			isUnde(val) {
				if (val) {
					return val
				} else {
					return ""
				}
			},
			getHm(val) {
				if (val) {
					return this.$moment(val).format("HH:mm")
				} else return "";
			},
			timeFormat(val, format) {
				return this.$moment(val).format(format)
			}
		}
	}
</script>

<style>
	@import url("@/static/css/activitybox.css");

	page {
		background-color: #f7f6f4;
	}
</style>
