diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/controller/SurvAlertRecordController.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/controller/SurvAlertRecordController.java index 9b146c7..4b4322c 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/controller/SurvAlertRecordController.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/controller/SurvAlertRecordController.java @@ -1,13 +1,27 @@ package org.jeecg.system.applet.controller; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.constant.PollutionConstants; +import org.jeecg.common.entity.SurvDeviceDeploy; +import org.jeecg.common.entity.SurvStationInfo; +import org.jeecg.common.util.R; +import org.jeecg.common.vo.statistic.AlertSummaryVo; +import org.jeecg.system.applet.annotation.ApiLogin; +import org.jeecg.system.applet.dto.AlertSummaryDTO; import org.jeecg.system.applet.service.ISurvAlertRecordService; import lombok.extern.slf4j.Slf4j; +import org.jeecg.system.applet.util.Iotutils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.Api; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + /** * @Description: surv_alert_record @@ -22,8 +36,19 @@ import io.swagger.annotations.Api; public class SurvAlertRecordController { @Autowired private ISurvAlertRecordService survAlertRecordService; - + /** + * 监控摄像头分页列表查询 + * + * @return + */ + @ApiOperation(value="预警曲线", notes="预警曲线") + @PostMapping(value = "/alertSummary") + @ApiLogin + public R alertSummary(@RequestBody AlertSummaryDTO alertSummaryDTO) { + AlertSummaryVo alertSummaryVo = survAlertRecordService.getSummary(alertSummaryDTO); + return R.ok(alertSummaryVo); + } } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/dto/AlertSummaryDTO.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/dto/AlertSummaryDTO.java new file mode 100644 index 0000000..0b78de7 --- /dev/null +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/dto/AlertSummaryDTO.java @@ -0,0 +1,16 @@ +package org.jeecg.system.applet.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AlertSummaryDTO { + @ApiModelProperty("设备ID") + private String deployId; + + @ApiModelProperty("开始时间") + private String startTime; + + @ApiModelProperty("结束时间") + private String endTime; +} diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvAlertRecordMapper.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvAlertRecordMapper.java index 3f6d392..1dc8bee 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvAlertRecordMapper.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvAlertRecordMapper.java @@ -5,7 +5,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.jeecg.common.entity.SurvAlertRecord; import org.jeecg.common.entity.SurvMaintainRecord; +import org.jeecg.common.vo.statistic.AlertSummayDetail; +import java.time.LocalDateTime; import java.util.List; /** @@ -17,4 +19,6 @@ import java.util.List; public interface SurvAlertRecordMapper extends BaseMapper { IPage pages(IPage page, @Param("deviceList") List deviceList, @Param("yearStr") String yearStr); + + List getSpotCheckData(@Param("deployId")String deployId,@Param("itemCode")String itemCode, @Param("dateList") List dateList,@Param("startDateTime")LocalDateTime startDateTime,@Param("endDateTime")LocalDateTime endDateTime); } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvDeviceDeployMapper.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvDeviceDeployMapper.java index 3b12831..910a14f 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvDeviceDeployMapper.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/SurvDeviceDeployMapper.java @@ -24,4 +24,6 @@ public interface SurvDeviceDeployMapper extends BaseMapper { List getDeviceByStationNoCam(String stationCode, String deployType); List getDeviceListByStations(@Param("stationCode")String stationCode,@Param("deployTypeList") List deployTypeList); + + SurvDeviceDeploy getDeployZhibiao(@Param("deployId") String deployId); } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/ScEquZhibiaoMapper.xml b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/ScEquZhibiaoMapper.xml index c4506ce..3dd4810 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/ScEquZhibiaoMapper.xml +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/ScEquZhibiaoMapper.xml @@ -2,23 +2,29 @@ - + select * from sc_equ_zhibiao where zhibiao_type = '1' AND equ_id IN + + #{id} + + order by sort_no,create_time desc - + select * from sc_equ_zhibiao where equ_id = #{deployCode} AND zhibiao_type = '1' order by sort_no,create_time + desc + + + \ No newline at end of file diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvAlertRecordMapper.xml b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvAlertRecordMapper.xml index 55ca9bb..96002e9 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvAlertRecordMapper.xml +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvAlertRecordMapper.xml @@ -14,6 +14,7 @@ + @@ -25,17 +26,23 @@ - + + + + + + + - ID,ALERT_CONTENT,CORP_ID,ALERT_DTATA_TYPE,ALERT_DATA_ID,PUSH_STATUS,DEVICE_CODE,STATION_CDOE,DEPLOY_CODE,DEPLOY_ID,ALERT_TIME,ITEM_NAME,DEVICE_NAME,CORP_NAME,TENANT_ID,RE_VISION,CREATED_BY,CREATE_TIME,UPDATED_BY,IS_DEL,UPDATED_TIME,ORG_MESSAGE + ID,ALERT_CONTENT,CORP_ID,ALERT_DTATA_TYPE,ALERT_DATA_ID,PUSH_STATUS,DEVICE_CODE,STATION_CDOE,DEPLOY_CODE,DEPLOY_ID,ALERT_TIME,ITEM_NAME,DEVICE_NAME,CORP_NAME,TENANT_ID,RE_VISION,CREATED_BY,CREATE_TIME,UPDATED_BY,IS_DEL,UPDATED_TIME,ORG_MESSAGE,ITEM_CODE,NORMAL_VALUE,SURV_VALUE,READ_STATUS,SURV_UNIT - select from surv_alert_record where 1=1 @@ -49,4 +56,39 @@ order by ALERT_TIME desc + + \ No newline at end of file diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvDeviceDeployMapper.xml b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvDeviceDeployMapper.xml index 0b784f0..e046fd4 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvDeviceDeployMapper.xml +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/mapper/xml/SurvDeviceDeployMapper.xml @@ -45,6 +45,10 @@ + + + + @@ -105,4 +109,8 @@ order by SORT_NO,CREATE_TIME desc + + \ No newline at end of file diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvAlertRecordService.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvAlertRecordService.java index 4398bdc..7418770 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvAlertRecordService.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvAlertRecordService.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.common.entity.SurvAlertRecord; +import org.jeecg.common.vo.statistic.AlertSummaryVo; +import org.jeecg.system.applet.dto.AlertSummaryDTO; import java.util.List; @@ -16,4 +18,6 @@ import java.util.List; public interface ISurvAlertRecordService extends IService { IPage pages(IPage page, List deviceList, String yearStr); + + AlertSummaryVo getSummary(AlertSummaryDTO alertSummaryDTO); } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvDeviceDeployService.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvDeviceDeployService.java index d0a8e4e..8130141 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvDeviceDeployService.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/ISurvDeviceDeployService.java @@ -23,4 +23,6 @@ public interface ISurvDeviceDeployService extends IService { List getDeviceByStationNoCam(String stationCode, String deployType); List getDeviceListByStation(String stationCode, List deployTypes); + + SurvDeviceDeploy getDeployZhibiao(String deployId); } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvAlertRecordServiceImpl.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvAlertRecordServiceImpl.java index 785d9bc..236fcc7 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvAlertRecordServiceImpl.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvAlertRecordServiceImpl.java @@ -1,14 +1,36 @@ package org.jeecg.system.applet.service.impl; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.metadata.IPage; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.constant.enums.PollutionEnum; +import org.jeecg.common.entity.ScEquZhibiao; import org.jeecg.common.entity.SurvAlertRecord; +import org.jeecg.common.entity.SurvDeviceDeploy; +import org.jeecg.common.util.TimeIntervalUtils; +import org.jeecg.common.vo.iot.common.SurvItemInfo; +import org.jeecg.common.vo.statistic.AlertSummaryVo; +import org.jeecg.common.vo.statistic.AlertSummayDetail; +import org.jeecg.common.vo.statistic.CommonDateListResult; +import org.jeecg.common.vo.statistic.CommonStatisticResultVo; +import org.jeecg.system.applet.dto.AlertSummaryDTO; import org.jeecg.system.applet.mapper.SurvAlertRecordMapper; import org.jeecg.system.applet.service.ISurvAlertRecordService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * @Description: surv_alert_record @@ -17,10 +39,90 @@ import java.util.List; * @Version: V1.0 */ @Service +@Slf4j public class SurvAlertRecordServiceImpl extends ServiceImpl implements ISurvAlertRecordService { - + @Autowired + private ScEquZhibiaoServiceImpl zhibiaoService; + @Autowired + private SurvDeviceDeployServiceImpl deployService; @Override public IPage pages(IPage page, List deviceList, String yearStr) { return baseMapper.pages(page,deviceList,yearStr); } + + @Override + public AlertSummaryVo getSummary(AlertSummaryDTO alertSummaryDTO) { + Assert.notNull(alertSummaryDTO,"传入格式错误"); + SurvDeviceDeploy deploy = deployService.getDeployZhibiao(alertSummaryDTO.getDeployId()); + Assert.notNull(deploy,"设备无效"); + AlertSummaryVo alertSummaryVo = new AlertSummaryVo(); + List survItemInfos = new ArrayList<>(); + // step 1 所有监测项字典信息 + if(deploy.getZhibiaos()!=null && !deploy.getZhibiaos().isEmpty()){ + for (ScEquZhibiao zhibiao : deploy.getZhibiaos()) { + SurvItemInfo survItemInfo = new SurvItemInfo(); + PollutionEnum pollutionEnum = PollutionEnum.catchPollution(zhibiao.getEntityField()); + survItemInfo.setItemName(zhibiao.getName()); + survItemInfo.setColor(pollutionEnum.getColor()); + survItemInfo.setHighVal(zhibiao.getValHeight()+""); + survItemInfo.setLowVal(zhibiao.getValLow()+""); + survItemInfo.setUnit(zhibiao.getNuit()); + survItemInfo.setEntity(zhibiao.getEntityField()); + survItemInfo.setPid(zhibiao.getEleKey()); + survItemInfos.add(survItemInfo); + } + } + log.warn("====设备:{}监测项目--{}", deploy.getDeployDes(),survItemInfos.size()); + alertSummaryVo.setItemList(survItemInfos); + Map itemMap = survItemInfos.stream() + .collect(Collectors.toMap(SurvItemInfo::getEntity, itemss -> itemss)); + alertSummaryVo.setItemInfo(itemMap); + + //step 2:获取每5分钟 的数据 + + + String startTime = alertSummaryDTO.getStartTime(); + String endTime = alertSummaryDTO.getEndTime(); + + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + + LocalDateTime startDateTime = null; + LocalDateTime endDateTime = null; + boolean isToday = false; + LocalDateTime nowTime = LocalDateTime.now(); + LocalDate nowDate = nowTime.toLocalDate(); + if(StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)){ + startDateTime = LocalDateTime.of(LocalDate.parse(startTime,dtf), LocalTime.MIN); + endDateTime = LocalDateTime.of(LocalDate.parse(endTime,dtf), LocalTime.MAX).withNano(999999000); + //检查是否传入的今天 + if(nowTime.equals(startDateTime.toLocalDate())){ + isToday = true; + } + }else{ + startDateTime = LocalDateTime.of(nowDate, LocalTime.MIN); +// endDateTime = LocalDateTime.of(nowTime, LocalTime.MAX).withNano(999999000); + isToday = true; + } + + if(isToday){//如果查询的是今天,只查询到当前时间 + startDateTime = nowTime.minusDays(1); + endDateTime = nowTime.withNano(999999000); + } + CommonDateListResult commonDateListResult = TimeIntervalUtils.generate5MinuteIntervals(startDateTime,endDateTime); + Map> dataMap = new HashMap<>(); + if(!survItemInfos.isEmpty()){ + for (SurvItemInfo survItemInfo : survItemInfos) { + List records = baseMapper.getSpotCheckData(alertSummaryDTO.getDeployId(),survItemInfo.getEntity(),commonDateListResult.getQueryList(),startDateTime,endDateTime); + + //组装map + if(!records.isEmpty()){ + List dataList = records.stream().map(AlertSummayDetail::getSurvValue).collect(Collectors.toList()); + dataMap.put(survItemInfo.getEntity(),dataList); + } + } + } + alertSummaryVo.setTimeList(commonDateListResult.getShowList()); + alertSummaryVo.setDataMap(dataMap); + return alertSummaryVo; + } } diff --git a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvDeviceDeployServiceImpl.java b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvDeviceDeployServiceImpl.java index eb3799a..97c73de 100644 --- a/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvDeviceDeployServiceImpl.java +++ b/zh-module-applet/zh-applet-api/src/main/java/org/jeecg/system/applet/service/impl/SurvDeviceDeployServiceImpl.java @@ -44,4 +44,10 @@ public class SurvDeviceDeployServiceImpl extends ServiceImpl getDeviceListByStation(String stationCode, List deployTypes) { return baseMapper.getDeviceListByStations(stationCode,deployTypes); } + + @Override + public SurvDeviceDeploy getDeployZhibiao(String deployId) { + return baseMapper.getDeployZhibiao(deployId); + } + } diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvAlertRecord.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvAlertRecord.java index 2434dd0..daca8e6 100644 --- a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvAlertRecord.java +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvAlertRecord.java @@ -112,6 +112,13 @@ public class SurvAlertRecord implements Serializable { @DateTimeFormat(pattern="yyyy-MM-dd HH") @ApiModelProperty(value = "预警时间") private Date alertTime; + + /** + * 监测项编号 + */ + @TableField("ITEM_CODE") + private String itemCode; + /**监测项*/ @Excel(name = "监测项", width = 15) @ApiModelProperty(value = "监测项") @@ -130,6 +137,35 @@ public class SurvAlertRecord implements Serializable { @ApiModelProperty(value = "原始报文") private String orgMessage; + /** + * 正常值 + */ + @Excel(name = "正常值", width = 15) + @TableField("NORMAL_VALUE") + private String normalValue; + + /** + * 监测值 + */ + @Excel(name = "检测值", width = 15) + @TableField("SURV_VALUE") + private String survValue; + + + /** + * 监测情况 + */ + @Excel(name = "检测情况", width = 15) + @TableField("READ_STATUS") + private String readStatus; + + /** + * 监测单位 + */ + @Excel(name = "检测单位", width = 15) + @TableField("SURV_UNIT") + private String survUnit; + /**站点名称*/ @ApiModelProperty(value = "站点名称") @TableField(exist = false) diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvDeviceDeploy.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvDeviceDeploy.java index fbc857e..ee0a2da 100644 --- a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvDeviceDeploy.java +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/entity/SurvDeviceDeploy.java @@ -240,8 +240,6 @@ public class SurvDeviceDeploy implements Serializable { @TableField(exist = false) private String ysToken; - - @TableField(exist = false) private String[] depCodeArr; @@ -258,6 +256,9 @@ public class SurvDeviceDeploy implements Serializable { @TableField(exist = false) private Integer isOnline; + @TableField(exist = false) + private List zhibiaos; + public String[] getDepCodeArr() { if(StringUtils.isNotBlank(depCodes)) { return depCodes.split(","); diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/util/TimeIntervalUtils.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/util/TimeIntervalUtils.java new file mode 100644 index 0000000..8059f08 --- /dev/null +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/util/TimeIntervalUtils.java @@ -0,0 +1,62 @@ +package org.jeecg.common.util; + +import org.jeecg.common.vo.statistic.CommonDateListResult; + +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +public class TimeIntervalUtils { + + private static final DateTimeFormatter DEFAULT_FORMATTER = + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + + private static final DateTimeFormatter SHOW_FORMATTER = + DateTimeFormatter.ofPattern("d日H:m"); + /** + * 生成指定时间范围内的5分钟间隔时间点(使用默认格式) + */ + public static CommonDateListResult generate5MinuteIntervals(LocalDateTime start, LocalDateTime end) { + return generate5MinuteIntervals(start, end, DEFAULT_FORMATTER); + } + + /** + * 生成指定时间范围内的5分钟间隔时间点(自定义格式) + */ + public static CommonDateListResult generate5MinuteIntervals(LocalDateTime start, LocalDateTime end, + DateTimeFormatter formatter) { + if (start == null || end == null) { + throw new IllegalArgumentException("开始时间和结束时间不能为null"); + } + + if (start.isAfter(end)) { + throw new IllegalArgumentException("开始时间不能晚于结束时间"); + } + + CommonDateListResult commonDateListResult = new CommonDateListResult(); + + List intervals = new ArrayList<>(); + List showIntervals = new ArrayList<>(); + LocalDateTime current = roundTo5Minutes(start); + + while (!current.isAfter(end)) { + intervals.add(current.format(formatter)); + showIntervals.add(current.format(SHOW_FORMATTER)); + current = current.plusMinutes(5); + } + commonDateListResult.setQueryList(intervals); + commonDateListResult.setShowList(showIntervals); + return commonDateListResult; + } + + /** + * 将时间取整到最近的5分钟(向下取整) + */ + private static LocalDateTime roundTo5Minutes(LocalDateTime dateTime) { + int minute = dateTime.getMinute(); + int roundedMinute = (minute / 5) * 5; + return dateTime.withMinute(roundedMinute).withSecond(0).withNano(0); + } +} diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/iot/common/SurvItemInfo.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/iot/common/SurvItemInfo.java new file mode 100644 index 0000000..99e4799 --- /dev/null +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/iot/common/SurvItemInfo.java @@ -0,0 +1,22 @@ +package org.jeecg.common.vo.iot.common; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SurvItemInfo { + @ApiModelProperty("监测项名称") + private String itemName; + @ApiModelProperty("颜色") + private String color; + @ApiModelProperty("高阈值") + private String highVal; + @ApiModelProperty("低阈值") + private String lowVal; + @ApiModelProperty("单位") + private String unit; + @ApiModelProperty("字段") + private String entity; + @ApiModelProperty("pid") + private String pid; +} diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummaryVo.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummaryVo.java new file mode 100644 index 0000000..d25982d --- /dev/null +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummaryVo.java @@ -0,0 +1,20 @@ +package org.jeecg.common.vo.statistic; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecg.common.vo.iot.common.SurvItemInfo; + +import java.util.List; +import java.util.Map; + +@Data +public class AlertSummaryVo { + @ApiModelProperty("监测项信息") + private Map itemInfo; + @ApiModelProperty("监测项列表") + private List itemList; + @ApiModelProperty("X轴数据") + private List timeList; + @ApiModelProperty("Y轴数据") + private Map> dataMap; +} diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummayDetail.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummayDetail.java new file mode 100644 index 0000000..d72e2ff --- /dev/null +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/AlertSummayDetail.java @@ -0,0 +1,28 @@ +package org.jeecg.common.vo.statistic; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AlertSummayDetail { + @ApiModelProperty("数据id") + private String id; + @ApiModelProperty("设备id") + private String deployId; + @ApiModelProperty("告警时间") + private String alertTime; + @ApiModelProperty("监测项名称") + private String itemName; + @ApiModelProperty("监测项编号") + private String itemCode; + @ApiModelProperty("监测单位") + private String itemUnit; + @ApiModelProperty("正常值") + private String normalValue; + @ApiModelProperty("监测值") + private String survValue; + @ApiModelProperty("监测状态,low=偏低,high=偏高") + private String readStatus; + @ApiModelProperty("是否有数据,1=有,0=没有") + private Integer hasData; +} diff --git a/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/CommonDateListResult.java b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/CommonDateListResult.java new file mode 100644 index 0000000..362ef0a --- /dev/null +++ b/zh-module-applet/zh-applet-common/src/main/java/org/jeecg/common/vo/statistic/CommonDateListResult.java @@ -0,0 +1,15 @@ +package org.jeecg.common.vo.statistic; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + + +@Data +public class CommonDateListResult { + @ApiModelProperty("查询时间") + private List queryList; + @ApiModelProperty("展示时间") + private List showList; +}