From 1975c595cea467a97bd3ac34571d5051405a12a7 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Thu, 10 May 2018 09:27:05 +0800 Subject: [PATCH] 地图 相关修改 --- src/main/java/com/moral/service/AlarmConfigService.java | 1 + src/main/webapp/js/moralmap.js | 26 ++++++++++++++++++++------ src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 11 +++++++++++ src/main/webapp/view/map.jsp | 1 + src/main/java/com/moral/controller/ScreenController.java | 15 +++++++++++++++ src/main/java/com/moral/mapper/AlarmConfigMapper.java | 2 ++ 6 files changed, 50 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java index 4da099f..3f7967d 100644 --- a/src/main/java/com/moral/controller/ScreenController.java +++ b/src/main/java/com/moral/controller/ScreenController.java @@ -17,6 +17,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import com.moral.entity.alarm.AlarmConfig; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.net.ftp.FTPClient; import org.apache.log4j.Logger; @@ -494,4 +495,18 @@ List<Map<String, Object>> list = (List<Map<String, Object>>) pieData.get(sensorKey); return new ResultBean<List<Map<String, Object>>>(list); } + + /** + * ������������������ + * @param mpid + * @return + */ + @GetMapping("getalevels") + public ResultBean<Map<String,AlarmSensorLevel>> getAlarmLevelByMonitorPointId(int mpid){ + AlarmConfig alarmConfig = alarmConfigService.queryByMonitorPointId(mpid).get(); + ResultBean<Map<String,AlarmSensorLevel>> resultBean = new ResultBean(); + resultBean.setCode(ResultBean.SUCCESS); + resultBean.setData(alarmConfig.getValue().getAlarmLevels()); + return resultBean; + } } diff --git a/src/main/java/com/moral/mapper/AlarmConfigMapper.java b/src/main/java/com/moral/mapper/AlarmConfigMapper.java index 397db74..31858d3 100644 --- a/src/main/java/com/moral/mapper/AlarmConfigMapper.java +++ b/src/main/java/com/moral/mapper/AlarmConfigMapper.java @@ -19,4 +19,6 @@ int updateByPrimaryKeySelective(AlarmConfig record); int updateByPrimaryKey(AlarmConfig record); + + AlarmConfig selectByMonitorPointId(Integer mpId); } \ 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 0701630..edb5503 100644 --- a/src/main/java/com/moral/service/AlarmConfigService.java +++ b/src/main/java/com/moral/service/AlarmConfigService.java @@ -8,5 +8,6 @@ public interface AlarmConfigService { public Optional<AlarmConfigValue> queryValueByOrganizationId(int organizationId); public Optional<AlarmConfig> queryByOrganizationId(int organizationId); + public Optional<AlarmConfig> queryByMonitorPointId(int mpId); 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 bea09bf..8bd9c7f 100644 --- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java +++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.TypeReference; import com.moral.common.bean.Constants; import com.moral.common.util.RedisUtils; +import com.moral.entity.MonitorPoint; import com.moral.entity.alarm.AlarmConfig; import com.moral.entity.alarm.AlarmConfigValue; import com.moral.entity.alarm.AlarmMode; @@ -72,6 +73,16 @@ } @Override + public Optional<AlarmConfig> queryByMonitorPointId(int mpId) { + AlarmConfig alarmConfig = alarmConfigMapper.selectByMonitorPointId(mpId); + if(alarmConfig==null){ + alarmConfig = new AlarmConfig(); + alarmConfig.setValue(getDefaultAlarmConfigValue()); + } + return Optional.of(alarmConfig); + } + + @Override public void addOrModify(AlarmConfig alarmConfig) { try{ if(alarmConfig.getId()==null){ diff --git a/src/main/webapp/js/moralmap.js b/src/main/webapp/js/moralmap.js index 57a3d85..e603e0a 100644 --- a/src/main/webapp/js/moralmap.js +++ b/src/main/webapp/js/moralmap.js @@ -208,11 +208,23 @@ } return moralMarker; } + moralMap.clearCloseInfoWindow = function () { + if(!!moralMap["_closeInfoWinTimer"]){ + clearTimeout(moralMap["_closeInfoWinTimer"]); + moralMap["_closeInfoWinTimer"] = null; + } + } moralMap.openInfoWindow = function() { - baiduMap.openInfoWindow.apply(baiduMap, arguments); + moralMap.clearCloseInfoWindow(); + baiduMap.openInfoWindow.apply(baiduMap, arguments);; //������������������ } moralMap.closeInfoWindow = function() { - baiduMap.closeInfoWindow.apply(baiduMap, arguments); + var timer = setTimeout(function () { + baiduMap.closeInfoWindow.apply(baiduMap, arguments); + moralMap["_closeInfoWinTimer"] = null; + },1200); + moralMap["_closeInfoWinTimer"] = timer; + } moralMap.clearOverlays = function() { baiduMap.clearOverlays(); @@ -266,6 +278,7 @@ mac: (row['mac']).toLowerCase(), longitude: row['longitude'], latitude: row['latitude'], + monitorPointId: row['monitorPointId'], version:row['deviceVersion']['version'] }; !!select?equ['monitorPointId'] = row["monitorPointId"]:null; @@ -539,7 +552,9 @@ address = address.slice(0, 18) + "..."; } var adressOutHtml = ""; - adressOutHtml += "<div style='font:12px arial,sans-serif;margin-top:12px'><table cellspacing='0' style='overflow:hidden;table-layout:fixed;width:100%;font:12px arial,sans-serif'>"; + adressOutHtml += "<div onmouseover='moralMap.clearCloseInfoWindow()'" + adressOutHtml += "onmouseout='moralMap.closeInfoWindow()'" + adressOutHtml +=" style='font:12px arial,sans-serif;margin-top:12px'><table cellspacing='0' style='overflow:hidden;table-layout:fixed;width:100%;font:12px arial,sans-serif'>"; adressOutHtml += "<tbody><tr><td style='vertical-align:top;width:38px;white-space:nowrap;word-break:keep-all'>��������� </td><td style='line-height:16px'>"; adressOutHtml += address + " "; adressOutHtml += "</td></tr></tbody></table></div>"; @@ -547,16 +562,15 @@ } return new BMap.InfoWindow(getAdressOutHtml(), winOpts); })(); - if(moralMask["infoWindow"] == undefined) { moralMask["infoWindow"] = infoWindow; } //��������������������� moralMask.addEventListener("mouseover", function() { - baiduMap.openInfoWindow(infoWindow, this._point); //������������������ + moralMap.openInfoWindow(infoWindow, this._point); //������������������ }); moralMask.addEventListener("mouseout", function() { - baiduMap.closeInfoWindow(); + moralMap.closeInfoWindow(); }); //==================infoWindow-end============================ //��������������� diff --git a/src/main/webapp/view/map.jsp b/src/main/webapp/view/map.jsp index 21e667a..e339ca1 100644 --- a/src/main/webapp/view/map.jsp +++ b/src/main/webapp/view/map.jsp @@ -365,6 +365,7 @@ mac: (_obj['mac']).toLowerCase(), longitude: _obj['longitude'], latitude: _obj['latitude'], + monitorPointId: _obj['monitorPointId'], version:_obj['deviceVersion']['version'] } var equStr = JSON.stringify(equ); -- Gitblit v1.8.0