<template>
	<view class="content">
		<view class="content-money">
			<view class="content-money">
				<view class="status_bar"><!-- 这里是状态栏 --></view>
				<view class="body-title">
					<!-- <view class="goback-box" @click="toBack"><image class="goback" src="../../static/icon/fanhui.png" mode=""></image></view> -->
					<view class="header" v-if="type == 5">我的贡献值</view>
					<view class="header" v-if="type == 6">我的分红点</view>
					<view class="header" v-if="type == 7">我的分红额</view>
					<view class="header" v-if="type == 10">我的C积分</view>
					<view class="header" v-if="type == 13">我的肥料</view>
				</view>
				<view class="content-bg"><image src="../../static/user/tg-bg.png" mode=""></image></view>
				<view class="money-box">
					<template v-if="type == 10">
						<view class="money" >{{ userInfo.integral }}</view>
						<view >C积分</view>
					</template>
					<template v-if="type == 6">
						<view class="money" >{{ userInfo.dividend_points }}</view>
						<view >分红点</view>
					</template>
					<template v-if="type == 7">
						<view class="money" >{{ userInfo.dividend_amount }}</view>
						<view >分红额</view>
					</template>
					<template v-if="type == 13">
						<view class="money" >{{ userInfo.recommend_speed }}</view>
						<view >肥料</view>
					</template>
				</view>
				<view class="moneybtn-box">
					<template v-if="type == 5">
						<view class="money-btn" @click="navto('/pages/user/gxdh?type=1')">转换报单币</view>
						<view class="money-btn" ></view>
						<view class="money-btn" @click="navto('/pages/user/gxdh?type=2')">转换佣金</view>
					</template>
					
				</view>
			</view>
		</view>
		<view class="navbar">
			<view v-for="(item, index) in navList" :key="index" class="nav-item" :class="{ current: tabCurrentIndex === index }" @click="tabClick(index)">{{ item.text }}</view>
		</view>
		<swiper :current="tabCurrentIndex" :style="{ height: maxheight }" class="swiper-box" duration="300" @change="changeTab">
			<swiper-item class="tab-content" v-for="(tabItem, tabIndex) in navList" :key="tabIndex" :style="{ height: maxheight }">
				<scroll-view scroll-y="true" class="list-scroll-content" @scrolltolower="getList()" :style="{ height: maxheight }" >
					<!-- 空白页 -->
					<empty v-if="tabItem.loaded && tabItem.orderList.length === 0"></empty>
		
					<!-- 订单列表 -->
					<view class="order-item flex" v-for="(item, index) in tabItem.orderList" :key="index">
						<view class="title-box">
							<view class="title">
								<text>{{ item.mark||item.title }}</text>
							</view>
							<view class="time">
								<text>{{ item.add_time }}</text>
							</view>
						</view>
						<view class="money">
							<text>{{ (item.pm == 0 ? '-' : '+') + item.number }}</text>
						</view>
					</view>
					<uni-load-more :status="tabItem.loadingType" v-if="tabItem.loaded == false || tabItem.orderList.length > 0"></uni-load-more>
				</scroll-view>
			</swiper-item>
		</swiper>
	</view>
</template>

