| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 | // map.setMapStyle({styleJson:styleJson});var map, myZoomCtrl;var popinfo = null;function ZoomControl() {}ZoomControl.prototype = new BMap.Control();ZoomControl.prototype.initialize = function (map) {    var html = document.getElementById("legend").innerHTML;    var obj = parseDom(html);    // 添加DOM元素到地图中    map.getContainer().appendChild(obj);    return null;}// 创建控件实例var gListPoint = []function requestMgr() {    var url = "/svc/gis/points";    $.post(url, function (result) {        if (null != result && null != result.result && result.result.length != 0) {            gListPoint = result.result            showStars(result.result);            showList(result.result);        }    });}function showStars(datas) {    for (var i = 0, len = datas.length; i < len; ++i) {        var data = datas[i];        if (!data || !data.x || !data.y) {            continue        }        var point = new BMap.Point(data.x, data.y);        var myIcon;        switch (data.status) {            case "online":                myIcon = new BMap.Icon("/lib/webo/images/map/online.png", new BMap.Size(22, 24), {                    anchor: new BMap.Size(11, 24),                    imageSize: new BMap.Size(22, 24)                });                break;            case "offline":                myIcon = new BMap.Icon("/lib/webo/images/map/offline.png", new BMap.Size(22, 24), {                    anchor: new BMap.Size(11, 24),                    imageSize: new BMap.Size(22, 24)                });                break;            case "running":                myIcon = new BMap.Icon("/lib/webo/images/map/running.png", new BMap.Size(22, 24), {                    anchor: new BMap.Size(11, 24),                    imageSize: new BMap.Size(22, 24)                });                break;            default:                myIcon = new BMap.Icon("/lib/webo/images/map/error.png", new BMap.Size(22, 24), {                    anchor: new BMap.Size(11, 24),                    imageSize: new BMap.Size(22, 24)                });                break;        }        // 创建标注对象并添加到地图        var marker = new BMap.Marker(point, {icon: myIcon});        marker.setTitle(data.remark);        marker.sid = data.sid        map.addOverlay(marker);        marker.addEventListener("click", function () {            detail(this.sid);        });    }}function showList(list) {    $("#item_list").empty();    for (var i = 0, len = list.length; i < len; ++i) {        var item = list[i];        var name = item.name;        var remark = item.remark;        var sid = item.sid;        var status;        var status_bg_color;        switch (item.status) {            case "online":                status = "就绪";                status_bg_color = "#0c9ddb";                break;            case "offline":                status = "待机";                status_bg_color = "#60d93b";                break;            case "running":                status = "运行";                status_bg_color = "#288A2A";                break;            default:                status = "告警";                status_bg_color = "#E3131D";                break;        }        var item = "<input type='hidden' id='" + i + "' value='" + sid + "'></input>"            + "<a onclick=getSidAndDetail(" + i + ") class='list-group-item clearfix'> <span class='clear'><span>" + name + "</span>"            + "<span class='pull-right label bg-primary inline m-t-sm' style='background-color:" + status_bg_color + "'>" + status + "</span>"            + "<small class='text-muted clear text-ellipsis'>" + remark + "</small></span></a>"        $("#item_list").append(item);    }}function refreshContent() {    }function detail(sid) {    href="/gis/gis/path?sid=" + sid    top.showTopModal({url: href, refreshContent: refreshContent, showBtn: false});    return    var url = "/genset/status/params";    $.post(url, {            sn: sid        },        function (result) {            //result = data.result            if (result != null) {                if (popinfo == null) {                    popinfo = document.getElementsByName("popdiv")[0];                }                $(popinfo).find("#opress").text(result.opress);                $(popinfo).find("#opressbar").width(result.opress);                $(popinfo).find("#etemp").text(result.etemp);                $(popinfo).find("#etempbar").width(result.etemp);                $(popinfo).find("#vbat").text(result.vbat);                $(popinfo).find("#vbatbar").width(result.vbat);                $(popinfo).find("#pw").text(result.pw);                $("body").append(popinfo);                result.x = '116.48087498958283';                result.y = '35.7091602675671';                var pwPercent = 0                for (i in gListPoint) {                    point = gListPoint[i]                    if (point.sid == sid) {                        if (result.x == 0 && result.y == 0) {                            break                        }                        result.x = point.x                        result.y = point.y                        if (point.gsratedpower && point.gsratedpower != 0) {                            pwPercent = result.pw / point.gsratedpower * 100                        }                        break                    }                }                var chart = $(popinfo).find("#pw_chart");                if ($(chart).data('easyPieChart')) {                    $(chart).data('easyPieChart').update([pwPercent]);                }                var point = new BMap.Point(result.x, result.y);                var opts = {                    width: 300,                    height: 150                };                var infoWindow = new BMap.InfoWindow(popinfo, opts);                map.openInfoWindow(infoWindow, point);                $(popinfo).find("#ipanal").css("display", "block");            }        });}function getSidAndDetail(id) {    var sid = $("#" + id).val();    detail(sid);}function search() {    map.clearOverlays();    var nameValue = $('#searchName').val();    //$.post("/lib/webo/pos.json",{name:nameValue},function(result){    $.post("/svc/gis/points", function (result) {        if (null != result && null != result.result && result.result.length != 0) {            showStars(result.result);            showList(result.result);        }    });}function parseDom(arg) {    var objE = document.createElement("div");    objE.innerHTML = arg;    return objE.children[0];};$(function () {    $('#searchButton').bind("click", search);    requestMgr();})
 |