<template>
	<view :class="[{oh: !per}]">
		<view class="page">
			<view class="search-wrap">
				<uni-search-bar class="search" radius="30" placeholder="请输入" v-model="keyword" clearButton="auto" cancelButton="none" @confirm="searchConfirm" />
				<view>
					<uni-icons type="notification" size="20"></uni-icons>
				</view>
			</view>
			
			<view class="banner">
				<image class="pic" src="@/static/image/info-bg.jpg" mode="widthFix"></image>
			</view>
			
			
			<view class="module">
				<view class="title-wrap">
					<view class="title">爆款推荐</view>
				</view>
				
				<image class="hot" src="@/static/image/info-bg.jpg" mode="widthFix"></image>
			</view>
			
			<view class="module">
				<view class="title">活动速递</view>
				<ul class="tab">
					<li v-for="(tab, i) in tabs" :class="{active: curTab === tab.id}" @click="tabChange(tab)">{{ tab.name }}</li>
				</ul>
				<view class="list">
					<view v-for="(item, i) in list" :key="i" class="item" @click="toDetail(item)">
						<image class="pic" :src="item.coverUrl"></image>
						<view class="texts">
							<view class="name ell">{{ item.competitionName }}</view>
							<view class="meta">时间：{{ item.playStartTime + ' ~ ' + item.playEndTime }}</view>
							<view class="meta ell">主办方：{{ item.sponsor }}</view>
							<view v-if="item.whetherToShowApplicants === '1'" class="meta ell">(0/{{ item.quantityLimit }})人已报名</view>
							<view class="sign" @click.stop="sign(item)">报名</view>
						</view>
					</view>
				</view>
			</view>
		</view>
		<view v-if="!per" class="per-mask">功能升级中，敬请期待...</view>
	</view>
</template>

<script>
	import { postLoginActivity } from '@/apis/modules/activity.js'
	export default {
		data() {
			return {
				per: true, // 是否有权限
				teamId: uni.getStorageSync('teamId') || '',
				keyword: '',
				list: [],
				page: 1,
				pageSize: 10,
				total: 0,
				curTab: 0,
				tabs: [
					{
						name: '全部',
						id: 0
					},
					{
						name: '会议',
						id: 1
					},
					{
						name: '论坛',
						id: 2
					},
					{
						name: '讲座',
						id: 3
					},
					{
						name: '展会',
						id: 4
					},
					{
						name: '培训',
						id: 5
					}
				],
			}
		},
		onShow() {
			uni.setStorageSync('token', 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiaWF0IjoxNzAyMjg4MDEzLCJleHAiOjE3MDMxNTIwMTMsImFjY291bnRJZCI6IjEifQ.3dZSZAG7w8tSPU9DBL0VdULgkQmiZpYVzjf1qfxx5HY')
			this.keyword = ''
			this.per = true
			this.getProducts()
		},
		methods: {
			// 初始化权限
			initRole() {
				if (!uni.getStorageSync('auth').includes('首页')) {
					this.per = false
				}
				this.getProducts()
			},
			// 列表
			getProducts() {
				postLoginActivity({
					pageNum: this.page,
					pageSize: this.pageSize,
					listType: 0,
					platformSource: ''
				}).then(({ data }) => {
					this.list = data.records
				}).catch(e => {})
			},
			// 模糊查询回调
			searchConfirm(e) {
				e.value && this.$util.to(`/order/products/products?keyword=${e.value}`)
			},
			// 跳转活动详情
			toDetail(item) {
				this.$util.to('/order/activityDetail/activityDetail?id=' + item.id)
			},
			// tab切换
			tabChange(tab) {
				this.curTab = tab.id
				// this.initList()
			},
			// 报名
			sign(item) {
				
			}
		}
	}
</script>

<style scoped lang="scss">
.page {
	position: relative;
	border-top-left-radius: 16px;
	border-top-right-radius: 16px;
}
.banner {
	position: relative;
	.pic {
		width: 100%;
	}
}
.hot {
	width: 100%;
}
.search-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 10rpx;
	background-color: #fff;
	.search {
		flex: 1;
	}
}
.module {
	margin: 20rpx;
	padding: 20rpx;
	background-color: #fff;
	border-radius: 8px;
	.title-wrap {
		display: flex;
		justify-content: space-between;
		margin-bottom: 34rpx;
	}
	.title {
		display: inline-flex;
		align-items: center;
		font-size: 30rpx;
		font-weight: 600;
		color: #333;
	}
}
.list {
	.item {
		position: relative;
		display: flex;
		margin-bottom: 28rpx;
		background-color: #fff;
		border-radius: 8px;
		overflow: hidden;
	}
	.pic {
		width: 320rpx;
		height: 240rpx;
		margin-right: 20rpx;
	}
	.texts {
		width: calc(100% - 240rpx);
		padding: 10rpx;
	}
	.name {
		font-size: 28rpx;
		font-weight: 600;
		color: #333;
	}
	.meta {
		margin: 10rpx 0;
		font-size: 26rpx;
		color: #999;
	}
	.sign {
		position: absolute;
		bottom: 0;
		right: 0;
		padding: 10rpx 30rpx;
		font-size: 28rpx;
		color: #fff;
		background-color: $uni-primary;
		border-radius: 4px;
	}
}
</style>
