diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - - - - - diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - - - - - diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 03c6222..04bdc34 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -104,6 +104,7 @@ casic-area-starter ${admin.version} + com.casic @@ -112,6 +113,17 @@ com.casic + casic-sluicewell + ${pro.version} + + + com.casic + casic-data-analysis + ${pro.version} + + + + com.casic casic-device ${pro.version} @@ -174,15 +186,6 @@ - src/main/resources - - - /config/*/* - /config/*-*.yml - - true - - src/main/java **/*.xml diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java new file mode 100644 index 0000000..79804bf --- /dev/null +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/controller/DeviceWellDataController.java @@ -0,0 +1,526 @@ +package com.casic.missiles.modular.system.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +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.common.annotion.Permission; +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.dto.AlarmDeptStaticsDto; +import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; +import com.casic.missiles.modular.system.service.IDataAnalysisService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * 设备相关数据查询 + * + * @author lwh + */ +@Slf4j +@RestController +public class DeviceWellDataController extends ExportController { + @Resource + private IDataAnalysisService deviceService; + @Resource + private AbstractPermissionContext permissionService; + + + @GetMapping(value = "/welldata/list") + @Permission + public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/welldata/export") + @Permission + public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/liquiddata/list") + @Permission + public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { + Page page = PageFactory.defaultPage(); + if (CollectionUtil.isEmpty(page.orders())) { + OrderItem orderItem = new OrderItem(); + orderItem.setColumn("UPTIME"); + orderItem.setAsc(false); + page.addOrder(orderItem); + } + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + page.setRecords(list); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/liquiddata/export") + @Permission + public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + + Page page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + //查询数据权限 使用默认DEPTID 字段 + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + + list.forEach(deviceDto -> { + deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); + }); + super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); + } + + @GetMapping(value = "/gasdata/list") + //@Permission + public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + @GetMapping(value = "/tubedata/list") + //@Permission + public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 管盯数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tubedata/export") + //@Permission + public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + //TODO 导出表头设置 + List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); +// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); + } + + /** + * 燃气数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/gasdata/export") + public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); + } + + + /** + * 有害气体数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/harmfuldata/list") + public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 有害气体数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/harmfuldata/export") + public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/tempdata/list") + public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温湿度数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/temppressdata/list") + public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + + /** + * 温度压力数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/temppressdata/export") + public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); + } + + + /** + * 温湿度数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/tempdata/export") + public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); + } + + /** + * 开挖监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/digdata/list") + public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 开挖监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/digdata/export") + public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.DIGDATA_EXPORT.getFileName()); + } + + /** + * 井盖定位监测仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/welllocadata/list") + public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 井盖定位监测仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/welllocadata/export") + public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); + } + + /** + * 噪声记录仪数据查询 + * + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/noisedata/list") + public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 噪声记录仪数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/noisedata/export") + public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); + } + + + /** + * 根据权属单位统计报警次数 + * + * @param deviceType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/statics/alarmsByDept") + @Permission + public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + + //根据权属单位查询告警次数及告警设备数 + List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); + + return ResponseData.success(list); + } + + + /** + * 燃气液位一体化数据查询 + * + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/liquidGasData/list") + public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { + Page> page = PageFactory.defaultPage(); + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + page.setRecords(mapList); + return ResponseData.success(super.packForBT(page)); + } + + /** + * 燃气液位一体化数据导出 + * + * @param response + * @param keywords + * @param deptid + * @param sensorType + * @param beginTime + * @param endTime + * @throws IOException + */ + @GetMapping(value = "/liquidGasData/export") + public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { + Page> page = PageFactory.defaultPage(); + page.setCurrent(1); + page.setSearchCount(false); + page.setSize(Integer.MAX_VALUE); + + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); + + for (Map map : mapList) { + + if ("gas".equals(sensorType)) { + Double dValue = Double.valueOf(String.valueOf(map.get("data"))); + if (dValue <= 20.0) { + map.put("data", dValue + "%LEL"); + } else { + DecimalFormat df = new DecimalFormat("0.00"); + dValue = dValue / 20.0; + map.put("data", df.format(dValue) + "%VOL"); + map.put("data", df.format(dValue) + "%VOL"); + } + } + } + //TODO 导出表头设置 + super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); + } + + /** + * 数据列表查询 + * + * @param wellCode + * @param watchType + * @param beginTime + * @param endTime + * @return + */ + @GetMapping(value = "/data/list") + public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { + DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); + List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); + return ResponseData.success(mapList); + } + +} diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java index 149fb82..328ca97 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/dao/DataAnalysisMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; -import com.casic.missiles.core.datascope.DataScope; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -39,10 +40,40 @@ DeviceData wellcoverlocaData(@Param("devcode") String devcode); - DeviceData lgGasData(@Param("devcode") String devcode);//燃气液位 - - DeviceData lgLiquidData(@Param("devcode") String devcode);//燃气液位 - + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgGasData(@Param("devcode") String devcode); + /** + * 燃气液位 + * @param devcode + * @return + */ + DeviceData lgLiquidData(@Param("devcode") String devcode); BfztCountDataDto bfztCountData(@Param("deptIds") List deptIds, @Param("isApp") Boolean isApp); + + List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); + List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); + + List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); + + List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); } 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 6d7edb3..bb2fbee 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 @@ -167,4 +167,824 @@ #{i} + + + + + + DATE_FORMAT(UPTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + '%' || #{keywords}|| '%' + + + CONCAT('%',#{keywords},'%') + + + TO_DATE(#{beginTime},'yyyy-mm-dd hh24:mi:ss') + + + TO_DATE(#{endTime},'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + DATE_FORMAT(LOGTIME,'%Y-%m-%d %H:%i:%S') + + + to_char(LOGTIME,'yyyy-mm-dd hh24:mi:ss') + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java index 69c8c60..a4923e2 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/IDataAnalysisService.java @@ -1,14 +1,13 @@ package com.casic.missiles.modular.system.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.BfztCountDataDto; -import com.casic.missiles.modular.system.dto.BusWellInfoDto; -import com.casic.missiles.modular.system.dto.DeviceDataDto; -import com.casic.missiles.modular.system.dto.WatchDataDto; +import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.model.BusWellInfo; import java.util.List; +import java.util.Map; /** * 数据统计服务接口 @@ -44,8 +43,80 @@ * @return 设备监测数据 */ List getDeviceDatas(String devTypename, String devcode, String status); + List getWatchDatas(Long id); BfztCountDataDto getBfztCountData(List deptIds, Boolean isApp); + /** + * 根据条件检索井盖监测数据列表 + * + * @param dataScope 数据权限 + * @param page 分页查询 + * @param deptid 组织ID + * @param beginTime 起始时间 + * @param endTime 结束时间 + * @param keywords 关键字 + * @return + */ + List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据检索条件查询液位检测数据 + * + * @param dataScope 数据权限 + * @param page 分页参数 + * @param deptid 组织id + * @param beginTime + * @param endTime + * @param keywords + * @return + */ + List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords); + /** + * 燃气数据查询 + */ + List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 管盯数据查询 + */ + List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 有害气体数据查询 + */ + List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温湿度数据查询 + */ + List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 温度压力数据查询 + */ + List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 开挖监测仪数据查询 + */ + List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + + /** + * 井盖定位监测仪数据查询 + */ + List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 噪声记录仪数据查询 + */ + List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords); + /** + * 根据权属单位统计设备数及告警次数 + * + * @param deviceType 设备类型 + * @param beginTime 起止时间 + * @param endTime 结束时间 + * @param dataScope 数据权限 + * @return + */ + List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId); + + List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords); + + List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime); } diff --git a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java index 288a828..c72d233 100644 --- a/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java +++ b/casic-data-analysis/src/main/java/com/casic/missiles/modular/system/service/impl/IDataAnalysisServiceImpl.java @@ -1,9 +1,15 @@ package com.casic.missiles.modular.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.constant.DeviceConst; import com.casic.missiles.modular.system.dao.DataAnalysisMapper; import com.casic.missiles.modular.system.dto.*; import com.casic.missiles.modular.system.enmus.HarmfulGasBusiness; @@ -19,7 +25,9 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.List; +import java.util.Map; /** * 数据统计分析 @@ -33,7 +41,8 @@ private AbstractDictService dictService; @Resource private IBusDeviceSupportService deviceSupportService; - + @Resource + private AbstractPermissionContext permissionService; @Override public List getAlarmWellList(DataScope dataScope, String keywords, String wellType, String deptid) { return this.baseMapper.getAlarmWellList(dataScope, keywords, wellType, deptid); @@ -379,8 +388,162 @@ break; } } - return watchDataDtos; } + //数据相关统计------------------------------------------------------------ + @Override + public List selectWellDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + + @Override + public List selectLiquidDataScopePage(DataScope dataScope, Page page, String deptid, String beginTime, String endTime, String keywords) { + return this.baseMapper.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + } + @Override + public List> selectGasDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTubeDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectHarmfulDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectTempDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + + @Override + public List> selectTempPressDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectDigDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectWellLocDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List> selectNoiseDataScopePage(DataScope dataScope, Page> page, String deptid, String beginTime, String endTime, String keywords) { + List> mapList = this.baseMapper.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + } + return mapList; + } + + @Override + public List alarmsStaticsByDept(Long deviceType, String beginTime, String endTime, DataScope dataScope, Long deptId) { + List deptIds = permissionService.getDeptService().getIdsByPid(deptId, DeviceConst.DEPT_TYPE_ORG); + return this.baseMapper.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, deptId, CollectionUtil.isEmpty(deptIds)); + } + @Override + public List> selectGasLiquidDataScopePage(DataScope dataScope, Page> page, String sensorType, String deptid, String beginTime, String endTime, String keywords) { + List deptIds = null; + if (StrUtil.isNotEmpty(deptid)) { + deptIds = permissionService.getDeptService().getIdsByPid(deptid, null); + deptIds.add(Long.valueOf(deptid)); + } + List> mapList = new ArrayList<>(); + if ("liquid".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataLiquidScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + if ("gas".equals(sensorType)) { + mapList = this.baseMapper.selectGasLiquidDataGasScopePage(dataScope, page, deptIds, beginTime, endTime, keywords); + } + for (Map map : mapList) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + if ("liquid".equals(sensorType)) { + float liquiddata = Float.valueOf(String.valueOf(map.get("data"))); + if (liquiddata <= 0) { + map.put("data", "正常水位"); + } + } + } + return mapList; + } + @Override + public List> selectDataList(DataScope dataScope, String wellCode, String watchType, String beginTime, String endTime) { + if (StrUtil.isAllEmpty(beginTime, endTime)) { + Calendar calendar = Calendar.getInstance(); + endTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + calendar.add(Calendar.DATE, -7); + beginTime = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"); + } + List> list = new ArrayList<>(); + switch (watchType) { + case "liquid": + list = this.baseMapper.selectLiquidDataList(dataScope, wellCode, beginTime, endTime); + break; + case "gas": + list = this.baseMapper.selectGasDataList(dataScope, wellCode, beginTime, endTime); + break; + case "temp": + list = this.baseMapper.selectTempDataList(dataScope, wellCode, beginTime, endTime); + break; + case "harmful": + list = this.baseMapper.selectHarmfulDataList(dataScope, wellCode, beginTime, endTime); + break; + default: + break; + } + for (Map map : list) { + map.put("deptName", permissionService.getDeptService().getDeptName(Long.valueOf(map.get("deptid").toString()))); + setCompany(map); + } + return list; + } + private void setCompany(Map dataMap) { + if (ObjectUtil.isNotEmpty(dataMap.get("deptid"))) { + List parentDepts = permissionService.getDeptService().getParentListById(dataMap.get("deptid").toString()); + if (CollectionUtil.isNotEmpty(parentDepts)) { + Long companyId = parentDepts.get(parentDepts.size() - 1); + dataMap.put("companyId", companyId); + dataMap.put("companyName", permissionService.getDeptService().getDeptName(companyId)); + } + } + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java b/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java deleted file mode 100644 index 854aaaa..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/constant/DeviceConst.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.casic.missiles.modular.system.constant; - -public class DeviceConst { - /** - * 导出模板路径 - */ - public static final String EXPORT_TEMP_PATH = "/config/export/"; - - /** - * 模板下载路径 - */ - public static final String DEVICE_DOWNLOAD_TEMP = "/config/temp/"; - public static final String YES = "1"; - public static final String NO = "0"; - public static final String DEPT_TYPE_ORG = "03"; - /** - * 设备类型查询 - */ - public static final String DEVICE_QUERY_DEVICE_TYPE = "DEVICE_TYPE"; - - /** - * 设备类型添加日志KEY - */ - public static final String DEVICE_ADD_LOG_KEY = "devcode,deviceName,deviceType,wellCode,concenCode"; - - /** - * app版本更新路径 - */ - public static final String APP_DOWNLOAD = "apk/"; -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java index 21522f9..09cea3c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/BusConcentratorController.java @@ -19,7 +19,7 @@ import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.constant.ModularDictConst; import com.casic.missiles.modular.system.dict.ConcentDict; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.BusConcentrator; import com.casic.missiles.modular.system.service.IBusConcentratorService; import org.slf4j.Logger; @@ -39,8 +39,9 @@ /** * 控制器 * 井深 井坐标 设备坐标问题 - * 负责部门 权属部门 责任人 - * 布防撤防 + * 负责部门 权属部门 责任人 + * 布防撤防 + * * @author dev * @Date 2019-06-03 10:02:11 */ @@ -121,7 +122,6 @@ return ResponseData.success(); } - // @ApiOperation("修改集中器") @RequestMapping(value = "/update") @BussinessLog(value = "修改集中器", key = "concencode,simid,position,lat,lng", dict = ConcentDict.class) @@ -172,7 +172,7 @@ //忽略导出属性 Set excludeColumnFiledNames = new HashSet<>(); excludeColumnFiledNames.add("deptid"); - super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(),excludeColumnFiledNames); + super.exportExcelExcludeColumns(BusConcentrator.class, page.getRecords(), DeviceExportEnum.BUSCONCENTRATOR_EXPORT.getFileName(), excludeColumnFiledNames); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java deleted file mode 100644 index 29ca25b..0000000 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/WellDataController.java +++ /dev/null @@ -1,509 +0,0 @@ -package com.casic.missiles.modular.system.controller; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.casic.missiles.config.DeviceServerProperties; -import com.casic.missiles.core.application.context.AbstractPermissionContext; -import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.common.annotion.Permission; -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.dto.AlarmDeptStaticsDto; -import com.casic.missiles.modular.system.dto.DeviceMonitorDataDto; -import com.casic.missiles.modular.system.enums.DeviceExportEnum; -import com.casic.missiles.modular.system.service.IDeviceService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -@RestController -public class WellDataController extends ExportController { - private static final Logger logger = LoggerFactory.getLogger(DeviceController.class); - @Autowired - private IDeviceService deviceService; - @Resource - private AbstractPermissionContext permissionService; - @Autowired - private DeviceServerProperties deviceServerProperties; - - @GetMapping(value = "/welldata/list") - @Permission - public Object wellDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/welldata/export") - @Permission - public void batchExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectWellDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.WELLDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/liquiddata/list") - @Permission - public Object liquidDataList(String keywords, String deptid, String beginTime, String endTime) { - Page page = PageFactory.defaultPage(); - if (CollectionUtil.isEmpty(page.orders())) { - OrderItem orderItem = new OrderItem(); - orderItem.setColumn("UPTIME"); - orderItem.setAsc(false); - page.addOrder(orderItem); - } - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - page.setRecords(list); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/liquiddata/export") - @Permission - public void liquidDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - - Page page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - //查询数据权限 使用默认DEPTID 字段 - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List list = deviceService.selectLiquidDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - - list.forEach(deviceDto -> { - deviceDto.setDeptName(permissionService.getDeptService().getDeptName(deviceDto.getDeptid())); - }); - super.exportExcel(DeviceMonitorDataDto.class, list, DeviceExportEnum.LIQUIDDATA_EXPORT.getFileName()); - } - - @GetMapping(value = "/gasdata/list") - //@Permission - public Object gasDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - @GetMapping(value = "/tubedata/list") - //@Permission - public Object tubeDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 管盯数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tubedata/export") - //@Permission - public void tubeDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - //TODO 导出表头设置 - List> mapList = deviceService.selectTubeDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.TUBEDATA_EXPORT.getFileName()); -// super.exportExcel(DeviceExportEnum.TUBEDATA_EXPORT, mapList, response); - } - - /** - * 燃气数据导出 - * - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/gasdata/export") - public void gasDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(), mapList, DeviceExportEnum.GASDATA_EXPORT.getFileName()); - } - - - /** - * 有害气体数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/harmfuldata/list") - public Object harmfulDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 有害气体数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/harmfuldata/export") - public void harmfulDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectHarmfulDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); - } - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/tempdata/list") - public Object tempDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温湿度数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/temppressdata/list") - public Object tempPressdataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - - /** - * 温度压力数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/temppressdata/export") - public void temppressDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempPressDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPPRESSDATA_EXPORT.getFileName()); - } - - - /** - * 温湿度数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/tempdata/export") - public void tempDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectTempDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.TEMPDATA_EXPORT.getFileName()); - } - - /** - * 开挖监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/digdata/list") - public Object digDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 开挖监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/digdata/export") - public void digDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDigDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.DIGDATA_EXPORT.getFileName()); - } - - /** - * 井盖定位监测仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/welllocadata/list") - public Object wellLocDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 井盖定位监测仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/welllocadata/export") - public void wellLocDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectWellLocDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.WELLLOCDATA_EXPORT.getFileName()); - } - - /** - * 噪声记录仪数据查询 - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/noisedata/list") - public Object noiseDataList(String keywords, String deptid, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 噪声记录仪数据导出 - * @param response - * @param keywords - * @param deptid - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/noisedata/export") - public void noiseDataExport(HttpServletResponse response, String keywords, String deptid, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectNoiseDataScopePage(dataScope, page, deptid, beginTime, endTime, keywords); - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.NOISEDATA_EXPORT.getFileName()); - } - - - /** - * 根据权属单位统计报警次数 - * @param deviceType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/statics/alarmsByDept") - @Permission - public Object alarmsByDept(Long deviceType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - - //根据权属单位查询告警次数及告警设备数 - List list = deviceService.alarmsStaticsByDept(deviceType, beginTime, endTime, dataScope, permissionService.getAuthService().getLoginUser().getDeptId()); - - return ResponseData.success(list); - } - - - /** - * 燃气液位一体化数据查询 - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/liquidGasData/list") - public Object liquidGasDataList(String keywords, String deptid, String sensorType, String beginTime, String endTime) { - Page> page = PageFactory.defaultPage(); - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - page.setRecords(mapList); - return ResponseData.success(super.packForBT(page)); - } - - /** - * 燃气液位一体化数据导出 - * @param response - * @param keywords - * @param deptid - * @param sensorType - * @param beginTime - * @param endTime - * @throws IOException - */ - @GetMapping(value = "/liquidGasData/export") - public void liquidGasDataExport(HttpServletResponse response, String keywords, String deptid, String sensorType, String beginTime, String endTime) throws IOException { - Page> page = PageFactory.defaultPage(); - page.setCurrent(1); - page.setSearchCount(false); - page.setSize(Integer.MAX_VALUE); - - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectGasLiquidDataScopePage(dataScope, page, sensorType, deptid, beginTime, endTime, keywords); - - for (Map map : mapList) { - - if ("gas".equals(sensorType)) { - Double dValue = Double.valueOf(String.valueOf(map.get("data"))); - if (dValue <= 20.0) { - map.put("data", dValue + "%LEL"); - } else { - DecimalFormat df = new DecimalFormat("0.00"); - dValue = dValue / 20.0; - map.put("data", df.format(dValue) + "%VOL"); - map.put("data", df.format(dValue) + "%VOL"); - } - } - } - //TODO 导出表头设置 - super.exportExcelMaps(new ArrayList<>(),mapList,DeviceExportEnum.LIQUIDGASDATA_EXPORT.getFileName()); - } - - /** - * 数据列表查询 - * @param wellCode - * @param watchType - * @param beginTime - * @param endTime - * @return - */ - @GetMapping(value = "/data/list") - public Object dataList(String wellCode, String watchType, String beginTime, String endTime) { - DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); - List> mapList = deviceService.selectDataList(dataScope, wellCode, watchType, beginTime, endTime); - return ResponseData.success(mapList); - } - -} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java index b9ca243..041cb2a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/DeviceMapper.java @@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** *

