Skip to content
now-alarm.component.ts 3.47 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {Component, OnInit, ViewChild, ElementRef, OnDestroy} from '@angular/core';
wangqinghua's avatar
wangqinghua committed
import {AlarmService} from '../alarm.service';
import {NzMessageService} from 'ng-zorro-antd';
import {SendLogComponent} from '../modal/send-log/send-log.component';
wangqinghua's avatar
wangqinghua committed
import {color, pageSize} from '../../app.constants';
wangqinghua's avatar
wangqinghua committed
import {WarnListComponent} from '../../modal/warn-list/warn-list.component';
wangqinghua's avatar
wangqinghua committed
import {OverAllService} from '../../overAll/overAll.service';
wangqinghua's avatar
wangqinghua committed
import {CommonService} from '../../shared/common/common.service';
import {WorkService} from '../../work/work.service';
wangqinghua's avatar
wangqinghua committed

@Component({
wangqinghua's avatar
wangqinghua committed
    selector: 'smart-now-alarm',
    templateUrl: './now-alarm.component.html',
    styles: [
wangqinghua's avatar
wangqinghua committed
            `
            .tag-warn{
                padding: 5px;
            }
            .tag-warn span{
                border: 1px solid #ccc;
                margin-right: 10px;
                display: inline-block;
                margin-bottom: 10px;
                padding: 2px 4px;
                border-radius: 4px;
            }
wangqinghua's avatar
wangqinghua committed
            .tag-warn span.select-border {
                border: 1px solid #1626e2;
                border-radius: 5px;
                padding: 2px;
                margin-right: 5px;
            }
wangqinghua's avatar
wangqinghua committed
            :host ::ng-deep .tag-warn .ant-tag{
                margin-right: 0px;
            }
wangqinghua's avatar
wangqinghua committed
        `
    ]
wangqinghua's avatar
wangqinghua committed
})
wangqinghua's avatar
wangqinghua committed
export class NowAlarmComponent implements OnInit, OnDestroy {
wangqinghua's avatar
wangqinghua committed
    @ViewChild('sendLog') sendLog:SendLogComponent;
wangqinghua's avatar
wangqinghua committed
    @ViewChild('warnList') warnList:WarnListComponent;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    color = color;
wangqinghua's avatar
wangqinghua committed
    alarmTotal;
wangqinghua's avatar
wangqinghua committed
    warnCountList = [];
wangqinghua's avatar
wangqinghua committed
    loading = false;
    pageCount = pageSize;
    pageNum = 1;
    totalNum;
wangqinghua's avatar
wangqinghua committed
    time_;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    selectHostId;
wangqinghua's avatar
wangqinghua committed
    isDownload;
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    constructor(public alarmSer: AlarmService, public message: NzMessageService,private workSer:WorkService,
                public overAllSer:OverAllService,private commonSer:CommonService) {
wangqinghua's avatar
wangqinghua committed
    }

    ngOnInit() {
wangqinghua's avatar
wangqinghua committed
        this.getType();
wangqinghua's avatar
wangqinghua committed
        this.search(null);
wangqinghua's avatar
wangqinghua committed
        this.time_ = setInterval(()=>{
            this.search(null);
        },2*60*1000);
    }

    ngOnDestroy(){
        clearInterval(this.time_);
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    search(hostid){
wangqinghua's avatar
wangqinghua committed
        this.selectHostId = hostid;
wangqinghua's avatar
wangqinghua committed
        const obj = {
wangqinghua's avatar
wangqinghua committed
            isWaring:'yes',
wangqinghua's avatar
wangqinghua committed
            hostid:hostid,
wangqinghua's avatar
wangqinghua committed
        };
wangqinghua's avatar
wangqinghua committed
        this.warnList.outGet(obj);
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    getType(){
        this.overAllSer.findHostWarningCount().subscribe(
            (res)=>{
                if(res.errCode == 10000){
                    this.warnCountList = res.data;
                }else{
                    this.message.info(res.errMsg);
                }
            }
        )
    }

wangqinghua's avatar
wangqinghua committed
    change(e){
        this.pageNum = e;
    }

    //打开modal
    showModal(data){
        this.sendLog.showModal(data);
    }
wangqinghua's avatar
wangqinghua committed

    getTotal(num){
        this.alarmTotal = num;
    }
wangqinghua's avatar
wangqinghua committed

    //导出文件
    downLoadExcel(){
        this.isDownload = true;
        const data = {
            isWaring:'yes',
            hostid:this.selectHostId,
        };
        this.alarmSer.getExportUrlEvent(data).subscribe(
            (res)=>{
                if(res.errCode == 10000){
                    this.workSer.downloadTemplate('alarm',res.data).subscribe(
                        (data)=>{
                            this.isDownload = false;
                            this.commonSer.downloadFile('当前告警.xlsx',data);
                        }
                    )
                }else{
                    this.message.error(res.errMsg);
                }
                this.isDownload = false;
            }
        )
    }
wangqinghua's avatar
wangqinghua committed
}