Skip to content
alarm-list.component.ts 4.78 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {AfterViewInit, Component, OnInit, ViewChild} from '@angular/core';
wangqinghua's avatar
wangqinghua committed
import {AlarmService} from '../alarm.service';
import {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';
import {NzMessageService} from 'ng-zorro-antd';
wangqinghua's avatar
wangqinghua committed
import {DatePipe} from '@angular/common';
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-alarm-list',
    templateUrl: './alarm-list.component.html',
wangqinghua's avatar
wangqinghua committed
    styles: [`
wangqinghua's avatar
wangqinghua committed
        .tag-warn {
wangqinghua's avatar
wangqinghua committed
            padding: 5px;
        }
wangqinghua's avatar
wangqinghua committed

        .tag-warn span {
wangqinghua's avatar
wangqinghua committed
            border: 1px solid #ccc;
            margin-right: 10px;
            display: inline-block;
            margin-bottom: 10px;
            padding: 2px 4px;
            border-radius: 4px;
        }
wangqinghua's avatar
wangqinghua committed

        :host ::ng-deep .tag-warn .ant-tag {
wangqinghua's avatar
wangqinghua committed
            margin-right: 0px;
        }
wangqinghua's avatar
wangqinghua committed
    `]
wangqinghua's avatar
wangqinghua committed
})
wangqinghua's avatar
wangqinghua committed
export class AlarmListComponent implements OnInit {
wangqinghua's avatar
wangqinghua committed
    @ViewChild('warnList') warnList: WarnListComponent;
wangqinghua's avatar
wangqinghua committed
    eventList = [];
wangqinghua's avatar
wangqinghua committed
    warnCountList = [];
    groupList = [];
wangqinghua's avatar
wangqinghua committed
    pageNum = 1;
    pageCount = pageSize;
wangqinghua's avatar
wangqinghua committed
    timeFormat = "yyyy-MM-dd";
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //条件
wangqinghua's avatar
wangqinghua committed
    timeType = '1';
wangqinghua's avatar
wangqinghua committed
    obj = {
wangqinghua's avatar
wangqinghua committed
        priorityName: null,
        groupid: null,
        equipmentType: null,
        startTime: '',
        endTime: '',
        name: ''
wangqinghua's avatar
wangqinghua committed
    };

wangqinghua's avatar
wangqinghua committed
    dateBegin = null;
    dateEnd = null;
wangqinghua's avatar
wangqinghua committed
    isDownload;
wangqinghua's avatar
wangqinghua committed

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

    ngOnInit() {
wangqinghua's avatar
wangqinghua committed
        this.getType();
        this.getWarnGroup();
wangqinghua's avatar
wangqinghua committed
        this.searchValue();
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    //获取分组
wangqinghua's avatar
wangqinghua committed
    getWarnGroup() {
wangqinghua's avatar
wangqinghua committed
        this.overAllSer.findGroup().subscribe(
wangqinghua's avatar
wangqinghua committed
            (res) => {
                if (res.errCode == 10000) {
wangqinghua's avatar
wangqinghua committed
                    this.groupList = res.data;
                }
            }
wangqinghua's avatar
wangqinghua committed
        );
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    //获取资源类型
wangqinghua's avatar
wangqinghua committed
    getType() {
wangqinghua's avatar
wangqinghua committed
        this.overAllSer.findType().subscribe(
wangqinghua's avatar
wangqinghua committed
            (res) => {
                if (res.errCode == 10000) {
wangqinghua's avatar
wangqinghua committed
                    this.warnCountList = res.data;
wangqinghua's avatar
wangqinghua committed
                } else {
wangqinghua's avatar
wangqinghua committed
                    this.message.info(res.errMsg);
                }
            }
wangqinghua's avatar
wangqinghua committed
        );
wangqinghua's avatar
wangqinghua committed
    }
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    //时间改变
wangqinghua's avatar
wangqinghua committed
    changeType() {
wangqinghua's avatar
wangqinghua committed
        const nowDate = new Date().getTime();
wangqinghua's avatar
wangqinghua committed
        let day1, day2;
        switch (this.timeType) {
            case'1': {
                this.obj.startTime = this.datePipe.transform(nowDate, 'yyyy-MM-dd') + ' 00:00:00';
                this.obj.endTime = this.datePipe.transform(nowDate, 'yyyy-MM-dd') + ' 23:59:59';
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
            case'2': {
                day1 = nowDate - 1 * 24 * 60 * 60 * 1000;
                this.obj.startTime = this.datePipe.transform(day1, 'yyyy-MM-dd') + ' 00:00:00';
                this.obj.endTime = this.datePipe.transform(day1, 'yyyy-MM-dd') + ' 23:59:59';
wangqinghua's avatar
wangqinghua committed
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
            case'3': {
                day1 = nowDate - 3 * 24 * 60 * 60 * 1000;
wangqinghua's avatar
wangqinghua committed
                day2 = nowDate;
wangqinghua's avatar
wangqinghua committed
                this.obj.startTime = this.datePipe.transform(day1, 'yyyy-MM-dd') + ' 00:00:00';
                this.obj.endTime = this.datePipe.transform(day2, 'yyyy-MM-dd') + ' 23:59:59';
wangqinghua's avatar
wangqinghua committed
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
            case'4': {
                day1 = nowDate - 7 * 24 * 60 * 60 * 1000;
wangqinghua's avatar
wangqinghua committed
                day2 = nowDate;
wangqinghua's avatar
wangqinghua committed
                this.obj.startTime = this.datePipe.transform(day1, 'yyyy-MM-dd') + ' 00:00:00';
                this.obj.endTime = this.datePipe.transform(day2, 'yyyy-MM-dd') + ' 23:59:59';
wangqinghua's avatar
wangqinghua committed
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
            case'5': {
wangqinghua's avatar
wangqinghua committed
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
        }
    }

    //查询
wangqinghua's avatar
wangqinghua committed
    searchValue() {
wangqinghua's avatar
wangqinghua committed
        if(this.timeType == "5"){
            this.obj.startTime = this.datePipe.transform(this.dateBegin, 'yyyy-MM-dd HH:mm:ss');
            this.obj.endTime = this.datePipe.transform(this.dateEnd, 'yyyy-MM-dd HH:mm:ss');
        }
wangqinghua's avatar
wangqinghua committed
        this.warnList.getList(this.obj);
    }
wangqinghua's avatar
wangqinghua committed

    //导出文件
    downLoadExcel(){
        this.isDownload = true;
        this.alarmSer.getExportUrlEvent(this.obj).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
}