diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java new file mode 100644 index 0000000..58cc23b --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java @@ -0,0 +1,31 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class GasDectorData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private String devcode; + private String imsi; + private String gasSensorState; + private Double gasSampleValue; + private String sinr; + private String rsrp; + private String pci; + private String heartbeatTime; + private String cellId; + private String batteryVoltage; + private String batteryValue; + private String iccid; + private Date uptime; + private Date logtime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java new file mode 100644 index 0000000..58cc23b --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java @@ -0,0 +1,31 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class GasDectorData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private String devcode; + private String imsi; + private String gasSensorState; + private Double gasSampleValue; + private String sinr; + private String rsrp; + private String pci; + private String heartbeatTime; + private String cellId; + private String batteryVoltage; + private String batteryValue; + private String iccid; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java new file mode 100644 index 0000000..3ee3ca3 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class PantiltData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private Long positionCode; + private String devcode; + private Double dircetion; + private Double pitch; + private Double concentration; + private Date uptime; + private Date logtime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java new file mode 100644 index 0000000..58cc23b --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java @@ -0,0 +1,31 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class GasDectorData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private String devcode; + private String imsi; + private String gasSensorState; + private Double gasSampleValue; + private String sinr; + private String rsrp; + private String pci; + private String heartbeatTime; + private String cellId; + private String batteryVoltage; + private String batteryValue; + private String iccid; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java new file mode 100644 index 0000000..3ee3ca3 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class PantiltData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private Long positionCode; + private String devcode; + private Double dircetion; + private Double pitch; + private Double concentration; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java new file mode 100644 index 0000000..ed397eb --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; + +public interface ThirdPartyDataService { + + ResponseData getGasDectorListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); + + ResponseData getPantiltDataListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java new file mode 100644 index 0000000..58cc23b --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java @@ -0,0 +1,31 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class GasDectorData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private String devcode; + private String imsi; + private String gasSensorState; + private Double gasSampleValue; + private String sinr; + private String rsrp; + private String pci; + private String heartbeatTime; + private String cellId; + private String batteryVoltage; + private String batteryValue; + private String iccid; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java new file mode 100644 index 0000000..3ee3ca3 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class PantiltData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private Long positionCode; + private String devcode; + private Double dircetion; + private Double pitch; + private Double concentration; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java new file mode 100644 index 0000000..ed397eb --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; + +public interface ThirdPartyDataService { + + ResponseData getGasDectorListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); + + ResponseData getPantiltDataListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java new file mode 100644 index 0000000..182c9d4 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java @@ -0,0 +1,68 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dao.ThirdPartyDataMapper; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.dao.DataAccessException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Slf4j +@Service +public class ThirdPartyDataServiceImpl implements ThirdPartyDataService { + + private final ThirdPartyDataMapper thirdPartyMapper; + private final AbstractPermissionContext permissionService; + + public ThirdPartyDataServiceImpl(ThirdPartyDataMapper thirdPartyMapper, AbstractPermissionContext permissionService) { + this.thirdPartyMapper = thirdPartyMapper; + this.permissionService = permissionService; + } + + @Override + public ResponseData getGasDectorListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords) { + ResponseData responseData = new ResponseData(); + try { + List gasDectorDataDtoList = thirdPartyMapper.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + gasDectorDataDtoList.forEach(gasDectorDataDto -> { + gasDectorDataDto.setDeptName(permissionService.getDeptService().getDeptName(gasDectorDataDto.getDeptid())); + }); + page.setRecords(gasDectorDataDtoList); + responseData.setData(page); + responseData.setMessage("查询成功"); + responseData.setCode(200); + } catch (DataAccessException dex) { + log.error("主题:查询燃气探测仪设备数据出现数据异常,部门编号{},关键字{},异常信息{}", deptid, keyWords, dex); + responseData.setMessage("查询异常"); + responseData.setCode(500); + } + return responseData; + } + + @Override + public ResponseData getPantiltDataListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords) { + ResponseData responseData = new ResponseData(); + try { + List pantiltDtoList = thirdPartyMapper.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + page.setRecords(pantiltDtoList); + responseData.setData(page); + responseData.setMessage("查询成功"); + responseData.setCode(200); + } catch (DataAccessException dex) { + log.error("主题:查询燃气探测仪设备数据出现数据异常,部门编号{},关键字{},异常信息{}", deptid, keyWords, dex); + responseData.setMessage("查询异常"); + responseData.setCode(500); + } + return responseData; + } + +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java index 3689aa1..0a0b7f3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/StaticsController.java @@ -136,6 +136,7 @@ } return responseData; } + /** * 根据权属单位统计工单数 */ @@ -187,35 +188,34 @@ } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmContent - * @return + * 报警井排名 */ @RequestMapping("/alarmWellListPage") @ResponseBody - public Object alarmWellListPage(String beginTime, String endTime,String alarmContent) { + public Object alarmWellListPage(String beginTime, String endTime, String alarmContent) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.alarmWellListPage(dataScope,beginTime,endTime,alarmContent); + return statisticsService.alarmWellListPage(dataScope, beginTime, endTime, alarmContent); } /** - * 报警井排名 - * @param beginTime - * @param endTime - * @param alarmType - * @return + * 报警井排名 */ @RequestMapping("/alarmtype/count") @ResponseBody - public Object getAlarmCountBytype(String beginTime, String endTime,String alarmType) { + public Object getAlarmCountByType(String beginTime, String endTime, String alarmType) { DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - return statisticsService.getAlarmCountBytype(dataScope,beginTime,endTime,alarmType); + return statisticsService.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); } - - + /** + * 报警情况统计 + */ + @RequestMapping("/alarmtype/alarmStaticsByStatus") + @ResponseBody + public Object getAlarmByStatus(String beginTime, String endTime, String alarmType) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + return statisticsService.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java index 5583e9c..30ad198 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/StatisticMapper.java @@ -28,6 +28,9 @@ List> alarmWellListPage(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmContent") String alarmContent); - List> getAlarmCountBytype(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, + List> getAlarmCountByType(@Param("dataScope") DataScope dataScope, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("alarmType") String alarmType); + + List> getAlarmByStatus(@Param("dataScope") DataScope dataScope,@Param("beginTime") String beginTime, + @Param("endTime") String endTime,@Param("alarmType") String alarmType); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 3601d60..1d68ea3 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -101,57 +101,15 @@ - + and datediff(now(),aj.create_time) ${paramDay} - + and date_part(now(),aj.create_time)${paramDay} - + and date_part(now(),aj.create_time) ${paramDay} @@ -309,8 +267,8 @@ ORDER BY alarmCount DESC - + SELECT ALARM_CONTENT AS "alarmContent",COUNT(*) AS "alarmCount",DEPTID AS deptid FROM alarm_records ar LEFT JOIN bus_well_info bwi ON bwi.WELL_CODE=ar.WELL_CODE WHERE 1=1 @@ -333,4 +291,29 @@ ORDER BY alarmCount DESC + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java index 0db2e27..24e53d1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/IStatisticsService.java @@ -23,7 +23,12 @@ List> alarmsByDay(String beginTime, String endTime, DataScope dataScope); - Object alarmWellListPage(DataScope dataScope,String beginTime,String endTime,String alarmContent); + Object alarmWellListPage(DataScope dataScope, String beginTime, String endTime, String alarmContent); - Object getAlarmCountBytype(DataScope dataScope,String beginTime,String endTime,String alarmType); + Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType); + + Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType); + } + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java index a75b472..9be7fba 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/StatisticServiceImpl.java @@ -160,10 +160,10 @@ return responseData; } - public Object getAlarmCountBytype(DataScope dataScope, String beginTime, String endTime, String alarmType) { + public Object getAlarmCountByType(DataScope dataScope, String beginTime, String endTime, String alarmType) { ResponseData responseData = new ResponseData(); try { - List> alarmWellList = statisticMapper.getAlarmCountBytype(dataScope, beginTime, endTime, alarmType); + List> alarmWellList = statisticMapper.getAlarmCountByType(dataScope, beginTime, endTime, alarmType); alarmWellList.forEach( alarmWell -> alarmWell.put("deptName", permissionService.getDeptService().getDeptName(alarmWell.get("deptid").toString())) ); @@ -177,4 +177,22 @@ } return responseData; } + + public Object getAlarmByStatus(DataScope dataScope, String beginTime, String endTime, String alarmType) { + ResponseData responseData = new ResponseData(); + try { + List> alarmWellList = statisticMapper.getAlarmByStatus(dataScope, beginTime, endTime, alarmType); + alarmWellList.forEach( + alarmWell->alarmWell.put("cancelAlarm",Integer.valueOf(alarmWell.get("totalAlarm").toString())-Integer.valueOf(alarmWell.get("alarmings").toString())) + ); + responseData.setCode(200); + responseData.setMessage("查询成功"); + responseData.setData(alarmWellList); + } catch (DataAccessException ex) { + log.error("主题:报警井查询出现异常,异常信息{}", ex); + responseData.setCode(500); + responseData.setMessage("查询异常"); + } + return responseData; + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java new file mode 100644 index 0000000..7ff0de0 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/ThirdPartyController.java @@ -0,0 +1,86 @@ +package com.casic.missiles.modular.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +@Slf4j +@RestController +public class ThirdPartyController extends ExportController { + + private final AbstractPermissionContext permissionService; + + private final ThirdPartyDataService thirdPartyService; + + public ThirdPartyController(AbstractPermissionContext permissionService, ThirdPartyDataService thirdPartyService) { + this.permissionService = permissionService; + this.thirdPartyService = thirdPartyService; + } + + /** + * 第三方燃气列表 + */ + @RequestMapping("/gasdector/listPage") + public Object getGasDectorListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方燃气导出 + */ + @RequestMapping("/gasdector/export") + public void getGasDectorExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(GasDectorDataDto.class, page.getRecords(), DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方燃气数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + + /** + * 第三方甲烷列表 + */ + @RequestMapping("/pantilt/listpage") + public Object getPantiltDataListPage(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + ResponseData responseData = thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + responseData.setData(super.packForBT(page)); + return responseData; + } + + /** + * 第三方甲烷导出 + */ + @RequestMapping("/pantilt/export") + public void getPantiltDataExport(String keyWords, String endTime, String beginTime, String deptid) { + Page page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + thirdPartyService.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + try { + super.exportExcel(PantiltDataDto.class, page.getRecords(), DeviceExportEnum.METHANE_EXPORT.getFileName()); + } catch (IOException iex) { + log.error("主题,第三方甲烷数据导出异常,关键字{},部门编号{},异常信息{}", keyWords, dataScope, iex); + } + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java new file mode 100644 index 0000000..372f46f --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/ThirdPartyDataMapper.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThirdPartyDataMapper { + + List getGasDectorListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + + List getPantiltDataListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, + @Param("deptid") String deptid, @Param("endTime") String endTime, + @Param("beginTime") String beginTime, @Param("keywords") String keyWords); + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml index f804cf0..8c6c326 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DataAnalysisMapper.xml @@ -44,6 +44,18 @@ BFZT AS bfzt,d1.simplename AS "deptName",d2.id AS "responsibleDept",d2.simplename AS "responsibleDeptName" + + and datediff(now(),dg.UPTIME) ${paramDay} + + + + AND date_part('day',now()-dg.UPTIME) ${paramDay} + + + + and date_part(now(),dg.UPTIME) ${paramDay} + + '%' || #{keywords}|| '%' @@ -54,7 +66,6 @@ CONCAT('%',#{keywords},'%') - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') @@ -79,19 +90,6 @@ TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') - - - and datediff(now(),dg.UPTIME) ${paramDay} - - - - AND date_part('day',now()-dg.UPTIME) ${paramDay} - - - - and date_part(now(),dg.UPTIME) ${paramDay} - - '%' || #{wellCode}|| '%' diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml new file mode 100644 index 0000000..ac960ad --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/ThirdPartyDataMapper.xml @@ -0,0 +1,128 @@ + + + + + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + TO_CHAR(${paramTime},'yyyy-MM-dd HH24:mi:ss') + + + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + + + + + \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java new file mode 100644 index 0000000..58cc23b --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/GasDectorDataDto.java @@ -0,0 +1,31 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class GasDectorData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private String devcode; + private String imsi; + private String gasSensorState; + private Double gasSampleValue; + private String sinr; + private String rsrp; + private String pci; + private String heartbeatTime; + private String cellId; + private String batteryVoltage; + private String batteryValue; + private String iccid; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java new file mode 100644 index 0000000..3ee3ca3 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/entity/PantiltDataDto.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-13 + */ +@Data +public class PantiltData { + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + private Long positionCode; + private String devcode; + private Double dircetion; + private Double pitch; + private Double concentration; + private Date uptime; + private Date logtime; +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java new file mode 100644 index 0000000..ed397eb --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/ThirdPartyDataService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; + +public interface ThirdPartyDataService { + + ResponseData getGasDectorListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); + + ResponseData getPantiltDataListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords); +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java new file mode 100644 index 0000000..182c9d4 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/ThirdPartyDataServiceImpl.java @@ -0,0 +1,68 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dao.ThirdPartyDataMapper; +import com.casic.missiles.modular.system.model.GasDectorDataDto; +import com.casic.missiles.modular.system.model.PantiltDataDto; +import com.casic.missiles.modular.system.service.ThirdPartyDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.dao.DataAccessException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Slf4j +@Service +public class ThirdPartyDataServiceImpl implements ThirdPartyDataService { + + private final ThirdPartyDataMapper thirdPartyMapper; + private final AbstractPermissionContext permissionService; + + public ThirdPartyDataServiceImpl(ThirdPartyDataMapper thirdPartyMapper, AbstractPermissionContext permissionService) { + this.thirdPartyMapper = thirdPartyMapper; + this.permissionService = permissionService; + } + + @Override + public ResponseData getGasDectorListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords) { + ResponseData responseData = new ResponseData(); + try { + List gasDectorDataDtoList = thirdPartyMapper.getGasDectorListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + gasDectorDataDtoList.forEach(gasDectorDataDto -> { + gasDectorDataDto.setDeptName(permissionService.getDeptService().getDeptName(gasDectorDataDto.getDeptid())); + }); + page.setRecords(gasDectorDataDtoList); + responseData.setData(page); + responseData.setMessage("查询成功"); + responseData.setCode(200); + } catch (DataAccessException dex) { + log.error("主题:查询燃气探测仪设备数据出现数据异常,部门编号{},关键字{},异常信息{}", deptid, keyWords, dex); + responseData.setMessage("查询异常"); + responseData.setCode(500); + } + return responseData; + } + + @Override + public ResponseData getPantiltDataListPage(Page page, DataScope dataScope, + String deptid, String endTime, String beginTime, String keyWords) { + ResponseData responseData = new ResponseData(); + try { + List pantiltDtoList = thirdPartyMapper.getPantiltDataListPage(page, dataScope, deptid, endTime, beginTime, keyWords); + page.setRecords(pantiltDtoList); + responseData.setData(page); + responseData.setMessage("查询成功"); + responseData.setCode(200); + } catch (DataAccessException dex) { + log.error("主题:查询燃气探测仪设备数据出现数据异常,部门编号{},关键字{},异常信息{}", deptid, keyWords, dex); + responseData.setMessage("查询异常"); + responseData.setCode(500); + } + return responseData; + } + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index 25e292b..f76515c 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -22,7 +22,8 @@ DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), - ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"), + METHANE_EXPORT("methaneData.xlsx", "methaneData.xlsx", "甲烷数据"); /** * 导出模板相对路径 */