Skip to content
discover.ts 7.2 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {Component, ElementRef, ViewChild} from '@angular/core';
import {IonicPage, NavController, NavParams} 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


@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('tips') tips: ElementRef;
    @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

wangqinghua's avatar
wangqinghua committed
    //所属板块类型:
    //1党章党规,2系列讲话,3中央精神,4本市部署,5通知公告,6党建动态,7工作提示,8党务参考
    //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": 5, "indexParent": 0, "children": [
wangqinghua's avatar
wangqinghua committed
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "最新",
                    "type": 5,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '01'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "通知公告",
                    "type": 5,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '02'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "党建动态",
                    "type": 6,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '03'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "工作提示",
                    "type": 7,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '04'
wangqinghua's avatar
wangqinghua committed
                },
                {
                    "name": "党务参考",
                    "type": 8,
                    "indexChildren": '05'
wangqinghua's avatar
wangqinghua committed
                }
            ]
        },
        {
wangqinghua's avatar
wangqinghua committed
            "name": "支部风采", "type": 13, "indexParent": 1, "children": [
wangqinghua's avatar
wangqinghua committed
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "推荐",
                    "type": 13,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '11'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "支部活动",
                    "type": 13,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '12'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "党建联建",
                    "type": 14,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '13'
                },
                {
wangqinghua's avatar
wangqinghua committed
                    "name": "结对帮扶",
                    "type": 15,
wangqinghua's avatar
wangqinghua committed
                    "indexChildren": '14'
                }
            ]
        },
        {
            "name": "党风廉政", "type": 9, "indexParent": 2, "children": [
                {
                    "name": "最新",
                    "type": 9,
                    "indexChildren": '21'
                },
                {
                    "name": "廉政格言",
                    "type": 9,
                    "indexChildren": '22'
                },
                {
                    "name": "纪检提示",
                    "type": 10,
                    "indexChildren": '23'
                },
                {
                    "name": "风险排查",
                    "type": 11,
                    "indexChildren": '24'
                },
                {
                    "name": "警示教育",
                    "type": 12,
                    "indexChildren": '25'
                }
            ]
        },
        {
            "name": "互动交流", "type": -1, "indexParent": 3, "children": [
                {
                    "name": "最新",
                    "type": -1,
                    "indexChildren": '31'
                },
                {
                    "name": "学思践悟",
                    "type": -1,
                    "indexChildren": '32'
                },
                {
                    "name": "话题讨论",
                    "type": -1,
                    "indexChildren": '33'
                },
                {
                    "name": "你问我答",
                    "type": -1,
                    "indexChildren": '34'
                }]
        },
        {"name": "知识拓展", "type": -1, "indexParent": 4, "children": []}
wangqinghua's avatar
wangqinghua committed
    ];
wangqinghua's avatar
wangqinghua committed
    childrenList = [];

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
    noReadNum;
wangqinghua's avatar
wangqinghua committed
    picture: string = AppGlobal.domain + '/wisdomgroup';

wangqinghua's avatar
wangqinghua committed
    constructor(public navCtrl: NavController, public navParams: NavParams,
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
    ionViewDidEnter() {
wangqinghua's avatar
wangqinghua committed
        this.changeParent(this.tabsList[1]);
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //父级选择
    changeParent(item) {
        this.newsContent.nativeElement.scrollLeft = 0;   //二级菜单滑动重置
        const index = item.indexParent;
        this.indexParent = index;
        this.childrenList = item.children;
wangqinghua's avatar
wangqinghua committed
        if(this.childrenList.length > 0) this.indexChildren = this.childrenList[0].indexChildren;
wangqinghua's avatar
wangqinghua committed
        let itemWidth = window.screen.width / 4;
        let spanWidth = this.tabSpan.nativeElement.offsetWidth;   //文字宽度
        this.tips.nativeElement.style.width = this.tabSpan.nativeElement.offsetWidth + 'px';
        // 自身div的一半 - 滑块的一半
        this.tips.nativeElement.style.left = itemWidth * (index) + (itemWidth - spanWidth) / 2 + 'px';
        const data = {
            pageSize: 1,
            pageCount: 100,
            obj: {
wangqinghua's avatar
wangqinghua committed
                'plateType': item.type,
wangqinghua's avatar
wangqinghua committed
                'resourceType': 1
            }
        };
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
                this.newList = res.data;
                this.newList.forEach(e => {
                    if (e.attachments.length > 0) {
                        e.imgUrl = e.attachments[0].path;
                    }
                })
            }
        )
    }

    //子级选择
    changeChildren(item) {
        this.indexChildren = item.indexChildren;
        const data = {
            pageSize: 1,
            pageCount: 100,
            obj: {
                'plateType': item.type,
                'resourceType': 1
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
        };
wangqinghua's avatar
wangqinghua committed
        this.tabsSer.stuffPage(data).subscribe(
            (res) => {
                this.newList = res.data;
wangqinghua's avatar
wangqinghua committed
                this.newList.forEach(e => {
                    if (e.attachments.length > 0) {
                        e.imgUrl = e.attachments[0].path;
                    }
                })
wangqinghua's avatar
wangqinghua committed
            }
        )
    }


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

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

    //前往发布页面
wangqinghua's avatar
wangqinghua committed
    goToPublish() {
wangqinghua's avatar
wangqinghua committed
        this.navCtrl.push(PublishPage);
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //消息提醒页面
wangqinghua's avatar
wangqinghua committed
    goToNotice() {
wangqinghua's avatar
wangqinghua committed
        this.navCtrl.push(NoticePage);
    }

wangqinghua's avatar
wangqinghua committed
}