@@ -23,45 +22,8 @@ List selectDataScopePage(@Param("scope") DataScope dataScope, @Param("page") Page page, @Param("deviceType") String deviceType, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords,@Param("isOnline") String isOnline); List getDeviceList(@Param("scope") DataScope dataScope); DeviceWellDto selectWellIdByCode(@Param("wellCode") String wellCode); - DeviceConcentratorDto selectDeviceConcentorByCode(@Param("concenCode") String concenCode); - - List selectWellDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List selectLiquidDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTubeDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectHarmfulDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectTempPressDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectDigDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectWellLocDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectNoiseDataScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptid") String deptid, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List alarmsStaticsByDept(@Param("deviceType") Long deviceType, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("dataScope") DataScope dataScope, @Param("deptId")Long deptId, @Param("searchCurr")Boolean searchCurr); - List selectDevicesByConfig(@Param("dataScope") DataScope dataScope, @Param("deviceType") String deviceType, @Param("configStatus") String configStatus); - - List> selectGasLiquidDataGasScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page,@Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectGasLiquidDataLiquidScopePage(@Param("dataScope") DataScope dataScope, @Param("page") Page> page, @Param("deptIds") List deptIds, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("keywords") String keywords); - - List> selectLiquidDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectGasDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectTempDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - - List> selectHarmfulDataList(@Param("dataScope")DataScope dataScope, @Param("wellCode")String wellCode, @Param("beginTime")String beginTime, @Param("endTime")String endTime); - /** * 查询设备信息 * @param id 设备主键 diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml index c956057..315631b 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceMapper.xml @@ -102,474 +102,9 @@ to_char(UPTIME,'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - - - - - - - - '%' || #{keywords}|| '%' @@ -592,316 +127,6 @@ - - - - - - - - - - - - - - - - diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 03c6222..04bdc34 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -104,6 +104,7 @@ casic-area-starter ${admin.version} + com.casic @@ -112,6 +113,17 @@ com.casic + casic-sluicewell + ${pro.version} + + + com.casic + casic-data-analysis + ${pro.version} + + + + com.casic casic-device ${pro.version} @@ -174,15 +186,6 @@ - src/main/resources - - - /config/*/* - /config/*-*.yml - - true - - src/main/java **/*.xml diff --git a/pom.xml b/pom.xml index 0702c13..c51cd97 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ casic-sluicewell casic-data-analysis casic-device - casic-alarm + casic-server-support