实时报表 增加导出功能

1.ASN
2.HttpsUrl
3.IpRange
This commit is contained in:
lihaochen
2018-12-22 17:38:24 +08:00
parent 4147e52b73
commit 70612f32af
5 changed files with 369 additions and 212 deletions

View File

@@ -7,11 +7,11 @@ public class NtcAsnRecord extends BaseLogEntity<NtcAsnRecord>{
private static final long serialVersionUID = -4947912502754359817L; private static final long serialVersionUID = -4947912502754359817L;
@ExcelField(title="bps",sort=8) @ExcelField(title="bps",sort=10)
protected String bps; protected String bps;
@ExcelField(title="pps",sort=9) @ExcelField(title="pps",sort=9)
protected String pps; protected String pps;
@ExcelField(title="asn",sort=10) @ExcelField(title="asn",sort=8)
protected String asn; protected String asn;
public String getAsn() { public String getAsn() {
return asn; return asn;

View File

@@ -5,6 +5,7 @@ import java.util.Calendar;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Properties;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -22,6 +23,7 @@ import com.google.gson.reflect.TypeToken;
import com.nis.domain.Page; import com.nis.domain.Page;
import com.nis.domain.PageLog; import com.nis.domain.PageLog;
import com.nis.domain.SysUser; import com.nis.domain.SysUser;
import com.nis.domain.log.BaseLogEntity;
import com.nis.domain.log.SearchReport; import com.nis.domain.log.SearchReport;
import com.nis.domain.maat.LogRecvData; import com.nis.domain.maat.LogRecvData;
import com.nis.domain.report.NtcAsnRecord; import com.nis.domain.report.NtcAsnRecord;
@@ -29,6 +31,7 @@ import com.nis.domain.report.NtcIpRangeReport;
import com.nis.domain.report.NtcURLReport; import com.nis.domain.report.NtcURLReport;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.DateUtils; import com.nis.util.DateUtils;
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;
import com.nis.web.security.UserUtils; import com.nis.web.security.UserUtils;
@@ -37,22 +40,25 @@ import com.nis.web.security.UserUtils;
@RequestMapping("${adminPath}/report") @RequestMapping("${adminPath}/report")
public class ReportController extends BaseController { public class ReportController extends BaseController {
@RequestMapping("/list") @RequestMapping("/list")
public String list(@ModelAttribute("bean") SearchReport bean,Model model, HttpServletRequest request, HttpServletResponse response) { public String list(@ModelAttribute("bean") SearchReport bean, Model model, HttpServletRequest request,
HttpServletResponse response) {
initReportCondition(model, bean); initReportCondition(model, bean);
return "/report/list"; return "/report/list";
} }
//asn
@RequestMapping(value = {"/asnConnList", ""}) // asn
public String asnConnLists(@ModelAttribute("log") NtcAsnRecord log, Model model, HttpServletRequest request, HttpServletResponse response) { @RequestMapping(value = { "/asnConnList", "" })
public String asnConnLists(@ModelAttribute("log") NtcAsnRecord log, Model model, HttpServletRequest request,
HttpServletResponse response) {
try { try {
PageLog<NtcAsnRecord> page = new PageLog<NtcAsnRecord>(request, response); PageLog<NtcAsnRecord> page = new PageLog<NtcAsnRecord>(request, response);
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
//判断请求参数 // 判断请求参数
if(StringUtils.isNotEmpty(log.getSearchAsnType())){ if (StringUtils.isNotEmpty(log.getSearchAsnType())) {
params.put("searchAsnType", log.getSearchAsnType()); params.put("searchAsnType", log.getSearchAsnType());
}else{ } else {
params.put("searchAsnType", 1); params.put("searchAsnType", 1);
} }
if (StringUtils.isNotBlank(log.getSearchFoundStartTime()) if (StringUtils.isNotBlank(log.getSearchFoundStartTime())
@@ -60,40 +66,43 @@ public class ReportController extends BaseController {
params.put("searchFoundStartTime", log.getSearchFoundStartTime()); params.put("searchFoundStartTime", log.getSearchFoundStartTime());
params.put("searchFoundEndTime", log.getSearchFoundEndTime()); params.put("searchFoundEndTime", log.getSearchFoundEndTime());
} else { } else {
Calendar time = Calendar.getInstance(); Calendar time = Calendar.getInstance();
String searchEndTime = DateUtils.formatDateTime(time.getTime()); String searchEndTime = DateUtils.formatDateTime(time.getTime());
time.add(Calendar.HOUR_OF_DAY, -1); time.add(Calendar.HOUR_OF_DAY, -1);
String searchStartTime = DateUtils.formatDateTime(time.getTime()); String searchStartTime = DateUtils.formatDateTime(time.getTime());
params.put("searchFoundStartTime", searchStartTime); params.put("searchFoundStartTime", searchStartTime);
params.put("searchFoundEndTime", searchEndTime); params.put("searchFoundEndTime", searchEndTime);
log.setSearchFoundStartTime(searchStartTime); log.setSearchFoundStartTime(searchStartTime);
log.setSearchFoundEndTime(searchEndTime); log.setSearchFoundEndTime(searchEndTime);
} }
if(StringUtils.isNotBlank(log.getAsn())){ if (StringUtils.isNotBlank(log.getAsn())) {
params.put("searchAsn", log.getAsn()); params.put("searchAsn", log.getAsn());
} }
String url =Constants.LOG_BASE_URL + Constants.NTC_ASN_RECORD; String url = Constants.LOG_BASE_URL + Constants.NTC_ASN_RECORD;
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":" // String
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+ // recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+ // +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+ // "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}"; // "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
//recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121722070122546049\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":24466,\"last\":816,\"list\":[{\"bps\":\"20.21\",\"pps\":\"0.17\",\"asn\":\"6858\"},{\"bps\":\"48662.31\",\"pps\":\"91.27\",\"asn\":\"60476\"},{\"bps\":\"3770.41\",\"pps\":\"5.38\",\"asn\":\"49963\"},{\"bps\":\"1.74\",\"pps\":\"0.01\",\"asn\":\"327892\"},{\"bps\":\"72.96\",\"pps\":\"0.13\",\"asn\":\"20598\"},{\"bps\":\"3.76\",\"pps\":\"0.03\",\"asn\":\"266106\"},{\"bps\":\"889.16\",\"pps\":\"1.28\",\"asn\":\"21928\"},{\"bps\":\"109274.80\",\"pps\":\"160.89\",\"asn\":\"200052\"},{\"bps\":\"3269.08\",\"pps\":\"4.85\",\"asn\":\"196977\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"42643\"},{\"bps\":\"872.50\",\"pps\":\"1.22\",\"asn\":\"35017\"},{\"bps\":\"51079.66\",\"pps\":\"0\",\"asn\":\"57701\"},{\"bps\":\"1.25\",\"pps\":\"0.05\",\"asn\":\"58000\"},{\"bps\":\"0.45\",\"pps\":\"0.02\",\"asn\":\"266022\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"43246\"},{\"bps\":\"5180.62\",\"pps\":\"9.11\",\"asn\":\"57172\"},{\"bps\":\"145.86\",\"pps\":\"0.29\",\"asn\":\"36994\"},{\"bps\":\"31.96\",\"pps\":\"0.06\",\"asn\":\"48536\"},{\"bps\":\"1009.25\",\"pps\":\"1.67\",\"asn\":\"4795\"},{\"bps\":\"0.86\",\"pps\":\"0.02\",\"asn\":\"196924\"},{\"bps\":\"0.5\",\"pps\":\"0\",\"asn\":\"21275\"},{\"bps\":\"13432.03\",\"pps\":\"0.28\",\"asn\":\"198640\"},{\"bps\":\"9.47\",\"pps\":\"0.33\",\"asn\":\"197287\"},{\"bps\":\"5.84\",\"pps\":\"0.02\",\"asn\":\"197155\"},{\"bps\":\"1890.60\",\"pps\":\"2.86\",\"asn\":\"29208\"},{\"bps\":\"18.26\",\"pps\":\"0.37\",\"asn\":\"51078\"},{\"bps\":\"1.53\",\"pps\":\"0.02\",\"asn\":\"5390\"},{\"bps\":\"16074.91\",\"pps\":\"30.44\",\"asn\":\"34974\"},{\"bps\":\"1695.46\",\"pps\":\"2.51\",\"asn\":\"31103\"},{\"bps\":\"42.18\",\"pps\":\"0.24\",\"asn\":\"6407\"}]}}"; // "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121722070122546049\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":24466,\"last\":816,\"list\":[{\"bps\":\"20.21\",\"pps\":\"0.17\",\"asn\":\"6858\"},{\"bps\":\"48662.31\",\"pps\":\"91.27\",\"asn\":\"60476\"},{\"bps\":\"3770.41\",\"pps\":\"5.38\",\"asn\":\"49963\"},{\"bps\":\"1.74\",\"pps\":\"0.01\",\"asn\":\"327892\"},{\"bps\":\"72.96\",\"pps\":\"0.13\",\"asn\":\"20598\"},{\"bps\":\"3.76\",\"pps\":\"0.03\",\"asn\":\"266106\"},{\"bps\":\"889.16\",\"pps\":\"1.28\",\"asn\":\"21928\"},{\"bps\":\"109274.80\",\"pps\":\"160.89\",\"asn\":\"200052\"},{\"bps\":\"3269.08\",\"pps\":\"4.85\",\"asn\":\"196977\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"42643\"},{\"bps\":\"872.50\",\"pps\":\"1.22\",\"asn\":\"35017\"},{\"bps\":\"51079.66\",\"pps\":\"0\",\"asn\":\"57701\"},{\"bps\":\"1.25\",\"pps\":\"0.05\",\"asn\":\"58000\"},{\"bps\":\"0.45\",\"pps\":\"0.02\",\"asn\":\"266022\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"43246\"},{\"bps\":\"5180.62\",\"pps\":\"9.11\",\"asn\":\"57172\"},{\"bps\":\"145.86\",\"pps\":\"0.29\",\"asn\":\"36994\"},{\"bps\":\"31.96\",\"pps\":\"0.06\",\"asn\":\"48536\"},{\"bps\":\"1009.25\",\"pps\":\"1.67\",\"asn\":\"4795\"},{\"bps\":\"0.86\",\"pps\":\"0.02\",\"asn\":\"196924\"},{\"bps\":\"0.5\",\"pps\":\"0\",\"asn\":\"21275\"},{\"bps\":\"13432.03\",\"pps\":\"0.28\",\"asn\":\"198640\"},{\"bps\":\"9.47\",\"pps\":\"0.33\",\"asn\":\"197287\"},{\"bps\":\"5.84\",\"pps\":\"0.02\",\"asn\":\"197155\"},{\"bps\":\"1890.60\",\"pps\":\"2.86\",\"asn\":\"29208\"},{\"bps\":\"18.26\",\"pps\":\"0.37\",\"asn\":\"51078\"},{\"bps\":\"1.53\",\"pps\":\"0.02\",\"asn\":\"5390\"},{\"bps\":\"16074.91\",\"pps\":\"30.44\",\"asn\":\"34974\"},{\"bps\":\"1695.46\",\"pps\":\"2.51\",\"asn\":\"31103\"},{\"bps\":\"42.18\",\"pps\":\"0.24\",\"asn\":\"6407\"}]}}";
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcAsnRecord> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcAsnRecord>>(){}.getType()); LogRecvData<NtcAsnRecord> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcAsnRecord>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) { if (fromJson.getStatus().intValue() == 200) {
Page<NtcAsnRecord> data = fromJson.getData(); Page<NtcAsnRecord> data = fromJson.getData();
page.setCount(data.getCount()); page.setCount(data.getCount());
page.setLast(data.getLast()); page.setLast(data.getLast());
page.setList(data.getList()); page.setList(data.getList());
/*List<NtcCollectRadiusLog> list = page.getList(); /*
for (NtcConnRecordLog l : list) { * List<NtcCollectRadiusLog> list = page.getList(); for
l.setFunctionId(log.getFunctionId()); * (NtcConnRecordLog l : list) {
setLogAction(l,serviceList); * l.setFunctionId(log.getFunctionId());
}*/ * setLogAction(l,serviceList); }
*/
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} }
@@ -105,52 +114,86 @@ public class ReportController extends BaseController {
return "/report/asnRecordList"; return "/report/asnRecordList";
} }
// //
@RequestMapping(value = {"/httpsUrlList", ""}) @RequestMapping(value = { "/httpsUrlList", "" })
public String httpsUrlLists(@ModelAttribute("log") NtcURLReport log, Model model, HttpServletRequest request, HttpServletResponse response) { public String httpsUrlLists(@ModelAttribute("log") NtcURLReport log, Model model, HttpServletRequest request,
HttpServletResponse response) {
try { try {
PageLog<NtcURLReport> page = new PageLog<NtcURLReport>(request, response); PageLog<NtcURLReport> page = new PageLog<NtcURLReport>(request, response);
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
//判断请求参数 // 判断请求参数
if (StringUtils.isNotBlank(log.getSearchReportStartTime()) if (StringUtils.isNotBlank(log.getSearchReportStartTime())
&& StringUtils.isNotBlank(log.getSearchReportEndTime())) { && StringUtils.isNotBlank(log.getSearchReportEndTime())) {
params.put("searchReportStartTime", log.getSearchReportStartTime()); params.put("searchReportStartTime", log.getSearchReportStartTime());
params.put("searchReportEndTime", log.getSearchReportEndTime()); params.put("searchReportEndTime", log.getSearchReportEndTime());
} else { } else {
Calendar time = Calendar.getInstance(); Calendar time = Calendar.getInstance();
String searchEndTime = DateUtils.formatDateTime(time.getTime()); String searchEndTime = DateUtils.formatDateTime(time.getTime());
time.add(Calendar.HOUR_OF_DAY, -1); time.add(Calendar.HOUR_OF_DAY, -1);
String searchStartTime = DateUtils.formatDateTime(time.getTime()); String searchStartTime = DateUtils.formatDateTime(time.getTime());
params.put("searchReportStartTime", searchStartTime); params.put("searchReportStartTime", searchStartTime);
params.put("searchReportEndTime", searchEndTime); params.put("searchReportEndTime", searchEndTime);
log.setSearchReportStartTime(searchStartTime); log.setSearchReportStartTime(searchStartTime);
log.setSearchReportEndTime(searchEndTime); log.setSearchReportEndTime(searchEndTime);
} }
//url参数 // url参数
if (StringUtils.isNotBlank(log.getSearchUrl())) { if (StringUtils.isNotBlank(log.getSearchUrl())) {
params.put("searchUrl", log.getSearchUrl()); params.put("searchUrl", log.getSearchUrl());
} }
String url =Constants.LOG_BASE_URL + Constants.NTC_URL_REPORT; String url = Constants.LOG_BASE_URL + Constants.NTC_URL_REPORT;
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121610374649425419\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":174,\"last\":6,\"list\":[{\"url\":\"142.44.167.226/eventproxy/v1/bulk\",\"urlCount\":1686,\"dataList\":[{\"sum\":1686,\"ipAddr\":\"100.101.129.6\"}]},{\"url\":\"188.0.145.98/YZ/e1cib/dlist?cmd=query\",\"urlCount\":2652,\"dataList\":[{\"sum\":1248,\"ipAddr\":\"188.0.145.98\"},{\"sum\":1404,\"ipAddr\":\"89.218.9.2\"}]},{\"url\":\"cdn7.alpha-ag.ru/1c1233923d1a6/c51e872ab5861be256408f6cafa99ed8/luckypatcher_v7.5.9.apk\",\"urlCount\":882,\"dataList\":[{\"sum\":882,\"ipAddr\":\"100.81.118.193\"}]}]}}"; // String
// recv = "{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121721092486282928\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":11193,\"last\":374,\"list\":[{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 16:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17 16:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17 18:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17 18:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 20:00:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F50460\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-16 20:15:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 21:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 22:30:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 22:45:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 14:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"185.203.72.28/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 15:30:00\",\"url\":\"biboba.ru/\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 17:00:00\",\"url\":\"biboba.ru/porno_video/style/img/logo.gif\",\"ipCount\":1,\"connCount\":1},{\"reportTime\":\"2018-12-17 01:15:00\",\"url\":\"bilimsite.kz/\",\"ipCount\":1,\"connCount\":1}]}}"; // recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121610374649425419\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":174,\"last\":6,\"list\":[{\"url\":\"142.44.167.226/eventproxy/v1/bulk\",\"urlCount\":1686,\"dataList\":[{\"sum\":1686,\"ipAddr\":\"100.101.129.6\"}]},{\"url\":\"188.0.145.98/YZ/e1cib/dlist?cmd=query\",\"urlCount\":2652,\"dataList\":[{\"sum\":1248,\"ipAddr\":\"188.0.145.98\"},{\"sum\":1404,\"ipAddr\":\"89.218.9.2\"}]},{\"url\":\"cdn7.alpha-ag.ru/1c1233923d1a6/c51e872ab5861be256408f6cafa99ed8/luckypatcher_v7.5.9.apk\",\"urlCount\":882,\"dataList\":[{\"sum\":882,\"ipAddr\":\"100.81.118.193\"}]}]}}";
// recv =
// "{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121721092486282928\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":11193,\"last\":374,\"list\":[{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 16:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17
// 16:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17
// 18:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17
// 18:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 20:00:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F50460\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-16
// 20:15:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 21:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 22:30:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 22:45:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 14:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"185.203.72.28/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 15:30:00\",\"url\":\"biboba.ru/\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 17:00:00\",\"url\":\"biboba.ru/porno_video/style/img/logo.gif\",\"ipCount\":1,\"connCount\":1},{\"reportTime\":\"2018-12-17
// 01:15:00\",\"url\":\"bilimsite.kz/\",\"ipCount\":1,\"connCount\":1}]}}";
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcURLReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcURLReport>>(){}.getType()); LogRecvData<NtcURLReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcURLReport>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) { if (fromJson.getStatus().intValue() == 200) {
Page<NtcURLReport> data = fromJson.getData(); Page<NtcURLReport> data = fromJson.getData();
page.setCount(data.getCount()); page.setCount(data.getCount());
page.setLast(data.getLast()); page.setLast(data.getLast());
page.setList(data.getList()); page.setList(data.getList());
/*List<NtcCollectRadiusLog> list = page.getList(); /*
for (NtcConnRecordLog l : list) { * List<NtcCollectRadiusLog> list = page.getList(); for
l.setFunctionId(log.getFunctionId()); * (NtcConnRecordLog l : list) {
setLogAction(l,serviceList); * l.setFunctionId(log.getFunctionId());
}*/ * setLogAction(l,serviceList); }
*/
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} }
@@ -162,21 +205,21 @@ public class ReportController extends BaseController {
return "/report/urlReportList"; return "/report/urlReportList";
} }
// IP范围统计
//IP范围统计 @RequestMapping(value = { "/ipRangeList", "" })
@RequestMapping(value = {"/ipRangeList", ""}) public String ipRangeLists(@ModelAttribute("log") NtcIpRangeReport log, Model model, HttpServletRequest request,
public String ipRangeLists(@ModelAttribute("log") NtcIpRangeReport log, Model model, HttpServletRequest request, HttpServletResponse response) { HttpServletResponse response) {
try { try {
PageLog<NtcIpRangeReport> page = new PageLog<NtcIpRangeReport>(request, response); PageLog<NtcIpRangeReport> page = new PageLog<NtcIpRangeReport>(request, response);
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
//判断请求参数 // 判断请求参数
//查询国家 // 查询国家
if (StringUtils.isNotBlank(log.getSearchCountry())) { if (StringUtils.isNotBlank(log.getSearchCountry())) {
params.put("searchCountry", log.getSearchCountry()); params.put("searchCountry", log.getSearchCountry());
} }
//查询开始IP // 查询开始IP
if (StringUtils.isNotBlank(log.getSearchIp())) { if (StringUtils.isNotBlank(log.getSearchIp())) {
params.put("searchIp", log.getSearchIp()); params.put("searchIp", log.getSearchIp());
} }
@@ -188,23 +231,27 @@ public class ReportController extends BaseController {
params.put("searchDesc", log.getSearchDesc()); params.put("searchDesc", log.getSearchDesc());
} }
String url =Constants.LOG_BASE_URL + Constants.NTC_IP_RANGE_REPORT; String url = Constants.LOG_BASE_URL + Constants.NTC_IP_RANGE_REPORT;
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}"; // String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcIpRangeReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcIpRangeReport>>(){}.getType()); LogRecvData<NtcIpRangeReport> fromJson = gson.fromJson(recv,
new TypeToken<LogRecvData<NtcIpRangeReport>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) { if (fromJson.getStatus().intValue() == 200) {
Page<NtcIpRangeReport> data = fromJson.getData(); Page<NtcIpRangeReport> data = fromJson.getData();
page.setCount(data.getCount()); page.setCount(data.getCount());
page.setLast(data.getLast()); page.setLast(data.getLast());
page.setList(data.getList()); page.setList(data.getList());
/*List<NtcCollectRadiusLog> list = page.getList(); /*
for (NtcConnRecordLog l : list) { * List<NtcCollectRadiusLog> list = page.getList(); for
l.setFunctionId(log.getFunctionId()); * (NtcConnRecordLog l : list) {
setLogAction(l,serviceList); * l.setFunctionId(log.getFunctionId());
}*/ * setLogAction(l,serviceList); }
*/
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} }
@@ -215,7 +262,8 @@ public class ReportController extends BaseController {
return "/report/ipRangeReportList"; return "/report/ipRangeReportList";
} }
//asnExport
// asnExport
@RequestMapping(value = "asnExport") @RequestMapping(value = "asnExport")
public void asnExport(@ModelAttribute("log") NtcAsnRecord log, Model model, String hColumns, String type, public void asnExport(@ModelAttribute("log") NtcAsnRecord log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
@@ -232,10 +280,10 @@ public class ReportController extends BaseController {
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
//判断请求参数 // 判断请求参数
if(StringUtils.isNotEmpty(log.getSearchAsnType())){ if (StringUtils.isNotEmpty(log.getSearchAsnType())) {
params.put("searchAsnType", log.getSearchAsnType()); params.put("searchAsnType", log.getSearchAsnType());
}else{ } else {
params.put("searchAsnType", 1); params.put("searchAsnType", 1);
} }
if (StringUtils.isNotBlank(log.getSearchFoundStartTime()) if (StringUtils.isNotBlank(log.getSearchFoundStartTime())
@@ -243,22 +291,23 @@ public class ReportController extends BaseController {
params.put("searchFoundStartTime", log.getSearchFoundStartTime()); params.put("searchFoundStartTime", log.getSearchFoundStartTime());
params.put("searchFoundEndTime", log.getSearchFoundEndTime()); params.put("searchFoundEndTime", log.getSearchFoundEndTime());
} else { } else {
Calendar time = Calendar.getInstance(); Calendar time = Calendar.getInstance();
String searchEndTime = DateUtils.formatDateTime(time.getTime()); String searchEndTime = DateUtils.formatDateTime(time.getTime());
time.add(Calendar.HOUR_OF_DAY, -1); time.add(Calendar.HOUR_OF_DAY, -1);
String searchStartTime = DateUtils.formatDateTime(time.getTime()); String searchStartTime = DateUtils.formatDateTime(time.getTime());
params.put("searchFoundStartTime", searchStartTime); params.put("searchFoundStartTime", searchStartTime);
params.put("searchFoundEndTime", searchEndTime); params.put("searchFoundEndTime", searchEndTime);
log.setSearchFoundStartTime(searchStartTime); log.setSearchFoundStartTime(searchStartTime);
log.setSearchFoundEndTime(searchEndTime); log.setSearchFoundEndTime(searchEndTime);
} }
String url =Constants.LOG_BASE_URL + Constants.NTC_ASN_RECORD; String url = Constants.LOG_BASE_URL + Constants.NTC_ASN_RECORD;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":" // String
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+ // recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+ // +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+ // "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}"; // "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
List<NtcAsnRecord> list = new ArrayList<NtcAsnRecord>(); List<NtcAsnRecord> list = new ArrayList<NtcAsnRecord>();
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
@@ -270,24 +319,47 @@ public class ReportController extends BaseController {
list = data.getList(); list = data.getList();
} }
} }
// //
titleList.add("Ntc_Asn_Record"); titleList.add("Ntc_Asn_Record");
classMap.put("Ntc_Asn_Record", NtcAsnRecord.class); classMap.put("Ntc_Asn_Record", NtcAsnRecord.class);
SysUser user = UserUtils.getUser(); SysUser user = UserUtils.getUser();
hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip," hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac," + "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,"; + "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,";
String cfgIndexInfoNoExport = "," + hColumns; String cfgIndexInfoNoExport = "," + hColumns;
noExportMap.put("Ntc_Asn_Record", cfgIndexInfoNoExport); noExportMap.put("Ntc_Asn_Record", cfgIndexInfoNoExport);
Properties msgProp = getMsgProp();
NtcAsnRecord ntcAsnRecord = new NtcAsnRecord();
double pps = 0;
double bps = 0;
for (NtcAsnRecord entity : list) {
if (null != entity.getBps() && !"".equals(entity.getBps())) {
bps += Double.valueOf(entity.getBps());
}
if (null != entity.getPps() && !"".equals(entity.getPps())) {
pps += Double.valueOf(entity.getPps());
}
}
String report_total = msgProp.getProperty("report_total");
ntcAsnRecord.setAsn(report_total);
ntcAsnRecord.setBps(String.format("%.2f", bps));
ntcAsnRecord.setPps(String.format("%.2f", pps));
list.add(ntcAsnRecord);
dataMap.put("Ntc_Asn_Record", list); dataMap.put("Ntc_Asn_Record", list);
String timeRange = initLogMap(log, "Ntc_Asn_Record");
noExportMap.put("timeRange", timeRange);
/* } */ /* } */
if ("csv".equals(type)) { if ("csv".equals(type)) {
this._exportCsv(model, request, response, redirectAttributes, "Ntc_Asn_Record", titleList, classMap, this._exportCsv(model, request, response, redirectAttributes, "Ntc_Asn_Record", titleList, classMap,
dataMap, noExportMap); dataMap, noExportMap);
} else { } else {
this._export(model, request, response, redirectAttributes, "Ntc_Asn_Record", titleList, classMap, dataMap, this._export(model, request, response, redirectAttributes, "Ntc_Asn_Record", titleList, classMap,
noExportMap); dataMap, noExportMap);
} }
} catch (Exception e) { } catch (Exception e) {
logger.error("Ntc_Asn_Record export failed", e); logger.error("Ntc_Asn_Record export failed", e);
@@ -295,10 +367,11 @@ public class ReportController extends BaseController {
} }
} }
//ipRangeExport // ipRangeExport
@RequestMapping(value = "ipRangeExport") @RequestMapping(value = "ipRangeExport")
public void ipRangeExport(@ModelAttribute("log") NtcIpRangeReport log, Model model, String hColumns, String type, public void ipRangeExport(@ModelAttribute("log") NtcIpRangeReport log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { HttpServletRequest request, HttpServletResponse response, String seType,
RedirectAttributes redirectAttributes) {
try { try {
// export data info // export data info
List<String> titleList = new ArrayList<String>(); List<String> titleList = new ArrayList<String>();
@@ -312,12 +385,13 @@ public class ReportController extends BaseController {
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
//判断请求参数 log.setSearchAreaType(seType);
//查询国家 // 判断请求参数
// 查询国家
if (StringUtils.isNotBlank(log.getSearchCountry())) { if (StringUtils.isNotBlank(log.getSearchCountry())) {
params.put("searchCountry", log.getSearchCountry()); params.put("searchCountry", log.getSearchCountry());
} }
//查询开始IP // 查询开始IP
if (StringUtils.isNotBlank(log.getSearchStartIp())) { if (StringUtils.isNotBlank(log.getSearchStartIp())) {
params.put("searchIp", log.getSearchIp()); params.put("searchIp", log.getSearchIp());
} }
@@ -329,14 +403,16 @@ public class ReportController extends BaseController {
params.put("searchDesc", log.getSearchDesc()); params.put("searchDesc", log.getSearchDesc());
} }
String url =Constants.LOG_BASE_URL + Constants.NTC_IP_RANGE_REPORT; String url = Constants.LOG_BASE_URL + Constants.NTC_IP_RANGE_REPORT;
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}"; // String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
List<NtcIpRangeReport> list = new ArrayList<NtcIpRangeReport>(); List<NtcIpRangeReport> list = new ArrayList<NtcIpRangeReport>();
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcIpRangeReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcIpRangeReport>>() { LogRecvData<NtcIpRangeReport> fromJson = gson.fromJson(recv,
}.getType()); new TypeToken<LogRecvData<NtcIpRangeReport>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) { if (fromJson.getStatus().intValue() == 200) {
Page<NtcIpRangeReport> data = fromJson.getData(); Page<NtcIpRangeReport> data = fromJson.getData();
list = data.getList(); list = data.getList();
@@ -346,105 +422,149 @@ public class ReportController extends BaseController {
classMap.put("Ntc_Ip_Range_Report", NtcIpRangeReport.class); classMap.put("Ntc_Ip_Range_Report", NtcIpRangeReport.class);
SysUser user = UserUtils.getUser(); SysUser user = UserUtils.getUser();
hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip," hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac," + "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_asn,d_asn,s_subscribe_id,d_subscribe_id," + "stream_type,nest_addr_list,server_locate,client_locate,s_asn,d_asn,s_subscribe_id,d_subscribe_id,"
+ "user_region,scene_file,"; + "user_region,scene_file,";
String cfgIndexInfoNoExport = "," + hColumns; String cfgIndexInfoNoExport = "," + hColumns;
noExportMap.put("Ntc_Ip_Range_Report", cfgIndexInfoNoExport); noExportMap.put("Ntc_Ip_Range_Report", cfgIndexInfoNoExport);
dataMap.put("Ntc_Ip_Range_Report", list); dataMap.put("Ntc_Ip_Range_Report", list);
String timeRange = initLogMap(log, "Ntc_Ip_Range_Report");
noExportMap.put("timeRange", timeRange);
if ("csv".equals(type)) { if ("csv".equals(type)) {
this._exportCsv(model, request, response, redirectAttributes, "Ntc_Ip_Range_Report", titleList, classMap, this._exportCsv(model, request, response, redirectAttributes, "Ntc_Ip_Range_Report", titleList,
dataMap, noExportMap); classMap, dataMap, noExportMap);
} else { } else {
this._export(model, request, response, redirectAttributes, "Ntc_Ip_Range_Report", titleList, classMap, dataMap, this._export(model, request, response, redirectAttributes, "Ntc_Ip_Range_Report", titleList, classMap,
noExportMap); dataMap, noExportMap);
} }
} catch (Exception e) { } catch (Exception e) {
logger.error("Ntc_Ip_Range_Report export failed", e); logger.error("Ntc_Ip_Range_Report export failed", e);
addMessage(redirectAttributes, "error", "export_failed"); addMessage(redirectAttributes, "error", "export_failed");
} }
} }
//asnExport
@RequestMapping(value = "httpsExport")
public void httpsExport(@ModelAttribute("log") NtcURLReport log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
// ---------------------------
PageLog<NtcURLReport> page = new PageLog<NtcURLReport>(request, response);
page.setPageNo(1);
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
//判断请求参数
if (StringUtils.isNotBlank(log.getSearchReportStartTime())
&& StringUtils.isNotBlank(log.getSearchReportEndTime())) {
params.put("searchReportStartTime", log.getSearchReportStartTime());
params.put("searchReportEndTime", log.getSearchReportEndTime());
} else {
Calendar time = Calendar.getInstance();
String searchEndTime = DateUtils.formatDateTime(time.getTime());
time.add(Calendar.HOUR_OF_DAY, -1);
String searchStartTime = DateUtils.formatDateTime(time.getTime());
params.put("searchReportStartTime", searchStartTime); public String initHttpMap(NtcURLReport log, String title) {
params.put("searchReportEndTime", searchEndTime); Properties msgProp = getMsgProp();
log.setSearchReportStartTime(searchStartTime); String logTime = msgProp.getProperty(title, title);
log.setSearchReportEndTime(searchEndTime); ;
} if (log.getSearchReportStartTime() != null) {
//url参数 logTime += " " + msgProp.getProperty("begin_date") + "" + log.getSearchReportStartTime();
if (StringUtils.isNotBlank(log.getSearchUrl())) {
params.put("searchUrl", log.getSearchUrl());
}
String url =Constants.LOG_BASE_URL + Constants.NTC_URL_REPORT;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil.getMsg(url, params, request);
List<NtcURLReport> list = new ArrayList<NtcURLReport>();
if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create();
LogRecvData<NtcURLReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcURLReport>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) {
Page<NtcURLReport> data = fromJson.getData();
list = data.getList();
}
}
//
titleList.add("Ntc_HTTPS_Report");
classMap.put("Ntc_HTTPS_Report", NtcURLReport.class);
//SysUser user = UserUtils.getUser();
/*hColumns += "s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,";*/
hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,reportTime,";
String cfgIndexInfoNoExport = "," + hColumns;
noExportMap.put("Ntc_HTTPS_Report", cfgIndexInfoNoExport);
dataMap.put("Ntc_HTTPS_Report", list);
/* } */
if ("csv".equals(type)) {
this._exportCsv(model, request, response, redirectAttributes, "Ntc_HTTPS_Report", titleList, classMap,
dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, "Ntc_HTTPS_Report", titleList, classMap, dataMap,
noExportMap);
}
} catch (Exception e) {
logger.error("Ntc_HTTPS_Report export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
} }
if (log.getSearchReportEndTime() != null) {
logTime += " " + msgProp.getProperty("end_date") + "" + log.getSearchReportEndTime();
}
return logTime;
}
// asnExport
@RequestMapping(value = "httpsExport")
public void httpsExport(@ModelAttribute("log") NtcURLReport log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
// ---------------------------
PageLog<NtcURLReport> page = new PageLog<NtcURLReport>(request, response);
page.setPageNo(1);
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
// 判断请求参数
if (StringUtils.isNotBlank(log.getSearchReportStartTime())
&& StringUtils.isNotBlank(log.getSearchReportEndTime())) {
params.put("searchReportStartTime", log.getSearchReportStartTime());
params.put("searchReportEndTime", log.getSearchReportEndTime());
} else {
Calendar time = Calendar.getInstance();
String searchEndTime = DateUtils.formatDateTime(time.getTime());
time.add(Calendar.HOUR_OF_DAY, -1);
String searchStartTime = DateUtils.formatDateTime(time.getTime());
params.put("searchReportStartTime", searchStartTime);
params.put("searchReportEndTime", searchEndTime);
log.setSearchReportStartTime(searchStartTime);
log.setSearchReportEndTime(searchEndTime);
}
// url参数
if (StringUtils.isNotBlank(log.getSearchUrl())) {
params.put("searchUrl", log.getSearchUrl());
}
String url = Constants.LOG_BASE_URL + Constants.NTC_URL_REPORT;
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil.getMsg(url, params, request);
List<NtcURLReport> list = new ArrayList<NtcURLReport>();
if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create();
LogRecvData<NtcURLReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcURLReport>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) {
Page<NtcURLReport> data = fromJson.getData();
list = data.getList();
}
}
//
titleList.add("Ntc_HTTPS_Report");
classMap.put("Ntc_HTTPS_Report", NtcURLReport.class);
// SysUser user = UserUtils.getUser();
/*
* hColumns +=
* "s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
* +
* "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
* +
* "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,";
*/
hColumns += ",s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,reportTime,";
String cfgIndexInfoNoExport = "," + hColumns;
noExportMap.put("Ntc_HTTPS_Report", cfgIndexInfoNoExport);
Properties msgProp = getMsgProp();
NtcURLReport ntcURLReport = new NtcURLReport();
long ipCount=0;
long connCount=0;
for (NtcURLReport entity : list) {
ipCount += entity.getIpCount();
connCount += entity.getConnCount();
}
String report_total = msgProp.getProperty("report_total");
ntcURLReport.setIpCount(ipCount);
ntcURLReport.setConnCount(connCount);
ntcURLReport.setUrl(report_total);
list.add(ntcURLReport);
dataMap.put("Ntc_HTTPS_Report", list);
String timeRange = initHttpMap(log, "Ntc_HTTPS_Report");
noExportMap.put("timeRange", timeRange);
/* } */
if ("csv".equals(type)) {
this._exportCsv(model, request, response, redirectAttributes, "Ntc_HTTPS_Report", titleList, classMap,
dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, "Ntc_HTTPS_Report", titleList, classMap,
dataMap, noExportMap);
}
} catch (Exception e) {
logger.error("Ntc_HTTPS_Report export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
}
} }

View File

@@ -101,9 +101,21 @@
</div> </div>
<div class="pull-right"> <div class="pull-right">
<div class="btn-group"> <!-- <div class="btn-group"> -->
<sys:delRow url="${ctx}/report/asnExport?type=excel" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="export"></sys:delRow> <%-- <sys:delRow url="${ctx}/report/asnExport?type=excel" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="excel"></sys:delRow> --%>
</div> <%-- <sys:delRow url="${ctx}/report/asnExport?type=csv" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="csv"></sys:delRow> --%>
<!-- </div> -->
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-wrench"></i> <spring:message code="export"></spring:message>
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/report/asnExport?type=excel" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/report/asnExport?type=csv" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
</ul>
</div>
<a class="btn btn-icon-only btn-default setfields tooltips" <a class="btn btn-icon-only btn-default setfields tooltips"
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;"> data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
<i class="icon-wrench"></i> <i class="icon-wrench"></i>

View File

@@ -91,9 +91,22 @@
<button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button> <button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button>
</div> </div>
<div class="pull-right"> <div class="pull-right">
<div class="btn-group"> <!-- <div class="btn-group"> -->
<sys:delRow url="${ctx}/report/ipRangeExport?type=excel" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="export"></sys:delRow> <%-- <sys:delRow url="${ctx}/report/ipRangeExport?type=excel" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="excel"></sys:delRow> --%>
</div> <%-- <sys:delRow url="${ctx}/report/ipRangeExport?type=csv" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="csv"></sys:delRow> --%>
<!-- </div> -->
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-wrench"></i> <spring:message code="export"></spring:message>
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/report/ipRangeExport?type=excel&seType=${log.searchAreaType}" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/report/ipRangeExport?type=csv&seType=${log.searchAreaType}" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
</ul>
</div>
<a class="btn btn-icon-only btn-default setfields tooltips" <a class="btn btn-icon-only btn-default setfields tooltips"
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;"> data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
<i class="icon-wrench"></i> <i class="icon-wrench"></i>

View File

@@ -100,9 +100,21 @@
<button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button> <button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button>
</div> </div>
<div class="pull-right"> <div class="pull-right">
<div class="btn-group"> <!-- <div class="btn-group"> -->
<sys:delRow url="${ctx}/report/httpsExport?type=excel" searchUrl="${ctx}/report/httpsUrlList" id="contentTable" maxRow="10000" label="export"></sys:delRow> <%-- <sys:delrow url="${ctx}/report/httpsexport?type=excel" searchurl="${ctx}/report/httpsurllist" id="contenttable" maxrow="10000" label="excel"></sys:delrow> --%>
</div> <%-- <sys:delrow url="${ctx}/report/httpsexport?type=csv" searchurl="${ctx}/report/httpsurllist" id="contenttable" maxrow="10000" label="csv"></sys:delrow> --%>
<!-- </div> -->
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-wrench"></i> <spring:message code="export"></spring:message>
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/report/httpsExport?type=excel" searchUrl="${ctx}/report/httpsUrlList" id="contentTable" maxRow="10000" label="excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/report/httpsExport?type=csv" searchUrl="${ctx}/report/httpsUrlList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
</ul>
</div>
<a class="btn btn-icon-only btn-default setfields tooltips" <a class="btn btn-icon-only btn-default setfields tooltips"
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;"> data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
<i class="icon-wrench"></i> <i class="icon-wrench"></i>