Skip to content
room-deal.ts 3.95 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 {ServeService} from "../../serve.service";
import {CommonService} from "../../../../provide/common.service";
import {timer} from "rxjs/observable/timer";
wangqinghua's avatar
wangqinghua committed


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

wangqinghua's avatar
wangqinghua committed
    pageNum = 1;
    pageSize = 10;
    changeType = 1;
    footerView = false;
    checkAll = false;
    chooseObj = [];
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    totalNum;
    apply = {
        list: [],
        isLoad: false,
        loadMore:false
    };
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    constructor(public navCtrl: NavController, public navParams: NavParams,
                private serveSer: ServeService, private commonSer: CommonService) {
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    ionViewDidLoad() {
        this.footerView = true;
        this.getList();
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    ionViewWillLeave() {
        this.footerView = false;
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    getList() {
        const data = {
            P_pageNumber: 1,
            P_pageSize: this.pageSize,
            status: this.changeType
        };
        this.serveSer.searchCheckList(data).subscribe(
            (res) => {
                this.apply.list = res.data.list;
            }
        )
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    change(type) {
        this.changeType = type;
        this.getList();
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    changeCheck(item){
        const index = this.chooseObj.indexOf(item.id);
        if (index > -1) {
            this.chooseObj.splice(index, 1);
        } else {
            this.chooseObj.push(item.id);
        }
        this.checkAll = this.chooseObj.length === this.apply.list.length;
    }

    //下拉刷新
    doRefresh(e) {
        this.apply.loadMore = true;
        this.infiniteScrollContent.inf.enable(true);
        const data = {
            P_pageNumber: 1,
            P_pageSize: this.pageSize,
            status: this.changeType
        };
        this.serveSer.myOrder(data).subscribe(
            (res) => {
                this.apply.list = res.data.list;
                this.totalNum = res.data.total;
                timer(800).subscribe(() => {
                    this.commonSer.toast('刷新成功');
                    e.complete()
                });
            }
        )
    }

    //加载更多
    doInfinite(e) {
        if (this.totalNum == this.apply.list.length) {
            console.log("没有更多了");
            this.apply.loadMore = false;
            e.enable(false);
            return false;
        }
        this.pageNum++;
        const data = {
            P_pageNumber: this.pageNum,
            P_pageSize: this.pageSize,
            status: this.changeType
        };
        this.serveSer.myOrder(data).subscribe(
            (res) => {
                this.totalNum = res.data.total;
                res.list.forEach(e => {
                    this.apply.list.push(e);
                });
                timer(800).subscribe(() => e.complete());
            }
        )
    }

    //全选
    selectAll(e) {
        this.chooseObj = [];
        if (e == false) {
            this.apply.list.forEach(e => {
                e.checkbox = false;
            })
        } else {
            this.apply.list.forEach(e => {
                e.checkbox = true;
                this.chooseObj.push(e.id);
            })
        }
    }

    submit(status){
        if(this.chooseObj.length == 0){
            this.commonSer.toast('请选择申请');
            return false;
        }
        const data = {
            ids: this.chooseObj.join(','),
            status: status,
        };
wangqinghua's avatar
wangqinghua committed
        let msg = status == 2 ? '确定通过所选申请' : '确定退回所选申请';
wangqinghua's avatar
wangqinghua committed
        this.commonSer.alert(msg, () => {
            this.serveSer.meetOperate(data).subscribe(
                (res) => {
                    this.getList();
                }
            )
        })
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
}