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