Skip to content
discover.ts 19.8 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {Component, ElementRef, HostListener, NgZone, Renderer2, ViewChild} from '@angular/core';
wangqinghua's avatar
wangqinghua committed
import {Content, InfiniteScrollContent, IonicPage, NavController, NavParams, Slide, Slides} from 'ionic-angular';
wangqinghua's avatar
wangqinghua committed
import {SearchNewPage} from "../../home-pages/search-new/search-new";
wangqinghua's avatar
wangqinghua committed
import {TabsService} from "../tabs.service";
import {StuffDetailPage} from "../../home-pages/stuff-detail/stuff-detail";
import {PublishPage} from "../../discover-pages/publish/publish";
wangqinghua's avatar
wangqinghua committed
import {EmitService} from "../../../provide/emit.service";
import {NoticePage} from "../notice/notice";
wangqinghua's avatar
wangqinghua committed
import {AppGlobal} from "../../../service/http.service";
wangqinghua's avatar
wangqinghua committed
import {CommonService} from "../../../provide/common.service";
wangqinghua's avatar
wangqinghua committed
import {SwiperComponent} from "../../../components/swiper/swiper";
wangqinghua's avatar
wangqinghua committed
import {timer} from "rxjs/observable/timer";
wangqinghua's avatar
wangqinghua committed
import {Storage} from "@ionic/storage";
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
declare let Swiper: any;
wangqinghua's avatar
wangqinghua committed

