1:新增业务

2:修改统计报表业务
This commit is contained in:
renkaige
2018-12-17 14:08:03 +06:00
parent d58b7ae780
commit 980ecdf7a8
16 changed files with 1683 additions and 843 deletions

View File

@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.nis.restful.RestBusinessCode;
@@ -32,35 +33,37 @@ import com.nis.web.service.ServicesRequestLogService;
import com.nis.web.service.restful.DashboardService;
import com.wordnik.swagger.annotations.Api;
import com.wordnik.swagger.annotations.ApiOperation;
@SuppressWarnings("unchecked")
@RestController
@RequestMapping(value = "${servicePath}/log/v1")
@Api(value = "DashboardServiceController", description = "统计分析图表基本服务接口")
public class DashboardServiceController extends BaseRestController {
@Autowired
protected ServicesRequestLogService servicesRequestLogService;
@Autowired
public DashboardService dashboardService;
/**
* 流量统计info滚动条数据显示 封堵监测回流丢弃
*/
@RequestMapping(value = "ntcTotalReport", method = RequestMethod.GET)
@ApiOperation(value = "业务总量汇聚", httpMethod = "GET", notes = "对应流量统计info滚动条数据显示")
public Map<String,?> ntcTotalReport(Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> ntcTotalReport(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> resultList = dashboardService.getTotalReportList();
if (resultList!=null&&resultList.size() > 0) {
list = resultList;
if (resultList != null && resultList.size() > 0) {
list = resultList;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("业务总量汇聚实时统计数据检索失败:"+e.getMessage());
logger.error("业务总量汇聚实时统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("业务总量汇聚实时统计数据检索失败:" + e.getMessage());
logger.error("业务总量汇聚实时统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"业务总量汇聚实时统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -71,35 +74,39 @@ public class DashboardServiceController extends BaseRestController {
throw new ServiceRuntimeException(auditLogThread, System.currentTimeMillis() - start,
"业务总量汇聚实时统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "业务总量汇聚实时统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "业务总量汇聚实时统计数据检索成功", list,
0);
}
/**
* 流量统计info滚动条数据显示 封堵监测回流丢弃详情趋势
*/
@RequestMapping(value = "ntcActionEntranceReport", method = RequestMethod.GET)
@ApiOperation(value = "根据不同动作统计总量汇聚", httpMethod = "GET", notes = "对应流量统计info滚动条动作类型详情数据显示")
public Map<String,?> ntcTotalReport(Model model, HttpServletRequest request, HttpServletResponse response,String searchAction,String beginDate,String endDate) {
public Map<String, ?> ntcTotalReport(Model model, HttpServletRequest request, HttpServletResponse response,
String searchAction, String beginDate, String endDate) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
if(StringUtils.isEmpty(beginDate)||StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar. getInstance ();
if (StringUtils.isEmpty(beginDate) || StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
endDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());//获取到完整的时间
endDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());// 获取到完整的时间
cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1);
beginDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());
beginDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());
}
List<HashMap> resultList = dashboardService.getActionTrans(beginDate,endDate,searchAction);
if (resultList!=null&&resultList.size() > 0) {
list = resultList;
List<HashMap> resultList = dashboardService.getActionTrans(beginDate, endDate, searchAction);
if (resultList != null && resultList.size() > 0) {
list = resultList;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("动作趋势分析统计数据检索失败:"+e.getMessage());
logger.error("动作趋势分析统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("动作趋势分析统计数据检索失败:" + e.getMessage());
logger.error("动作趋势分析统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"动作趋势分析统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -111,32 +118,36 @@ public class DashboardServiceController extends BaseRestController {
"动作趋势分析统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "动作趋势分析统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "动作趋势分析统计数据检索成功", list,
0);
}
/**
* 根据ip46,协议tcpudp查询带宽
* 根据ip46,协议tcpudp查询带宽
*/
@RequestMapping(value = "trafficBandwidthTrans", method = RequestMethod.GET)
@ApiOperation(value = "带宽根据ip46,协议tcp,udp查询详情", httpMethod = "GET", notes = "对应带宽根据IPv4,6,协议tcp,udp统计数据显示")
public Map<String,?> trafficBandwidthTrans(String beginDate,String endDate,String addrType,Integer transType,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficBandwidthTrans(String beginDate, String endDate, String addrType, Integer transType,
Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
if(StringUtils.isEmpty(beginDate)||StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar. getInstance ();
cal.setTime(new Date());
endDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());//获取到完整的时间
cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1);
beginDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());
if (StringUtils.isEmpty(beginDate) || StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
endDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());// 获取到完整的时间
cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1);
beginDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());
}
List<HashMap> resultList = dashboardService.getBandwidthTrans(addrType, transType,beginDate,endDate);
if (resultList!=null&&resultList.size() > 0) {
List<HashMap> resultList = dashboardService.getBandwidthTrans(addrType, transType, beginDate, endDate);
if (resultList != null && resultList.size() > 0) {
list = resultList;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("带宽实时统计数据检索失败:"+e.getMessage());
logger.error("带宽实时统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("带宽实时统计数据检索失败:" + e.getMessage());
logger.error("带宽实时统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"带宽实时统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -148,32 +159,35 @@ public class DashboardServiceController extends BaseRestController {
"带宽实时统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "带宽实时统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "带宽实时统计数据检索成功", list, 0);
}
/**
* 根据ip46,协议tcpudp查询带宽
* 根据ip46,协议tcpudp查询带宽
*/
@RequestMapping(value = "trafficBandwidthTransTwo", method = RequestMethod.GET)
@ApiOperation(value = "带宽根据ip46,协议tcp,udp查询详情", httpMethod = "GET", notes = "对应带宽根据IPv4,6,协议tcp,udp统计数据显示")
public Map<String,?> trafficBandwidthTransTow(String beginDate,String endDate,String addrType,Integer transType,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficBandwidthTransTow(String beginDate, String endDate, String addrType, Integer transType,
Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
if(StringUtils.isEmpty(beginDate)||StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar. getInstance ();
if (StringUtils.isEmpty(beginDate) || StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
endDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());//获取到完整的时间
endDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());// 获取到完整的时间
cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1);
beginDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ).format(cal.getTime());
beginDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime());
}
List<HashMap> resultList = dashboardService.getBandwidthTrans2(addrType, transType,beginDate,endDate);
if (resultList!=null&&resultList.size() > 0) {
List<HashMap> resultList = dashboardService.getBandwidthTrans2(addrType, transType, beginDate, endDate);
if (resultList != null && resultList.size() > 0) {
list = resultList;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("带宽实时统计数据检索失败:"+e.getMessage());
logger.error("带宽实时统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("带宽实时统计数据检索失败:" + e.getMessage());
logger.error("带宽实时统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"带宽实时统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -185,27 +199,29 @@ public class DashboardServiceController extends BaseRestController {
"带宽实时统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "带宽实时统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "带宽实时统计数据检索成功", list, 0);
}
/**
* 流量统计活跃端口统计
*/
@RequestMapping(value = "trafficPortActive", method = RequestMethod.GET)
@ApiOperation(value = "活跃端口统计", httpMethod = "GET", notes = "对应流量统计活跃端口统计")
public Map<String,?> trafficPortActive(Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficPortActive(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> resultList = dashboardService.getPortActiveList();
if(resultList!=null&&resultList.size()>0) {
list=resultList;
if (resultList != null && resultList.size() > 0) {
list = resultList;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("活跃端口实时统计数据检索失败:"+e.getMessage());
logger.error("活跃端口实时统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("活跃端口实时统计数据检索失败:" + e.getMessage());
logger.error("活跃端口实时统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"活跃端口实时统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -217,28 +233,29 @@ public class DashboardServiceController extends BaseRestController {
"活跃端口实时统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃端口实时统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃端口实时统计数据检索成功", list,
0);
}
/**
* 协议统计
*/
@RequestMapping(value="trafficProtocol", method = RequestMethod.GET)
@RequestMapping(value = "trafficProtocol", method = RequestMethod.GET)
@ApiOperation(value = "协议统计", httpMethod = "GET", notes = "对应协议统计实时统计查询服务。")
public Map<String,?> trafficProtocol(Model model, HttpServletRequest request, HttpServletResponse response){
public Map<String, ?> trafficProtocol(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
List<Map> ipActiveChart = dashboardService.protocolChart();
if (ipActiveChart!=null&&ipActiveChart.size() > 0) {
String jsonString = JsonMapper.toJsonString(ipActiveChart);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString,HashMap.class);
if (ipActiveChart != null && ipActiveChart.size() > 0) {
String jsonString = JsonMapper.toJsonString(ipActiveChart);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString, HashMap.class);
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("协议统计图表数据检索失败:"+e.getMessage());
logger.error("协议统计图表数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("协议统计图表数据检索失败:" + e.getMessage());
logger.error("协议统计图表数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"协议统计图表数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -250,27 +267,29 @@ public class DashboardServiceController extends BaseRestController {
"协议统计图表数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "协议统计图表数据检索成功",
list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "协议统计图表数据检索成功", list, 0);
}
/**
* 协议统计详情图与表
*/
@RequestMapping(value="trafficProtocolList", method = RequestMethod.GET)
@RequestMapping(value = "trafficProtocolList", method = RequestMethod.GET)
@ApiOperation(value = "协议统计占比与报表", httpMethod = "GET", notes = "对应协议统计详情占比与报表")
public Map<String,?> trafficProtocolList(String beginDate,String endDate,Model model, HttpServletRequest request, HttpServletResponse response){
public Map<String, ?> trafficProtocolList(String beginDate, String endDate, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
List<Map> ipActiveList = dashboardService.getProtocolList(beginDate,endDate);
if (ipActiveList!=null&&ipActiveList.size() > 0) {
List<Map> ipActiveList = dashboardService.getProtocolList(beginDate, endDate);
if (ipActiveList != null && ipActiveList.size() > 0) {
String jsonString = JsonMapper.toJsonString(ipActiveList);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString,HashMap.class);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString, HashMap.class);
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("协议统计占比与报表检索失败:"+e.getMessage());
logger.error("协议统计占比与报表检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("协议统计占比与报表检索失败:" + e.getMessage());
logger.error("协议统计占比与报表检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"协议统计占比与报表检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -282,42 +301,43 @@ public class DashboardServiceController extends BaseRestController {
"协议统计占比与报表检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "协议统计占比与报表检索成功",
list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "协议统计占比与报表检索成功", list,
0);
}
/**
* 活跃IP TOP10
*/
@RequestMapping(value = "trafficIpActive", method = RequestMethod.GET)
@ApiOperation(value = "活跃IP统计", httpMethod = "GET", notes = "对应活跃IP实时统计查询服务。")
public Map<String,?> trafficIpActive(String beginDate, String endDate ,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficIpActive(String beginDate, String endDate, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<LinkedHashMap> list = new ArrayList<LinkedHashMap>();
try {
Date begin=null;
Date end=null;
if(StringUtils.isEmpty(beginDate)||StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar. getInstance ();
Date begin = null;
Date end = null;
if (StringUtils.isEmpty(beginDate) || StringUtils.isEmpty(endDate)) {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
begin = cal.getTime();//获取到完整的时间
begin = cal.getTime();// 获取到完整的时间
cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1);
end = cal.getTime();
}else {
end = cal.getTime();
} else {
begin = DateUtils.parseDate(beginDate);
end = DateUtils.parseDate(endDate);
}
List<LinkedHashMap> ipActiveChart = dashboardService.ipActiveChart(begin,end);
if (ipActiveChart!=null&&ipActiveChart.size() > 0) {
list = ipActiveChart;
List<LinkedHashMap> ipActiveChart = dashboardService.ipActiveChart(begin, end);
if (ipActiveChart != null && ipActiveChart.size() > 0) {
list = ipActiveChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("活跃IP实时统计数据检索失败:"+e.getMessage());
logger.error("活跃IP实时统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("活跃IP实时统计数据检索失败:" + e.getMessage());
logger.error("活跃IP实时统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"活跃IP实时统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -329,28 +349,32 @@ public class DashboardServiceController extends BaseRestController {
"活跃IP实时统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP实时统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP实时统计数据检索成功", list,
0);
}
/**
* 活跃IP TOP10 一小时数据
*/
@RequestMapping(value = "trafficIpActiveOneHour", method = RequestMethod.GET)
@ApiOperation(value = "活跃IP统计一个小时的活跃IP", httpMethod = "GET", notes = "对应活跃IP实时统计查询服务。")
public Map<String,?> trafficIpActiveOneHour(String beginDate, String endDate ,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficIpActiveOneHour(String beginDate, String endDate, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
Date begin = DateUtils.parseDate(beginDate);
Date end = DateUtils.parseDate(endDate);
List<HashMap> ipActiveChart = dashboardService.ipActiveOneHour(begin,end);
if (ipActiveChart!=null&&ipActiveChart.size() > 0) {
List<HashMap> ipActiveChart = dashboardService.ipActiveOneHour(begin, end);
if (ipActiveChart != null && ipActiveChart.size() > 0) {
list = ipActiveChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("活跃IP统计一个小时的活跃IP检索失败:"+e.getMessage());
logger.error("活跃IP统计一个小时的活跃IP检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("活跃IP统计一个小时的活跃IP检索失败:" + e.getMessage());
logger.error("活跃IP统计一个小时的活跃IP检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"活跃IP统计一个小时的活跃IP检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -362,32 +386,36 @@ public class DashboardServiceController extends BaseRestController {
"活跃IP统计一个小时的活跃IP检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP统计一个小时的活跃IP检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP统计一个小时的活跃IP检索成功",
list, 0);
}
/**
* 活跃IP TOP10 一小时间隔五分钟数据
*/
@RequestMapping(value = "trafficIpActiveFiveMinute", method = RequestMethod.GET)
@ApiOperation(value = "活跃IP最近一个小时的变化趋势统计", httpMethod = "GET", notes = "对最新TOP10的活跃IP在近一个小时的变化情况进行统计")
public Map<String,?> trafficIpActiveFiveMinute(String beginDate, String endDate ,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficIpActiveFiveMinute(String beginDate, String endDate, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
Date begin=null;
Date end=null;
if(!StringUtils.isEmpty(beginDate)&&!StringUtils.isEmpty(endDate)) {
begin=DateUtils.parseDate(beginDate);
end=DateUtils.parseDate(endDate);
Date begin = null;
Date end = null;
if (!StringUtils.isEmpty(beginDate) && !StringUtils.isEmpty(endDate)) {
begin = DateUtils.parseDate(beginDate);
end = DateUtils.parseDate(endDate);
}
List<HashMap> ipActiveChart = dashboardService.ipActiveFiveMinute(begin,end);
if (ipActiveChart!=null&&ipActiveChart.size() > 0) {
List<HashMap> ipActiveChart = dashboardService.ipActiveFiveMinute(begin, end);
if (ipActiveChart != null && ipActiveChart.size() > 0) {
list = ipActiveChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("活跃IP最近一个小时的变化趋势统计失败:"+e.getMessage());
logger.error("活跃IP最近一个小时的变化趋势统计失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("活跃IP最近一个小时的变化趋势统计失败:" + e.getMessage());
logger.error("活跃IP最近一个小时的变化趋势统计失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"活跃IP最近一个小时的变化趋势统计失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -399,26 +427,29 @@ public class DashboardServiceController extends BaseRestController {
"活跃IP最近一个小时的变化趋势统计失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP最近一个小时的变化趋势统计成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "活跃IP最近一个小时的变化趋势统计成功",
list, 0);
}
/**
* app应用流量分析 TOP10
*/
@RequestMapping(value = "trafficApp", method = RequestMethod.GET)
@ApiOperation(value = "App流量分析统计", httpMethod = "GET", notes = "对应app流量分析实时统计查询服务。")
public Map<String, ?> trafficApp(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> appChart = dashboardService.appChart();
if (appChart!=null&&appChart.size() > 0) {
if (appChart != null && appChart.size() > 0) {
list = appChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("App流量统计数据检索失败:"+e.getMessage());
logger.error("App流量统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("App流量统计数据检索失败:" + e.getMessage());
logger.error("App流量统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"App流量统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -430,26 +461,30 @@ public class DashboardServiceController extends BaseRestController {
"App流量统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "App流量统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "App流量统计数据检索成功", list,
0);
}
/**
* App统计详情图与表
*/
@RequestMapping(value="trafficAppList", method = RequestMethod.GET)
@RequestMapping(value = "trafficAppList", method = RequestMethod.GET)
@ApiOperation(value = "App统计占比与报表", httpMethod = "GET", notes = "对应App统计详情占比与报表")
public Map<String,?> trafficAppList(Integer appType,String beginDate,String endDate,Model model, HttpServletRequest request, HttpServletResponse response){
public Map<String, ?> trafficAppList(Integer appType, String beginDate, String endDate, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<HashMap> list = new ArrayList<HashMap>();
try {
List<Map> appList = dashboardService.getAppList(beginDate,endDate,appType);
if (appList!=null&&appList.size() > 0) {
List<Map> appList = dashboardService.getAppList(beginDate, endDate, appType);
if (appList != null && appList.size() > 0) {
String jsonString = JsonMapper.toJsonString(appList);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString,HashMap.class);
list = (java.util.List<HashMap>) JsonMapper.fromJsonList(jsonString, HashMap.class);
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("App统计图表数据检索失败:"+e.getMessage());
logger.error("App统计图表数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("App统计图表数据检索失败:" + e.getMessage());
logger.error("App统计图表数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"App统计图表数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -461,23 +496,25 @@ public class DashboardServiceController extends BaseRestController {
"App统计图表数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "App统计图表数据检索成功",
list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "App统计图表数据检索成功", list,
0);
}
@RequestMapping(value = "trafficOsList", method = RequestMethod.GET)
@ApiOperation(value = "操作系统流量分析统计", httpMethod = "GET", notes = "对应终端用户的操作系统列表显示")
public Map<String,?> trafficOsList(Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficOsList(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> osChart = dashboardService.systemList();
if (osChart!=null&&osChart.size() > 0) {
if (osChart != null && osChart.size() > 0) {
list = osChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("操作系统流量分析统计检索失败:"+e.getMessage());
logger.error("操作系统流量分析统计检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("操作系统流量分析统计检索失败:" + e.getMessage());
logger.error("操作系统流量分析统计检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"操作系统流量分析统计检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -489,23 +526,27 @@ public class DashboardServiceController extends BaseRestController {
"操作系统流量分析统计检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "操作系统流量分析统计检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "操作系统流量分析统计检索成功", list,
0);
}
@RequestMapping(value = "trafficBrowserChart", method = RequestMethod.GET)
@ApiOperation(value = "操作系统下浏览器流量分析统计", httpMethod = "GET", notes = "对应终端用户某个操作系统的浏览器分类统计显示")
public Map<String, ?> trafficBrowserChart(Integer osType,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficBrowserChart(Integer osType, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> osChart = dashboardService.getBrowserBySystem(osType);
if (osChart!=null&&osChart.size() > 0) {
list=osChart;
if (osChart != null && osChart.size() > 0) {
list = osChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("操作系统下浏览器分类统计数据检索失败:"+e.getMessage());
logger.error("操作系统下浏览器分类统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("操作系统下浏览器分类统计数据检索失败:" + e.getMessage());
logger.error("操作系统下浏览器分类统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"操作系统下浏览器分类统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -517,22 +558,25 @@ public class DashboardServiceController extends BaseRestController {
"操作系统下浏览器分类统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "操作系统下浏览器分类统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "操作系统下浏览器分类统计数据检索成功",
list, 0);
}
@RequestMapping(value = "trafficBsList", method = RequestMethod.GET)
@ApiOperation(value = "浏览器流量分析统计", httpMethod = "GET", notes = "对应终端用户的浏览器列表显示")
public Map<String, ?> trafficBsList(Model model, HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> bsChart = dashboardService.browserList();
if (bsChart!=null&&bsChart.size() > 0) {
if (bsChart != null && bsChart.size() > 0) {
list = bsChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("浏览器流量分析统计数据检索失败:"+e.getMessage());
logger.error("浏览器流量分析统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("浏览器流量分析统计数据检索失败:" + e.getMessage());
logger.error("浏览器流量分析统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"浏览器流量分析统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -544,23 +588,27 @@ public class DashboardServiceController extends BaseRestController {
"浏览器流量分析统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "浏览器流量分析统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "浏览器流量分析统计数据检索成功", list,
0);
}
@RequestMapping(value = "trafficSystemChart", method = RequestMethod.GET)
@ApiOperation(value = "浏览器下操作系统流量分析统计", httpMethod = "GET", notes = "对应终端用户某个浏览器的操作系统分类统计显示")
public Map<String,?> trafficSystemChart(Integer bsType,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficSystemChart(Integer bsType, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
List<Map> bsChart = dashboardService.getSystemBybrowser(bsType);
if (bsChart!=null&&bsChart.size() > 0) {
if (bsChart != null && bsChart.size() > 0) {
list = bsChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("浏览器下操作系统流量统计数据检索失败:"+e.getMessage());
logger.error("浏览器下操作系统流量统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("浏览器下操作系统流量统计数据检索失败:" + e.getMessage());
logger.error("浏览器下操作系统流量统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"浏览器下操作系统流量统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -572,35 +620,33 @@ public class DashboardServiceController extends BaseRestController {
"浏览器下操作系统流量统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "浏览器下操作系统流量统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "浏览器下操作系统流量统计数据检索成功",
list, 0);
}
@RequestMapping(value = "trafficWebsiteList", method = RequestMethod.GET)
@ApiOperation(value = "网站流量分析统计", httpMethod = "GET", notes = "对应网站http分类显示")
public Map<String,?> trafficWebsiteList(String beginDate,String endDate,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficWebsiteList(@RequestParam String beginDate, @RequestParam String endDate, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
if(!StringUtils.isEmpty(beginDate)&&!StringUtils.isEmpty(endDate)) {
if (!StringUtils.isEmpty(beginDate) && !StringUtils.isEmpty(endDate)) {
Date begin = DateUtils.parseDate(beginDate);
Date end = DateUtils.parseDate(endDate);
// 带查询时间查询所有
List<Map> websiteChart = dashboardService.getWebsiteDetails(begin,end);
if (websiteChart!=null&&websiteChart.size() > 0) {
list = websiteChart;
}
}else {
// 不带时间默认top10
List<Map> websiteChart = dashboardService.getWebsiteTop10();
if (websiteChart!=null&&websiteChart.size() > 0) {
List<Map> websiteChart = dashboardService.getWebsiteDetails(begin, end);
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("网站流量分析统计数据检索失败:"+e.getMessage());
logger.error("网站流量分析统计数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("网站流量分析统计数据检索失败:" + e.getMessage());
logger.error("网站流量分析统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"网站流量分析统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -612,35 +658,73 @@ public class DashboardServiceController extends BaseRestController {
"网站流量分析统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "网站流量分析统计数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "网站流量分析统计数据检索成功", list,
0);
}
@RequestMapping(value = "trafficWebTypeChart", method = RequestMethod.GET)
@ApiOperation(value = "HTTP网站分类分析统计", httpMethod = "GET", notes = "对应某个网站类型分类统计图")
public Map<String, ?> trafficWebTypeChart(String beginDate,String endDate,Integer websiteServiceId,Model model, HttpServletRequest request, HttpServletResponse response) {
@RequestMapping(value = "trafficWebsiteListNoTime", method = RequestMethod.GET)
@ApiOperation(value = "网站流量分析统计", httpMethod = "GET", notes = "对应网站http分类显示")
public Map<String, ?> trafficWebsiteListNoTime(Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
if(!StringUtils.isEmpty(beginDate)&&!StringUtils.isEmpty(endDate)) {
// 不带时间默认top10
List<Map> websiteChart = dashboardService.getWebsiteTop10();
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("网站流量分析统计数据检索失败:" + e.getMessage());
logger.error("网站流量分析统计数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"网站流量分析统计数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
} else if (e instanceof ServiceRuntimeException) {
throw new ServiceRuntimeException(auditLogThread, System.currentTimeMillis() - start,
"网站流量分析统计数据检索失败:" + e.getMessage(), ((ServiceRuntimeException) e).getErrorCode());
} else {
throw new ServiceRuntimeException(auditLogThread, System.currentTimeMillis() - start,
"网站流量分析统计数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "网站流量分析统计数据检索成功", list,
0);
}
@RequestMapping(value = "trafficWebTypeChart", method = RequestMethod.GET)
@ApiOperation(value = "HTTP网站分类分析统计", httpMethod = "GET", notes = "对应某个网站类型分类统计图")
public Map<String, ?> trafficWebTypeChart(String beginDate, String endDate, Integer websiteServiceId, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
if (!StringUtils.isEmpty(beginDate) && !StringUtils.isEmpty(endDate)) {
Date begin = DateUtils.parseDate(beginDate);
Date end = DateUtils.parseDate(endDate);
// 带查询时间查询所有
List<Map> websiteChart = dashboardService.getWebsiteDetailsById(websiteServiceId,begin,end);
if (websiteChart!=null&&websiteChart.size() > 0) {
List<Map> websiteChart = dashboardService.getWebsiteDetailsById(websiteServiceId, begin, end);
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
}else {
} else {
// 不带时间默认top10
List<Map> websiteChart = dashboardService.getWebsiteTop10ById(websiteServiceId);
if (websiteChart!=null&&websiteChart.size() > 0) {
List<Map> websiteChart = dashboardService.getWebsiteDetailsById(websiteServiceId, null, null);
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("HTTP网站分类分析统计失败:"+e.getMessage());
logger.error("HTTP网站分类分析统计失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("HTTP网站分类分析统计失败:" + e.getMessage());
logger.error("HTTP网站分类分析统计失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"HTTP网站分类分析统计失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -652,34 +736,38 @@ public class DashboardServiceController extends BaseRestController {
"HTTP网站分类分析统计失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "HTTP网站分类分析统计成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "HTTP网站分类分析统计成功", list,
0);
}
@RequestMapping(value = "trafficTopicAndDomainChart", method = RequestMethod.GET)
@ApiOperation(value = "HTTP网站主题分类分析统计", httpMethod = "GET", notes = "对应某个网站主题类型分类统计图")
public Map<String, ?> trafficTopicAndDomainChart(String beginDate,String endDate,Model model, HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> trafficTopicAndDomainChart(String beginDate, String endDate, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, null);
AuditLogThread auditLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List<Map> list = new ArrayList<Map>();
try {
if(!StringUtils.isEmpty(beginDate)&&!StringUtils.isEmpty(endDate)) {
if (!StringUtils.isEmpty(beginDate) && !StringUtils.isEmpty(endDate)) {
Date begin = DateUtils.parseDate(beginDate);
Date end = DateUtils.parseDate(endDate);
// 带查询时间查询所有
List<Map> websiteChart = dashboardService.getTopicDetails(begin,end);
if (websiteChart!=null&&websiteChart.size() > 0) {
List<Map> websiteChart = dashboardService.getTopicDetails(begin, end);
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
}else {
} else {
// 不带时间默认top10
List<Map> websiteChart = dashboardService.getTopicTop10();
if (websiteChart!=null&&websiteChart.size() > 0) {
if (websiteChart != null && websiteChart.size() > 0) {
list = websiteChart;
}
}
} catch (Exception e) {
auditLogThread.setExceptionInfo("HTTP网站主题分类分析数据检索失败:"+e.getMessage());
logger.error("HTTP网站主题分类分析数据检索失败:"+ExceptionUtil.getExceptionMsg(e));
auditLogThread.setExceptionInfo("HTTP网站主题分类分析数据检索失败:" + e.getMessage());
logger.error("HTTP网站主题分类分析数据检索失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(auditLogThread, System.currentTimeMillis() - start,
"HTTP网站主题分类分析数据检索失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -691,6 +779,7 @@ public class DashboardServiceController extends BaseRestController {
"HTTP网站主题分类分析数据检索失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "HTTP网站主题分类分析数据检索成功",list, 0);
return serviceLogResponse(auditLogThread, System.currentTimeMillis() - start, request, "HTTP网站主题分类分析数据检索成功",
list, 0);
}
}

View File

@@ -1,5 +1,6 @@
package com.nis.web.controller.restful;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -16,6 +17,7 @@ import com.nis.domain.Page;
import com.nis.domain.restful.NtcAttrTypeReport;
import com.nis.domain.restful.NtcDestipCountryReport;
import com.nis.domain.restful.NtcEntranceReport;
import com.nis.domain.restful.NtcIpRangeReport;
import com.nis.domain.restful.NtcLwhhReport;
import com.nis.domain.restful.NtcPzReport;
import com.nis.domain.restful.NtcRadiusReport;
@@ -36,25 +38,33 @@ import com.nis.web.service.ServicesRequestLogService;
import com.nis.web.service.restful.NtcReportService;
import com.wordnik.swagger.annotations.Api;
import com.wordnik.swagger.annotations.ApiOperation;
import com.zdjizhi.utils.IPUtil;
import com.zdjizhi.utils.StringUtil;
/**
*
* <p>Title: SingleDimensionReport</p>
* <p>Description: 单维度统计查询报表controller</p>
* <p>Company: IIE</p>
* <p>
* Title: SingleDimensionReport
* </p>
* <p>
* Description: 单维度统计查询报表controller
* </p>
* <p>
* Company: IIE
* </p>
*
* @author rkg
* @date 2018年7月24日
* @date 2018年7月24日
*
*/
@RestController
@RequestMapping("${servicePath}/log/v1")
@Api(value = "SingleDimensionReport", description = "单维度统计查询报表controller")
public class SingleDimensionReport extends BaseRestController {
@Autowired
protected ServicesRequestLogService servicesRequestLogService;
@Autowired
protected NtcReportService ntcReportService;
@@ -63,16 +73,16 @@ public class SingleDimensionReport extends BaseRestController {
public Map<String, ?> ntcPzReport(Page page, NtcPzReport ntcPzReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> ntcPzReportPage = null;
try {
resetReportTime(ntcPzReport,true);
//验证实时报表
resetReportTime(ntcPzReport, true);
// 验证实时报表
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcPzReport, NtcPzReport.class, page);
//验证serachCfgId
ntcReportService.checkNumericCondition(saveLogThread,start,ntcPzReport.getSearchCfgId(),"searchCfgId");
// 验证serachCfgId
ntcReportService.checkNumericCondition(saveLogThread, start, ntcPzReport.getSearchCfgId(), "searchCfgId");
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcPzReport.class.getSimpleName(), page.getOrderBy());
@@ -80,11 +90,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
ntcPzReportPage = ntcReportService.findNtcPzReport(new Page<NtcPzReport>(request, response, NtcPzReport.class),
ntcPzReport);
ntcPzReportPage = ntcReportService
.findNtcPzReport(new Page<NtcPzReport>(request, response, NtcPzReport.class), ntcPzReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("配置日志总量统计失败:"+e.getMessage());
logger.error("配置日志总量统计失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("配置日志总量统计失败:" + e.getMessage());
logger.error("配置日志总量统计失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"配置日志总量统计失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -103,16 +113,17 @@ public class SingleDimensionReport extends BaseRestController {
@RequestMapping(value = "/ntcServiceReport", method = RequestMethod.GET)
@ApiOperation(value = "业务类型统计查询服务", httpMethod = "GET", notes = "业务类型统计查询服务基于业务类型service维度聚合")
public Map<String, ?> ntcServiceReport(Page page, NtcServiceReport ntcServiceReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
public Map<String, ?> ntcServiceReport(Page page, NtcServiceReport ntcServiceReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(ntcServiceReport,false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcServiceReport, NtcServiceReport.class, page);
resetReportTime(ntcServiceReport, false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcServiceReport, NtcServiceReport.class,
page);
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcServiceReport.class.getSimpleName(), page.getOrderBy());
@@ -120,11 +131,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcServiceReport(new Page<NtcServiceReport>(request, response, NtcServiceReport.class),
ntcServiceReport);
reportPage = ntcReportService.findNtcServiceReport(
new Page<NtcServiceReport>(request, response, NtcServiceReport.class), ntcServiceReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("业务类型统计查询失败:"+e.getMessage());
logger.error("业务类型统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("业务类型统计查询失败:" + e.getMessage());
logger.error("业务类型统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"业务类型统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -137,26 +148,24 @@ public class SingleDimensionReport extends BaseRestController {
}
}
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "业务类型统计查询成功",
reportPage, 0);
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "业务类型统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcTagReport", method = RequestMethod.GET)
@ApiOperation(value = "标签统计查询服务", httpMethod = "GET", notes = "标签统计查询服务基于标签与业务类型service维度聚合")
public Map<String, ?> ntcTagReport(Page page, NtcTagReport ntcTagReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(ntcTagReport,false);
resetReportTime(ntcTagReport, false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcTagReport, NtcTagReport.class, page);
//验证serachTag
ntcReportService.checkNumericCondition(saveLogThread,start,ntcTagReport.getSearchTag(),"searchTag");
// 验证serachTag
ntcReportService.checkNumericCondition(saveLogThread, start, ntcTagReport.getSearchTag(), "searchTag");
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcTagReport.class.getSimpleName(), page.getOrderBy());
@@ -164,11 +173,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcTagReport(new Page<NtcTagReport>(request, response, NtcTagReport.class),
ntcTagReport);
reportPage = ntcReportService
.findNtcTagReport(new Page<NtcTagReport>(request, response, NtcTagReport.class), ntcTagReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("标签统计查询失败:"+e.getMessage());
logger.error("标签统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("标签统计查询失败:" + e.getMessage());
logger.error("标签统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"标签统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -181,23 +190,26 @@ public class SingleDimensionReport extends BaseRestController {
}
}
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "标签统计查询成功",
reportPage, 0);
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "标签统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcAttrTypeReport", method = RequestMethod.GET)
@ApiOperation(value = "性质统计查询服务", httpMethod = "GET", notes = "性质统计查询服务基于性质与业务类型service维度聚合")
public Map<String, ?> ntcAttrTypeReport(Page page, NtcAttrTypeReport ntcAttrTypeReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
public Map<String, ?> ntcAttrTypeReport(Page page, NtcAttrTypeReport ntcAttrTypeReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(ntcAttrTypeReport,false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcAttrTypeReport, NtcAttrTypeReport.class, page);
//验证searchAttrType
ntcReportService.checkNumericCondition(saveLogThread,start,ntcAttrTypeReport.getSearchAttrType(),"searchAttrType");
resetReportTime(ntcAttrTypeReport, false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcAttrTypeReport, NtcAttrTypeReport.class,
page);
// 验证searchAttrType
ntcReportService.checkNumericCondition(saveLogThread, start, ntcAttrTypeReport.getSearchAttrType(),
"searchAttrType");
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcAttrTypeReport.class.getSimpleName(), page.getOrderBy());
@@ -205,11 +217,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcAttrTypeReport(new Page<NtcAttrTypeReport>(request, response, NtcAttrTypeReport.class),
ntcAttrTypeReport);
reportPage = ntcReportService.findNtcAttrTypeReport(
new Page<NtcAttrTypeReport>(request, response, NtcAttrTypeReport.class), ntcAttrTypeReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("性质统计查询失败:"+e.getMessage());
logger.error("性质统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("性质统计查询失败:" + e.getMessage());
logger.error("性质统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"性质统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -222,25 +234,25 @@ public class SingleDimensionReport extends BaseRestController {
}
}
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "性质统计查询成功",
reportPage, 0);
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "性质统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcLwhhReport", method = RequestMethod.GET)
@ApiOperation(value = "来文函号统计查询服务", httpMethod = "GET", notes = "来文函号统计查询服务基于来文函号与业务类型service维度聚合")
public Map<String, ?> ntcLwhhReport(Page page, NtcLwhhReport ntcLwhhReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(ntcLwhhReport,false);
//验证实时报表
resetReportTime(ntcLwhhReport, false);
// 验证实时报表
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcLwhhReport, NtcLwhhReport.class, page);
//验证serachCfgId
ntcReportService.checkNumericCondition(saveLogThread,start,ntcLwhhReport.getSearchLwhh(),"searchLwhh");
// 验证serachCfgId
ntcReportService.checkNumericCondition(saveLogThread, start, ntcLwhhReport.getSearchLwhh(), "searchLwhh");
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcLwhhReport.class.getSimpleName(), page.getOrderBy());
@@ -248,11 +260,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcLwhhReport(new Page<NtcLwhhReport>(request, response, NtcLwhhReport.class),
ntcLwhhReport);
reportPage = ntcReportService
.findNtcLwhhReport(new Page<NtcLwhhReport>(request, response, NtcLwhhReport.class), ntcLwhhReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("来文函号统计查询失败:"+e.getMessage());
logger.error("来文函号统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("来文函号统计查询失败:" + e.getMessage());
logger.error("来文函号统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"来文函号统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -265,23 +277,24 @@ public class SingleDimensionReport extends BaseRestController {
}
}
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "来文函号统计查询成功",
reportPage, 0);
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "来文函号统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcSrcipDomesticReport", method = RequestMethod.GET)
@ApiOperation(value = "境内源IP统计查询服务", httpMethod = "GET", notes = "境内源IP统计查询服务基于源IP所属省、市与业务类型service维度聚合")
public Map<String, ?> ntcSrcipDomesticReport(Page page, NtcSrcipDomesticReport ntcSrcipDomesticReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
public Map<String, ?> ntcSrcipDomesticReport(Page page, NtcSrcipDomesticReport ntcSrcipDomesticReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET,
request, null);
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(ntcSrcipDomesticReport,false);
//验证实时报表
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcSrcipDomesticReport, NtcSrcipDomesticReport.class, page);
resetReportTime(ntcSrcipDomesticReport, false);
// 验证实时报表
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcSrcipDomesticReport,
NtcSrcipDomesticReport.class, page);
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcSrcipDomesticReport.class.getSimpleName(), page.getOrderBy());
@@ -289,11 +302,12 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcSrcipDomesticReport(new Page<NtcSrcipDomesticReport>(request, response, NtcSrcipDomesticReport.class),
reportPage = ntcReportService.findNtcSrcipDomesticReport(
new Page<NtcSrcipDomesticReport>(request, response, NtcSrcipDomesticReport.class),
ntcSrcipDomesticReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("境内源IP统计查询失败:"+e.getMessage());
logger.error("境内源IP统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("境内源IP统计查询失败:" + e.getMessage());
logger.error("境内源IP统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"境内源IP统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -306,10 +320,10 @@ public class SingleDimensionReport extends BaseRestController {
}
}
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "境内源IP统计查询成功",
reportPage, 0);
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "境内源IP统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcDestipCountryReport", method = RequestMethod.GET)
@ApiOperation(value = "各国家目的IP统计查询服务", httpMethod = "GET", notes = "各国家目的IP统计查询服务基于目的IP所属国家与业务类型service维度聚合")
public Map<String, ?> ntcDestipCountryReport(Page page, NtcDestipCountryReport ntcDestipCountryReport, Model model,
@@ -320,7 +334,7 @@ public class SingleDimensionReport extends BaseRestController {
Page<?> reportPage = null;
try {
resetReportTime(ntcDestipCountryReport,false);
resetReportTime(ntcDestipCountryReport, false);
// 验证实时报表
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcDestipCountryReport,
NtcDestipCountryReport.class, page);
@@ -335,8 +349,8 @@ public class SingleDimensionReport extends BaseRestController {
new Page<NtcDestipCountryReport>(request, response, NtcDestipCountryReport.class),
ntcDestipCountryReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("各国家目的IP统计查询失败:"+e.getMessage());
logger.error("各国家目的IP统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("各国家目的IP统计查询失败:" + e.getMessage());
logger.error("各国家目的IP统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"各国家目的IP统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -363,7 +377,7 @@ public class SingleDimensionReport extends BaseRestController {
Page<?> reportPage = null;
try {
resetReportTime(ntcEntranceReport,false);
resetReportTime(ntcEntranceReport, false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcEntranceReport, NtcEntranceReport.class,
page);
// 验证searchEntrance
@@ -379,8 +393,8 @@ public class SingleDimensionReport extends BaseRestController {
reportPage = ntcReportService.findNtcEntranceReport(
new Page<NtcEntranceReport>(request, response, NtcEntranceReport.class), ntcEntranceReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("运营商局点统计查询失败:"+e.getMessage());
logger.error("运营商局点统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("运营商局点统计查询失败:" + e.getMessage());
logger.error("运营商局点统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"运营商局点统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -396,35 +410,19 @@ public class SingleDimensionReport extends BaseRestController {
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "运营商局点统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcURLReport", method = RequestMethod.GET)
@ApiOperation(value = "URL统计查询服务", httpMethod = "GET", notes = "URL统计查询服务")
public Map<String, ?> ntcURLReport(Page page, NtcURLReport urlReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> ntcURLReport(Page page, NtcURLReport urlReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
Page<?> reportPage = null;
try {
resetReportTime(urlReport,false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, urlReport, NtcURLReport.class,
page);
resetReportTime(urlReport, false);
ntcReportService.queryReportConditionCheck(saveLogThread, start, urlReport, NtcURLReport.class, page);
String orderBy = "";
if (null != page.getOrderBy() && !page.getOrderBy().equals("")) {
orderBy = Page.getOrderBySql(NtcURLReport.class.getSimpleName(), page.getOrderBy());
@@ -432,11 +430,11 @@ public class SingleDimensionReport extends BaseRestController {
orderBy = "report_time";
}
page.setOrderBy(orderBy);
reportPage = ntcReportService.findNtcURLReport(
new Page<NtcURLReport>(request, response, NtcURLReport.class), urlReport);
reportPage = ntcReportService
.findNtcURLReport(new Page<NtcURLReport>(request, response, NtcURLReport.class), urlReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("URL统计查询失败:"+e.getMessage());
logger.error("URL统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("URL统计查询失败:" + e.getMessage());
logger.error("URL统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"URL统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -452,30 +450,22 @@ public class SingleDimensionReport extends BaseRestController {
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "URL统计查询成功", reportPage,
0);
}
@RequestMapping(value = "/ntcRadiusReport", method = RequestMethod.GET)
@ApiOperation(value = "用户行为统计查询服务", httpMethod = "GET", notes = "用户行为统计查询服务基于用户名或接入IP维度聚合")
public Map<String, ?> ntcRadiusReport(NtcRadiusReport ntcRadiusReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
public Map<String, ?> ntcRadiusReport(NtcRadiusReport ntcRadiusReport, Model model, HttpServletRequest request,
HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
List dataList = null;
try {
ntcReportService.checkNtcRadiusReportCondition(saveLogThread, start, ntcRadiusReport);
dataList= ntcReportService.findNtcRadiusReport(ntcRadiusReport);
dataList = ntcReportService.findNtcRadiusReport(ntcRadiusReport);
} catch (Exception e) {
saveLogThread.setExceptionInfo("用户行为统计查询失败:"+e.getMessage());
logger.error("用户行为统计查询失败:"+ExceptionUtil.getExceptionMsg(e));
saveLogThread.setExceptionInfo("用户行为统计查询失败:" + e.getMessage());
logger.error("用户行为统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"用户行为统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
@@ -491,39 +481,75 @@ public class SingleDimensionReport extends BaseRestController {
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "用户行为统计查询成功", dataList,
0);
}
/**
* @Description:
* @author (zdx)
* @date 2018年7月12日 上午11:01:30
* @param entity
* @throws Exception
*/
public void resetReportTime(NtcReportEntity<?> entity,Boolean isTotal) throws Exception {
//日志总量统计查询全部
if ("1".equals(entity.getSearchBusinessType())&&isTotal) {
return ;
@RequestMapping(value = "/ntcIpRangeReport", method = RequestMethod.GET)
@ApiOperation(value = "ip范围段统计查询服务", httpMethod = "GET", notes = "ip范围段统计查询服务")
public Map<String, ?> ntcIpRangeReport(Page page, NtcIpRangeReport ntcIpRangeReport, Model model,
HttpServletRequest request, HttpServletResponse response) {
long start = System.currentTimeMillis();
AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request,
null);
try {
// List<NtcIpRangeReport> list=new ArrayList<>();
// ntcIpRangeReport.setIpStart("192.168.10.121");
// ntcIpRangeReport.setIpEnd("192.168.10.122");
// ntcIpRangeReport.setIpEndNum(3232238202l);
// ntcIpRangeReport.setIpStartNum(3232238201l);
// ntcIpRangeReport.setIpSub("255.255.255.252");
// list.add(ntcIpRangeReport);
page.setList( ntcReportService.findNtcIpRangeReport(ntcIpRangeReport));
} catch (Exception e) {
saveLogThread.setExceptionInfo("ip范围段统计查询失败:" + e.getMessage());
logger.error("ip范围段统计查询失败:" + ExceptionUtil.getExceptionMsg(e));
if (e instanceof RestServiceException) {
throw new RestServiceException(saveLogThread, System.currentTimeMillis() - start,
"ip范围段统计查询失败:" + e.getMessage(), ((RestServiceException) e).getErrorCode());
} else if (e instanceof ServiceRuntimeException) {
throw new ServiceRuntimeException(saveLogThread, System.currentTimeMillis() - start,
"ip范围段统计查询失败:" + e.getMessage(), ((ServiceRuntimeException) e).getErrorCode());
} else {
throw new ServiceRuntimeException(saveLogThread, System.currentTimeMillis() - start,
"ip范围段统计查询失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue());
}
}
if (StringUtil.isEmpty(entity.getSearchReportStartTime())&&StringUtil.isEmpty(entity.getSearchReportEndTime())) {
String dateType = "minute"; //默认为分钟
if (!isTotal){
return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "ip范围段统计查询成功", page, 0);
}
/**
* @Description:
* @author (zdx)
* @date 2018年7月12日 上午11:01:30
* @param entity
* @throws Exception
*/
public void resetReportTime(NtcReportEntity<?> entity, Boolean isTotal) throws Exception {
// 日志总量统计查询全部
if ("1".equals(entity.getSearchBusinessType()) && isTotal) {
return;
}
if (StringUtil.isEmpty(entity.getSearchReportStartTime())
&& StringUtil.isEmpty(entity.getSearchReportEndTime())) {
String dateType = "minute"; // 默认为分钟
if (!isTotal) {
if (entity.getSearchBusinessType().equals("2")) {
dateType = "hour";
}else if (entity.getSearchBusinessType().equals("3")) {
} else if (entity.getSearchBusinessType().equals("3")) {
dateType = "daily";
}else if (entity.getSearchBusinessType().equals("4")) {
} else if (entity.getSearchBusinessType().equals("4")) {
dateType = "month";
}
}else{
} else {
if (entity.getSearchBusinessType().equals("3")) {
dateType = "hour";
}else if (entity.getSearchBusinessType().equals("4")) {
} else if (entity.getSearchBusinessType().equals("4")) {
dateType = "daily";
}else if (entity.getSearchBusinessType().equals("5")) {
} else if (entity.getSearchBusinessType().equals("5")) {
dateType = "month";
}
}
Map<String, String> map = DateUtils.getLocalTime(entity.getSearchReportStartTime(),
entity.getSearchReportEndTime(), Constants.PZ_REPORT_TIME, dateType);
entity.getSearchReportEndTime(), Constants.PZ_REPORT_TIME, dateType);
entity.setSearchReportStartTime(map.get("startTime"));
entity.setSearchReportEndTime(map.get("endTime"));
}