Commit 0ced5eff authored by chenfm's avatar chenfm

告警查询

parent 63570385
...@@ -2,14 +2,15 @@ package com.esv.datacenter.iot.module.alarm.controller; ...@@ -2,14 +2,15 @@ package com.esv.datacenter.iot.module.alarm.controller;
import com.esv.datacenter.iot.common.response.ECode; import com.esv.datacenter.iot.common.response.ECode;
import com.esv.datacenter.iot.common.response.EResponse; import com.esv.datacenter.iot.common.response.EResponse;
import com.esv.datacenter.iot.common.validator.groups.ValidatorList;
import com.esv.datacenter.iot.common.vo.PageResultVO;
import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO; import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO;
import com.esv.datacenter.iot.module.alarm.form.AlarmListForm; import com.esv.datacenter.iot.module.alarm.form.AlarmListForm;
import com.esv.datacenter.iot.module.alarm.service.DeviceDataAlarmService; import com.esv.datacenter.iot.module.alarm.service.DeviceDataAlarmService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
/** /**
* @description: * @description:
* @project: datacenter-iot-service * @project: datacenter-iot-service
...@@ -38,9 +39,9 @@ public class DeviceDataAlarmController { ...@@ -38,9 +39,9 @@ public class DeviceDataAlarmController {
* createTime 2020/8/7 16:59 * createTime 2020/8/7 16:59
**/ **/
@PostMapping("list") @PostMapping("list")
public EResponse<List<DeviceDataAlarmDTO>> list(@RequestBody AlarmListForm alarmListForm) { public EResponse<PageResultVO> list(@RequestBody @Validated(ValidatorList.class) AlarmListForm alarmListForm) {
List<DeviceDataAlarmDTO> list = deviceDataAlarmService.alarmList(alarmListForm); PageResultVO pageResultVO = deviceDataAlarmService.alarmList(alarmListForm);
return EResponse.ok(list); return EResponse.ok(pageResultVO);
} }
/** /**
......
package com.esv.datacenter.iot.module.alarm.dao; package com.esv.datacenter.iot.module.alarm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO; import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO;
import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity; import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity;
import com.esv.datacenter.iot.module.alarm.form.AlarmListForm; import com.esv.datacenter.iot.module.alarm.form.AlarmListForm;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* 设备数据模型映射表 * 设备数据模型映射表
* *
...@@ -19,7 +18,7 @@ import java.util.List; ...@@ -19,7 +18,7 @@ import java.util.List;
@Mapper @Mapper
public interface DeviceDataAlarmDao extends BaseMapper<DeviceDataAlarmEntity> { public interface DeviceDataAlarmDao extends BaseMapper<DeviceDataAlarmEntity> {
List<DeviceDataAlarmDTO> alarmList(AlarmListForm alarmListForm); IPage<DeviceDataAlarmDTO> alarmList(IPage<DeviceDataAlarmDTO> page, AlarmListForm alarmListForm);
DeviceDataAlarmDTO alarmDetail(@Param("id") Long id); DeviceDataAlarmDTO alarmDetail(@Param("id") Long id);
} }
...@@ -22,15 +22,15 @@ public class DeviceDataAlarmDTO extends DeviceDataAlarmEntity { ...@@ -22,15 +22,15 @@ public class DeviceDataAlarmDTO extends DeviceDataAlarmEntity {
*/ */
private Long deviceTypeId; private Long deviceTypeId;
/** /**
* 模型名称 * 设备类型
*/ */
private String deviceTypeName; private String deviceTypeName;
/** /**
* 实例名称 * 设备名称
*/ */
private String deviceName; private String deviceName;
/** /**
* 实例描述 * 设备描述
*/ */
private String deviceDescription; private String deviceDescription;
/** /**
......
package com.esv.datacenter.iot.module.alarm.form; package com.esv.datacenter.iot.module.alarm.form;
import com.esv.datacenter.iot.common.validator.groups.ValidatorList;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.NotNull;
/** /**
* @description: * @description:
...@@ -12,7 +17,21 @@ import lombok.Data; ...@@ -12,7 +17,21 @@ import lombok.Data;
* @version: 1.0 * @version: 1.0
*/ */
@Data @Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class AlarmListForm { public class AlarmListForm {
/**
* 页码
**/
@Range(min = 1, max = 65535, message = "无效的pageNum", groups = {ValidatorList.class})
@NotNull(message = "参数pageNum不能为空", groups = {ValidatorList.class})
private Integer pageNum;
/**
* 每页记录条数
**/
@Range(min = 1, max = 100, message = "pageSize", groups = {ValidatorList.class})
@NotNull(message = "参数pageSize不能为空", groups = {ValidatorList.class})
private Integer pageSize;
private String deviceName; private String deviceName;
......
package com.esv.datacenter.iot.module.alarm.service; package com.esv.datacenter.iot.module.alarm.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.esv.datacenter.iot.common.vo.PageResultVO;
import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO; import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO;
import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity; import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity;
import com.esv.datacenter.iot.module.alarm.form.AlarmListForm; import com.esv.datacenter.iot.module.alarm.form.AlarmListForm;
import java.util.List;
/** /**
* @description: * @description:
* @project: datacenter-iot-service * @project: datacenter-iot-service
...@@ -18,7 +17,7 @@ import java.util.List; ...@@ -18,7 +17,7 @@ import java.util.List;
*/ */
public interface DeviceDataAlarmService extends IService<DeviceDataAlarmEntity> { public interface DeviceDataAlarmService extends IService<DeviceDataAlarmEntity> {
List<DeviceDataAlarmDTO> alarmList(AlarmListForm alarmListForm); PageResultVO alarmList(AlarmListForm alarmListForm);
DeviceDataAlarmDTO alarmDetail(Long id); DeviceDataAlarmDTO alarmDetail(Long id);
......
package com.esv.datacenter.iot.module.alarm.service.impl; package com.esv.datacenter.iot.module.alarm.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.esv.datacenter.iot.common.vo.PageResultVO;
import com.esv.datacenter.iot.module.alarm.dao.DeviceDataAlarmDao; import com.esv.datacenter.iot.module.alarm.dao.DeviceDataAlarmDao;
import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO; import com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO;
import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity; import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity;
...@@ -8,8 +11,6 @@ import com.esv.datacenter.iot.module.alarm.form.AlarmListForm; ...@@ -8,8 +11,6 @@ import com.esv.datacenter.iot.module.alarm.form.AlarmListForm;
import com.esv.datacenter.iot.module.alarm.service.DeviceDataAlarmService; import com.esv.datacenter.iot.module.alarm.service.DeviceDataAlarmService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* @description: * @description:
* @project: datacenter-iot-service * @project: datacenter-iot-service
...@@ -21,9 +22,12 @@ import java.util.List; ...@@ -21,9 +22,12 @@ import java.util.List;
*/ */
@Service("deviceDataAlarmService") @Service("deviceDataAlarmService")
public class DeviceDataAlarmServiceImpl extends ServiceImpl<DeviceDataAlarmDao, DeviceDataAlarmEntity> implements DeviceDataAlarmService { public class DeviceDataAlarmServiceImpl extends ServiceImpl<DeviceDataAlarmDao, DeviceDataAlarmEntity> implements DeviceDataAlarmService {
@Override @Override
public List<DeviceDataAlarmDTO> alarmList(AlarmListForm alarmListForm) { public PageResultVO alarmList(AlarmListForm alarmListForm) {
return baseMapper.alarmList(alarmListForm); IPage<DeviceDataAlarmDTO> page = new Page<>(alarmListForm.getPageNum(), alarmListForm.getPageSize());
page = baseMapper.alarmList(page, alarmListForm);
return new PageResultVO(page, page.getRecords());
} }
@Override @Override
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
left join data_model_alarm_rule rule on alarm.alarm_rule_id = rule.id left join data_model_alarm_rule rule on alarm.alarm_rule_id = rule.id
left join data_model model on rule.model_id = model.id left join data_model model on rule.model_id = model.id
left join data_model_property property on rule.property_id = property.id left join data_model_property property on rule.property_id = property.id
order by alarm.alarm_time desc
</select> </select>
<select id="alarmDetail" resultType="com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO"> <select id="alarmDetail" resultType="com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment