From b664b9891d2988182ddfa34f816355f94f4714c8 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Sat, 23 Jun 2018 16:22:06 +0800
Subject: [PATCH] 添加 通过 mac 获取三级警报功能
---
src/main/resources/mapper/AlarmConfigMapper.xml | 10 ++++++++++
src/main/java/com/moral/service/AlarmConfigService.java | 3 +++
src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 10 ++++++++++
src/main/java/com/moral/controller/ScreenController.java | 4 +++-
src/main/java/com/moral/mapper/AlarmConfigMapper.java | 2 ++
5 files changed, 28 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 79beb59..66467dd 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -155,7 +155,7 @@
* @return the alarm levels
*/
@GetMapping("alarm-levels")
- public Object getAlarmLevels(HttpServletRequest request, Optional<Integer> orgId, Optional<Integer> mpId) {
+ public Object getAlarmLevels(HttpServletRequest request, Optional<Integer> orgId, Optional<Integer> mpId,Optional<String> mac) {
List<Map<String,Object>> sensorAlarmList = null;
try {
AlarmConfig alarmConfig = null;
@@ -163,6 +163,8 @@
alarmConfig = alarmConfigService.queryValueByOrganizationId(orgId.get()).get();
}else if(mpId.isPresent()){
alarmConfig = alarmConfigService.queryByMonitorPointId(mpId.get()).get();
+ } else if(mac.isPresent() ){
+ alarmConfig = alarmConfigService.queryByDeviceMac(mac.get()).get();
}
//���������������
if(alarmConfig.getValue()!=null&&alarmConfig.getValue().getAlarmLevels()!=null){
diff --git a/src/main/java/com/moral/mapper/AlarmConfigMapper.java b/src/main/java/com/moral/mapper/AlarmConfigMapper.java
index 31858d3..848dd0a 100644
--- a/src/main/java/com/moral/mapper/AlarmConfigMapper.java
+++ b/src/main/java/com/moral/mapper/AlarmConfigMapper.java
@@ -21,4 +21,6 @@
int updateByPrimaryKey(AlarmConfig record);
AlarmConfig selectByMonitorPointId(Integer mpId);
+
+ AlarmConfig selectByDeviceMac(String mac);
}
\ No newline at end of file
diff --git a/src/main/java/com/moral/service/AlarmConfigService.java b/src/main/java/com/moral/service/AlarmConfigService.java
index ec6bb06..e34dad5 100644
--- a/src/main/java/com/moral/service/AlarmConfigService.java
+++ b/src/main/java/com/moral/service/AlarmConfigService.java
@@ -10,6 +10,9 @@
public Optional<AlarmConfig> queryByOrganizationId(int organizationId);
public Optional<AlarmConfig> queryByMonitorPointId(int mpId);
public AlarmConfigValue getDefaultAlarmConfigValue();
+
+ Optional<AlarmConfig> queryByDeviceMac(String mac);
+
void addOrModify(AlarmConfig alarmConfig);
}
diff --git a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
index 75017d5..6ea34b6 100644
--- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
@@ -85,6 +85,16 @@
}
@Override
+ public Optional<AlarmConfig> queryByDeviceMac(String mac) {
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByDeviceMac(mac);
+ if(alarmConfig==null){
+ alarmConfig = new AlarmConfig();
+ alarmConfig.setValue(getDefaultAlarmConfigValue());
+ }
+ return Optional.ofNullable(alarmConfig);
+ }
+
+ @Override
public void addOrModify(AlarmConfig alarmConfig) {
try{
if(alarmConfig.getId()==null){
diff --git a/src/main/resources/mapper/AlarmConfigMapper.xml b/src/main/resources/mapper/AlarmConfigMapper.xml
index 32e25ad..f8c95ff 100644
--- a/src/main/resources/mapper/AlarmConfigMapper.xml
+++ b/src/main/resources/mapper/AlarmConfigMapper.xml
@@ -103,5 +103,15 @@
from alarm_config acg
LEFT JOIN monitor_point mpt on acg.organization_id = mpt.organization_id
where mpt.id = #{mpId,jdbcType=INTEGER}
+ limit 0,1
+ </select>
+ <select id="selectByDeviceMac" parameterType="java.lang.String" resultMap="BaseResultMap">
+ select
+ acg.*
+ from alarm_config acg
+ LEFT JOIN monitor_point mpt on acg.organization_id = mpt.organization_id
+ LEFT JOIN device dev on mpt.id = dev.monitor_point_id
+ where dev.mac = #{mac,jdbcType=VARCHAR}
+ limit 0,1
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0