新增流量统计带宽详情页面,IPv4,6,Tcp,udp为条件统计

This commit is contained in:
zhanghongqing
2018-12-04 11:52:21 +08:00
parent 78fb41ef22
commit 32120c83dc
12 changed files with 254 additions and 139 deletions

View File

@@ -9,15 +9,15 @@ public class TrafficIpActiveStatistic{
@ExcelField(title="Area",sort=20) @ExcelField(title="Area",sort=20)
String areaId; String areaId;
@ExcelField(title="Number",sort=30) @ExcelField(title="Number",sort=30)
Integer linkNum; Long linkNum;
@ExcelField(title="C2S(Pkt)",sort=40) @ExcelField(title="C2S(Pkt)",sort=40)
Integer c2sPktNum; Long c2sPktNum;
@ExcelField(title="S2C(Pkt)",sort=50) @ExcelField(title="S2C(Pkt)",sort=50)
Integer s2cPktNum; Long s2cPktNum;
@ExcelField(title="C2S(Byte)",sort=60) @ExcelField(title="C2S(Byte)",sort=60)
Integer c2sByteLen; Long c2sByteLen;
@ExcelField(title="S2C(Byte)",sort=70) @ExcelField(title="S2C(Byte)",sort=70)
Integer s2cByteLen; Long s2cByteLen;
@ExcelField(title="Time",sort=80) @ExcelField(title="Time",sort=80)
String statTime; String statTime;
@@ -48,34 +48,34 @@ public class TrafficIpActiveStatistic{
public void setAreaId(String areaId) { public void setAreaId(String areaId) {
this.areaId = areaId; this.areaId = areaId;
} }
public Integer getLinkNum() { public Long getLinkNum() {
return linkNum; return linkNum;
} }
public void setLinkNum(Integer linkNum) { public void setLinkNum(Long linkNum) {
this.linkNum = linkNum; this.linkNum = linkNum;
} }
public Integer getC2sPktNum() { public Long getC2sPktNum() {
return c2sPktNum; return c2sPktNum;
} }
public void setC2sPktNum(Integer c2sPktNum) { public void setC2sPktNum(Long c2sPktNum) {
this.c2sPktNum = c2sPktNum; this.c2sPktNum = c2sPktNum;
} }
public Integer getS2cPktNum() { public Long getS2cPktNum() {
return s2cPktNum; return s2cPktNum;
} }
public void setS2cPktNum(Integer s2cPktNum) { public void setS2cPktNum(Long s2cPktNum) {
this.s2cPktNum = s2cPktNum; this.s2cPktNum = s2cPktNum;
} }
public Integer getC2sByteLen() { public Long getC2sByteLen() {
return c2sByteLen; return c2sByteLen;
} }
public void setC2sByteLen(Integer c2sByteLen) { public void setC2sByteLen(Long c2sByteLen) {
this.c2sByteLen = c2sByteLen; this.c2sByteLen = c2sByteLen;
} }
public Integer getS2cByteLen() { public Long getS2cByteLen() {
return s2cByteLen; return s2cByteLen;
} }
public void setS2cByteLen(Integer s2cByteLen) { public void setS2cByteLen(Long s2cByteLen) {
this.s2cByteLen = s2cByteLen; this.s2cByteLen = s2cByteLen;
} }

View File

@@ -697,6 +697,7 @@ public final class Constants {
public static final String TRAFFIC_IPACTIVE_FIVEMINUTE=Configurations.getStringProperty("trafficIpActiveFiveMinute","trafficIpActiveFiveMinute"); public static final String TRAFFIC_IPACTIVE_FIVEMINUTE=Configurations.getStringProperty("trafficIpActiveFiveMinute","trafficIpActiveFiveMinute");
public static final String TRAFFIC_IPACTIVE_ONEHOUR=Configurations.getStringProperty("trafficIpActiveOneHour","trafficIpActiveOneHour"); public static final String TRAFFIC_IPACTIVE_ONEHOUR=Configurations.getStringProperty("trafficIpActiveOneHour","trafficIpActiveOneHour");
public static final String NTC_RADIUS_REPORT=Configurations.getStringProperty("ntcRadiusReport","ntcRadiusReport"); public static final String NTC_RADIUS_REPORT=Configurations.getStringProperty("ntcRadiusReport","ntcRadiusReport");
public static final String TRAFFIC_BANDWIDTH_TRANS=Configurations.getStringProperty("trafficBandwidthTrans","trafficBandwidthTrans");
/** /**
* httpclient 工具超时时间设置 * httpclient 工具超时时间设置

View File

@@ -171,7 +171,6 @@ public class DashboardController extends BaseController{
addMessage(redirectAttributes,"request_service_failed"); addMessage(redirectAttributes,"request_service_failed");
} }
model.addAttribute("ipActiveList", ipActiveList); model.addAttribute("ipActiveList", ipActiveList);
return "/dashboard/trafficIpActiveList"; return "/dashboard/trafficIpActiveList";
} }
@@ -661,29 +660,13 @@ public class DashboardController extends BaseController{
ip.setId(i); ip.setId(i);
ip.setIpAddr(3+i+".1.1."+i); ip.setIpAddr(3+i+".1.1."+i);
ip.setAreaId("11"); ip.setAreaId("11");
ip.setLinkNum(1212); ip.setLinkNum(1212l);
list.add(ip); list.add(ip);
} }
page.setList(list); page.setList(list);
model.addAttribute("page", page); model.addAttribute("page", page);
return "/dashboard/trafficWebTypeList"; return "/dashboard/trafficWebTypeList";
} }
@RequestMapping(value="bandwidthList")
public String bandwidthList( HttpServletRequest request, HttpServletResponse response, Model model){
PageLog<TrafficIpActiveStatistic> page = new PageLog<TrafficIpActiveStatistic>(request, response);
List list = new ArrayList();
for (int i = 1; i < 10; i++) {
TrafficIpActiveStatistic ip = new TrafficIpActiveStatistic();
ip.setId(i);
ip.setIpAddr(3+i+".1.1."+i);
ip.setAreaId("11");
ip.setLinkNum(1212);
list.add(ip);
}
page.setList(list);
model.addAttribute("page", page);
return "/dashboard/trafficBandwidthList";
}
////////////////////////////////////////test ////////////////////////////////////////test
@RequestMapping(value="showChart") @RequestMapping(value="showChart")

View File

@@ -6,15 +6,23 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Random; import java.util.Random;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import com.beust.jcommander.internal.Maps;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.GsonBuilder; import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import com.nis.domain.PageLog;
import com.nis.domain.dashboard.TrafficIpActiveStatistic;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.StringUtil;
import com.nis.util.httpclient.HttpClientUtil; import com.nis.util.httpclient.HttpClientUtil;
import com.nis.web.controller.BaseController; import com.nis.web.controller.BaseController;
@@ -97,5 +105,52 @@ public class TrafficStatisticsInfoController extends BaseController {
} }
return m; return m;
} }
/**
* 根据ip46,协议tcp,udp查询带宽 间隔5分钟数据
*/
@RequestMapping(value="bandwidthTrans")
@ResponseBody
public Map ipActiveMinuteList(@RequestParam("addrType")String addrType,@RequestParam("transType")Integer transType){
Map<String, Object> fromJsonList = new HashMap<String, Object>();
Map map = new HashMap();
String url = Constants.DASHBOARD_URL+Constants.TRAFFIC_BANDWIDTH_TRANS;
if(!StringUtil.isBlank(addrType)){
url=url+"?addrType="+addrType;
}
if(transType!=null){
url=url+"?transType="+transType;
}
try {
String string = HttpClientUtil.get(url);
Gson gson = new GsonBuilder().create();
fromJsonList = gson.fromJson(string, new TypeToken<Map>(){}.getType());
logger.info("带宽1小时,间隔5分钟数据"+fromJsonList);
List list = (ArrayList) fromJsonList.get("data");
if(!StringUtil.isEmpty(list)){
map=(Map) list.get(0);
}
return map;
} catch (Exception e) {
e.printStackTrace();
logger.error("带宽详情数据获取错误"+e);
}
return map;
}
@RequestMapping(value="bandwidthList")
public String bandwidthList( HttpServletRequest request, HttpServletResponse response, Model model){
PageLog<TrafficIpActiveStatistic> page = new PageLog<TrafficIpActiveStatistic>(request, response);
List list = new ArrayList();
for (int i = 1; i < 10; i++) {
TrafficIpActiveStatistic ip = new TrafficIpActiveStatistic();
ip.setId(i);
ip.setIpAddr(3+i+".1.1."+i);
ip.setAreaId("11");
ip.setLinkNum(1212l);
list.add(ip);
}
page.setList(list);
model.addAttribute("page", page);
return "/dashboard/trafficBandwidthList";
}
} }

View File

@@ -568,3 +568,5 @@ userList=UserList
ip_reuse_call_cgi_url=http://192.168.11.137:8090/command ip_reuse_call_cgi_url=http://192.168.11.137:8090/command
ipNumGet=IpNumGet ipNumGet=IpNumGet
allIpGet=AllIpGet allIpGet=AllIpGet
#\u6D41\u91CF\u7EDF\u8BA1\u5E26\u5BBD\u8BE6\u60C5
trafficBandwidthTrans=trafficBandwidthTrans

View File

@@ -33,17 +33,16 @@
<div class="text_1"> <div class="text_1">
<div class="fr_fc"> <div class="fr_fc">
<div class="fl_visual"> <div class="fl_visual">
<i class="fa fa-cloud-download"></i> <a href="${ctx}/dashboard/traffic/bandwidthList"><i class="fa fa-cloud-download"></i></a>
</div> </div>
<div class="fl_fc"> <div class="fl_fc">
<%-- <a href="${ctx}/dashboard/bandwidthList"> 详情显示--%>
<p> <p>
<label data-original-title="<spring:message code="bandwith"/>" class="tooltips" data-flag="false" data-html="true" data-placement="top"> <label data-original-title="<spring:message code="bandwith"/>" class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 网络带宽 --><spring:message code="bandwith"/> <!-- 网络带宽 --><spring:message code="bandwith"/>
</label> </label>
</p> </p>
<p class="csNum">In <span class="c2sNum">0</span> | Out <span class="s2cNum">0</span> </p> <a href="${ctx}/dashboard/traffic/bandwidthList"><p class="csNum">In <span class="c2sNum">0</span> | Out <span class="s2cNum">0</span> </p>
<span class="numberRun4">0</span > <span class="numberRun4-unit">bps</span> <span class="numberRun4">0</span > <span class="numberRun4-unit">bps</span></a>
</div> </div>
</div> </div>
<div class="fr_fc"> <div class="fr_fc">
@@ -51,7 +50,6 @@
<i class="fa fa-ban"></i> <i class="fa fa-ban"></i>
</div> </div>
<div class="fl_fc"> <div class="fl_fc">
<!-- <a href="javacript:;"> -->
<p style="margin-left: 0px;width:100%"> <p style="margin-left: 0px;width:100%">
<label data-original-title="<spring:message code="action_reject"/>" <label data-original-title="<spring:message code="action_reject"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">

View File

@@ -3,7 +3,7 @@
<html> <html>
<head> <head>
<title> <title>
<spring:message code="traffic_ip_active"></spring:message> <spring:message code="bandwith"></spring:message>
</title> </title>
</head> </head>
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/bandwidth.css"> <link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/bandwidth.css">
@@ -13,35 +13,36 @@
<div class="page-content"> <div class="page-content">
<div class="theme-panel hidden-xs hidden-sm"> <div class="theme-panel hidden-xs hidden-sm">
<button type="button" class="btn btn-default" onClick="javascript:window.location='${ctx}/dashboard/bandwidthList'"><spring:message code="refresh"/></button> <button type="button" class="btn btn-default" onClick="javascript:window.location='${ctx}/dashboard/traffic/bandwidthList'"><i class="fa fa-refresh"></i></button>
<button type="button" class="btn btn-default" onClick="javascript:window.location='${ctx}/dashboard/logChart'"><spring:message code="back"/></button> <button type="button" class="btn btn-default" onClick="javascript:window.location='${ctx}/dashboard/logChart'"><i class="fa fa-history"></i></button>
</div> </div>
<h3 class="page-title"> <h3 class="page-title">
<spring:message code="Bandwidth"></spring:message> <spring:message code="bandwith"></spring:message>
</h3> </h3>
<h5 class="page-header"></h5> <h5 class="page-header"></h5>
<div class="row"> <div class="row">
<div class="col-md-3" style="padding-right: 1px; ">
<!-- <div class="col-md-3" style="padding-right: 1px; ">
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-body" style="height: 500px;"> <div class="panel-body" style="height: 500px;">
<h5 class="ng-binding">Bandwidth Data</h5> <h5 class="ng-binding">Bandwidth Data</h5>
<div id="deviceRank" class="drank hm-scroll"> <div id="deviceRank" class="drank hm-scroll">
<table> <table>
<tbody> <tbody>
<!-- ngRepeat: item in rankItems --> ngRepeat: item in rankItems
<tr class="dtr active" onClick="rankItemChanged(id, name)" style=""> <tr class="dtr active" onClick="rankItemChanged(id, name)" style="">
<td class="dtd1"><span class="ng-binding" style="">Total</span></td> <td class="dtd1"><span class="ng-binding" style="">Total</span></td>
<td class="dtd2"><span class="tz" style="width: 100%; max-width: 100px;"></span></td> <td class="dtd2"><span class="tz" style="width: 100%; max-width: 100px;"></span></td>
<td class="dtd3"><span class="dy ng-binding1">234567891</span></td> <td class="dtd3"><span class="dy ng-binding1">234567891</span></td>
</tr> </tr>
<!-- end ngRepeat: item in rankItems --> end ngRepeat: item in rankItems
<tr class="dtr" onClick="rankItemChanged(id, name)" style=""> <tr class="dtr" onClick="rankItemChanged(id, name)" style="">
<td class="dtd1"><span class="ng-binding">c2s</span></td> <td class="dtd1"><span class="ng-binding">c2s</span></td>
<td class="dtd2"><span class="tz tz-from" style="width: 86.55%; max-width: 100px;"></span></td> <td class="dtd2"><span class="tz tz-from" style="width: 86.55%; max-width: 100px;"></span></td>
<td class="dtd3"><span class="dy ng-binding2">123456789</span></td> <td class="dtd3"><span class="dy ng-binding2">123456789</span></td>
</tr> </tr>
<!-- end ngRepeat: item in rankItems --> end ngRepeat: item in rankItems
<tr class="dtr" onClick="rankItemChanged(id, name)" style=""> <tr class="dtr" onClick="rankItemChanged(id, name)" style="">
<td class="dtd1"><span class="ng-binding">s2c</span></td> <td class="dtd1"><span class="ng-binding">s2c</span></td>
<td class="dtd2"><span class="tz tz-to" style="width: 5.59%; max-width: 100px;"></span></td> <td class="dtd2"><span class="tz tz-to" style="width: 5.59%; max-width: 100px;"></span></td>
@@ -51,31 +52,42 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div> -->
<div class="col-md-9" style="padding-left: 8px;"> <div class="col-md-12">
<div class="panel panel-default"> <select id="unitType" class="selectpicker select2 input-small">
<div class="panel-body" style="height: 500px"> <option value="Gbps">Gbps</option>
<h5 class="ng-binding">Bandwidth Trend</h5> <option value="pps">pps</option>
<div id="trend" style="height: 400px; position: relative;" > <option value="linkNumber"><spring:message code="link_num"/>/S</option>
</select>
<br>
<div id="trend" style="height: 480px; position: relative;" >
<div style="position: relative;"> <div style="position: relative;">
<div id="chart" style="width:96%;height:400px;"></div> <div id="chart" style="width:97%;height:480px;"></div>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/bandwidth.css" type="text/css" /> <link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/bandwidth.css" type="text/css" />
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/highcharts.js"></script> <script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/highcharts.js"></script>
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/exporting.js"></script>
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/series-label.js"></script>
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/offline-exporting.js"></script>
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function(){ $(document).ready(function(){
showBandwidthChart(); var unitType=$("#unitType").val();
clickTrShowChart(); changeBandwidth(unitType);
$("#unitType").on("change",function(){
changeBandwidth($("#unitType").val());
});
setInterval(function(){
changeBandwidth($("#unitType").val());
},500000);// 五分钟调用一次
}); });
function ajaxBandwidth(){
}
//点击列表显示统计图 //点击列表显示统计图
function clickTrShowChart(response){ function clickTrShowChart(response){
$("tbody .dtr").on("click",function(){ $("tbody .dtr").on("click",function(){
@@ -84,63 +96,109 @@ function clickTrShowChart(response){
showBandwidthChart();// showBandwidthChart();//
}) })
} }
//点击列表显示统计图 // 默认显示四条线 ip46,tcp,udp
function rankItemChanged(id,name){ function rankItemChanged(addrType,transType){
loading();
var result=null;
$.ajax({ $.ajax({
url:"${ctx}/#", url:"${ctx}/dashboard/traffic/bandwidthTrans",
type:"get", type:"get",
data:{"id":id}, data:{"addrType":addrType,"transType":transType},
dataType:"json", dataType:"json",
async:true, async:false,
timeout:10000,
success:function (data){ success:function (data){
showBandwidthChart(); if(data!=null){
result=(data)
}
closeTip();
},
error: function(data, textStatus, errorThrown){
closeTip();
// warning_prompt("获取实时列表数据失败!",1500);
},
complete:function(XMLHttpRequest,status){//超时设置
closeTip();
} }
}); });
return result;
}
// 根据单位切换数据
function changeBandwidth(unitType){
var ipv4=rankItemChanged(4,null);
var ipv6=rankItemChanged(6,null);
var transTcp=rankItemChanged(null,6);
var transUdp=rankItemChanged(null,17);
var xdata=ipv4.statTime;
if(unitType=="Gbps"){
ipv4data=ipv4.gbps;
ipv6data=ipv6.gbps;
tcpdata=transTcp.gbps;
udpdata=transUdp.gbps;
}
if(unitType=="pps"){
ipv4data=ipv4.pps;
ipv6data=ipv6.pps;
tcpdata=transTcp.pps;
udpdata=transUdp.pps;
}
if(unitType=="linkNumber"){
ipv4data=ipv4.linkNum;
ipv6data=ipv6.linkNum;
tcpdata=transTcp.linkNum;
udpdata=transUdp.linkNum;
}
var series=new Array();
series.push({
name: "IPv4",
data: ipv4data
},{
name: "IPv6",
data: ipv6data
},{
name: "TCP",
data: tcpdata
},{
name: "UDP",
data: udpdata
});
showBandwidthChart(unitType,xdata,series);
} }
/* 网络带宽时间维度趋势图 */ /* 网络带宽时间维度趋势图 */
function showBandwidthChart(){ function showBandwidthChart(unitType,xdata,ydata){
var chart = Highcharts.chart('chart', { var chart = Highcharts.chart('chart', {
title: { title: {
text: null text: null
}, },
navigation: {
buttonOptions: {
y: -15,
x: 5
}
},
exporting: {
filename:'Bandwidth',
scale:1,
sourceWidth: 1280,
sourceHeight: 550,
},
yAxis: { yAxis: {
title: { title: {
text: 'bps' text: unitType
} }
}, },
legend: { legend: {
enabled:false enabled:true
}, },
xAxis:{ xAxis:{
type:'datetime', type:'datetime',
dateTimeLabelFormats:{ categories: xdata,
day:'%Y-%m-%d %h'
}
}, },
plotOptions: { credits:{//是否有highcharts水印
series: { enabled:false
pointStart: Date.UTC(2018, 8, 16,1),
pointInterval: 3600*1000,
// pointIntervalUnit:'day'
}
}, },
series: ydata,
series: [{
name: 'bps',
// type:'spline',
data: [43934, 32503, 57177, 69658, 97031, 69931, 87133, 54175]
}],
responsive: {
rules: [{
condition: {
maxWidth: 500
},
chartOptions: {
}
}]
}
}); });

View File

@@ -134,7 +134,7 @@ function showIpActiveChart(rs){
}, },
yAxis: { yAxis: {
title: { title: {
text: 'linkNumber' text: 'bytes'
} }
}, },
credits:{//是否有highcharts水印 credits:{//是否有highcharts水印
@@ -150,7 +150,7 @@ function showIpActiveChart(rs){
} }
//活跃IP一小时间隔五分钟统计 //活跃IP一小时间隔五分钟统计
function ipActiveMinuteList(){ function ipActiveMinuteList(){
loading();
$.ajax({ $.ajax({
url: '${ctx}/dashboard/ipActiveMinuteList', url: '${ctx}/dashboard/ipActiveMinuteList',
type : "get" , type : "get" ,
@@ -158,10 +158,13 @@ function showIpActiveChart(rs){
cache:false,async:true, cache:false,async:true,
success:function (rs) { success:function (rs) {
showIpActiveChart(rs); showIpActiveChart(rs);
closeTip();
}, },
error: function(data, textStatus, errorThrown){ error: function(data, textStatus, errorThrown){
closeTip();
// warning_prompt("获取实时列表数据失败!",1500); // warning_prompt("获取实时列表数据失败!",1500);
} },
}); });
} }

View File

@@ -29,8 +29,8 @@ $(document).ready(function() {
$("#searchForm")[0].reset(); $("#searchForm")[0].reset();
}); });
if(!"${bean.reportBusinessType}"){//default if(!"${bean.reportBusinessType}"){//default
$("#reportBusinessType").val("label_report"); $("#reportBusinessType").val("lwhh_report");
ajaxReport("/report/ajaxNtcTagReport","#label"); ajaxReport("/report/ajaxNtcLwhhReport","#lwhh");
}else if("${bean.reportBusinessType}"=="label_report"){ }else if("${bean.reportBusinessType}"=="label_report"){
ajaxReport("/report/ajaxNtcTagReport","#label"); ajaxReport("/report/ajaxNtcTagReport","#label");
}else if("${bean.reportBusinessType}"=="lwhh_report"){ }else if("${bean.reportBusinessType}"=="lwhh_report"){
@@ -68,7 +68,7 @@ $(document).ready(function() {
} }
} }
}); });
ajaxServiceLogTotal(); //ajaxServiceLogTotal();
$("#export-btn").click(function(){ $("#export-btn").click(function(){
totaltb(1,-1); totaltb(1,-1);
var te = $(".in table").tableExport({ var te = $(".in table").tableExport({
@@ -166,8 +166,8 @@ var ajaxServiceLogTotal=function(){
data:{ data:{
"services":services.join(","), "services":services.join(","),
"functionId":$("#functionId").val(), "functionId":$("#functionId").val(),
"reportType":$('[name="reportType"]').val(), "reportType":1/* $('[name="reportType"]').val() ,
"reportTime":$('[name="reportTime"]').val() "reportTime":$('[name="reportTime"]').val()*/
}, },
dataType:'json', dataType:'json',
async:true, async:true,
@@ -328,11 +328,11 @@ function customColumnClick(){
var reportBusinessType=$("#reportBusinessType").val() var reportBusinessType=$("#reportBusinessType").val()
var tableId="tagTable"; var tableId="tagTable";
if(reportBusinessType=="label_report"){ if(reportBusinessType=="lwhh_report"){
tableId="tagTable";
}else if(reportBusinessType=="lwhh_report"){
tableId="lwhhTable"; tableId="lwhhTable";
}else if(reportBusinessType=="src_ip_report"){ }else if(reportBusinessType=="label_report"){
tableId="tagTable";
} else if(reportBusinessType=="src_ip_report"){
tableId="contentTable1"; tableId="contentTable1";
}else if(reportBusinessType=="attr_type_report"){ }else if(reportBusinessType=="attr_type_report"){
tableId="attrTypeTable"; tableId="attrTypeTable";
@@ -373,22 +373,23 @@ white-space:nowrap;
</head> </head>
<body> <body>
<div class="page-content"> <div class="page-content">
<%--
<div class="theme-panel hidden-xs hidden-sm"> <div class="theme-panel hidden-xs hidden-sm">
<%-- <c:forEach items="${fns:getDictList('SERVICE_ACTION')}" var="action"> --%>
<c:forEach items="${serviceList}" var="service" varStatus="status"> <c:forEach items="${serviceList}" var="service" varStatus="status">
<%-- <c:if test="${service.functionId eq bean.functionId and action.itemCode eq service.action}"> --%>
<c:if test="${(service.action ne 128) && (service.action ne 32) && (service.action ne 96) && (service.serviceId ne 37) && (service.serviceId ne 149)}" > <c:if test="${(service.action ne 128) && (service.action ne 32) && (service.action ne 96) && (service.serviceId ne 37) && (service.serviceId ne 149)}" >
<div data-service="${service.serviceId}" class="service btn"> <div data-service="${service.serviceId}" class="service btn">
<spring:message code="${service.serviceName}"/> <spring:message code="total"/>
<%-- <spring:message code="log_total"/> --%> <c:forEach items="${fns:getDictList('SERVICE_ACTION')}" var="action">
<c:if test="${service.functionId eq bean.functionId and action.itemCode eq service.action}">
<spring:message code="${action.itemValue}"/>
</c:if>
</c:forEach>
<span>0</span> <span>0</span>
</div> </div>
</c:if> </c:if>
<%-- </c:if> --%>
</c:forEach> </c:forEach>
<%-- </c:forEach> --%>
</div> </div>
--%>
<h3 class="page-title"> <h3 class="page-title">
<spring:message code="${bean.cfgName}"/> <spring:message code="${bean.cfgName}"/>
<small><spring:message code="report_list"/></small> <small><spring:message code="report_list"/></small>
@@ -487,7 +488,12 @@ white-space:nowrap;
<br> <br>
<ul class="nav nav-tabs nav-justified" > <ul class="nav nav-tabs nav-justified" >
<li <li
<c:if test="${bean.reportBusinessType eq 'label_report' or bean.reportBusinessType ==null}"> <c:if test="${bean.reportBusinessType eq 'lwhh_report' or bean.reportBusinessType ==null}">
class="active"
</c:if>
><a class="lireport" data-bussiness="lwhh_report" data-toggle="tab" href="#lwhh" title="<spring:message code="lwhh_report"/>" ><spring:message code="lwhh_report"/></a></li>
<li
<c:if test="${bean.reportBusinessType eq 'label_report'}">
class="active" class="active"
</c:if> </c:if>
><a class="lireport" data-bussiness="label_report" data-toggle="tab" href="#label" title="<spring:message code="label_report"/>"><spring:message code="label_report"/></a></li> ><a class="lireport" data-bussiness="label_report" data-toggle="tab" href="#label" title="<spring:message code="label_report"/>"><spring:message code="label_report"/></a></li>
@@ -497,11 +503,6 @@ white-space:nowrap;
</c:if> </c:if>
><a class="lireport" data-bussiness="attr_type_report" data-toggle="tab" href="#attrType" title="<spring:message code="attr_type_report"/>" ><spring:message code="attr_type_report"/></a></li> ><a class="lireport" data-bussiness="attr_type_report" data-toggle="tab" href="#attrType" title="<spring:message code="attr_type_report"/>" ><spring:message code="attr_type_report"/></a></li>
<li <li
<c:if test="${bean.reportBusinessType eq 'lwhh_report'}">
class="active"
</c:if>
><a class="lireport" data-bussiness="lwhh_report" data-toggle="tab" href="#lwhh" title="<spring:message code="lwhh_report"/>" ><spring:message code="lwhh_report"/></a></li>
<li
<c:if test="${bean.reportBusinessType eq 'src_ip_report'}"> <c:if test="${bean.reportBusinessType eq 'src_ip_report'}">
class="active" class="active"
</c:if> </c:if>
@@ -518,18 +519,18 @@ white-space:nowrap;
><a class="lireport" data-bussiness="isp_report" data-toggle="tab" href="#entranceId" title="<spring:message code="isp_report"/>"><spring:message code="isp_report"/></a></li> ><a class="lireport" data-bussiness="isp_report" data-toggle="tab" href="#entranceId" title="<spring:message code="isp_report"/>"><spring:message code="isp_report"/></a></li>
</ul> </ul>
<div class="tab-content table-responsive"> <div class="tab-content table-responsive">
<div id="lwhh" class="tab-pane fade
<c:if test="${bean.reportBusinessType eq 'lwhh_report' or bean.reportBusinessType ==null}">
in active
</c:if>"></div>
<div id="label" class="tab-pane fade <div id="label" class="tab-pane fade
<c:if test="${bean.reportBusinessType eq 'label_report' or bean.reportBusinessType ==null}"> <c:if test="${bean.reportBusinessType eq 'label_report'}">
in active in active
</c:if>"></div> </c:if>"></div>
<div id="attrType" class="tab-pane fade <div id="attrType" class="tab-pane fade
<c:if test="${bean.reportBusinessType eq 'attr_type_report'}"> <c:if test="${bean.reportBusinessType eq 'attr_type_report'}">
in active in active
</c:if>"></div> </c:if>"></div>
<div id="lwhh" class="tab-pane fade
<c:if test="${bean.reportBusinessType eq 'lwhh_report'}">
in active
</c:if>"></div>
<div id="srcIp" class="tab-pane fade <div id="srcIp" class="tab-pane fade
<c:if test="${bean.reportBusinessType eq 'src_ip_report'}"> <c:if test="${bean.reportBusinessType eq 'src_ip_report'}">
in active in active

View File

@@ -42,6 +42,18 @@ p{
position: relative; position: relative;
margin-top: 15px; margin-top: 15px;
} }
.data_content .data_info .fr_fc .fl_visual a:link {
color: #C5C5C5 !important;
}
.data_content .data_info .fr_fc .fl_visual a:visited {
color: #C5C5C5 !important;
}
.data_content .data_info .fr_fc .fl_visual a:hover {
color: #716D6D !important;
}
.data_content .data_info .fr_fc .fl_visual a:active {
color: #716D6D !important;
}
.data_content .data_info .fr_fc .fl_fc{ .data_content .data_info .fr_fc .fl_fc{
width: 70%; width: 70%;
height: 110px; height: 110px;

View File

@@ -152,7 +152,7 @@
series: [{ series: [{
type: 'pie', type: 'pie',
innerSize: '70%',//圆环的大小 innerSize: '70%',//圆环的大小
name: 'count', name: 'bytes',
data: data data: data
}], }],
// drilldown:{ // drilldown:{
@@ -285,7 +285,7 @@
yAxis: { yAxis: {
min: 0, min: 0,
title: { title: {
text: 'Link Number', text: 'bytes',
align:'high', align:'high',
style: {//设置字体颜色 style: {//设置字体颜色
color: '#fff', color: '#fff',
@@ -327,7 +327,7 @@
enabled:false enabled:false
}, },
series: [{ series: [{
name: 'Link Number', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
@@ -447,7 +447,7 @@
yAxis: { yAxis: {
min: 0, min: 0,
title: { title: {
text: 'Link Number', text: 'bytes',
align:'high', align:'high',
style: {//设置字体颜色 style: {//设置字体颜色
color: '#fff', color: '#fff',
@@ -473,7 +473,7 @@
}, },
plotOptions: { plotOptions: {
column: { column: {
dataLabels: {//数字显示 dataLabels: {// 柱形图上的数字显示
enabled: true, enabled: true,
allowOverlap: true, // 允许数据标签重叠 allowOverlap: true, // 允许数据标签重叠
style: {//设置字体颜色 style: {//设置字体颜色
@@ -481,13 +481,15 @@
fontSize:'10px', fontSize:'10px',
fontFamily:'Microsoft YaHei' fontFamily:'Microsoft YaHei'
}, },
// format:"{point.y:.2f}",
}, },
showInLegend:false showInLegend:false
}, },
}, },
series: [{ series: [{
name: 'count', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
@@ -629,7 +631,7 @@ function echart_2(rs){
useHTML: true useHTML: true
}, },
series: [{ series: [{
name: 'count', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
@@ -773,7 +775,7 @@ function echart_5(rs){
useHTML: true useHTML: true
}, },
series: [{ series: [{
name: 'count', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
@@ -911,7 +913,7 @@ function echart_4(rs){
useHTML: true useHTML: true
}, },
series: [{ series: [{
name: 'count', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data, data: data,
}], }],
@@ -1049,7 +1051,7 @@ function echart_6(rs){
useHTML: true useHTML: true
}, },
series: [{ series: [{
name: 'count', name: 'bytes',
colorByPoint: true, colorByPoint: true,
data: data, data: data,
}], }],

View File

@@ -1,6 +1,6 @@
$(document).ready(function() { $(document).ready(function() {
// 隱藏日誌詳情 // 隱藏日誌詳情
$("table.logTb .icon-book-open").hide(); // $("table.logTb .icon-book-open").hide();
// 界面鼠标悬停事件 // 界面鼠标悬停事件
/* $("table.logTb").find("td").not(":has(a)").bind("mouseover", function(){ /* $("table.logTb").find("td").not(":has(a)").bind("mouseover", function(){
var str = $(this).html(this.innerHTML.trim()).text(); var str = $(this).html(this.innerHTML.trim()).text();