From 70223b3ef4df02622869425fed4ba9b290e1aa74 Mon Sep 17 00:00:00 2001
From: fei.wang <wf18701153496@163.com>
Date: 星期二, 16 四月 2024 14:07:59 +0800
Subject: [PATCH] V定制1.0 1:对讲功能 2:计算经纬度控制器systemcontrollen

---
 src/main/webapp/Home/Home1.jsp |  217 ++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 178 insertions(+), 39 deletions(-)

diff --git a/src/main/webapp/Home/Home1.jsp b/src/main/webapp/Home/Home1.jsp
index 519ecd7..0251a6b 100644
--- a/src/main/webapp/Home/Home1.jsp
+++ b/src/main/webapp/Home/Home1.jsp
@@ -19,8 +19,12 @@
     <link rel="stylesheet" href="https://developer.fengmap.com/fmAPI/demos/libs/css/index.css">
     <link rel="stylesheet" href="https://developer.fengmap.com/fmAPI/demos/Search/mapReconnaissance/css/index.css">
     <link rel="stylesheet" href="https://developer.fengmap.com/fmAPI/demos/Marker/FMDomMarker/css/index.css">
-<%--    <script src="https://developer.fengmap.com/fmAPI/demos/Marker/FMDomMarker/js/index.js"></script>--%>
+    <script src="https://developer.fengmap.com/fmAPI/demos/Marker/FMDomMarker/js/index.js"></script>
+    <style>
+        .box {
 
+        }
+    </style>
 </head>
 <body>
 <%--<div class="layui-container">--%>
@@ -191,6 +195,35 @@
         return realposition
     };
 
+    function FindShowJiZhan() {
+        var realposition = [];
+        $.ajax({
+            async: false,
+            type: 'Get',
+            url: "/hxzkuwb/FindSanWeiJiZhan",
+            dataType: 'json',
+            success: function (data) {
+               realposition = data;
+            },
+        });
+        return realposition
+    };
+
+    function FindShowWangGuan() {
+        var realposition = [];
+        $.ajax({
+            async: false,
+            type: 'Get',
+            url: "/hxzkuwb/FindGateWayList",
+            dataType: 'json',
+            success: function (data) {
+                realposition = data;
+            },
+        });
+        return realposition
+    };
+
+
 
 
     function getAnchorInfo2() {
@@ -215,11 +248,13 @@
         return [online_anchorList, offline_anchorList]
     };
 
+    var JianZhuName = "";
     var sousuopd = false;
     var biaoqians = new Object();
     var biaoqianids = new Object();
     var biaoqianidc = new Object();
     var onlineanchor = new Object();
+    var onlineanchor1 = new Object();
     var offlineanchor = new Object();
     var oo = 0;
     var bm_offView = 0;//鏄惁绂荤嚎涓嶆樉绀哄浘鏍�
@@ -484,7 +519,7 @@
                 appName: 'map1',
                 key: '09facc4ee52d1844bc1e561dad5abf59',
                 mapID: '1761938416618700801',
-                themeID: '1737015464018382850',
+                themeID: '1765945708318105601',
                 mapURL: '../fengmap/data/',
                 themeURL: '../fengmap/data/theme/',
                 minTiltAngle: 0,
@@ -498,19 +533,23 @@
     map.on('loaded', function () {
         // 鑾峰彇鍦板浘妤煎眰淇℃伅
         floorInfo = map.getFloorInfos()
+        localStorage.removeItem("domMar")
     });
     // 娉ㄥ唽鍦板浘鐐瑰嚮浜嬩欢
