<template>
<div>
    <common @asynCallBack="asynCallBack"></common>
    	<top-header :pageTitle="pageTitle"></top-header>

		<div class="mui-content vongi-zd">

			<ul class="mui-table-view vongi-zd-list">
			<template v-for="mod in recordList">
				<div class="mui-content-padded" v-if="ifshow(mod)" >
                				<h5>{{mod.month}}</h5>
                </div>
				<li class="mui-table-view-cell">
					<a>
						<div class="mui-media-object mui-pull-left">
							<img :src="mod.iconPic">
						</div>
						<div class="mui-media-body">
							<div class='mui-ellipsis flew-sp flew-items'>{{mod.goodName}}<span class="mui-h2">￥{{mod.totalFee}}</span></div>
							<p>{{mod.goodTypeName}}</p>
							<p>{{mod.payTime}}</p>
						</div>
					</a>
				</li>
 			</template>

			</ul>
			<NullList :remark="'暂无账单信息'" v-if="!recordList.length"></NullList>

		</div>
		           <loading :visible="isLoading"></loading>

</div>
</template>



<script>
	import * as API_Pay from '$project/apis/payment'
	import Common from '$project/components/Common.vue'
	import Loading from '$project/components/Loading.vue'
	import TopHeader from '$project/components/TopHeader.vue'
	import isReachBottom from '$project/utils/isReachBottom'
	import NullList from '$project/components/NullList.vue'
	import {

		currentTimeStamp,
		parseUnixTime
	} from '$project/utils'
	import {
		mapGetters,
		mapMutations
	} from 'vuex'
	export default {
		name: 'MasterMineBillRecord',
		components: {
			Common,
			Loading,
			TopHeader,NullList
		},
		data() {
			return {
				pageTitle: '账单记录',


				isLoading: false,

				listForm: {
					pageIndex: 1,
					pageSize: 20,
 					totalPage: 1,
 					status:20
 				},
				recordList: [],
                vmap:null,
			}
		},
		created() {
		this.vmap=new Map()
 		},
		methods: {
		ifshow(mod){
            if(this.vmap.get(mod.month)){
                return false;
            }else{
               this.vmap.set(mod.month, "1");
                return true;
            }
		},
	        //右上角点击事件
			doRightLink() {
				this.$router.push({
					name: 'MasterMineBillRecord',
					query: {
 					}
				})
			},
			//info
			goto(id) {

				this.$router.push({
					name: 'MasterMineBillPay',
					query: {
						id: id
					}
				})
			},

			//获取列表
			getList() {
				this.isLoading = true;
				API_Pay.orderList(this.listForm).then(res => {
					var response=res;
					if (response) {
						if (this.listForm.pageIndex == 1) {
							this.recordList = response.data;
							this.listForm.pageIndex = response.pageNumber;
							this.listForm.totalPage = response.totalPage;
						} else {
							this.recordList = [
								...this.recordList,
								...response.data
							];
						}
					}
					this.listForm.pageIndex++;
					this.isLoading = false;
				}).catch(error => {
					this.isLoading = false;
					mui.toast(error);
				})
			},
			//下拉事件
			handleScrool() {
				if (isReachBottom()) {
					console.log('到达底部')
					if (this.listForm.pageIndex <= this.listForm.totalPage && this.isLoading == false) {
						this.getList();
					} else {
						return;
					}
				}
			},

			asynCallBack() {

			},
		},
		mounted() {
			this.getList();
			//监控下拉加载事件
			var _this = this;
			window.addEventListener('scroll', _this.handleScrool);
		},
		destroyed() {
			//销毁监听事件
			var _this = this;
			window.removeEventListener('scroll', _this.handleScrool);
		},
		computed: {
			...mapGetters({
				openId: 'wx_openid',
				token: 'token',
				person_data: 'person_data',
				person_popedom: 'person_popedom',
			})
		},

	}
</script>

<style scoped src="$project/assets/css/xpwyfyy.css"></style>
<style src="$project/assets/css/iconfont.css"></style>
<style>
</style>
