<template>
	<view class="app">
		<view class="card">
			<view class="item" v-for='(item,index) in list' :key="index" @tap='goVideolearningdetails(item)'>
				<image :src="baseurl + item.trainingItemCoverUrl" mode=""></image>
				<view class="title">
					{{item.trainingItemTitle}}
				</view>
				<!-- <view class="time">
					观看至 55：29
				</view> -->
				<view class="price">
					￥{{item.trainingItemPrice}}
				</view>
				<view class="buy" v-if='!item.trainingOrderStatus'>
					购买
				</view>
				<view class="havebuy" v-else>
					已购
				</view>
			</view>
		</view>
	</view>
</template>

<script>
	import {
		personTrainingItem
	} from '@/api/Videolearning/index.js'
	import baseurl from '@/api/baseurl.js'
	export default {
		data() {
			return {
				baseurl: undefined,
				pageNum: 1,
				pageSize: 10,
				trainingCategoryId: undefined,
				list: [],
				total: 0,
			};
		},
		onLoad(options) {
			this.baseurl = baseurl
			this.trainingCategoryId = options.trainingCategoryId
			this.info();
		},
		methods: {
			//跳转视频学习详情
			goVideolearningdetails(item) {
				uni.navigateTo({
					url: `/pages/Videolearningdetails/Videolearningdetails?list=${JSON.stringify(item)}`
				})
			},
			info() {
				personTrainingItem(this.pageNum, this.pageSize, 2).then(res => {
					this.list = res.rows
					this.total = res.total
				})
			},
		},
		onReachBottom() { //下滑加载
			if (this.list.length >= this.total) {} else {
				this.pageNum++
				personTrainingItem(this.pageNum, this.pageSize, this.trainingCategoryId).then(res => {
					res.rows.forEach(e => {
						this.list.push(e)
					})
				})
			}
		},
		onPullDownRefresh() { //下拉刷新
			this.pageNum = 1
			this.info();
			setTimeout(function() {
				uni.stopPullDownRefresh();
			}, 1000);
		},
	}
</script>

<style lang="scss">
	.app {
		padding: 15rpx 0 0;
		color: #000000;

		.card {
			width: 96%;
			margin: 0 auto;
			background: #FFFFFF;
			box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
			border-radius: 5rpx;

			.item {
				width: 94%;
				margin: 0 auto;
				border-bottom: 1rpx solid #E6E6E6;
				position: relative;
				height: 200rpx;

				image {
					position: absolute;
					top: 50%;
					transform: translateY(-50%);
					left: 15rpx;
					width: 216rpx;
					height: 136rpx;
				}

				.havebuy {
					width: 115rpx;
					height: 48rpx;
					background: #CDCDCD;
					border-radius: 5rpx;
					text-align: center;
					line-height: 48rpx;
					color: #FFFFFF;
					position: absolute;
					right: 20rpx;
					bottom: 30rpx;
				}

				.buy {
					width: 115rpx;
					height: 48rpx;
					background: #4271B9;
					border-radius: 5rpx;
					text-align: center;
					line-height: 48rpx;
					color: #FFFFFF;
					position: absolute;
					right: 20rpx;
					bottom: 30rpx;
				}

				.time {
					font-size: 24rpx;
					color: #666666;
					position: absolute;
					top: 120rpx;
					left: 250rpx;
				}

				.price {
					position: absolute;
					top: 120rpx;
					left: 250rpx;
					font-size: 28rpx;
					font-weight: 500;
					color: #EA706A;
				}

				.title {
					width: 281rpx;
					position: absolute;
					top: 35rpx;
					left: 250rpx;
					font-weight: 500;
					font-size: 30rpx;
					text-overflow: -o-ellipsis-lastline;
					overflow: hidden;
					text-overflow: ellipsis;
					display: -webkit-box;
					-webkit-line-clamp: 2; //行数需设置
					line-clamp: 2;
					-webkit-box-orient: vertical;
				}
			}
		}
	}
</style>