+
     map.on('click', function (event) {
 
-        console.log(target)
+
         marker = null;
         var clickMode = event.targets.find(it => it.type === fengmap.FMType.MODEL)
         var floor = floorInfo.find(it => it.level === event.level)
         //鏇存柊鐣岄潰鐨勭偣鍑讳俊鎭�
         UI.updateInfo(clickMode, floor, event)
         var fencename = $(".Alise").text();
-        console.log(event)
-        addMarker(event.coords)
+        JianZhuName = fencename
+        console.log(event.targets[0].FID)
+        console.log(JianZhuName)
+        JianZhuMsg(event.targets[0].FID,JianZhuName)
     })
 
     var anchorObj = {
@@ -527,22 +566,17 @@
 
 
     function addMarker(position) {
-
         var panelSet = {
             height: 5,
             x: position.x,
             y: position.y,
-            content: `<div style="background-color: white;display: flex;align-items: center;padding: 15px"><div style="width: 54px;height: 54px;text-align: center;line-height:54px;margin-right: 14px;background: #FFFFFF;border: 1px solid #EDEDED;"><img width="37" src="https://developer.fengmap.com/fmAPI/images/domlogo.png"/></div><div><div style="font-size: 14;font-weight: bold;">DomMarker</div><div style="color: rgba(0,0,0,0.7);font-size: 12px;margin-top: 5px;">鍟嗛摵 <span style="color: rgba(0,0,0,0.5);">L001</span></div><div style="color: rgba(0,0,0,0.7);font-size: 12px;margin-top: 5px;">闈㈢Н <span style="color: rgba(0,0,0,0.5);">100銕�</span></div></div></div>`,
-            domWidth: 200,
+            content: '<div style="height: 200px;background: url(\'../Home/HomeImg/FloorBg.png\') no-repeat;align-items: center;padding: 20px;background-size: cover;width: 270px"><div style="margin-top: 25px"><div style="font-weight: bold;color: white;font-size: 15px">寤虹瓚鍚嶇О锛�'+JianZhuName+'<span><img style="cursor: pointer;width: 20px; height: 20px;position: absolute;left: 85%" src="../Home/HomeImg/clos.png" onclick="removeMarker1()"/></span></div><div style="color: black;font-size: 14px;font-weight: bold;margin-top: 10px">鎬诲叡浜烘暟锛�80浜�</div></div></div>',
+            domWidth: 300,
             domHeight: 40,
             anchor: 'CENTER',
             collision: true,
             auto: 'on',
-
         }
-
-
-        /* 鏋勯�� Marker 骞舵坊鍔犲埌鍦板浘涓� */
         var panelSet1 = {...panelSet};
         if (panelSet.auto === 'on') {
             delete panelSet1.domWidth;
@@ -558,11 +592,21 @@
         var level = map.getLevel()
         var floor = map.getFloor(level);
         domMarker.addTo(floor);
+        localStorage.setItem("domMar",domMarker);
     }
 
     function removeMarker() {
+        if (localStorage.getItem("domMar") == "" || localStorage.getItem("domMar") == null){
+
+        }else{
+            domMarker.remove();
+        }
+    }
+
+    function removeMarker1() {
+        localStorage.removeItem("SanWei_JianZhu")
         domMarker.remove();
-        domMarker = null;
+        localStorage.removeItem("domMar")
     }
     function setFilterDisabled(isToggle, isDelete) {
                 if (isToggle) {
@@ -618,13 +662,86 @@
         fn3();
         timer = setTimeout(f, 3000);
     }, 3000);
-
+    var ans = "Yes";
         //寰幆绉诲姩
+    var personlist2 = FindShowJiZhan();
+    var personlist3 = FindShowWangGuan();
         function fn3() {
             if(localStorage.getItem("涓夌淮鍦板浘") != "鎵ц"){
                 return
             }
             var personlist1 = getRealPositionsanwei();
+            var radioes = 0;
+            $.ajax({
+                url: "/hxzkuwb/findPerAll",
+                type: "GET",
+                async: false,
+                success: function(data) {
+                    radioes = data[0].redius
+                },
+            });
+                //鏄剧ず鍩虹珯
+            if (localStorage.getItem("jizhanshow") == "1"){
+                for(var i = 0 ; i <personlist2.length;i++){
+                    var level = map.getLevel();
+                    var floor1 = map.getFloor(level);
+                        var xy
+                        var turl;
+                        xy = fengmap.FMCalculator.latlngToMapCoordinate({
+                            x: personlist2[i].baoliu6,
+                            y: personlist2[i].baoliu7
+                        });
+                        turl = '/hxzkuwb/Icon/jizhan.png';
+                        fmarkerAnchor = new fengmap.FMImageMarker({
+                            url: turl,
+                            x: xy.x,
+                            y: xy.y,
+                        });
+                        var windowHtml = '<div class="" style="height: 100px;width: 80px;text-align: center;position: absolute;top: -40px;left: -40px">';
+                        windowHtml += `<div class="content" style="border-radius: 5px;background-color:ghostwhite;"><a style="color: black;font-size: 14px"> 鍩虹珯锛歚 + personlist2[i].anchorid + `</a></div>`;
+                        windowHtml += `</div>`;
+                        lmarkerAnchor = new fengmap.FMDomMarker({
+                            x: xy.x,
+                            y: xy.y,
+                            content: windowHtml
+                        });
+                        fmarkerAnchor.addTo(floor1);
+                        lmarkerAnchor.addTo(floor1)
+                }
+            }
+            //鏄剧ず缃戝叧
+            if (localStorage.getItem("wangguanshow") == "1"){
+                for(var i = 0 ; i <personlist3.length;i++){
+                    var level = map.getLevel();
+                    var floor1 = map.getFloor(level);
+                    var xy
+                    var turl;
+                    xy = fengmap.FMCalculator.latlngToMapCoordinate({
+                        x: personlist3[i].lon,
+                        y: personlist3[i].lat
+                    });
+                    console.log(xy)
+                    turl = '/hxzkuwb/Icon/wangguan.png';
+                    fmarkerAnchor = new fengmap.FMImageMarker({
+                        url: turl,
+                        x: xy.x,
+                        y: xy.y,
+                    });
+                    var windowHtml = '<div class="" style="height: 100px;width: 80px;text-align: center;position: absolute;top: -40px;left: -40px">';
+                    windowHtml += `<div class="content" style="border-radius: 5px;background-color:ghostwhite;"><a style="color: black;font-size: 14px"> 缃戝叧锛歚 + personlist3[i].loragwid + `</a></div>`;
+                    windowHtml += `</div>`;
+                    lmarkerAnchor = new fengmap.FMDomMarker({
+                        x: xy.x,
+                        y: xy.y,
+                        content: windowHtml
+                    });
+                    fmarkerAnchor.addTo(floor1);
+                    lmarkerAnchor.addTo(floor1)
+                }
+            }
+
+
+
             for (var i = 0; i < personlist1.length; i++) {
                 var xy;
                 var turl;
@@ -637,15 +754,9 @@
 
 
                 var fmarker = biaoqians[personlist1[i][0]];
-
                 var lmarker = biaoqianids[personlist1[i][0]];
-
                 var circles = biaoqianidc[personlist1[i][0]]
-
-
-
                 if (fmarker) {
-
                     // 濡傛灉鏍囪瀛樺湪锛屽垯鏇存柊鍧愭爣
                     fmarker.moveTo({
                         x: xy.x,
@@ -657,10 +768,11 @@
                     });
                     if (circles){
                         circles.remove();
+                        //浠庢暟鎹簱鑾峰彇鍗婂緞
                         var level = map.getLevel();
                         var floor = map.getFloor(level);
                         var panelSet;
-                        if(personlist1[i][22] <=3 && personlist1[i][3] >0){
+                        if(personlist1[i][22] <=3 && personlist1[i][3] == 1 && personlist1[i][22] > 0){
                             //榛勮壊鍛婅鍖哄煙
                             panelSet = {
                                 height: 10,
@@ -675,7 +787,7 @@
                             }
 
                             /* 娣诲姞鍦嗗舰 */
-                            var circle_radius = 60;
+                            var circle_radius = radioes;
                             // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                             var circle_segments = 500;
                             var circle_center = {
@@ -708,7 +820,7 @@
                             }
 
                             /* 娣诲姞鍦嗗舰 */
-                            var circle_radius = 60;
+                            var circle_radius = radioes;
                             // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                             var circle_segments = 500;
                             var circle_center = {
@@ -741,7 +853,7 @@
                             }
 
                             /* 娣诲姞鍦嗗舰 */
-                            var circle_radius = 60;
+                            var circle_radius = radioes;
                             // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                             var circle_segments = 500;
                             var circle_center = {
@@ -760,9 +872,6 @@
                         }
                         biaoqianidc[personlist1[i][0]] = circle;
                     }
-
-
-
                 } else {
                     // 濡傛灉鏍囪涓嶅瓨鍦紝鍒欐坊鍔爉arker
                     fmarker = new fengmap.FMImageMarker({
@@ -782,20 +891,32 @@
                            content: windowHtml
                        });
                    }else{
-                       var windowHtml = '<div class="" style="height: 100px;width: 100px;text-align: center;position: absolute;top: -30px;left: -30px">';
-                       windowHtml += `<div class="content" style="border-radius: 5px;background-color: ` + personlist1[i][21] + `;"><a style="color: white;font-size: 16px"> ` + personlist1[i][1] + `</a></div>`;
-                       windowHtml += `</div>`;
-                       lmarker = new fengmap.FMDomMarker({
-                           x: xy.x,
-                           y: xy.y,
-                           content: windowHtml
-                       });
+                      if (personlist1[i][1].length>7){
+                          var name = personlist1[i][1].substring(0,6)
+                          var windowHtml = '<div class="" style="height: 100px;width: 100px;text-align: center;position: absolute;top: -40px;left: -50px">';
+                          windowHtml += `<div class="content" style="border-radius: 5px;background-color: ` + personlist1[i][21] + `;"><a style="color: white;font-size: 16px"> ` + name + `</a></div>`;
+                          windowHtml += `</div>`;
+                          lmarker = new fengmap.FMDomMarker({
+                              x: xy.x,
+                              y: xy.y,
+                              content: windowHtml
+                          });
+                      }else{
+                          var windowHtml = '<div class="" style="height: 100px;width: 100px;text-align: center;position: absolute;top: -40px;left: -50px">';
+                          windowHtml += `<div class="content" style="border-radius: 5px;background-color: ` + personlist1[i][21] + `;"><a style="color: white;font-size: 16px"> ` + personlist1[i][1] + `</a></div>`;
+                          windowHtml += `</div>`;
+                          lmarker = new fengmap.FMDomMarker({
+                              x: xy.x,
+                              y: xy.y,
+                              content: windowHtml
+                          });
+                      }
                    }
 
                     var level = map.getLevel();
                     var floor = map.getFloor(level);
                     var panelSet;
-                    if(personlist1[i][22] <=3 && personlist1[i][3] == 1){
+                    if(personlist1[i][22] <=3 && personlist1[i][3] == 1 && personlist1[i][22] > 0){
                         //榛勮壊鍛婅鍖哄煙
                         panelSet = {
                             height: 10,
@@ -810,7 +931,7 @@
                         }
 
                         /* 娣诲姞鍦嗗舰 */
-                        var circle_radius = 60;
+                        var circle_radius = radioes;
                         // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                         var circle_segments = 500;
                         var circle_center = {
@@ -843,7 +964,7 @@
                         }
 
                         /* 娣诲姞鍦嗗舰 */
-                        var circle_radius = 60;
+                        var circle_radius = radioes;
                         // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                         var circle_segments = 500;
                         var circle_center = {
@@ -876,7 +997,7 @@
                         }
 
                         /* 娣诲姞鍦嗗舰 */
-                        var circle_radius = 60;
+                        var circle_radius = radioes;
                         // segments 褰卞搷褰㈡垚鐨勫渾褰㈢殑杈规暟鍜岄《鐐规暟閲忥紝鏁板�艰秺澶у渾褰㈠湪瑙嗚涓婅秺 鈥欏钩婊戔��
                         var circle_segments = 500;
                         var circle_center = {
@@ -919,6 +1040,24 @@
             mercator.y = earthRad / 2 * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)));
 
             return [mercator.x, mercator.y]; //[12727039.383734727, 3579066.6894065146]
+
+
         }
+    localStorage.removeItem("SanWei_JianZhu")
+function JianZhuMsg(Fid,Name){
+            //鏍规嵁Fid鏌ヨ锛屽鏋滄煡鍒板垯鏄剧ず锛�
+    var data = "Fid="+Fid
+    $.get("/hxzkuwb/FindSanWeiIFID",data,function (data){
+        if(data>0){
+            localStorage.setItem("SanWei_JianZhu",Name)
+            localStorage.setItem("SanWei_JianZhuFID",Fid)
+            localStorage.setItem("DiaoYong_SanWeiFlOoor","FID")
+        }else{
+            localStorage.removeItem("SanWei_JianZhu")
+            localStorage.removeItem("SanWei_JianZhuFID")
+        }
+    })
+
+}
 </script>
 </html>

--
Gitblit v1.9.3