diff --git a/src/main/java/com/nis/web/controller/restful/SingleDimensionReportController.java b/src/main/java/com/nis/web/controller/restful/SingleDimensionReportController.java index 9109842..963216c 100644 --- a/src/main/java/com/nis/web/controller/restful/SingleDimensionReportController.java +++ b/src/main/java/com/nis/web/controller/restful/SingleDimensionReportController.java @@ -110,6 +110,48 @@ public class SingleDimensionReportController extends BaseRestController { return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "配置日志总量统计成功", ntcPzReportPage, 0); } + @RequestMapping(value = "/ntcPzCountReport", method = RequestMethod.GET) + @ApiOperation(value = "配置日志总量统计", httpMethod = "GET", notes = "配置命中日志数量实时统计报表,具体应用于界面配置报表业务") + public Map ntcPzCountReport(Page page, NtcPzReport ntcPzReport, Model model, HttpServletRequest request, + HttpServletResponse response) { + long start = System.currentTimeMillis(); + AuditLogThread saveLogThread = super.saveRequestLog(servicesRequestLogService, Constants.OPACTION_GET, request, + null); + + Page ntcPzReportPage = null; + try { + resetReportTime(ntcPzReport, true); + // 验证实时报表 + ntcReportService.queryReportConditionCheck(saveLogThread, start, ntcPzReport, NtcPzReport.class, page); + // 验证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()); + } else { + orderBy = "report_time"; + } + page.setOrderBy(orderBy); + ntcPzReportPage = ntcReportService + .findNtcPzCountReport(new Page(request, response, NtcPzReport.class), ntcPzReport); + } catch (Exception 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()); + } else if (e instanceof ServiceRuntimeException) { + throw new ServiceRuntimeException(saveLogThread, System.currentTimeMillis() - start, + "配置日志总量统计失败:" + e.getMessage(), ((ServiceRuntimeException) e).getErrorCode()); + } else { + throw new ServiceRuntimeException(saveLogThread, System.currentTimeMillis() - start, + "配置日志总量统计失败:" + e.getMessage(), RestBusinessCode.service_runtime_error.getValue()); + } + } + + return serviceLogResponse(saveLogThread, System.currentTimeMillis() - start, request, "配置日志总量统计成功", + ntcPzReportPage, 0); + } @RequestMapping(value = "/ntcServiceReport", method = RequestMethod.GET) @ApiOperation(value = "业务类型统计查询服务", httpMethod = "GET", notes = "业务类型统计查询服务,基于业务类型(service)维度聚合") diff --git a/src/main/java/com/nis/web/dao/NtcReportDao.java b/src/main/java/com/nis/web/dao/NtcReportDao.java index 62c2cd0..dbea3cc 100644 --- a/src/main/java/com/nis/web/dao/NtcReportDao.java +++ b/src/main/java/com/nis/web/dao/NtcReportDao.java @@ -25,6 +25,7 @@ import com.nis.domain.restful.NtcURLIpReport; @MyBatisDao public interface NtcReportDao extends CrudDao { List findNtcPzReport(NtcPzReport pz); + List findNtcPzCountReport(NtcPzReport pz); List findNtcServiceReport(NtcServiceReport pz); diff --git a/src/main/java/com/nis/web/dao/NtcReportDao.xml b/src/main/java/com/nis/web/dao/NtcReportDao.xml index 4003fd6..d817858 100644 --- a/src/main/java/com/nis/web/dao/NtcReportDao.xml +++ b/src/main/java/com/nis/web/dao/NtcReportDao.xml @@ -144,7 +144,8 @@ - + NTC_PZ_STAT_HOUR @@ -194,7 +195,8 @@ - + NTC_PZ_STAT_HOUR + + + + + diff --git a/src/main/java/com/nis/web/service/restful/NtcReportService.java b/src/main/java/com/nis/web/service/restful/NtcReportService.java index 786eccf..553f06f 100644 --- a/src/main/java/com/nis/web/service/restful/NtcReportService.java +++ b/src/main/java/com/nis/web/service/restful/NtcReportService.java @@ -60,6 +60,11 @@ public class NtcReportService extends BaseLogService { } } + public Page findNtcPzCountReport(Page page, NtcPzReport entity) throws Exception { + entity.setPage(page); + page.setList(dao.findNtcPzCountReport(entity)); + return page; + } public Page findNtcServiceReport(Page page, NtcServiceReport entity) throws Exception {