@IonicPage()
@Component({
wangqinghua's avatar
wangqinghua committed
    selector: 'page-discover',
    templateUrl: 'discover.html',
wangqinghua's avatar
wangqinghua committed
})
export class DiscoverPage {
wangqinghua's avatar
wangqinghua committed
    @ViewChild('swiperCom') swiperCom: SwiperComponent;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('tips') tips: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('fixedTab') fixedTab: ElementRef;
    @ViewChild('topHeight') topHeight: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('tabsParent') tabsParent: ElementRef;
    @ViewChild('tabsChildren') tabsChildren: ElementRef;
    @ViewChild('tabSpan') tabSpan: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('newsContent') newsContent: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('newContentParent') newContentParent: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('scrollTab') scrollTab: ElementRef;
wangqinghua's avatar
wangqinghua committed
    @ViewChild(Content) content: Content;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('slideContent') slideContent: Content;
wangqinghua's avatar
wangqinghua committed
    @ViewChild(Slides) slides: Slides;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //所属板块类型:
    //1党章党规,2系列讲话,3中央精神,4本市部署,5通知公告,6党建动态,7工作提示,8党务参考
wangqinghua's avatar
wangqinghua committed
    //9廉政格言,10纪检提示,11风险排查,12警示教育,13支部活动,14党建联建,15结对帮扶,
wangqinghua's avatar
wangqinghua committed
    tabsList = [
wangqinghua's avatar
wangqinghua committed
        {
wangqinghua's avatar
wangqinghua committed
            "name": "最新发布", "type": 0, "indexParent": 0, "children": [
wangqinghua's avatar
wangqinghua committed
                {
                    "name": "最新发布",
                    "type": 0,
                    "indexChildren": '01'
                },
            ]
        },
        {
wangqinghua's avatar
wangqinghua committed
            "name": "主题教育", "type": 1, "indexParent": 1, "children": [
wangqinghua's avatar
wangqinghua committed
                {
                    "name": "中央精神",
wangqinghua's avatar
wangqinghua committed
                    "type": 1,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '11'
                },
                {
                    "name": "本市部署",
wangqinghua's avatar
wangqinghua committed
                    "type": 2,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '12'
                },
                {
                    "name": "机关动态",
wangqinghua's avatar
wangqinghua committed
                    "type": 3,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '13'
                },
                {
                    "name": "学习心得",
wangqinghua's avatar
wangqinghua committed
                    "type": 5,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '14'
                },
                {
                    "name": "学习资料",
wangqinghua's avatar
wangqinghua committed
                    "type": 4,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '15'
wangqinghua's avatar
wangqinghua committed
                }
wangqinghua's avatar
wangqinghua committed
            ]
        },
        {
            "name": "机关党委", "type": 5, "indexParent": 2, "children": [
wangqinghua's avatar
wangqinghua committed
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "通知公告",
                    "type": 5,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '21'
wangqinghua's avatar
wangqinghua committed
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "党建动态",
                    "type": 6,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '22'
wangqinghua's avatar
wangqinghua committed
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "工作提示",
                    "type": 7,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '23'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "党务参考",
                    "type": 8,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '24'
wangqinghua's avatar
wangqinghua committed
            "name": "支部风采", "type": 13, "indexParent": 3, "children": [
wangqinghua's avatar
wangqinghua committed
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "支部活动",
                    "type": 13,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '32'
wangqinghua's avatar
wangqinghua committed
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "党建联建",
                    "type": 14,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '33'
wangqinghua's avatar
wangqinghua committed
            "name": "党风廉政", "type": 9, "indexParent": 4, "children": [
wangqinghua's avatar
wangqinghua committed
                {
                    "name": "廉政格言",
                    "type": 9,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '41'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "纪检提示",
                    "type": 10,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '42'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "警示教育",
                    "type": 12,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '43'
wangqinghua's avatar
wangqinghua committed
            "name": "互动交流", "type": 21, "indexParent": 5, "children": [
wangqinghua's avatar
wangqinghua committed
                {
                    "name": "学思践悟",
wangqinghua's avatar
wangqinghua committed
                    "type": 21,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '51'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "话题讨论",
wangqinghua's avatar
wangqinghua committed
                    "type": 22,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '52'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "你问我答",
                    "type": 24,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '55'
wangqinghua's avatar
wangqinghua committed
                }]
        },
wangqinghua's avatar
wangqinghua committed
        {
wangqinghua's avatar
wangqinghua committed
            "name": "知识拓展", "type": 16, "indexParent": 6, "children": [
wangqinghua's avatar
wangqinghua committed
                {
                    "name": "视频资料",
                    "type": 16,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '61'
wangqinghua's avatar
wangqinghua committed
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "他山之石",
wangqinghua's avatar
wangqinghua committed
                    "type": 18,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '63'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "综合知识",
                    "type": 19,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '64'
wangqinghua's avatar
wangqinghua committed
                },
wangqinghua's avatar
wangqinghua committed
            ]
        }
wangqinghua's avatar
wangqinghua committed
    ];
wangqinghua's avatar
wangqinghua committed
    childrenList = [];
wangqinghua's avatar
wangqinghua committed
    isRecent = 1;
wangqinghua's avatar
wangqinghua committed
    obj = {
        "plateType": null,   //分类
        "parentName": null,
        "childrenName": null,
    };
wangqinghua's avatar
wangqinghua committed
    resourceType = 1; //1 标题图片 2 轮播图  3 视频
wangqinghua's avatar
wangqinghua committed
    relatePlateType;   //关联主题教育
wangqinghua's avatar
wangqinghua committed
    userId;  //用户id
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    picture: string = AppGlobal.domain + '/wisdomgroup';
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    slideTitle;
    slideIndex = 1;

wangqinghua's avatar
wangqinghua committed
    indexParent = 1;
wangqinghua's avatar
wangqinghua committed
    indexChildren = 0;
wangqinghua's avatar
wangqinghua committed
    newList;   //新闻列表
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    toRight = true;

wangqinghua's avatar
wangqinghua committed
    noReadNum;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    slideList = new Array(7);   //数组的改变 会导致上拉加载更多失效。。
    slideArr = new Array(7);
wangqinghua's avatar
wangqinghua committed
    toIndex;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    pageCount = AppGlobal.pageCount;
wangqinghua's avatar
wangqinghua committed
    pageNum = 1;
wangqinghua's avatar
wangqinghua committed
    totalNum;  //总条数
wangqinghua's avatar
wangqinghua committed
    isPublish = false;
wangqinghua's avatar
wangqinghua committed
    swiper;
    swiperImg;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    slidersItems = [
        {
            "static": "true",
            "id": null,
            "plateType": "20",
            "title": "不忘初心,牢记使命",
            "imgUrl": "./assets/imgs/home/edu_banner.png"
        }
    ];
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    itemWidth;
    spanWidth;

wangqinghua's avatar
wangqinghua committed
    constructor(public navCtrl: NavController, public navParams: NavParams,
wangqinghua's avatar
wangqinghua committed
                public commonSer: CommonService, public renderer: Renderer2,
wangqinghua's avatar
wangqinghua committed
                public zone: NgZone, public storage: Storage,
wangqinghua's avatar
wangqinghua committed
                public tabsSer: TabsService, public emitSer: EmitService) {
wangqinghua's avatar
wangqinghua committed
        // 接收发射过来的数据
        this.emitSer.eventEmit.subscribe((value: any) => {
wangqinghua's avatar
wangqinghua committed
            if (!isNaN(value)) {
wangqinghua's avatar
wangqinghua committed
                this.noReadNum = value;
            }
        });
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
        this.storage.get('userLoginInfo').then((value) => {
            this.userId = value.userid;
        });
wangqinghua's avatar
wangqinghua committed
        this.initSwiper();
        this.getBanner();
wangqinghua's avatar
wangqinghua committed
        this.scrollHeight();
wangqinghua's avatar
wangqinghua committed
        timer(20).subscribe(() => {
wangqinghua's avatar
wangqinghua committed
            this.itemWidth = window.screen.width / 4;
            this.spanWidth = this.tabSpan.nativeElement.offsetWidth;   //文字宽度
            this.changeParent(this.tabsList[0])
        });
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    ionViewDidLeave() {
        const videoArr = document.querySelectorAll("video");
        for (let i = 0; i < videoArr.length; i++) {
            videoArr[i].pause();
        }
    }

wangqinghua's avatar
wangqinghua committed
    public dragTo(e) {
wangqinghua's avatar
wangqinghua committed
        if (e.target.scrollLeft > window.screen.width / 3) {
wangqinghua's avatar
wangqinghua committed
            this.toRight = false;
wangqinghua's avatar
wangqinghua committed
        } else {
wangqinghua's avatar
wangqinghua committed
            this.toRight = true;
        }
    }

wangqinghua's avatar
wangqinghua committed
    //文章分类固定
wangqinghua's avatar
wangqinghua committed
    scrollHeight() {
        const height = this.topHeight.nativeElement.offsetHeight;
        this.content.ionScroll.subscribe(($event) => {
            this.zone.run(() => {
                if (this.content.scrollTop > height) {
                    this.renderer.addClass(this.fixedTab.nativeElement, 'tabs-fixed-scroll')
                } else {
                    this.renderer.removeClass(this.fixedTab.nativeElement, 'tabs-fixed-scroll')
                }
            })
        })
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //初始化swiper
    initSwiper() {
        let that = this;
        that.swiperImg = new Swiper('#swiper-slide', {
            speed: 1000,
wangqinghua's avatar
wangqinghua committed
            autoplay: {
                delay: 3000,
                disableOnInteraction: false,
            },//可选选项,自动滑动
wangqinghua's avatar
wangqinghua committed
            observer: true,
            observeParents: true,
wangqinghua's avatar
wangqinghua committed
            observeSlideChildren: true,
wangqinghua's avatar
wangqinghua committed
            loop: false,
wangqinghua's avatar
wangqinghua committed
            on: {
wangqinghua's avatar
wangqinghua committed
                init: function () {

                },
wangqinghua's avatar
wangqinghua committed
                slideChangeTransitionEnd: function () {
wangqinghua's avatar
wangqinghua committed
                    if (that.swiperImg) {
wangqinghua's avatar
wangqinghua committed
                        that.slideIndex = this.activeIndex + 1;
wangqinghua's avatar
wangqinghua committed
                        that.slideTitle = that.slidersItems[that.swiperImg.realIndex].title;
                        that.swiperImg.update();
                    }
wangqinghua's avatar
wangqinghua committed
                },
wangqinghua's avatar
wangqinghua committed
                click: function () {
                    const item = that.slidersItems[this.activeIndex];
                    if (item.static == "true") {
wangqinghua's avatar
wangqinghua committed
                        that.swiper.slideTo(1, 500);  //前往主题教育
wangqinghua's avatar
wangqinghua committed
                        return false;
                    }
wangqinghua's avatar
wangqinghua committed
                    if (item.plateType == "20") return false;
wangqinghua's avatar
wangqinghua committed
                    that.navCtrl.push(StuffDetailPage, {
                        id: item.id
                    })
wangqinghua's avatar
wangqinghua committed
                }
wangqinghua's avatar
wangqinghua committed
            }
        });
    }

wangqinghua's avatar
wangqinghua committed
    //前往主题教育
    goEdu() {
        this.swiper.slideTo(1, 500);  //前往主题教育
    }

wangqinghua's avatar
wangqinghua committed
    //获取轮播图
    getBanner() {
        const data = {
            obj: {
                "resourceType": 2,   //1标题图片,2推荐轮播图,3视频
                "isRecommend": 1,   //推荐(1是0否)
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                this.slidersItems = [];
wangqinghua's avatar
wangqinghua committed
                if (res.data.list.length > 0) {
                    res.data.list.forEach(e => {
                        if (e.attachments.length > 0) {
                            e.imgUrl = e.attachments[0].path;
                        }
wangqinghua's avatar
wangqinghua committed
                    });
wangqinghua's avatar
wangqinghua committed
                }
wangqinghua's avatar
wangqinghua committed
                this.slidersItems = this.slidersItems.concat(res.data.list);
                this.slideTitle = this.slidersItems[0].title;
                this.swiperImg.update();
wangqinghua's avatar
wangqinghua committed
    //父级选择
    changeParent(item) {
        this.newsContent.nativeElement.scrollLeft = 0;   //二级菜单滑动重置
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
        this.indexParent = item.indexParent;
wangqinghua's avatar
wangqinghua committed
        this.obj.parentName = item.name;
wangqinghua's avatar
wangqinghua committed
        this.obj.childrenName = item.children[0].name;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
        this.toIndex = item.indexParent;
wangqinghua's avatar
wangqinghua committed
        this.childrenList = item.children;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
        if (this.obj.parentName == "主题教育") {
            this.obj.plateType = null;
            this.relatePlateType = item.type;
        } else {
            this.obj.plateType = item.type;
            this.relatePlateType = null;
        }

        this.resourceType = item.name == "知识拓展" ? 3 : 1;
wangqinghua's avatar
wangqinghua committed
        this.isRecent = this.obj.parentName == "最新发布" ? 1 : 0;
wangqinghua's avatar
wangqinghua committed
        if (this.childrenList.length > 0) this.indexChildren = this.childrenList[0].indexChildren;
wangqinghua's avatar
wangqinghua committed
        this.tips.nativeElement.style.width = this.tabSpan.nativeElement.offsetWidth + 'px';
        // 自身div的一半 - 滑块的一半
wangqinghua's avatar
wangqinghua committed
        this.tips.nativeElement.style.left = this.itemWidth * (this.indexParent) + (this.itemWidth - this.spanWidth) / 2 + 'px';
wangqinghua's avatar
wangqinghua committed
        const data = {
            pageSize: 1,
wangqinghua's avatar
wangqinghua committed
            pageCount: this.pageCount,
wangqinghua's avatar
wangqinghua committed
            isRecent: this.isRecent,
wangqinghua's avatar
wangqinghua committed
            obj: {
wangqinghua's avatar
wangqinghua committed
                'plateType': this.obj.plateType,
wangqinghua's avatar
wangqinghua committed
                'resourceType': this.resourceType,
wangqinghua's avatar
wangqinghua committed
                "relatePlateType": this.relatePlateType
wangqinghua's avatar
wangqinghua committed
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                this.newList = res.data.list;
wangqinghua's avatar
wangqinghua committed
                this.totalNum = res.data.total;
wangqinghua's avatar
wangqinghua committed
                this.newList.forEach(e => {
wangqinghua's avatar
wangqinghua committed
                    if (e.attachments && e.attachments.length > 0) {
wangqinghua's avatar
wangqinghua committed
                        if (e.attachments[0].resourceType != 2) {
wangqinghua's avatar
wangqinghua committed
                            e.path = e.attachments[0].path;
                            e.resourceType = e.attachments[0].resourceType;
wangqinghua's avatar
wangqinghua committed
                        } else if (e.attachments.length > 1) {
wangqinghua's avatar
wangqinghua committed
                            e.path = e.attachments[1].path;
                            e.resourceType = e.attachments[1].resourceType;
                        }
wangqinghua's avatar
wangqinghua committed
                    }
wangqinghua's avatar
wangqinghua committed
                });
wangqinghua's avatar
wangqinghua committed
                this.slides.slideTo(this.indexParent, 500);
wangqinghua's avatar
wangqinghua committed
                this.slideList[this.indexParent] = this.newList;
wangqinghua's avatar
wangqinghua committed
                console.log(this.newList);
wangqinghua's avatar
wangqinghua committed
            }
        )
    }

    //子级选择
    changeChildren(item) {
        this.indexChildren = item.indexChildren;
wangqinghua's avatar
wangqinghua committed
        this.resourceType = item.name == "视频资料" ? 3 : 1;
wangqinghua's avatar
wangqinghua committed
        this.isRecent = this.obj.parentName == "最新发布" ? 1 : 0;
wangqinghua's avatar
wangqinghua committed
        this.obj.childrenName = item.name;

        if (this.obj.parentName == "主题教育") {
            this.obj.plateType = null;
            this.relatePlateType = item.type;
        } else {
            this.obj.plateType = item.type;
            this.relatePlateType = null;
        }

        if (this.obj.childrenName == "你问我答") {
wangqinghua's avatar
wangqinghua committed
            this.getQuestion();
            return false;
        }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
        const data = {
            pageSize: 1,
wangqinghua's avatar
wangqinghua committed
            pageCount: this.pageCount,
wangqinghua's avatar
wangqinghua committed
            isRecent: this.isRecent,
wangqinghua's avatar
wangqinghua committed
            obj: {
wangqinghua's avatar
wangqinghua committed
                'plateType': this.obj.plateType,
wangqinghua's avatar
wangqinghua committed
                'resourceType': this.resourceType,
wangqinghua's avatar
wangqinghua committed
                "relatePlateType": this.relatePlateType
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
        };
wangqinghua's avatar
wangqinghua committed
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                this.newList = res.data.list;
wangqinghua's avatar
wangqinghua committed
                this.newList.forEach(e => {
wangqinghua's avatar
wangqinghua committed
                    if (e.attachments && e.attachments.length > 0) {
wangqinghua's avatar
wangqinghua committed
                        e.path = e.attachments[0].path;
                        e.resourceType = e.attachments[0].resourceType;
wangqinghua's avatar
wangqinghua committed
                    }
wangqinghua's avatar
wangqinghua committed
                });
wangqinghua's avatar
wangqinghua committed
                this.slideList[this.indexParent] = this.newList;
wangqinghua's avatar
wangqinghua committed
                this.getMore(res);
            }
        )
    }

    getMore(res) {
wangqinghua's avatar
wangqinghua committed
        const totalNum: number = res.data.total;
wangqinghua's avatar
wangqinghua committed
        if (totalNum < this.pageCount) return false;
        const data = {
wangqinghua's avatar
wangqinghua committed
            pageNum: 1,
            pageCount: totalNum,
wangqinghua's avatar
wangqinghua committed
            isRecent: this.isRecent,
            obj: {
                'plateType': this.obj.plateType,
                'resourceType': this.resourceType,
                "relatePlateType": this.relatePlateType
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                res.data.list.splice(0, 10);
                res.data.list.forEach(e => {
                    if (e.attachments && e.attachments.length > 0) {
                        e.path = e.attachments[0].path;
                        e.resourceType = e.attachments[0].resourceType;
                    }
                    this.slideList[this.indexParent].push(e);
                });
wangqinghua's avatar
wangqinghua committed
            }
        )
    }

wangqinghua's avatar
wangqinghua committed
    //查询我要出题
    getQuestion() {
        const data = {
            pageNum: 1,
            pageSize: 1000,
wangqinghua's avatar
wangqinghua committed
            privateFlag: 0,
wangqinghua's avatar
wangqinghua committed
        };
        this.tabsSer.findPersonQuestions(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                this.newList = res.list;
wangqinghua's avatar
wangqinghua committed
                this.slideList[this.indexParent] = this.newList;
            }
        )
    }

    //下拉刷新
wangqinghua's avatar
wangqinghua committed
    doRefresh(e) {
wangqinghua's avatar
wangqinghua committed
        this.getBanner();
wangqinghua's avatar
wangqinghua committed
        const data = {
            pageNum: 1,
            pageCount: this.pageCount,
wangqinghua's avatar
wangqinghua committed
            isRecent: this.isRecent,
wangqinghua's avatar
wangqinghua committed
            obj: {
wangqinghua's avatar
wangqinghua committed
                'plateType': this.obj.plateType,
                'resourceType': this.resourceType,
                "relatePlateType": this.relatePlateType
wangqinghua's avatar
wangqinghua committed
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
wangqinghua's avatar
wangqinghua committed
                this.newList = res.data.list;
wangqinghua's avatar
wangqinghua committed
                this.newList.forEach(e => {
                    if (e.attachments.length > 0) {
wangqinghua's avatar
wangqinghua committed
                        e.path = e.attachments[0].path;
                        e.resourceType = e.attachments[0].resourceType;
wangqinghua's avatar
wangqinghua committed
                    }
                })
wangqinghua's avatar
wangqinghua committed
                setTimeout(() => {
wangqinghua's avatar
wangqinghua committed
                    this.slideList[this.toIndex] = this.newList;
                    this.commonSer.toastTime('刷新成功!', 800);
wangqinghua's avatar
wangqinghua committed
                    e.complete();
wangqinghua's avatar
wangqinghua committed
                }, 1000);
wangqinghua's avatar
wangqinghua committed
    //上拉加载更多
    doInfinite(e) {
        if (this.totalNum == this.slideList[this.indexParent]) {
            e.complete();
            return false;
        }
        this.pageNum++;
        const data = {
            pageNum: this.pageNum,
            pageCount: this.pageCount,
            isRecent: this.isRecent,
            obj: {
                'plateType': this.obj.plateType,
                'resourceType': this.resourceType,
                "relatePlateType": this.relatePlateType
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
                this.totalNum = res.data.total;
                res.data.list.forEach(e => {
                    if (e.attachments && e.attachments.length > 0) {
                        e.path = e.attachments[0].path;
                        e.resourceType = e.attachments[0].resourceType;
                    }
                    this.slideList[this.indexParent].push(e);
                });
                e.complete();
            }
        )
    }

    //前往搜索页面
    goToSearch() {
        this.navCtrl.push(SearchNewPage);
    }

    //查看详情
    goToDetail(item) {
        this.navCtrl.push(StuffDetailPage, {
            id: item.id
        });
    }

    //前往发布页面
wangqinghua's avatar
wangqinghua committed
    goToPublish(type) {
wangqinghua's avatar
wangqinghua committed
        this.navCtrl.push(PublishPage, {type: type});
wangqinghua's avatar
wangqinghua committed
        this.isPublish = false;
wangqinghua's avatar
wangqinghua committed
    //回答题目
wangqinghua's avatar
wangqinghua committed
    goToResponse(item) {
wangqinghua's avatar
wangqinghua committed
        console.log(item);
wangqinghua's avatar
wangqinghua committed
        if (item.userId == this.userId) {
            this.navCtrl.push('AcceptPage', {id: item.id})
        } else {
wangqinghua's avatar
wangqinghua committed
            this.navCtrl.push('ResponsePage', {item: item})
        }
wangqinghua's avatar
wangqinghua committed
    }

    //消息提醒页面
    goToNotice() {
        this.navCtrl.push(NoticePage);
    }

wangqinghua's avatar
wangqinghua committed
    close() {
wangqinghua's avatar
wangqinghua committed
        this.isPublish = false;
    }

    stop(e) {
        e.stopPropagation();
    }
wangqinghua's avatar
wangqinghua committed

    //我要出题
    issue() {
wangqinghua's avatar
wangqinghua committed
        this.navCtrl.push('SelectTypePage', {type: 'issue'});
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //列表视频不同时播放
wangqinghua's avatar
wangqinghua committed
    clickVideo(e) {
wangqinghua's avatar
wangqinghua committed
        const videoArr = document.querySelectorAll("video");
        for (let i = 0; i < videoArr.length; i++) {
            if (videoArr[i] != e.target) {
                videoArr[i].pause();
            }
        }
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    loadVideo(e) {
        const scale = 0.8;
        const canvas = document.createElement('canvas');
        canvas.width = 120 * scale;
        canvas.height = 120 * scale;
        //绘制图片
        canvas.getContext('2d').drawImage(e.target, 0, 0, canvas.width, canvas.height);
        //设置标签的poster属性
wangqinghua's avatar
wangqinghua committed

        let img = new Image();
        img.src = canvas.toDataURL("image/png");
wangqinghua's avatar
wangqinghua committed
        img.setAttribute("crossOrigin", 'Anonymous')
        img.onload = () => {
wangqinghua's avatar
wangqinghua committed
            e.target.setAttribute("poster", canvas.toDataURL("image/png"));
        }
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    slideChanged() {

    }

wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
}