Newer
Older
import {Component, ElementRef, OnInit, ViewChild} from '@angular/core';
import {TopologyService} from '../topology.service';
import {OverAllService} from '../../overAll/overAll.service';
import {NzMessageService} from 'ng-zorro-antd';
import {pageSize} from '../../app.constants';
import {DatePipe} from '@angular/common';
declare var vis: any;
selector: 'smart-flow-trend',
templateUrl: './flow-trend.component.html',
styles: []
obj = {
groupid:null,
hostid: null,
startTime: '',
endTime: ''
};
//in
inList = [];
inPageNum = 1;
constructor(private topologySer: TopologyService, private overAllSer: OverAllService,
this.obj.startTime = this.datePipe.transform(today,"yyyy-MM-dd") + " 00:00:00";
this.obj.endTime = this.datePipe.transform(today,"yyyy-MM-dd") + " 23:59:59";
}
//获取分组
getGroup() {
this.overAllSer.getgroups({}).subscribe(
(res) => {
if (res.errCode == 10000) {
this.groupList = res.data;
this.obj.groupid = this.groupList[0].groupid +"";
this.onchange();
'hostExtend': {
'superiorHostid': null
}
};
this.overAllSer.findDetail(data).subscribe(
(res) => {
if (res.errCode == 10000) {
this.hostList = res.data;
startTime: this.obj.startTime,
hostid:this.obj.hostid,
groupid:this.obj.groupid,
type:'in',
};
this.topologySer.findTrendData(data).subscribe(
(res) => {
this.inEchartData = res.data;
}else{
this.message.info("图表暂无数据");
data.type = "out";
this.topologySer.findTrendData(data).subscribe(
(res)=>{
setEacharts(){
let itemStyle = {
normal: {
},
emphasis: {
barBorderWidth: 1,
shadowBlur: 10,
shadowOffsetX: 0,
shadowOffsetY: 0,
shadowColor: 'rgba(0,0,0,0.5)'
}
};
tooltip: {
// trigger: 'axis',
formatter: (params)=> {
console.log(params);
let res = params.seriesName;
res += '<br/>时间:' + params.name;
let Mbps = 1000*1000;
let kbps = 1000;
let size = Math.abs(params.data);
if(size/Mbps > 1){
res += '<br/>流量:' + (size/Mbps).toFixed(2) + 'Mbps';
}else if(size/kbps >1){
res += '<br/>流量:' +(size/kbps).toFixed(2) + 'kbps';
}else{
res += '<br/>流量:' + (size)+ 'bbps';
}
return res;
}
},
dataZoom: [{
startValue: this.obj.startTime
}, {
type: 'inside'
}],
splitArea: {show: false},
type : 'value',
axisLabel:{ //Y轴数据
formatter:function(value){
return Math.abs(value)/10000; //负数取绝对值变正数
},
textStyle: {
color: '#666'
}
},
//in改变页数
inChnagePage(e){
this.inPageNum = e;
this.getInList();
}
//out改变页数
outChnagePage(e){
this.outPageNum = e;
this.getOutList();
}
obj:{
type: 'in',
hostid: this.obj.hostid,
startTime: this.obj.startTime,
endTime: this.obj.endTime,
groupid:this.obj.groupid
},
};
this.topologySer.findTrend(data).subscribe(
(res) => {
if (res.errCode == 10000) {
this.inList = res.data.data;
this.inTotalNum = res.data.totalNum;
obj: {
type:'out',
hostid: this.obj.hostid,
startTime: this.obj.startTime,
endTime: this.obj.endTime,
groupid:this.obj.groupid
},
this.topologySer.findTrend(data).subscribe(
(res) => {
if (res.errCode == 10000) {
this.outList = res.data.data;
this.outTotalNum = res.data.totalNum;
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
//时间改变
changeType(){
const nowDate = new Date().getTime();
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;
}
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';
break;
}
case'3':{
day1 = nowDate - 3*24*60*60*1000;
day2 = 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(day2,'yyyy-MM-dd') + ' 23:59:59';
break;
}
case'4':{
day1 = nowDate - 7*24*60*60*1000;
day2 = 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(day2,'yyyy-MM-dd') + ' 23:59:59';
break;
}
case'5':{
break;
}
}
}
//搜索
search(){
if(this.timeType == '5'){
this.obj.startTime = this.datePipe.transform(this.timeBegin,'yyyy-MM-dd HH:mm:ss');
this.obj.endTime = this.datePipe.transform(this.timeEnd,'yyyy-MM-dd HH:mm:ss');
}
this.getEcharts(null);
this.getInList();
this.getOutList();