Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
iot-service
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Container Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
SuperHive
back-end
iot-service
Commits
63570385
Commit
63570385
authored
Aug 07, 2020
by
chenfm
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
告警查询
parent
b6dbd9ae
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
159 additions
and
8 deletions
+159
-8
DataPermHandler.java
...om/esv/datacenter/iot/config/mybatis/DataPermHandler.java
+1
-1
DeviceDataAlarmController.java
...ot/module/alarm/controller/DeviceDataAlarmController.java
+29
-5
DeviceDataAlarmDao.java
...v/datacenter/iot/module/alarm/dao/DeviceDataAlarmDao.java
+9
-1
DeviceDataAlarmDTO.java
...v/datacenter/iot/module/alarm/dto/DeviceDataAlarmDTO.java
+46
-1
DeviceDataAlarmEntity.java
...center/iot/module/alarm/entity/DeviceDataAlarmEntity.java
+6
-0
AlarmListForm.java
...m/esv/datacenter/iot/module/alarm/form/AlarmListForm.java
+3
-0
DeviceDataAlarmService.java
...nter/iot/module/alarm/service/DeviceDataAlarmService.java
+9
-0
DeviceDataAlarmServiceImpl.java
...module/alarm/service/impl/DeviceDataAlarmServiceImpl.java
+13
-0
DeviceDataAlarmDao.xml
src/main/resources/mapper/alarm/DeviceDataAlarmDao.xml
+43
-0
No files found.
src/main/java/com/esv/datacenter/iot/config/mybatis/DataPermHandler.java
View file @
63570385
...
...
@@ -26,7 +26,7 @@ public class DataPermHandler implements TenantHandler {
/**
* 不需要数据权限查询的表
**/
private
final
List
<
String
>
filterTableNames
=
Arrays
.
asList
(
""
);
private
final
List
<
String
>
filterTableNames
=
Arrays
.
asList
(
"
device_data_alarm
"
);
@Override
public
Expression
getTenantId
(
boolean
where
)
{
...
...
src/main/java/com/esv/datacenter/iot/module/alarm/controller/DeviceDataAlarmController.java
View file @
63570385
package
com
.
esv
.
datacenter
.
iot
.
module
.
alarm
.
controller
;
import
com.esv.datacenter.iot.common.response.ECode
;
import
com.esv.datacenter.iot.common.response.EResponse
;
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.service.DeviceDataAlarmService
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
...
...
@@ -19,20 +19,44 @@ import java.util.List;
* @createTime: 2020/8/7 14:21
* @version: 1.0
*/
@RestController
@RequestMapping
(
"alarm/show"
)
public
class
DeviceDataAlarmController
{
private
DeviceDataAlarmService
deviceDataAlarmService
;
@Autowired
public
DeviceDataAlarmController
(
DeviceDataAlarmService
deviceDataAlarmService
)
{
this
.
deviceDataAlarmService
=
deviceDataAlarmService
;
}
/**
* description 告警查询
* param [alarmListForm]
* return com.esv.datacenter.iot.common.response.EResponse<java.util.List<com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO>>
* author chenfm
* createTime 2020/8/7 16:59
**/
@PostMapping
(
"list"
)
public
EResponse
<
List
<
DeviceDataAlarmDTO
>>
list
(
@RequestBody
AlarmListForm
alarmListForm
)
{
List
<
DeviceDataAlarmDTO
>
list
=
deviceDataAlarmService
.
alarmList
(
alarmListForm
);
return
EResponse
.
ok
(
list
);
}
return
EResponse
.
ok
();
/**
* description 告警详情
* param [id]
* return com.esv.datacenter.iot.common.response.EResponse<com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO>
* author chenfm
* createTime 2020/8/7 17:00
**/
@GetMapping
(
"detail"
)
public
EResponse
<
DeviceDataAlarmDTO
>
detail
(
@RequestParam
(
value
=
"id"
)
Long
id
)
{
DeviceDataAlarmDTO
deviceDataAlarmDTO
=
deviceDataAlarmService
.
alarmDetail
(
id
);
if
(
deviceDataAlarmDTO
==
null
)
{
return
EResponse
.
error
(
ECode
.
PARAM_ERROR
);
}
return
EResponse
.
ok
(
deviceDataAlarmDTO
);
}
}
src/main/java/com/esv/datacenter/iot/module/alarm/dao/DeviceDataAlarmDao.java
View file @
63570385
package
com
.
esv
.
datacenter
.
iot
.
module
.
alarm
.
dao
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
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.form.AlarmListForm
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* 设备数据模型映射表
...
...
@@ -14,4 +19,7 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public
interface
DeviceDataAlarmDao
extends
BaseMapper
<
DeviceDataAlarmEntity
>
{
List
<
DeviceDataAlarmDTO
>
alarmList
(
AlarmListForm
alarmListForm
);
DeviceDataAlarmDTO
alarmDetail
(
@Param
(
"id"
)
Long
id
);
}
src/main/java/com/esv/datacenter/iot/module/alarm/dto/DeviceDataAlarmDTO.java
View file @
63570385
package
com
.
esv
.
datacenter
.
iot
.
module
.
alarm
.
dto
;
import
com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* @description:
...
...
@@ -11,6 +13,49 @@ import lombok.Data;
* @createTime: 2020/8/7 14:19
* @version: 1.0
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
public
class
DeviceDataAlarmDTO
{
public
class
DeviceDataAlarmDTO
extends
DeviceDataAlarmEntity
{
/**
* 模型ID
*/
private
Long
deviceTypeId
;
/**
* 模型名称
*/
private
String
deviceTypeName
;
/**
* 实例名称
*/
private
String
deviceName
;
/**
* 实例描述
*/
private
String
deviceDescription
;
/**
* 模型名称
*/
private
String
dataModelName
;
/**
* 属性代码
*/
private
String
propertyCode
;
/**
* 属性名称
*/
private
String
propertyName
;
/**
* 判定规则代码(字典表)
*/
private
Integer
ruleExpression
;
/**
* 告警等级(字典表)
*/
private
Integer
alarmLevel
;
/**
* 阈值
*/
private
String
threshold
;
}
src/main/java/com/esv/datacenter/iot/module/alarm/entity/DeviceDataAlarmEntity.java
View file @
63570385
...
...
@@ -36,6 +36,12 @@ public class DeviceDataAlarmEntity {
* createTime 2020/8/7 14:14
**/
private
Long
alarmRuleId
;
/**
* description 上报值
* author chenfm
* createTime 2020/8/7 15:22
**/
private
String
reportValue
;
/**
* description 数据上报时间
* author chenfm
...
...
src/main/java/com/esv/datacenter/iot/module/alarm/form/AlarmListForm.java
View file @
63570385
...
...
@@ -13,4 +13,7 @@ import lombok.Data;
*/
@Data
public
class
AlarmListForm
{
private
String
deviceName
;
}
src/main/java/com/esv/datacenter/iot/module/alarm/service/DeviceDataAlarmService.java
View file @
63570385
package
com
.
esv
.
datacenter
.
iot
.
module
.
alarm
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
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.form.AlarmListForm
;
import
java.util.List
;
/**
* @description:
...
...
@@ -13,4 +17,9 @@ import com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity;
* @version: 1.0
*/
public
interface
DeviceDataAlarmService
extends
IService
<
DeviceDataAlarmEntity
>
{
List
<
DeviceDataAlarmDTO
>
alarmList
(
AlarmListForm
alarmListForm
);
DeviceDataAlarmDTO
alarmDetail
(
Long
id
);
}
src/main/java/com/esv/datacenter/iot/module/alarm/service/impl/DeviceDataAlarmServiceImpl.java
View file @
63570385
...
...
@@ -2,10 +2,14 @@ package com.esv.datacenter.iot.module.alarm.service.impl;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
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.entity.DeviceDataAlarmEntity
;
import
com.esv.datacenter.iot.module.alarm.form.AlarmListForm
;
import
com.esv.datacenter.iot.module.alarm.service.DeviceDataAlarmService
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* @description:
* @project: datacenter-iot-service
...
...
@@ -17,4 +21,13 @@ import org.springframework.stereotype.Service;
*/
@Service
(
"deviceDataAlarmService"
)
public
class
DeviceDataAlarmServiceImpl
extends
ServiceImpl
<
DeviceDataAlarmDao
,
DeviceDataAlarmEntity
>
implements
DeviceDataAlarmService
{
@Override
public
List
<
DeviceDataAlarmDTO
>
alarmList
(
AlarmListForm
alarmListForm
)
{
return
baseMapper
.
alarmList
(
alarmListForm
);
}
@Override
public
DeviceDataAlarmDTO
alarmDetail
(
Long
id
)
{
return
baseMapper
.
alarmDetail
(
id
);
}
}
src/main/resources/mapper/alarm/DeviceDataAlarmDao.xml
0 → 100644
View file @
63570385
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.esv.datacenter.iot.module.alarm.dao.DeviceDataAlarmDao"
>
<!-- 可根据自己的需求,是否要使用 -->
<resultMap
id=
"deviceDataAlarmMap"
type=
"com.esv.datacenter.iot.module.alarm.entity.DeviceDataAlarmEntity"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"deviceId"
column=
"device_id"
/>
<result
property=
"alarmRuleId"
column=
"alarm_rule_id"
/>
<result
property=
"reportTime"
column=
"report_time"
/>
<result
property=
"alarmTime"
column=
"alarm_time"
/>
</resultMap>
<select
id=
"alarmList"
resultType=
"com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO"
parameterType=
"com.esv.datacenter.iot.module.alarm.form.AlarmListForm"
>
select alarm.id, alarm.device_id, alarm.alarm_rule_id, alarm.report_value, alarm.report_time, alarm.alarm_time,
device.device_type_id, type.name device_type_name, device.name device_name, device.description device_description,
model.name data_model_name, property.property_code, property.property_name, rule.rule_expression, rule.alarm_level,
rule.threshold
from device_data_alarm alarm
left join device_instance device on alarm.device_id = device.id
left join device_type type on device.device_type_id = type.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_property property on rule.property_id = property.id
</select>
<select
id=
"alarmDetail"
resultType=
"com.esv.datacenter.iot.module.alarm.dto.DeviceDataAlarmDTO"
>
select alarm.id, alarm.device_id, alarm.alarm_rule_id, alarm.report_value, alarm.report_time, alarm.alarm_time,
device.device_type_id, type.name device_type_name, device.name device_name, device.description device_description,
model.name data_model_name, property.property_code, property.property_name, rule.rule_expression, rule.alarm_level,
rule.threshold
from device_data_alarm alarm
left join device_instance device on alarm.device_id = device.id
left join device_type type on device.device_type_id = type.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_property property on rule.property_id = property.id
where alarm.id = #{id}
</select>
</mapper>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment