Skip to content
integral.ts 2.55 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {Component, ViewChild} from '@angular/core';
import {InfiniteScrollContent, IonicPage, NavController, NavParams} from 'ionic-angular';
import {AppGlobal} from "../../../service/http.service";
import {MineService} from "../mine.service";
import {CommonService} from "../../../provide/common.service";
import {timer} from "rxjs/observable/timer";
wangqinghua's avatar
wangqinghua committed


@IonicPage()
@Component({
wangqinghua's avatar
wangqinghua committed
    selector: 'page-integral',
    templateUrl: 'integral.html',
wangqinghua's avatar
wangqinghua committed
})
export class IntegralPage {
wangqinghua's avatar
wangqinghua committed
    @ViewChild(InfiniteScrollContent) infiniteScrollContent: InfiniteScrollContent;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    pageNum = 1;
wangqinghua's avatar
wangqinghua committed
    pageCount = 100;
wangqinghua's avatar
wangqinghua committed
    integraList = [];
    picture: string = AppGlobal.domain + '/wisdomgroup';
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    isLoad = true;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    loadMore = true;
    totalNum;  //总条数
    constructor(public navCtrl: NavController, public navParams: NavParams,
                public mineSer: MineService, public commonSer: CommonService) {
    }

    ionViewDidEnter() {
        this.getList();
    }

    getList() {
        const data = {
            pageNum: this.pageNum,
            pageSize: this.pageCount
        };
        this.mineSer.personPointDetail(data).subscribe(
            (res) => {
                this.integraList = res.list;
                this.isLoad = false;
                this.totalNum = res.total;
            }
        )
    }

    //下拉刷新
    doRefresh(e) {
        this.loadMore = true;
        this.infiniteScrollContent.inf.enable(true);
        const data = {
            pageNum: 1,
            pageSize: this.pageCount
        };
        this.mineSer.personPointDetail(data).subscribe(
            (res) => {
                this.integraList = res.list;
                this.totalNum = res.total;
                timer(800).subscribe(() => {
                    this.commonSer.toast('刷新成功');
                    e.complete()
                });
            }
        )
    }

    //加载更多
    doInfinite(e) {
        console.log("doInfinite")
        if (this.totalNum == this.integraList.length) {
            console.log("没有更多了")
            this.loadMore = false;
            e.enable(false);
            return false;
        }
        this.pageNum++;
        const data = {
            pageNum: this.pageNum,
            pageSize: this.pageCount
        };
        this.mineSer.personPointDetail(data).subscribe(
            (res) => {
                this.totalNum = res.total;
                res.list.forEach(e => {
                    this.integraList.push(e);
                });
                timer(800).subscribe(() => e.complete());
            }
        )
    }
wangqinghua's avatar
wangqinghua committed
}