<script>
	import empty from '@/components/empty';
	import {
		mapState,
		mapMutations
	} from 'vuex';
	import { spreadCommission } from '@/api/wallet.js';
	export default {
		components: {
			empty
		},
		data() {
			return {
				maxheight: '',
				tabCurrentIndex: 0,
				navList: [
					{
						state: 1,
						text: '收入',
						loadingType: 'more',
						orderList: [],
						page: 1, //当前页面
						limit: 10 //每次信息条数
					},
					{
						state: 0,
						text: '支出',
						loadingType: 'more',
						orderList: [],
						page: 1, //当前页面
						limit: 10 //每次信息条数
					}
				],
				type: 0,//1-复投积分 2-佣金 3-分红额度 4-消费积分
			}
		},
		onLoad(opt) {
			this.type = opt.type
		},
		computed: {
			...mapState('user',['userInfo'])
		},
		onShow() {
			this.getList()
		},
		onReady(res) {
			var _this = this;
			uni.getSystemInfo({
				success: resu => {
					const query = uni.createSelectorQuery();
					query.select('.swiper-box').boundingClientRect();
					query.exec(function(res) {
						_this.maxheight = resu.windowHeight - res[0].top + 'px';
						console.log('打印页面的剩余高度', _this.maxheight);
					});
				},
				fail: res => {}
			});
		},
		methods:{
			navto(url) {
				uni.navigateTo({
					url
				})
			},
			//顶部tab点击
			tabClick(index) {
				this.tabCurrentIndex = index;
			},
			changeTab(res) {
				console.log(res);
				let that = this
				that.tabCurrentIndex = res.detail.current
				that.getList('tab')
			},
			getList(type) {
				let that = this
				let item = that.navList[that.tabCurrentIndex]
				let status = 0
				let qdata = {
					page: item.page,
					limit: item.limit,
				}
				if(type == 'tab' && item.loaded) {
					return
				}
				if(item.loadingType == 'noMore' || item.loadingType == 'loading') {
					return
				}
				item.loadingType = 'loading'
				if(that.type == 2 || that.type ==4) {
					if(that.type == 2 ) {
						if(item.state == 1) {
							status =3
						}else {
							status = 4
						}
					}else {
						if(item.state == 1) {
							status = 2
						}else {
							status =1
						}
					}
					
				}else {
					
					if(that.type == 1) {
						status = 7
						qdata.category = 'resumption'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 3){
						status = 6
						qdata.category = 'pool'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 8) {
						status = 8
						qdata.category = 'points'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 9) {
						status = 9
						qdata.category = 'pass'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 10) {
						status = 10
						qdata.category = 'integral'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 11) {
						status = 11
						qdata.category = 'freeze_points'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 5) {
						status = 5
						qdata.category = 'contribute'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 6) {
						status = 6
						qdata.category = 'dividend_points'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 7) {
						status = 7
						qdata.category = 'dividend_amount'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}else if(that.type == 13) {
						status = 13
						qdata.category = 'recommend'
						if(item.state == 1) {
							qdata.pm = 1
						}else {
							qdata.pm = 0
						}
					}
				}
				
				spreadCommission(qdata,status).then(({data})=> {
					if(data.length > 0) {
						let arr = []
						data.forEach(item => {
							arr = arr.concat(item.list)
							console.log(arr);
						})
						item.orderList = item.orderList.concat(arr);
						item.page++;
						if (item.limit == data.length) {
							item.loadingType = 'more';
							return;
						} else {
							item.loadingType = 'noMore';
						}
						// uni.hideLoading();
						
					}else {
						item.loadingType = 'noMore'
					}
					that.$set(item, 'loaded', true);
				})
			}
		}
	}
</script>

<style lang="scss" scoped>
	.navbar {
		display: flex;
		height: 40px;
		padding: 0 5px;
		background: #fff;
		box-shadow: 0 1px 5px rgba(0, 0, 0, 0.06);
		position: relative;
		z-index: 10;
	
		.nav-item {
			flex: 1;
			display: flex;
			justify-content: center;
			align-items: center;
			height: 100%;
			font-size: 15px;
			color: $font-color-dark;
			position: relative;
	
			&.current {
				color: #000;
				font-weight: bold;
	
				&:after {
					content: '';
					position: absolute;
					left: 50%;
					bottom: 0;
					transform: translateX(-50%);
					width: 44px;
					height: 0;
					border-bottom: 2px solid #FF4C4C;
				}
			}
		}
	}
	.swiper-box {
		.order-item {
			padding: 20rpx 30rpx;
			line-height: 1.5;
	
			.title-box {
				.title {
					font-size: $font-lg;
					color: $font-color-base;
				}
	
				.time {
					font-size: $font-base;
					color: $font-color-light;
				}
			}
	
			.money {
				color: rgba(239, 58, 85, 1);
				font-size: $font-lg;
			}
		}
	}
	.list-scroll-content {
		background-color: #ffffff;
		height: 100%;
	}
	.content-money {
		position: relative;
		height: 480rpx;
		.content-bg {
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			width: 750rpx;
			height: 480rpx;
			image {
				width: 100%;
				height: 100%;
			}
		}
		.body-title {
			height: 80rpx;
			text-align: center;
			font-size: 35rpx;
			position: relative;
			.header {
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				font-size: 36rpx;
				font-family: PingFang SC;
				font-weight: bold;
				color: #fffeff;
				height: 80rpx;
				font-size: 36rpx;
				font-weight: 700;
				z-index: 9;
				display: flex;
				justify-content: center;
				align-items: center;
			}
			.goback-box {
				position: absolute;
				left: 18rpx;
				top: 0;
				height: 80rpx;
				display: flex;
				align-items: center;
			}
	
			.goback {
				z-index: 100;
				width: 34rpx;
				height: 34rpx;
			}
		}
	}
	
	.money-box {
		position: relative;
		z-index: 2;
		padding-top: 70rpx;
		color: #ffffff;
		text-align: center;
		.money {
			font-size: 72rpx;
			font-family: PingFang SC;
			font-weight: bold;
			color: #ffffff;
		}
		.text {
			font-size: 30rpx;
		}
	}
	.moneybtn-box {
		display: flex;
		justify-content: space-between;
		position: relative;
		z-index: 2;
		color: #ffffff;
		padding: 50rpx 50rpx 20rpx;
		font-size: 30rpx;
		font-family: PingFang SC;
		font-weight: bold;
		color: #ffffff;
	}
</style>