<!-- 任务中心 -->
<template>
	<view class="container">
		<u-navbar :background="background" :is-back="true" :title="title" :border-bottom="false" style="position: absolute;"></u-navbar>
		<view class="task_bg u-relative">
			<u-image class="task_bg" src="../../static/images/task/member_bg.png" ></u-image>
			<view class="title ">每月打卡免费领</view>
		</view>
		
		
		<view class="content  bg-white u-relative" v-if="list.length">
			<view class="title">
				<view>打卡奖励</view>
				<view class="tip">每月免费领</view>
			</view>
			<view class="cell flex justify-between" v-for="(item,index) in list" :key="index"  >
				<view class="cell_left flex">
					<image class="cell_icon" :src="item.img"></image>
					<view class="cell_title flex">
						<view class="u-font-28 text-bold title">{{ item.name}}</view>
						<view class="u-font-24 tip">{{ item.rewardDetail  }}</view>
					</view>
				</view>
				<view class="cell_right" v-if="standard=='true'">
					<viwe v-if="!receive">
						<view class="btn"  @click="taskReceive(item)">领取</view>
					</viwe>
					<view v-else>
						<view v-if="item.disabled" >
							<view class="btn disabled" >领取</view>
						</view>
						<view v-else>
							<view v-if="!item.targetId" class="btn" @click="toDuiHuan(item)">去兑换</view>
							<view v-else class="btn receive" >已兑换</view>
							<u-image v-if="!item.targetId" class="icon" src="../../static/images/task/receive2.png"></u-image>
						</view>
						
					</view>
				</view>
				<view class="standard" v-else>
					<u-image class="icon" src="../../static/images/task/receive1.png"></u-image>
				</view>
			
			</view>

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

<script>
	export default {
		
		data() {
			return {
				title: '',
				background: {
					backgroundImage: 'transparent',
				},
				query: {
					taskId: null,
				
				},
				list: [],
				standard: true,
				receive: null,
				record: null,
				source: null,
			}
		},
		onLoad(options) {
			console.log(options)
			if ( options.source ) {
				this.source = options.source
			}
			if ( options.standard ) {
				this.standard = options.standard
			}
			if ( options.taskId ) {
				this.query.taskId = options.taskId
			}
		},
		onShow() {
			this.getList()	
		},
		methods: {
			/**
			 * 去兑换
			 * @param {Object} item
			 */
			toDuiHuan(item){
				uni.navigateTo({
					url:`/me/gift/duihuan?id=${this.record}&foreignType=task`
				})
			},
			
			/**
			 * 获取列表
			 */
			getList() {
				this.$Request.getT('app/taskCenterReward/selectTaskCenterUserReward', this.query).then(res => {
					if (res.code == 0 ) {
						this.list = res.data
						this.list.map(item=>{
							item.disabled = true
						})
						this.receive = res.receive
						this.record = res.record
						if ( this.receive ) {
							this.list.map(item=>{
								if ( item.id == this.receive ) {
									item.disabled = false
								}
							})
						}
						console.log(this.list)
						
					}
				})
			},
			
			/**
			 * 领取
			 */
			taskReceive(item) {
				let data = {
					taskId: this.query.taskId,
					sourceId: item.id
				}
				this.$Request.postT('app/taskCenter/receiveGoods', data).then(res => {
					if (res.code == 0) {
						uni.showToast({
							title: '领取成功',
							icon: 'none'
						})
						this.getList()
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none'
						})
					}
				})
			},
		}
	}
</script>

<style lang="scss">
	.container{
		width: 100%;
		height: 100vh;
		// display: flex;
		// flex-direction: column;
		.task_bg{
			width: 100%!important;
			height: 470rpx!important;
			position: relative;
			.title{
				width: 314rpx;
				height: 72rpx;
				line-height: 72rpx;
				text-align: center;
				border-radius: 108rpx 108rpx 108rpx 108rpx;
				border: 6rpx solid #3D6DC6;
				font-weight: bold;
				font-size: 34rpx;
				color: #3D6DC6;
				position: absolute;
				top: 210rpx;
				left: 26rpx;
			}
		}
		
		.content{
			height: calc(100% - 410rpx);
			border-radius: 16rpx;
			top: -60rpx;
			z-index: 9;
			padding: 64rpx 28rpx;
			background: linear-gradient( -45deg, #DDEAFC 0%, #FFFFFF 100%);
			border-radius: 32rpx 32rpx 0rpx 0rpx;
			overflow-y: auto;
			>.title{
				display: flex;
				align-items: center;
				font-weight: bold;
				font-size: 32rpx;
				color: #333333;
				margin-bottom: 22rpx;
				.tip{
					font-weight: 400;
					font-size: 24rpx;
					color: #666666;
					margin-left: 10rpx;
				}
			}
			.cell{
				align-items: center;
				background: linear-gradient( 90deg, #FFF4E0 0%, #FFFBF5 100%);
				border-radius: 8rpx 8rpx 8rpx 8rpx;
				margin-bottom: 32rpx;
				padding: 32rpx 28rpx;
				position: relative;
				.standard{
					width: 100%;
					height: 100%;
					background: rgba(43,43,43,0.19);
					border-radius: 8rpx 8rpx 8rpx 8rpx;
					position: absolute;
					right: 0;
					bottom: 0;
					
				}
				.cell_left{
					flex-direction: row;
					align-items: center;
					.cell_icon{
						width: 84rpx!important;
						height: 84rpx!important;
						margin-right: 30rpx;
						border-radius: 4rpx!important;
					}
					.cell_title{
						display: flex;
						align-items: center;
						color: #333;
						.title{
							font-weight: bold;
							font-size: 28rpx;
							color: #333333;
						}
						
						.tip{
							font-weight: 400;
							font-size: 24rpx;
							color: #999999;
						}
					}
					
				}
				.cell_right{				
					flex-direction: column;
					align-items: center;
					flex-shrink: 0;
					margin-left: 20rpx;
					.btn{
						width: 148rpx;
						height: 56rpx;
						line-height: 56rpx;
						text-align: center;
						background: #6DA9F7;
						border-radius: 12rpx 12rpx 12rpx 12rpx;
						font-weight: 500;
						font-size: 24rpx;
						color: #FFFFFF;
						border: 2rpx solid transparent;
						position: relative;
						z-index: 99;
					}
					
					.opt{
						color: #D39B7E;
						background-color: #FBF3EB;
					}
					.disabled{
						color: #999999;
						background-color: #E2E2E2;
					}
					.receive{
						background: rgba(178,223,255,0.62);
						border: 2rpx solid #6DA9F7;
						color: #6DA9F7;
					}
				}
				.icon{
					width: 132rpx!important;
					height: 136rpx!important;
					position: absolute;
					right: 0;
					bottom: 0;
				}
				
			}
			.cell:last-child{
				border-bottom: none;
			}
		}
	
	}
	

</style>