xufenglei
2019-06-17 1dc145aab7bbf5128d5c75d52ba4e03f1fc2725b
更新 设备状态
2 files added
2 files modified
68 ■■■■ changed files
src/main/webapp/img/ico09.png patch | view | raw | blame | history
src/main/webapp/img/ico_coo09.png patch | view | raw | blame | history
src/main/webapp/js/moralmap.js 52 ●●●●● patch | view | raw | blame | history
src/main/webapp/view/map.jsp 16 ●●●●● patch | view | raw | blame | history
src/main/webapp/img/ico09.png
src/main/webapp/img/ico_coo09.png
src/main/webapp/js/moralmap.js
@@ -508,7 +508,8 @@
        function _getMapIcon(state) {
            state = state == null ? 0 : state;
            var icon = _option["icon"];
            var url = icon["stateIcons"][state];
            //var url = icon["stateIcons"][state];
            var url = icon["url"] + state + ".png";
            return new BMap.Icon(url, new BMap.Size(icon["width"], icon["height"]), {
                imageSize: new BMap.Size(icon["width"], icon["height"])
            });
@@ -551,8 +552,17 @@
    moralMap.MoralMarker.prototype = new BMap.Marker();
    //监控点对象 包装Mark对象
    moralMap.Monitorpoint = function(option) {
        if(monitorPointStates){
            for(var i in monitorPointStates){
                var state = monitorPointStates[i];
                if(state.id == option.id){
                    option.state = state.state;
                }
            }
        }
        var icon = {};
        icon["stateIcons"] = ["/img/ico00.png", "/img/ico01.png", "/img/ico02.png", "/img/ico03.png", "/img/ico04.png"];
        icon["url"] = "/img/ico0";
        icon["width"] = 50;
        icon["height"] = 50;
        option["icon"] = icon;
@@ -639,8 +649,17 @@
    //设备以mac为key储存
    //监控点对象 包装MoralMark对象
    moralMap.Equipment = function(option) {
        if(deviceStates){
            for(var i in deviceStates){
                var state = deviceStates[i];
                if(state.id == option.id){
                    option.state = state.state;
                }
            }
        }
        var icon = {};
        icon["stateIcons"] = ["/img/ico_coo00.png", "/img/ico_coo01.png", "/img/ico_coo02.png", "/img/ico_coo03.png", "/img/ico_coo04.png"];
        icon["url"] = "/img/ico_coo0";
        icon["width"] = 50;
        icon["height"] = 60;
        option["icon"] = icon;
@@ -975,6 +994,37 @@
        
    }
    var deviceStates ;
    var monitorPointStates;
    moralMap.refreshState = function(states) {
        if (!monitorPointStates) {
            monitorPointStates = states;
            deviceStates = [];
            for (var i in states) {
                var state = states[i];
                for (var j in state.devices) {
                    var device = state.devices[j];
                    deviceStates.push(device);
                }
            }
        }
        for (var i in states) {
            var state = states[i];
            var mpoint = moralMap.getMpoint(state.id);
            if (mpoint) {
                mpoint.refreshState(state.state);
            }
            for (var j in state.devices) {
                var marker = state.devices[j];
                var marker_mac = marker["mac"];
                var equipment = moralMap.getEquipment(marker_mac);
                if (equipment) {
                    equipment.refreshState(marker);
                }
            }
        }
    }
    window.moralMap = moralMap;
})(jQuery, BMap, window);
src/main/webapp/view/map.jsp
@@ -673,21 +673,7 @@
        } else if ("RefreshState" == methodName) {
            //$("#searchParam").val(JSON.stringify(jsonData));
            var states = jsonData.states;
            for(var i in states){
                var state = states[i];
                var mpoint = moralMap.getMpoint(state.id);
                if(mpoint!=null){
                    mpoint.refreshState(state.state);
                }
                for(var j in state.devices){
                    var marker = state.devices[j];
                    var marker_mac = marker["mac"];
                    var equipment = moralMap.getEquipment(marker_mac);
                    if(equipment!=null){
                        equipment.refreshState(marker);
                    }
                }
            }
            moralMap.refreshState(states);
        }
    }
</script>