diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java index 243ce8d..a78f2c9 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; @@ -54,4 +55,6 @@ List getPantiltList(@Param("dataScope") DataScope dataScope, @Param("devcode") String devcode, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("wellCode") String wellCode); List> selectDeviceList(@Param("tableName") String tableName,@Param("tableColumns")String tableColumns,@Param("orderColumn")String orderColumn); + + List> selectAlarmRecords(@Param("deviceType")Integer deviceType,@Param("startTime")String startTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java index 243ce8d..a78f2c9 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; @@ -54,4 +55,6 @@ List getPantiltList(@Param("dataScope") DataScope dataScope, @Param("devcode") String devcode, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("wellCode") String wellCode); List> selectDeviceList(@Param("tableName") String tableName,@Param("tableColumns")String tableColumns,@Param("orderColumn")String orderColumn); + + List> selectAlarmRecords(@Param("deviceType")Integer deviceType,@Param("startTime")String startTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml index 32ab85a..0d55105 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml @@ -744,6 +744,42 @@ + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java index 243ce8d..a78f2c9 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; @@ -54,4 +55,6 @@ List getPantiltList(@Param("dataScope") DataScope dataScope, @Param("devcode") String devcode, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("wellCode") String wellCode); List> selectDeviceList(@Param("tableName") String tableName,@Param("tableColumns")String tableColumns,@Param("orderColumn")String orderColumn); + + List> selectAlarmRecords(@Param("deviceType")Integer deviceType,@Param("startTime")String startTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml index 32ab85a..0d55105 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml @@ -744,6 +744,42 @@ + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java new file mode 100644 index 0000000..be77903 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.core.base.model.DataFieldDefine; + +import java.util.ArrayList; +import java.util.List; + +public enum AlarmDataExportEnum { + DATA_ALARM(1, "井盖状态", new ArrayList() {{ + add(new DataFieldDefine("id", "id")); + add(new DataFieldDefine("devcode", "devcode")); + add(new DataFieldDefine("well_code", "well_code")); + add(new DataFieldDefine("position", "position")); + add(new DataFieldDefine("alarm_num", "alarm_num")); + }}); + String typeName; + Integer type; + List defines; + + AlarmDataExportEnum(Integer type, String typeName, List defines) { + this.type = type; + this.typeName = typeName; + this.defines = defines; + } + + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public List getDefines() { + return defines; + } + + public void setDefines(List defines) { + this.defines = defines; + } +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java index 243ce8d..a78f2c9 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; @@ -54,4 +55,6 @@ List getPantiltList(@Param("dataScope") DataScope dataScope, @Param("devcode") String devcode, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("wellCode") String wellCode); List> selectDeviceList(@Param("tableName") String tableName,@Param("tableColumns")String tableColumns,@Param("orderColumn")String orderColumn); + + List> selectAlarmRecords(@Param("deviceType")Integer deviceType,@Param("startTime")String startTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml index 32ab85a..0d55105 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml @@ -744,6 +744,42 @@ + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java new file mode 100644 index 0000000..be77903 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.core.base.model.DataFieldDefine; + +import java.util.ArrayList; +import java.util.List; + +public enum AlarmDataExportEnum { + DATA_ALARM(1, "井盖状态", new ArrayList() {{ + add(new DataFieldDefine("id", "id")); + add(new DataFieldDefine("devcode", "devcode")); + add(new DataFieldDefine("well_code", "well_code")); + add(new DataFieldDefine("position", "position")); + add(new DataFieldDefine("alarm_num", "alarm_num")); + }}); + String typeName; + Integer type; + List defines; + + AlarmDataExportEnum(Integer type, String typeName, List defines) { + this.type = type; + this.typeName = typeName; + this.defines = defines; + } + + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public List getDefines() { + return defines; + } + + public void setDefines(List defines) { + this.defines = defines; + } +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java index b21799f..5bc86fd 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java @@ -74,4 +74,13 @@ * 设备数据查询 */ List> selectDeviceList(DeviceDataExportEnum exportEnum,LambdaQueryWrapper query); + + /** + * 告警信息查询 + * @param deviceType 设备类型 + * @param startTime 起始时间 + * @param endTime 结束时间 + * @return + */ + List> selectAlarmRecords(Integer deviceType, String startTime, String endTime); } \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java index ace126f..197fc63 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DataOpsExportController.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.model.exception.ServiceException; import com.casic.missiles.modular.system.converter.EasyExcelLocalDateConverter; +import com.casic.missiles.modular.system.enums.AlarmDataExportEnum; import com.casic.missiles.modular.system.enums.DeviceDataExportEnum; import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.service.DeviceDataListService; @@ -76,13 +77,21 @@ export(exportEnum.getDataFieldDefine(), list, exportEnum.getTableName()); } } + + @GetMapping(value = "/data/alarmExport") + public void alarmExport(Integer deviceType,String startTime,String endTime){ + //告警统计查询 + List> alarms = deviceDataListService.selectAlarmRecords(deviceType,startTime,endTime); + export(AlarmDataExportEnum.DATA_ALARM.getDefines(),alarms,AlarmDataExportEnum.DATA_ALARM.name()); + } + @SneakyThrows private void exportMuti(List sheetDataList) { HttpServletResponse response = this.getHttpServletResponse(); ExcelWriter excelWriter = null; try { Integer sheetNo = 0; - excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); + excelWriter = EasyExcel.write(response.getOutputStream()).registerConverter(new EasyExcelLocalDateConverter()).build(); for (SheetData sheetData : sheetDataList) { sheetNo++; //转换文件头设置 @@ -101,13 +110,13 @@ setExResponse(response); WriteSheet writeSheet = EasyExcel.writerSheet(sheetNo, sheetData.getSheetName()).head(heads).build(); // 这里需要设置不关闭流 - excelWriter.write(dataList,writeSheet); + excelWriter.write(dataList, writeSheet); } - }catch (Exception e) { + } catch (Exception e) { log.error("文件导出失败", e); // 重置response setCatchResponse(response, e.getMessage()); - }finally { + } finally { // 千万别忘记finish 会帮忙关闭流 if (excelWriter != null) { excelWriter.finish(); diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java index 243ce8d..a78f2c9 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DeviceDataListMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; @@ -54,4 +55,6 @@ List getPantiltList(@Param("dataScope") DataScope dataScope, @Param("devcode") String devcode, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("wellCode") String wellCode); List> selectDeviceList(@Param("tableName") String tableName,@Param("tableColumns")String tableColumns,@Param("orderColumn")String orderColumn); + + List> selectAlarmRecords(@Param("deviceType")Integer deviceType,@Param("startTime")String startTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml index 32ab85a..0d55105 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceDataListMapper.xml @@ -744,6 +744,42 @@ + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java new file mode 100644 index 0000000..be77903 --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/enums/AlarmDataExportEnum.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.core.base.model.DataFieldDefine; + +import java.util.ArrayList; +import java.util.List; + +public enum AlarmDataExportEnum { + DATA_ALARM(1, "井盖状态", new ArrayList() {{ + add(new DataFieldDefine("id", "id")); + add(new DataFieldDefine("devcode", "devcode")); + add(new DataFieldDefine("well_code", "well_code")); + add(new DataFieldDefine("position", "position")); + add(new DataFieldDefine("alarm_num", "alarm_num")); + }}); + String typeName; + Integer type; + List defines; + + AlarmDataExportEnum(Integer type, String typeName, List defines) { + this.type = type; + this.typeName = typeName; + this.defines = defines; + } + + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public List getDefines() { + return defines; + } + + public void setDefines(List defines) { + this.defines = defines; + } +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java index b21799f..5bc86fd 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/DeviceDataListService.java @@ -74,4 +74,13 @@ * 设备数据查询 */ List> selectDeviceList(DeviceDataExportEnum exportEnum,LambdaQueryWrapper query); + + /** + * 告警信息查询 + * @param deviceType 设备类型 + * @param startTime 起始时间 + * @param endTime 结束时间 + * @return + */ + List> selectAlarmRecords(Integer deviceType, String startTime, String endTime); } \ No newline at end of file diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceDataListServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceDataListServiceImpl.java index 8d7caf1..cd274a8 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceDataListServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceDataListServiceImpl.java @@ -1,7 +1,9 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; @@ -127,4 +129,10 @@ return this.baseMapper.selectDeviceList(exportEnum.getTableName(),exportEnum.getTableColumns(),exportEnum.getOrderColumn()); } + @Override + public List> selectAlarmRecords(Integer deviceType, String startTime, String endTime) { + + return this.baseMapper.selectAlarmRecords(deviceType,startTime,endTime); + } + }