From ca72da809fdf68f2d6833ed77ad92c9aadc0663d Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Tue, 22 May 2018 09:30:20 +0800
Subject: [PATCH] 地图 增加 监控点入口
---
src/main/webapp/js/moralmap.js | 72 +++++++++++++++++-------
src/main/java/com/moral/mapper/DeviceMapper.java | 2
src/main/java/com/moral/service/MonitorPointService.java | 2
src/main/webapp/view/map.jsp | 37 ++++++++++-
src/main/java/com/moral/controller/ScreenController.java | 10 +++
src/main/java/com/moral/service/impl/DeviceServiceImpl.java | 20 ++++++
src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java | 4 +
src/main/java/com/moral/mapper/MonitorPointMapper.java | 2
8 files changed, 120 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index dadbe33..773a1d0 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -526,4 +526,14 @@
List<Map<String, Object>> list = (List<Map<String, Object>>) pieData.get(sensorKey);
return new ResultBean<List<Map<String, Object>>>(list);
}
+
+ /**
+ * ���������������id������������������version���������
+ * @param mptid
+ * @return
+ */
+ @GetMapping("getvers")
+ public ResultBean<List<Integer>> getVersions(Integer mptid){
+ return new ResultBean<>(monitorPointService.queryVersionsById(mptid));
+ }
}
diff --git a/src/main/java/com/moral/mapper/DeviceMapper.java b/src/main/java/com/moral/mapper/DeviceMapper.java
index a9b1064..d6ffa80 100644
--- a/src/main/java/com/moral/mapper/DeviceMapper.java
+++ b/src/main/java/com/moral/mapper/DeviceMapper.java
@@ -19,7 +19,7 @@
List<Map<String, Object>> getDeviceVersionIdByMonitorPoint(Integer monitorPointId);
- List<Device> selectByOrgIdAndDevName(@Param("orgId")Integer orgId,@Param("name")String name);
+ List<Device> selectByOrgIdAndDevName(@Param("orgId")Integer orgId,@Param("devState") String state,@Param("name")String name);
/**
*
diff --git a/src/main/java/com/moral/mapper/MonitorPointMapper.java b/src/main/java/com/moral/mapper/MonitorPointMapper.java
index efb0a64..bddf2ad 100644
--- a/src/main/java/com/moral/mapper/MonitorPointMapper.java
+++ b/src/main/java/com/moral/mapper/MonitorPointMapper.java
@@ -2,7 +2,6 @@
import java.util.List;
import java.util.Map;
-
import com.moral.common.mapper.BaseMapper;
import com.moral.entity.MonitorPoint;
import tk.mybatis.mapper.entity.Example;
@@ -12,4 +11,5 @@
List<MonitorPoint> getMonitorPointsByAreaName(Map<String, Object> parameters);
List<MonitorPoint> selectByMap(Map<String, Object> params);
List<Integer> selectOrganizationIds(int id);
+ List<Integer> selectVersionsById(int id);
}
\ No newline at end of file
diff --git a/src/main/java/com/moral/service/MonitorPointService.java b/src/main/java/com/moral/service/MonitorPointService.java
index b6fe1ac..452a257 100644
--- a/src/main/java/com/moral/service/MonitorPointService.java
+++ b/src/main/java/com/moral/service/MonitorPointService.java
@@ -26,4 +26,6 @@
List<MonitorPoint> getMonitorPointsByOrganizationId(Integer orgId);
List<MonitorPoint> getMonitorPointsByRegion(Map<String, Object> parameters);
+
+ List<Integer> queryVersionsById(Integer id);
}
diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index a009a42..a3c9565 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -203,7 +203,25 @@
if(!ObjectUtils.isEmpty(pageSize)&&!ObjectUtils.isEmpty(pageNo)){
PageHelper.startPage(pageNo,pageSize);
}
- List<Device> list = deviceMapper.selectByOrgIdAndDevName(orgId,deviceName);
+ String state = null;
+ switch (deviceName){
+ case "������":
+ state = "0";
+ deviceName = null;break;
+ case "������":
+ state = "1";
+ deviceName = null;break;
+ case "������":
+ state = "2";
+ deviceName = null;break;
+ case "������":
+ state = "3";
+ deviceName = null;break;
+ case "������":
+ state = "4";
+ deviceName = null;break;
+ }
+ List<Device> list = deviceMapper.selectByOrgIdAndDevName(orgId,state,deviceName);
//���redis������������
loadDeviceState(list);
if(list instanceof Page){
diff --git a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
index 5f128b2..200db4e 100644
--- a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
@@ -222,4 +222,8 @@
criteria.andEqualTo(parameters.get("name").toString(), parameters.get("value"));
return monitorPointMapper.selectByExample(example);
}
+ @Override
+ public List<Integer> queryVersionsById(Integer id){
+ return monitorPointMapper.selectVersionsById(id);
+ }
}
diff --git a/src/main/webapp/js/moralmap.js b/src/main/webapp/js/moralmap.js
index e603e0a..4bcc87a 100644
--- a/src/main/webapp/js/moralmap.js
+++ b/src/main/webapp/js/moralmap.js
@@ -224,7 +224,6 @@
moralMap["_closeInfoWinTimer"] = null;
},1200);
moralMap["_closeInfoWinTimer"] = timer;
-
}
moralMap.clearOverlays = function() {
baiduMap.clearOverlays();
@@ -274,6 +273,7 @@
return;
}
var equ = {
+ methodName : 'chart'== select ?'showChart':'showDeviceMonitor',
name: row['name'],
mac: (row['mac']).toLowerCase(),
longitude: row['longitude'],
@@ -283,23 +283,21 @@
};
!!select?equ['monitorPointId'] = row["monitorPointId"]:null;
var equStr = JSON.stringify(equ);
- if(!!select&&select==='chart'){
- if(window['external']&&window['external']['showChartInfo']){
- window['external'].showChartInfo(equStr);
- }else{
- alert(equStr);
- }
+ if(window["console"]!=undefined){
+ console.log(equStr);
+ }
+ if(!!window['external']&&window['external']['callWin']){
+ window['external'].callWin(equStr);
+ }else{
+ if(!!select&&select==='chart'&&!!window['external']&&window['external']['showChartInfo']){
+ window['external'].showChartInfo(equStr);
+ }else if(!!window['external']&&window['external']['showMonitorInfo']){
+ window['external'].showMonitorInfo(equStr);
+ }else{
+ alert(equStr);
+ }
}
- else{
- if(window["console"]!=undefined){
- console.log(equStr);
- }
- if(window['external']&&window['external']['showMonitorInfo']){
- window['external'].showMonitorInfo(equStr);
- }else{
- alert(equStr);
- }
- }
+
}
moralMap.setPopupEqus = function(arr) {
moralMap["_equs"] = arr;
@@ -528,7 +526,7 @@
//���������������
var winOpts = {
width: 110, // ������������������
- height: 50, // ������������������
+ height: 80, // ������������������
title: getTitleOutHtml(), // ������������������
offset: new BMap.Size(-2, -21) //���������������������
}
@@ -552,12 +550,14 @@
address = address.slice(0, 18) + "...";
}
var adressOutHtml = "";
- adressOutHtml += "<div onmouseover='moralMap.clearCloseInfoWindow()'"
- adressOutHtml += "onmouseout='moralMap.closeInfoWindow()'"
+ 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>";
+ adressOutHtml += "</td></tr>";
+ adressOutHtml += "<tr><td style='width:98%;padding-top:10px;'colspan='2'><a href='javascript:void(0);' style='display:block;position: relative;float: right;' onclick='moralMap.showPointMonitor("+option.id+")'>������������>></a></td></tr>";
+ adressOutHtml += "</tbody></table></div>";
return adressOutHtml;
}
return new BMap.InfoWindow(getAdressOutHtml(), winOpts);
@@ -832,5 +832,35 @@
}
return markers;
}
+ moralMap.showPointMonitor = function (id) {
+ var mpointMarker = moralMap.getMpoint(id);
+ var mpoint = mpointMarker.getOption();
+ if(!!mpoint){
+ delete mpoint['organization'];
+ delete mpoint['icon'];
+ delete mpoint['click'];
+ if(window["console"]!=undefined){
+ console.log(mpoint);
+ }
+ $.get("getvers?mptid="+id,function (res) {
+ if(!!res&&res.code==1){
+ mpoint['versions'] = res.data;
+ mpoint['methodName'] = 'showPointMonitor';
+ var mpointStr = JSON.stringify(mpoint);
+ if(!!window['external']&&window['external']['callWin']){
+ window['external'].callWin(mpointStr);
+ }else{
+ alert(JSON.stringify(mpointStr));
+ }
+ }
+ })
+ }else{
+ if(window["console"]!=undefined){
+ console.log("option of mpointMarker is null");
+ console.log(mpointMarker);
+ }
+ }
+
+ }
window.moralMap = moralMap;
})(jQuery, BMap, window);
\ No newline at end of file
diff --git a/src/main/webapp/view/map.jsp b/src/main/webapp/view/map.jsp
index e339ca1..6fc278f 100644
--- a/src/main/webapp/view/map.jsp
+++ b/src/main/webapp/view/map.jsp
@@ -48,7 +48,17 @@
padding:0;
list-style:none;
}
-
+a{
+ color: #1900c6;
+ text-decoration: none;
+ cursor: pointer;
+ font-size: 14px;
+ font-weight: 300;
+}
+a:hover {
+ text-decoration: underline;
+ color: #e60012;
+}
#popup_box {
top: 75px;
left: 20px;
@@ -296,8 +306,10 @@
window["listView"] = listView;
//���������������������click������������
function showEqus(obj) {
+
var params = moralMap['params'];
var mpoint = obj.currentTarget.getOption();
+ $("#searchParam").val(mpoint['name']);
var url = 'get-devices-by-mid-oid?mpId=' + mpoint['id'] + "&orgId=" + params['orgId'];
listView.load(url);
moralMap.showPopupbox("#popup_box");
@@ -361,6 +373,7 @@
return;
}
var equ = {
+ methodName : 'showDeviceMonitor',
name: _obj['name'],
mac: (_obj['mac']).toLowerCase(),
longitude: _obj['longitude'],
@@ -372,7 +385,10 @@
if(window["console"]!=undefined){
console.log(equStr);
}
- if(window['external']&&window['external']['showMonitorInfo']){
+ if(!!window['external']&&window['external']['callWin']){
+ window['external'].callWin(equStr);
+ }else
+ if(!!window['external']&&window['external']['showMonitorInfo']){
window['external'].showMonitorInfo(equStr);
}else{
alert(equStr);
@@ -446,14 +462,25 @@
var url = 'get-devices-for-popup?name=' + param + "&orgId=" + params['orgId'];
listView.load(url);
}
- )
+ );
+ $("#searchParam").keydown(function (event) {
+ if(event.keyCode ==13) {
+ $("#searchBtn").trigger("click");
+ }
+ })
//������������������������������
$(".charts_btn").click(
function (e) {
- if(window['external']&&window['external']['showChartInfo']){
+ var obj = {};
+ obj['methodName'] = 'showChart';
+ var objStr = JSON.stringify(obj);
+ if(!!window['external']&&window['external']['callWin']){
+ window['external'].callWin(objStr);
+ }else
+ if(!!window['external']&&window['external']['showChartInfo']){
window['external'].showChartInfo("");
}else{
- alert("");
+ alert(objStr);
}
}
);
--
Gitblit v1.8.0