15832144755
2021-07-23 741d66c00c593d4f14cd6731d3e4af6ee5c191ac
7.23
已添加1个文件
已修改18个文件
已删除1个文件
977 ■■■■ 文件已修改
.classpath 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/hxzkoa/controller/FenceController.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/hxzkoa/controller/GpsController.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/hxzkoa/json/tb_shipin.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/hxzkoa/services/FenceService.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/hxzkoa/util/AddTxt.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/spring-mvc.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/controller/FenceController.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/controller/GpsController.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/json/tb_shipin.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/services/FenceService.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/tools/SafetyintervalSendData.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/com/hxzkoa/util/AddTxt.class 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/classes/spring-mvc.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/WEB-INF/web.xml 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/hxzk/GPS/historicalgpsLocation.jsp 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/hxzk/fence/jiankongManagement.jsp 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/hxzk/mapshow/mapShow.jsp 391 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/hxzk/newindex.jsp 200 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/hxzk/top.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.classpath
@@ -80,7 +80,6 @@
    <classpathentry kind="lib" path="src/main/webapp/WEB-INF/lib/poi-ooxml-3.8-20120326.jar"/>
    <classpathentry kind="lib" path="src/main/webapp/WEB-INF/lib/poi-ooxml-schemas-3.8-20120326.jar"/>
    <classpathentry kind="lib" path="src/main/webapp/WEB-INF/lib/xmlbeans-2.3.0.jar"/>
    <classpathentry kind="lib" path="src/main/webapp/WEB-INF/lib/hutool-all-4.3.2.jar"/>
    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v7.0"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
        <attributes>
src/main/java/com/hxzkoa/controller/FenceController.java
@@ -76,6 +76,11 @@
            shipin.setFencename(request.getParameter("fencename"));
            shipin.setShebeiid(request.getParameter("shebeiid"));
            shipin.setTongdaoid(request.getParameter("tongdaoid"));
            shipin.setPosx(request.getParameter("posx"));
            shipin.setPosy(request.getParameter("posy"));
            shipin.setPosz(request.getParameter("posz"));
            shipin.setFloor(request.getParameter("floor"));
            shipin.setName(request.getParameter("name"));
            fenceService.shipinManagement_add(shipin);
    }
    
@@ -89,10 +94,11 @@
        shipin.setFencename(request.getParameter("fencename"));
        shipin.setShebeiid(request.getParameter("shebeiid"));
        shipin.setTongdaoid(request.getParameter("tongdaoid"));
        System.out.print(shipin.getId());
        System.out.print(shipin.getFencename());
        System.out.print(shipin.getShebeiid());
        System.out.print(shipin.getTongdaoid());
        shipin.setPosx(request.getParameter("posx"));
        shipin.setPosy(request.getParameter("posy"));
        shipin.setPosz(request.getParameter("posz"));
        shipin.setFloor(request.getParameter("floor"));
        shipin.setName(request.getParameter("name"));
        fenceService.shipinManagement_modify(shipin);
    }
    
@@ -129,6 +135,23 @@
    }
    
    @ResponseBody
    @RequestMapping(value = "/shipinManagement_ssearch.do", method = { RequestMethod.POST, RequestMethod.GET })
    public String shipinManagement_ssearch(HttpServletRequest request) throws IOException {
        JSONObject json = new JSONObject();
        String input = request.getParameter("input");
        System.out.print(input);
        int curPage = 1;
        List<Integer> pageList = new ArrayList<Integer>();
        List<tb_shipin> shipinManagementList = fenceService.searchshipinManagement(input);
        pageList.add(1);
        json.put("dataList", shipinManagementList);
        json.put("pageList", pageList);
        json.put("curPage", curPage);
        System.out.print(json.toString());
        return json.toString();
    }
    @ResponseBody
    @RequestMapping(value = "/shipinManagement_page.do", method = { RequestMethod.POST, RequestMethod.GET })
    public String shipinManagement_page(HttpServletRequest request) {
        String pageStr = request.getParameter("page");
src/main/java/com/hxzkoa/controller/GpsController.java
@@ -1,12 +1,14 @@
package com.hxzkoa.controller;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Enumeration;
import java.util.List;
@@ -21,11 +23,10 @@
import org.springframework.web.servlet.ModelAndView;
import com.hxzkoa.json.tb_gps;
import com.hxzkoa.json.tb_person;
import com.hxzkoa.json.tb_realocation;
import com.hxzkoa.json.tb_system;
import com.hxzkoa.json.tb_track;
import com.hxzkoa.json.tb_tag;
import com.hxzkoa.services.GpsService;
import com.hxzkoa.services.LabelService;
import com.hxzkoa.services.SysSettingService;
import com.hxzkoa.udp.Dell_GNGGA;
import com.hxzkoa.udp.Udp_Out;
@@ -34,7 +35,6 @@
import com.hxzkoa.util.ExcelUtils;
import com.hxzkoa.util.ModifyConfig;
import com.hxzkoa.util.PageUtil;
import com.hxzkoa.util.RequestUtils;
import net.sf.json.JSONObject;
@@ -43,6 +43,8 @@
    @Autowired
    private GpsService gpsService;
    @Autowired
    private LabelService labelService;
    @Autowired
    private SysSettingService sysSettingService;
    
    @ResponseBody
@@ -271,6 +273,15 @@
    }
    
    @ResponseBody
    @RequestMapping(value = "/getstatusss.do", method = { RequestMethod.POST, RequestMethod.GET })
    public String getstatusss(HttpServletRequest request) {
        String tagid = "8888";
        System.out.print("执行了");
        String zhuangtai = gpsService.getpersontagid(tagid);
        return zhuangtai;
    }
    @ResponseBody
    @RequestMapping(value = "/historicalgpsLocation_search.do", method = { RequestMethod.POST, RequestMethod.GET })
    public String historicalgpsLocation_search(HttpServletRequest request) {
        String input = request.getParameter("input");
@@ -294,17 +305,6 @@
        String begin = request.getParameter("begintime");
        String end = request.getParameter("endtime");
        String date = request.getParameter("date");
//      Enumeration<String> paraNames=request.getParameterNames();
//      String thisName = null;
//      String thisValue = null;
//      String[] value = null;
//      int i = 0;
//      for(Enumeration<String> e=paraNames;e.hasMoreElements();){
//          thisName=e.nextElement()+"";  //name名
//          thisValue=request.getParameter(thisName);   //name名对应的值
//          value[i] = thisValue;
//          i++;
//      }
        List<tb_gps> historicalLocationList = gpsService.getRealTimegpsLocation(tagid,begin,end,date);
        String[] rowName = {"序号", "设备编号","纬度","经度","GPS状态","卫星数","海拔高","差分站ID","电量","更新时间"};
        List<Object[]> dataList = objectToArray(historicalLocationList);
@@ -326,6 +326,27 @@
        return toPage;
    }
    
    @ResponseBody
    @RequestMapping(value = "/totxt.do", method = { RequestMethod.POST, RequestMethod.GET })
    public String totxt(HttpServletRequest request,HttpServletResponse response) throws IOException {
        String toPage = "forward:/hxzk/label/historicalgpsLocation.jsp";
        String date = request.getParameter("date");
        InputStream is;
        OutputStream os;
        String filename = date + ".txt";
        response.setHeader("Content-Disposition", "attachement;filename=" + filename);
        is = new FileInputStream("C:\\" +date+ ".txt");
        os = response.getOutputStream();
        int len = 0;
        byte[] buffer = new byte[1024];
        while ((len = is.read(buffer)) != -1) {
            os.write(buffer, 0, len);
        }
        os.close();
        is.close();
        return toPage;
    }
    // å¯¹è±¡è½¬æ•°ç»„
        public static List<Object[]> objectToArray(List<tb_gps> sensorManagementList) {
            List<Object[]> reList = new ArrayList<>();
src/main/java/com/hxzkoa/json/tb_shipin.java
@@ -7,6 +7,11 @@
    private String shebeiid;
    private String tongdaoid;
    private String addtime;
    private String posx;
    private String posy;
    private String posz;
    private String floor;
    private String name;
    
    public int getId() {
        return id;
@@ -38,6 +43,36 @@
    public void setAddtime(String addtime) {
        this.addtime = addtime;
    }
    public String getPosx() {
        return posx;
    }
    public void setPosx(String posx) {
        this.posx = posx;
    }
    public String getPosy() {
        return posy;
    }
    public void setPosy(String posy) {
        this.posy = posy;
    }
    public String getPosz() {
        return posz;
    }
    public void setPosz(String posz) {
        this.posz = posz;
    }
    public String getFloor() {
        return floor;
    }
    public void setFloor(String floor) {
        this.floor = floor;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    
    
src/main/java/com/hxzkoa/services/FenceService.java
@@ -73,6 +73,11 @@
                shipin.setShebeiid(obj[2] == null ? "" : obj[2].toString());
                shipin.setTongdaoid(obj[3] == null ? "" : obj[3].toString());
                shipin.setAddtime(obj[4] == null ? "" : obj[4].toString());
                shipin.setPosx(obj[5] == null ? "" : obj[5].toString());
                shipin.setPosy(obj[6] == null ? "" : obj[6].toString());
                shipin.setPosz(obj[7] == null ? "" : obj[7].toString());
                shipin.setFloor(obj[8] == null ? "" : obj[8].toString());
                shipin.setName(obj[9] == null ? "" : obj[9].toString());
                tb_shipinList.add(shipin);
            }
        }
@@ -91,11 +96,16 @@
    public int shipinManagement_add(tb_shipin shipin) {
        String sql = null;
        Query query = null;
        sql = "INSERT INTO tb_shipin(fencename,shebeiid,tongdaoid,addtime) VALUES(:fencename,:shebeiid,:tongdaoid,now())";
        sql = "INSERT INTO tb_shipin(fencename,shebeiid,tongdaoid,addtime,posx,posy,posz,floor,name) VALUES(:fencename,:shebeiid,:tongdaoid,now(),:posx,:posy,:posz,:floor,:name)";
        query = this.em.createNativeQuery(sql);
        query.setParameter("fencename", shipin.getFencename());
        query.setParameter("shebeiid", shipin.getShebeiid());
        query.setParameter("tongdaoid", shipin.getTongdaoid());
        query.setParameter("posx", shipin.getPosx());
        query.setParameter("posy", shipin.getPosy());
        query.setParameter("posz", shipin.getPosz());
        query.setParameter("floor", shipin.getFloor());
        query.setParameter("name", shipin.getName());
        int executeUpdate = query.executeUpdate();
        return executeUpdate;
    }
@@ -104,13 +114,17 @@
    public void shipinManagement_modify(tb_shipin shipin) {
        String sql = null;
        Query query = null;
        sql = "UPDATE tb_shipin SET fencename=:fencename,shebeiid=:shebeiid,tongdaoid=:tongdaoid WHERE id=:id";
        sql = "UPDATE tb_shipin SET fencename=:fencename,shebeiid=:shebeiid,tongdaoid=:tongdaoid,posx=:posx,posy=:posy,posz=:posz,floor=:floor,name=:name WHERE id=:id";
        query = this.em.createNativeQuery(sql);
        query.setParameter("id", shipin.getId());
        query.setParameter("fencename", shipin.getFencename());
        query.setParameter("shebeiid", shipin.getShebeiid());
        query.setParameter("tongdaoid", shipin.getTongdaoid());
        System.out.print(sql);
        query.setParameter("posx", shipin.getPosx());
        query.setParameter("posy", shipin.getPosy());
        query.setParameter("posz", shipin.getPosz());
        query.setParameter("floor", shipin.getFloor());
        query.setParameter("name", shipin.getName());
        query.executeUpdate();
    }
    
src/main/java/com/hxzkoa/util/AddTxt.java
@@ -22,5 +22,9 @@
        }
        return str;
    }
    public static void main(String[] args) {
        ArrayList<String> add = txt2String();
        System.out.print(add);
    }
}
src/main/resources/spring-mvc.xml
@@ -23,7 +23,7 @@
    </mvc:annotation-driven> 
    <aop:aspectj-autoproxy/>
    <!-- å°†æ— æ³•mapping到Controller的path交给default servlet handler处理 -->
    <!--<mvc:default-servlet-handler/>-->
    <!-- <mvc:default-servlet-handler/> -->
    <mvc:resources mapping="/static/**" location="/static/"/>
    <!-- å®šä¹‰JSP文件的位置 -->
src/main/webapp/WEB-INF/classes/com/hxzkoa/controller/FenceController.class
Binary files differ
src/main/webapp/WEB-INF/classes/com/hxzkoa/controller/GpsController.class
Binary files differ
src/main/webapp/WEB-INF/classes/com/hxzkoa/json/tb_shipin.class
Binary files differ
src/main/webapp/WEB-INF/classes/com/hxzkoa/services/FenceService.class
Binary files differ
src/main/webapp/WEB-INF/classes/com/hxzkoa/tools/SafetyintervalSendData.class
Binary files differ
src/main/webapp/WEB-INF/classes/com/hxzkoa/util/AddTxt.class
Binary files differ
src/main/webapp/WEB-INF/classes/spring-mvc.xml
@@ -23,7 +23,7 @@
    </mvc:annotation-driven> 
    <aop:aspectj-autoproxy/>
    <!-- å°†æ— æ³•mapping到Controller的path交给default servlet handler处理 -->
    <!--<mvc:default-servlet-handler/>-->
    <!-- <mvc:default-servlet-handler/> -->
    <mvc:resources mapping="/static/**" location="/static/"/>
    <!-- å®šä¹‰JSP文件的位置 -->
src/main/webapp/WEB-INF/web.xml
@@ -29,18 +29,17 @@
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter>
        <display-name>LoginFilter</display-name>
        <filter-name>LoginFilter</filter-name>
        <filter-class>com.hxzkoa.tools.LoginFilter</filter-class>
    </filter>
    <filter>
        <filter-name>openEntityManagerInViewFilter</filter-name>
        <filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>
    </filter>
    <filter>
        <description>
        </description>
        <display-name>LoginFilter</display-name>
        <filter-name>LoginFilter</filter-name>
        <filter-class>com.hxzkoa.tools.LoginFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>openEntityManagerInViewFilter</filter-name>
src/main/webapp/hxzk/GPS/historicalgpsLocation.jsp
@@ -124,21 +124,24 @@
                                                    <button style="float:left;margin-left:10px;" type="button"
                                                        class="btn btn-secondary deleteAll"
                                                        id="deleteAllButton">全部删除</button>
                                                    <div style="width:120px;float:left;margin-left:10px;">
                                                    <div style="width:80px;float:left;margin-left:10px;">
                                                        <input type="text" id="begin"
                                                            class="form-control form-control-sm"
                                                            style="font-size:12px;" placeholder="请输入开始时间"/>
                                                            class="form-control form-control-sm" style="font-size:12px;"
                                                            placeholder="开始时间" />
                                                    </div>
                                                    <div style="width:120px;float:left;margin-left:10px;">
                                                    <div style="width:80px;float:left;margin-left:10px;">
                                                        <input type="text" id="end" class="form-control form-control-sm"
                                                            style="font-size:12px;" placeholder="请输入结束时间"/>
                                                            style="font-size:12px;" placeholder="结束时间" />
                                                    </div>
                                                    <div style="width:100px;float:left;margin-left:10px;">
                                                        <input type="text" id="tagida" class="form-control form-control-sm"
                                                            style="font-size:12px;" placeholder="请输入标签id"/>
                                                    <div style="width:60px;float:left;margin-left:10px;">
                                                        <input type="text" id="tagida"
                                                            class="form-control form-control-sm" style="font-size:12px;"
                                                            placeholder="标签id" />
                                                    </div>
                                                    <button style="float:left;margin-left:10px;" type="button"
                                                        class="btn btn-secondary toAllExcel">导出表格</button>
                                                        class="btn btn-secondary toAllExcel">导出Excel</button>
                                                    <button style="float:left;margin-left:10px;" type="button"
                                                        class="btn btn-secondary toAlltxt">导出txt</button>
                                                    <label for="perPage"
                                                        class="col-sm-2 col-form-label col-form-label-sm"
@@ -230,7 +233,7 @@
                            }
                        }
                    });
                    //执行一个laydate实例
                    laydate.render({
                        elem: '#end' //指定元素'
@@ -243,7 +246,7 @@
                                    document.getElementById("begin").value = "";
                                }
                            }
                        }
                    });
                </script>
@@ -397,13 +400,35 @@
                            }
                        })
                    });
                    $(".toAlltxt").click(function () {
                        var dateaa = $("#dateList").val();
                        window.location.href = "/hxzkoa/totxt.do?date=" + dateaa;
                        // swal({
                        //  title: "Exported!",
                        //  text: "导出成功!",
                        //  type: "success",
                        //  showCancelButton: false,
                        //  showConfirmButton: false,
                        //  buttons: false
                        // })
                        // setTimeout("window.location.reload()", 1000);
                        /* $.ajax({
                            async: false,
                            type: 'POST',
                            url: "/hxzkoa/totxt.do",
                            dataType: 'json',
                            success: function(data){
                                console.log(data)
                            }
                        }) */
                    })
                    // å¯¼å‡ºè¡¨æ ¼
                    $(".toAllExcel").click(function () {
                        var tag = document.getElementById("tagida").value;
                        var begin = document.getElementById("begin").value;
                        var end = document.getElementById("end").value;
                        var datea = $("#dateList").val();
                        window.location.href = "/hxzkoa/historicalgpsLocation_export.do?tagid="+tag+"&begintime="+begin+"&endtime="+end+"&date="+datea;
                        window.location.href = "/hxzkoa/historicalgpsLocation_export.do?tagid=" + tag + "&begintime=" + begin + "&endtime=" + end + "&date=" + datea;
                        // $.ajax({
                        //  async: false,
                        //  type: "POST",
src/main/webapp/hxzk/fence/jiankongManagement.jsp
@@ -105,7 +105,7 @@
                                <form action="form_action.asp" method="get">
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">围栏名称:</label>
                                            style="font-size:12px;">区域名称:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="hidden" id="fencename" />
                                            <select class="form-control form-control-lg" id="bumen_m"
@@ -131,7 +131,41 @@
                                            <input class="form-control" type="text" id="tongdaoid" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">X坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="posx" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">Y坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="posy" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">Z坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="posz" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">楼层:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="floor" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">名称:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="name" />
                                        </div>
                                    </div>
                                    <div class="modal-footer" style="margin-top:10%; margin-left:10%;float:left;">
                                        <button type="button" class="btn btn-primary add">保存</button>
                                        <a>
@@ -164,7 +198,7 @@
                                <form action="form_action.asp" method="get">
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">围栏名称:</label>
                                            style="font-size:12px;">区域名称:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="hidden" id="fencenameg" />
                                            <select class="form-control form-control-lg" id="bumen_mg"
@@ -190,7 +224,41 @@
                                            <input class="form-control" type="text" id="tongdaoidg" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">X坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="posxg" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">Y坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="posyg" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">Z坐标:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="poszg" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">楼层:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="floorg" />
                                        </div>
                                    </div>
                                    <div class="form-group row  mb-4">
                                        <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm"
                                            style="font-size:12px;">名称:</label>
                                        <div class="col-sm-10">
                                            <input class="form-control" type="text" id="nameg" />
                                        </div>
                                    </div>
                                    <div class="modal-footer" style="margin-top:10%; margin-left:10%;float:left;">
                                        <button type="button" class="btn btn-primary modify">保存</button>
                                        <a>
@@ -298,9 +366,14 @@
                                                    <tr align="center">
                                                        <th class="noExl">选择</th>
                                                        <th>ID</th>
                                                        <th>围栏名称</th>
                                                        <th>区域名称</th>
                                                        <th>设备编号</th>
                                                        <th>通道编号</th>
                                                        <th>X坐标</th>
                                                        <th>Y坐标</th>
                                                        <th>Z坐标</th>
                                                        <th>楼层</th>
                                                        <th>名称</th>
                                                        <th>添加时间</th>
                                                    </tr>
                                                </thead>
@@ -316,6 +389,11 @@
                                                            <td>${list.fencename}</td>
                                                            <td>${list.shebeiid}</td>
                                                            <td>${list.tongdaoid}</td>
                                                            <td>${list.posx}</td>
                                                            <td>${list.posy}</td>
                                                            <td>${list.posz}</td>
                                                            <td>${list.floor}</td>
                                                            <td>${list.name}</td>
                                                            <td>${list.addtime}</td>
                                                        </tr>
                                                    </c:forEach>
@@ -402,10 +480,15 @@
                                var fencename = $('#bumen_m option:selected').val();
                                var shebeiid = $("#shebeiid").val();
                                var tongdaoid = $("#tongdaoid").val();
                                var posx = $("#posx").val();
                                var posy = $("#posy").val();
                                var posz = $("#posz").val();
                                var floor = $("#floor").val();
                                var name = $("#name").val();
                                var reg2 = new RegExp("^[0-9][0-9]*$");
                                var sid = reg2.test(shebeiid);
                                var tid = reg2.test(tongdaoid);
                                if (fencename == "" || shebeiid == "" || tongdaoid == "") {
                                if (fencename == "" || shebeiid == "" || tongdaoid == "" || posx == "" || posy == "" || posz == "" || floor == "" || name == "") {
                                    swal('输入有误', '输入不能为空!', 'error'); return;
                                }
                                if ((!sid && shebeiid != "") || (!tid && tongdaoid != "")) {
@@ -419,7 +502,12 @@
                                    data: {
                                        fencename: fencename,
                                        shebeiid: shebeiid,
                                        tongdaoid: tongdaoid
                                        tongdaoid: tongdaoid,
                                        posx: posx,
                                        posy: posy,
                                        posz: posz,
                                        floor: floor,
                                        name: name,
                                    },
                                    dataType: "json"
                                });
@@ -445,6 +533,11 @@
                                            $("#bumen_mg").val(tr.children[2].innerHTML);
                                            $("#shebeiidg").val(tr.children[3].innerHTML);
                                            $("#tongdaoidg").val(tr.children[4].innerHTML);
                                            $("#posxg").val(tr.children[5].innerHTML);
                                            $("#posyg").val(tr.children[6].innerHTML);
                                            $("#poszg").val(tr.children[7].innerHTML);
                                            $("#floorg").val(tr.children[8].innerHTML);
                                            $("#nameg").val(tr.children[9].innerHTML);
                                            return false;
                                        }
                                    }
@@ -459,6 +552,11 @@
                                                $("#bumen_mg").val(tr.children[2].innerHTML);
                                                $("#shebeiidg").val(tr.children[3].innerHTML);
                                                $("#tongdaoidg").val(tr.children[4].innerHTML);
                                                $("#posxg").val(tr.children[5].innerHTML);
                                                $("#posyg").val(tr.children[6].innerHTML);
                                                $("#poszg").val(tr.children[7].innerHTML);
                                                $("#floorg").val(tr.children[8].innerHTML);
                                                $("#nameg").val(tr.children[9].innerHTML);
                                                return false;
                                            }
                                        }
@@ -473,6 +571,11 @@
                                var fencename = $('#bumen_mg option:selected').val();
                                var shebeiid = $("#shebeiidg").val();
                                var tongdaoid = $("#tongdaoidg").val();
                                var posx = $("#posxg").val();
                                var posy = $("#posyg").val();
                                var posz = $("#poszg").val();
                                var floor = $("#floorg").val();
                                var name = $("#nameg").val();
                                for (var k in obj) {
                                    if (obj[k].checked) {
                                        checkVal.push(obj[k].id);
@@ -487,6 +590,11 @@
                                        fencename: fencename,
                                        shebeiid: shebeiid,
                                        tongdaoid: tongdaoid,
                                        posx: posx,
                                        posy: posy,
                                        posz: posz,
                                        floor: floor,
                                        name: name,
                                    },
                                    dataType: "json"
                                });
@@ -591,7 +699,7 @@
                                $.ajax({
                                    async: false, //同步的
                                    type: "POST",
                                    url: "/hxzkoa/shipinManagement_search.do",
                                    url: "/hxzkoa/shipinManagement_ssearch.do",
                                    data: {
                                        input: input
                                    },
@@ -622,6 +730,48 @@
                                    }
                                });
                            });
                            // $(".namess").click(function () {
                            //  var input = $("#names").val();
                            //  if (input == "") {
                            //      swal('输入有误', '输入不能为空!', 'error'); return;
                            //  }
                            //  if (isNaN(input)) {
                            //      //swal('输入有误','请输入数字!','error');return;
                            //  }
                            //  $.ajax({
                            //      async: false, //同步的
                            //      type: "POST",
                            //      url: "/hxzkoa/shipinManagement_cesearch.do",
                            //      data: {
                            //          input: input
                            //      },
                            //      dataType: "json",
                            //      success: function (data) {
                            //          //搜索完成后刷新页面,只显示查到的部分
                            //          var str = "";
                            //          for (var k in data.dataList) {
                            //              str += "<tr align=\"center\" class=\"d\"><td class=\"noExl custom-control custom-checkbox\"><input type=\"checkbox\" class=\"custom-control-input\" id="+ data.dataList[k].id +" name=\"selectIds\"><label class=\"custom-control-label\" for="+ data.dataList[k].id +" style=\"position:raletive;left:20px;\"></label></td><td>"+data.dataList[k].id+"</td><td>"+data.dataList[k].fencename+"</td><td>"+data.dataList[k].shebeiid+"</td><td>"+data.dataList[k].tongdaoid+"</td><td>"+data.dataList[k].addtime+"</td></tr>"
                            //          }
                            //          $("#nr").html(str);
                            //          if (!data.pageList.length == 0) {
                            //              str = "";
                            //              str += "<li><a href=\"javascript:page('pre');\">上一页</a></li>";
                            //              for (var k = 0; k < data.pageList.length; k++) {
                            //                  str += "<li id=\"page_" + data.pageList[k] + "\"><a href=\"javascript:page('" + data.pageList[k] + "');\">" + data.pageList[k] + "</a></li>";
                            //              }
                            //              str += "<li><a href=\"javascript:page('next');\">下一页</a></li>";
                            //              $("#pageListId").html(str);
                            //          }
                            //          $("#pageListId>li.active").removeClass("active");
                            //          $("#page_" + data.curPage).addClass("active");
                            //          $("#curPage").val(data.curPage);
                            //      },
                            //      error: function () {
                            //          //console.log('error');
                            //      }
                            //  });
                            // });
                            // å¯¼å‡ºè¡¨æ ¼
                            // $(".toAllExcel").click(function () {
                            //  window.location.href = '/hxzkoa/anchorManagement_export.do';
src/main/webapp/hxzk/mapshow/mapShow.jsp
@@ -719,6 +719,7 @@
                    var isDelete = false;
                    var shipinka = true;
                    var tuodong = false;
                    var colorbbb = "rgba(255,0,0,0.3)";
                    var sosType = [];
                    var sousuoType = true;
                    for (var i = 0; i < 500; i++) {
@@ -972,227 +973,220 @@
                                _this.fenceMarkCount.push(tmp_count);
                            };
                            // if (shipinka) {
                                //画标签及基站
                                for (var key in images) {
                                    if (key == "icon" && _this.playMark) {
                                        for (var i = 0; i < _this.playMark.length; i++) {
                                            //_this.trackNow = [];
                                            var tagzhuangtai = _this.playMark[i][3]; //在线状态
                                            var shipinzhuangtai = _this.playMark[i][9];
                                            if (shipinka) {
                                                if (shipinzhuangtai == "1") {
                                                    $.ajax({
                                                        async: false,
                                                        url: "/hxzkoa/shipinzhuangtai.do",
                                                        type: 'POST',
                                                        dataType: 'JSON',
                                                        data: {
                                                            tagid: _this.playMark[i][0],
                                                        },
                                                        success: function (data) {
                                                            serial = data[0].shebeiid;
                                                            code = data[0].tongdaoid;
                                                        }
                                                    });
                                                    document.getElementById("popup").style.display = "flex";
                                                    var tanchuang = document.getElementById("tanchuang")
                                                    var rr = document.createElement("iframe")
                                                    rr.src = "http://39.106.210.13:10000/play.html?serial=" + serial + "&code=" + code + "&aspect=fullscreen";
                                                    rr.width = "640";
                                                    rr.height = "360";
                                                    rr.allowFullscreen = "true";
                                                    var object = tanchuang.appendChild(rr);
                                                    shipinka = false;
                                                }
                                            }
                                            //var playMarkInKaoQin = true;
                                            if (((_this.offView == '1' && tagzhuangtai == '1') || (_this.offView == '0')) && ((_this.diskaoqin == "1" && _this.playMarkInKaoQin[i]) || (_this.diskaoqin == "0"))) {
                                                //是否开启离线消失,并判断状态(在线1/离线0);当开启离线消失时(仅显示在线标签),当未开启离线消失时(全部显示)
                                                //是否开启出考勤区域消失,并判断是否在考勤区域内;当开启出考勤区域消失时(需要在考勤区域内),当未开启时(全部显示)
                            //画标签及基站
                            for (var key in images) {
                                if (key == "icon" && _this.playMark) {
                                    for (var i = 0; i < _this.playMark.length; i++) {
                                        //_this.trackNow = [];
                                        var tagzhuangtai = _this.playMark[i][3]; //在线状态
                                        var shipinzhuangtai = _this.playMark[i][9];
                                        if (shipinka) {
                                            if (shipinzhuangtai == "1") {
                                                $.ajax({
                                                    async: false,
                                                    url: "/hxzkoa/shipinzhuangtai.do",
                                                    type: 'POST',
                                                    dataType: 'JSON',
                                                    data: {
                                                        tagid: _this.playMark[i][0],
                                                    },
                                                    success: function(data){
                                                        // console.log(data[0].shebeiid)
                                                        serial = data[0].shebeiid;
                                                        // console.log(data[0].tongdaoid)
                                                        code = data[0].tongdaoid;
                                                //读取当前实际坐标
                                                var cor_x = new Number(_this.playMark[i][4]); // æ­¤å¤„_this.playMark是数据库里取到的当前点坐标,4是posx,5是posy
                                                var cor_y = new Number(_this.playMark[i][5]);
                                                //转为图上坐标
                                                var x_cor_now = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                                var y_cor_now = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                                //是否有轨迹拖尾
                                                if (_this.real_trak_time != 0) {
                                                    var trackNow;
                                                    var pm = _this.playMark;
                                                    function ftn(current_floor, pm, tn, rtk, ctt, rtc, igxm, igym, igslm, rnlm, xr, yr, xx0, yy0) {
                                                        //trackNow = getTracknow(current_floor, pm[0], rtk)
                                                        if (tn.length == 0) {
                                                            trackNow = [];
                                                        } else if (pm[0] in tn) {
                                                            trackNow = tn[pm[0]];
                                                        } else {
                                                            trackNow = [];
                                                        };
                                                        var can = ctt;
                                                        can.beginPath();
                                                        can.strokeStyle = rtc;
                                                        can.fillStyle = rtc;
                                                        for (var i = 0; i < trackNow.length; i++) {
                                                            var cor_x = new Number(trackNow[i][0]);
                                                            var cor_y = new Number(trackNow[i][1]);
                                                            var x_cor = new Number(igxm + igslm * rnlm * xr * (cor_x - xx0));
                                                            var y_cor = new Number(igym + igslm * rnlm * yr * (cor_y - yy0));
                                                            //                                          var cor_x2 = new Number(trackNow[i+1][0]);
                                                            //                                          var cor_y2 = new Number(trackNow[i+1][1]);
                                                            //                                          var x_cor2 = new Number(igxm + igslm * rnlm * xr * (cor_x2 - xx0));
                                                            //                                          var y_cor2 = new Number(igym + igslm * rnlm * yr * (cor_y2 - yy0));
                                                            //                                          can.moveTo(x_cor, y_cor);
                                                            //                                          can.lineTo(x_cor2, y_cor2);
                                                            //                                          can.stroke();
                                                            //                                          can.fill();
                                                            can.moveTo(x_cor, y_cor);
                                                            can.arc(x_cor, y_cor, 1, 0, Math.PI * 2, true);
                                                            can.fill();
                                                        };
                                                        can.closePath();
                                                        can.stroke();
                                                        //_this.trackNow.push([trackNow]);
                                                    }
                                                });
                                                document.getElementById("popup").style.display = "flex";
                                                // serial = "34020000001320000003";
                                                // code = "34020000001310000002";
                                                var tanchuang = document.getElementById("tanchuang")
                                                var rr = document.createElement("iframe")
                                                rr.src = "http://192.168.1.100:10000/play.html?serial=" + serial + "&code=" + code + "&aspect=fullscreen";
                                                rr.width = "640";
                                                rr.height = "360";
                                                rr.allowFullscreen = "true";
                                                var object = tanchuang.appendChild(rr);
                                                shipinka = false;
                                            }
                                        }
                                        //var playMarkInKaoQin = true;
                                        if (((_this.offView == '1' && tagzhuangtai == '1') || (_this.offView == '0')) && ((_this.diskaoqin == "1" && _this.playMarkInKaoQin[i]) || (_this.diskaoqin == "0"))) {
                                            //是否开启离线消失,并判断状态(在线1/离线0);当开启离线消失时(仅显示在线标签),当未开启离线消失时(全部显示)
                                            //是否开启出考勤区域消失,并判断是否在考勤区域内;当开启出考勤区域消失时(需要在考勤区域内),当未开启时(全部显示)
                                            //读取当前实际坐标
                                            var cor_x = new Number(_this.playMark[i][4]); // æ­¤å¤„_this.playMark是数据库里取到的当前点坐标,4是posx,5是posy
                                            var cor_y = new Number(_this.playMark[i][5]);
                                            //转为图上坐标
                                            var x_cor_now = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                            var y_cor_now = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                            //是否有轨迹拖尾
                                            if (_this.real_trak_time != 0) {
                                                var trackNow;
                                                var pm = _this.playMark;
                                                function ftn(current_floor, pm, tn, rtk, ctt, rtc, igxm, igym, igslm, rnlm, xr, yr, xx0, yy0) {
                                                    //trackNow = getTracknow(current_floor, pm[0], rtk)
                                                    if (tn.length == 0) {
                                                        trackNow = [];
                                                    } else if (pm[0] in tn) {
                                                        trackNow = tn[pm[0]];
                                                    } else {
                                                        trackNow = [];
                                                    };
                                                    var can = ctt;
                                                    can.beginPath();
                                                    can.strokeStyle = rtc;
                                                    can.fillStyle = rtc;
                                                    for (var i = 0; i < trackNow.length; i++) {
                                                        var cor_x = new Number(trackNow[i][0]);
                                                        var cor_y = new Number(trackNow[i][1]);
                                                        var x_cor = new Number(igxm + igslm * rnlm * xr * (cor_x - xx0));
                                                        var y_cor = new Number(igym + igslm * rnlm * yr * (cor_y - yy0));
                                                        //                                          var cor_x2 = new Number(trackNow[i+1][0]);
                                                        //                                          var cor_y2 = new Number(trackNow[i+1][1]);
                                                        //                                          var x_cor2 = new Number(igxm + igslm * rnlm * xr * (cor_x2 - xx0));
                                                        //                                          var y_cor2 = new Number(igym + igslm * rnlm * yr * (cor_y2 - yy0));
                                                        //                                          can.moveTo(x_cor, y_cor);
                                                        //                                          can.lineTo(x_cor2, y_cor2);
                                                        //                                          can.stroke();
                                                        //                                          can.fill();
                                                        can.moveTo(x_cor, y_cor);
                                                        can.arc(x_cor, y_cor, 1, 0, Math.PI * 2, true);
                                                        can.fill();
                                                    };
                                                    can.closePath();
                                                    can.stroke();
                                                    //_this.trackNow.push([trackNow]);
                                                }
                                                setTimeout(ftn(current_floor, _this.playMark[i], _this.trackNow, _this.real_trak_time, _this.context, _this.real_trak_color, _this.imgXList['map'], _this.imgYList['map'], _this.imgScaleList['map'], _this.rateNumList['map'], _this.x_ratio, _this.y_ratio, _this.x_x0, _this.y_y0), 5);
                                                //var trackNow = getTracknow( _this.playMark[i][0], _this.real_trak_time);//获取指定时间段内该tagid的数据进行绘制
                                            } else {
                                                _this.trackNow = [];
                                            }
                                            var isSos = _this.playMark[i][7];
                                            if (_this.playMark[i][8] == "1") {
                                                if (sousuoType) {
                                                    can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    setTimeout(ftn(current_floor, _this.playMark[i], _this.trackNow, _this.real_trak_time, _this.context, _this.real_trak_color, _this.imgXList['map'], _this.imgYList['map'], _this.imgScaleList['map'], _this.rateNumList['map'], _this.x_ratio, _this.y_ratio, _this.x_x0, _this.y_y0), 5);
                                                    //var trackNow = getTracknow( _this.playMark[i][0], _this.real_trak_time);//获取指定时间段内该tagid的数据进行绘制
                                                } else {
                                                    can.drawImage(sousuo0, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    _this.trackNow = [];
                                                }
                                                sousuoType = !sousuoType;
                                            } else {
                                                if (isSos) {
                                                    if (sosType[i]) {
                                                        can.drawImage(sos, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2 + 3, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) + 2, images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                var isSos = _this.playMark[i][7];
                                                if (_this.playMark[i][8] == "1") {
                                                    if (sousuoType) {
                                                        can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    } else {
                                                        can.drawImage(sos1, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2 + 3, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) + 2, images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                        can.drawImage(sousuo0, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    }
                                                    sosType[i] = !sosType[i];
                                                    sousuoType = !sousuoType;
                                                } else {
                                                    can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    if (isSos) {
                                                        if (sosType[i]) {
                                                            can.drawImage(sos, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2 + 3, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) + 2, images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                        } else {
                                                            can.drawImage(sos1, 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2 + 3, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) + 2, images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                        }
                                                        sosType[i] = !sosType[i];
                                                    } else {
                                                        can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                    }
                                                }
                                            }
                                            //画在相应位置上
                                            // can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                                //画在相应位置上
                                                // can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor_now - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor_now - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key], images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]);
                                            if (_this.tagZb == '1') { //是否显示标签坐标
                                                can.fillStyle = 'red';
                                                //var f = 8*( _this.imgScaleList['map']);
                                                //can.font=f+"px Arial";
                                                if (_this.tagZb == '1') { //是否显示标签坐标
                                                    can.fillStyle = 'red';
                                                    //var f = 8*( _this.imgScaleList['map']);
                                                    can.font = "11px Arial";
                                                tagzuobiao = _this.playMark[i][4] + ',' + _this.playMark[i][5];
                                                can.fillText(tagzuobiao, x_cor_now - 20, y_cor_now + 10);
                                                    tagzuobiao = _this.playMark[i][4] + ',' + _this.playMark[i][5];
                                                    can.fillText(tagzuobiao, x_cor_now - 20, y_cor_now + 10);
                                                };
                                                if (_this.viewName == '1') { //是否显示人员名称
                                                    can.fillStyle = 'white';
                                                    can.font = '13px sans-serif';
                                                    if (_this.viewTagid == '1') { //是否显示标签id
                                                        fillRoundRect(can, x_cor_now - 40, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 2, 20, 4, '#32CD32');
                                                        can.fillStyle = 'white';
                                                        can.fillText(_this.playMark[i][1], x_cor_now - 38, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                        can.fillText(_this.playMark[i][0], x_cor_now + 5, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                    } else {
                                                        fillRoundRect(can, x_cor_now - 20, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 1.1, 20, 4, '#32CD32');
                                                        can.fillStyle = 'white';
                                                        can.fillText(_this.playMark[i][1], x_cor_now - 19, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                    }
                                                } else {
                                                    can.font = '13px sans-serif';
                                                    can.fillStyle = 'white';
                                                    if (_this.viewTagid == '1') {
                                                        fillRoundRect(can, x_cor_now - 20, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 1.1, 20, 4, '#32CD32');
                                                        can.fillStyle = 'white';
                                                        can.fillText(_this.playMark[i][0], x_cor_now - 14, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                    }
                                                }
                                                if (_this.viewPower == '1') { //是否显示电量
                                                    can.font = '10px sans-serif';
                                                    can.fillStyle = 'red';
                                                    can.fillText("电量:" + _this.playMark[i][2], x_cor_now - 20, y_cor_now + 20);
                                                };
                                            };
                                            if (_this.viewName == '1') { //是否显示人员名称
                                                can.fillStyle = 'white';
                                                can.font = '13px sans-serif';
                                                if (_this.viewTagid == '1') { //是否显示标签id
                                                    fillRoundRect(can, x_cor_now - 40, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 2, 20, 4, '#32CD32');
                                                    can.fillStyle = 'white';
                                                    can.fillText(_this.playMark[i][1], x_cor_now - 38, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                    can.fillText(_this.playMark[i][0], x_cor_now + 5, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                } else {
                                                    fillRoundRect(can, x_cor_now - 20, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 1.1, 20, 4, '#32CD32');
                                                    can.fillStyle = 'white';
                                                    can.fillText(_this.playMark[i][1], x_cor_now - 19, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                }
                                            } else {
                                                can.font = '13px sans-serif';
                                                can.fillStyle = 'white';
                                                if (_this.viewTagid == '1') {
                                                    fillRoundRect(can, x_cor_now - 20, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 18, images[key].naturalHeight * 1.1, 20, 4, '#32CD32');
                                                    can.fillStyle = 'white';
                                                    can.fillText(_this.playMark[i][0], x_cor_now - 14, y_cor_now - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] - 3);
                                                }
                                            }
                                            if (_this.viewPower == '1') { //是否显示电量
                                                can.font = '10px sans-serif';
                                                can.fillStyle = 'red';
                                                can.fillText("电量:" + _this.playMark[i][2], x_cor_now - 20, y_cor_now + 20);
                                        }
                                    } else if (key == 'anchor_online') {
                                        can.font = '10px sans-serif';
                                        if (_this.anckicon == '1') { //是否显示基站图标
                                            //_this.anchorList = [anchorid, posx,posy,posz,layer,greatetime]
                                            for (var i = 0; i < _this.onlineAnchorList.length; i++) {
                                                var cor_x = new Number(_this.onlineAnchorList[i][1]);
                                                var cor_y = new Number(_this.onlineAnchorList[i][2]);
                                                var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                                var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                                can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth, images[key].naturalHeight);
                                                if (_this.viewAnckzb == '1') { //是否显示基站坐标
                                                    can.fillStyle = 'red'
                                                    var anchorzuobiao = _this.onlineAnchorList[i][1] + ',' + _this.onlineAnchorList[i][2] + ',' + _this.onlineAnchorList[i][3];
                                                    can.fillText(anchorzuobiao, x_cor - 15, y_cor + 30);
                                                };
                                                if (_this.viewAnckid == '1') { //是否显示基站id
                                                    can.fillStyle = 'red';
                                                    var tigidd = _this.onlineAnchorList[i][0];
                                                    can.fillText(tigidd, x_cor - 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] + 10) / 2);
                                                };
                                            };
                                        };
                                    } else if (key == 'anchor_offline') {
                                        can.font = '10px sans-serif';
                                        if (_this.anckicon == '1') { //是否显示基站图标
                                            //_this.anchorList = [anchorid, posx,posy,posz,layer,greatetime]
                                            for (var i = 0; i < _this.offlineAnchorList.length; i++) {
                                                var cor_x = new Number(_this.offlineAnchorList[i][1]);
                                                var cor_y = new Number(_this.offlineAnchorList[i][2]);
                                                var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                                var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                                can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth, images[key].naturalHeight);
                                                if (_this.viewAnckzb == '1') { //是否显示基站坐标
                                                    can.fillStyle = 'red'
                                                    var anchorzuobiao = _this.offlineAnchorList[i][1] + ',' + _this.offlineAnchorList[i][2] + ',' + _this.offlineAnchorList[i][3];
                                                    can.fillText(anchorzuobiao, x_cor - 15, y_cor + 30);
                                                };
                                                if (_this.viewAnckid == '1') { //是否显示基站id
                                                    can.fillStyle = 'red';
                                                    can.fillText(_this.offlineAnchorList[i][0], x_cor - 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] + 10) / 2);
                                                };
                                            };
                                        };
                                    }
                                } else if (key == 'anchor_online') {
                                    can.font = '10px sans-serif';
                                    if (_this.anckicon == '1') { //是否显示基站图标
                                        //_this.anchorList = [anchorid, posx,posy,posz,layer,greatetime]
                                        for (var i = 0; i < _this.onlineAnchorList.length; i++) {
                                            var cor_x = new Number(_this.onlineAnchorList[i][1]);
                                            var cor_y = new Number(_this.onlineAnchorList[i][2]);
                                            var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                            var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                            can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth, images[key].naturalHeight);
                                            if (_this.viewAnckzb == '1') { //是否显示基站坐标
                                                can.fillStyle = 'red'
                                                var anchorzuobiao = _this.onlineAnchorList[i][1] + ',' + _this.onlineAnchorList[i][2] + ',' + _this.onlineAnchorList[i][3];
                                                can.fillText(anchorzuobiao, x_cor - 15, y_cor + 30);
                                            };
                                            if (_this.viewAnckid == '1') { //是否显示基站id
                                                can.fillStyle = 'red';
                                                var tigidd = _this.onlineAnchorList[i][0];
                                                can.fillText(tigidd, x_cor - 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] + 10) / 2);
                                            };
                                        };
                                    };
                                } else if (key == 'anchor_offline') {
                                    can.font = '10px sans-serif';
                                    if (_this.anckicon == '1') { //是否显示基站图标
                                        //_this.anchorList = [anchorid, posx,posy,posz,layer,greatetime]
                                        for (var i = 0; i < _this.offlineAnchorList.length; i++) {
                                            var cor_x = new Number(_this.offlineAnchorList[i][1]);
                                            var cor_y = new Number(_this.offlineAnchorList[i][2]);
                                            var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
                                            var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
                                            can.drawImage(images[key], 0, 0, images[key].naturalWidth, images[key].naturalHeight, x_cor - (images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]), images[key].naturalWidth, images[key].naturalHeight);
                                            if (_this.viewAnckzb == '1') { //是否显示基站坐标
                                                can.fillStyle = 'red'
                                                var anchorzuobiao = _this.offlineAnchorList[i][1] + ',' + _this.offlineAnchorList[i][2] + ',' + _this.offlineAnchorList[i][3];
                                                can.fillText(anchorzuobiao, x_cor - 15, y_cor + 30);
                                            };
                                            if (_this.viewAnckid == '1') { //是否显示基站id
                                                can.fillStyle = 'red';
                                                can.fillText(_this.offlineAnchorList[i][0], x_cor - 2, y_cor - (images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key] + 10) / 2);
                                            };
                                        };
                                    };
                                }
                            };
                                };
                            // }
                            //开启隧道定位后,需要显示当前考勤区域内的总标签数量
                            //_this.fenceMarkCount(count)
                            //_this.realFenceList([name, type, zuobiao_array])
                            //_this.FenceColor(color)
                            if (_this.tunlDw == "1") {
                                var k = 0;
                                fillRoundRect(can, 10, 10, 140, 40 * _this.fenceMarkCount.length, 10, colorbbb);
                                for (var i = 0; i < _this.fenceMarkCount.length; i++) {
                                    //                  if (_this.realFenceList[i][1] == "考勤区域"){
                                    can.beginPath();
                                    can.fillStyle = getDrawColor(_this.FenceColor[i]);
                                    can.fillRect(10, 10 + 50 * k, 140, 30);
                                    can.fillStyle = "red";
                                    can.fillText(_this.realFenceList[i][0] + ":" + _this.fenceMarkCount[i], 65, 25 + 50 * k);
                                    can.fillStyle = "yellow";
                                    can.font = "15px Verdana";
                                    can.fillText(_this.realFenceList[i][0] + ":" + _this.fenceMarkCount[i], 34, 36 + 40 * k);
                                    can.closePath();
                                    k += 1;
                                    //                  };
                                };
                            };
@@ -1329,6 +1323,9 @@
                                if (tuodong == true) {
                                    return false;
                                }
                                if (shipinka == false) {
                                    return false;
                                }
                                //当前实时坐标
                                _this.playMark = getRealPosition(current_floor);
                                //                  var tagid_str = "";
src/main/webapp/hxzk/newindex.jsp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,200 @@
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
        <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
            <html lang="en">
                <head>
                    <meta charset="utf-8">
                    <meta http-equiv="X-UA-Compatible" content="IE=edge">
                    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no">
                    <title></title>
                    <link href="/hxzkoa/hxzk/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/img/favicon.ico" rel="icon" type="image/x-icon" />
                    <link href="/hxzkoa/hxzk/assets/css/components/custom-modal.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/css/components/custom-sweetalert.css" rel="stylesheet"
                        type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/css/dashboard/dash_2.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/css/elements/custom-pagination.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/css/loader.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/assets/css/scrollspyNav.css" rel="stylesheet" type="text/css" />
                    <!-- <link href="/hxzkoa/hxzk/assets/css/main.css" rel="stylesheet" type="text/css" /> -->
                    <!-- <link href="/hxzkoa/hxzk/assets/css/structure.css" rel="stylesheet" type="text/css" /> -->
                    <!-- <link href="/hxzkoa/hxzk/assets/css/elements/search.css" rel="stylesheet" type="text/css" /> -->
                    <link href="/hxzkoa/hxzk/plugins/apex/apexcharts.css" rel="stylesheet" type="text/css">
                    <link href="/hxzkoa/hxzk/plugins/animate/animate.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/plugins/highlight/styles/monokai-sublime.css" rel="stylesheet"
                        type="text/css" />
                    <link href="/hxzkoa/hxzk/plugins/sweetalerts/sweetalert2.min.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/plugins/sweetalerts/sweetalert.css" rel="stylesheet" type="text/css" />
                    <link href="/hxzkoa/hxzk/plugins/table/datatable/datatables.css" rel="stylesheet" type="text/css">
                    <link href="/hxzkoa/hxzk/plugins/table/datatable/custom_dt_html5.css" rel="stylesheet" type="text/css">
                    <link href="/hxzkoa/hxzk/plugins/table/datatable/dt-global_style.css" rel="stylesheet" type="text/css">
                    <link href="/hxzkoa/hxzk/plugins/perfect-scrollbar/perfect-scrollbar.css" rel="stylesheet"
                        type="text/css" />
                    <link href="https://fonts.gstatic.com" rel="preconnect">
                    <link href="https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&display=swap" rel="stylesheet">
                    <link href="https://fonts.googleapis.com/css?family=Quicksand:400,500,600,700&display=swap"
                        rel="stylesheet">
                    <style>
                    </style>
                    <script src="/hxzkoa/hxzk/assets/js/app.js"></script>
                    <script src="/hxzkoa/hxzk/assets/js/dashboard/dash_2.js"></script>
                    <script src="/hxzkoa/hxzk/assets/js/loader.js"></script>
                    <script src="/hxzkoa/hxzk/assets/js/libs/jquery-3.1.1.min.js"></script>
                    <script src="/hxzkoa/hxzk/bootstrap/js/bootstrap.min.js"></script>
                    <script src="/hxzkoa/hxzk/bootstrap/js/popper.min.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/apex/apexcharts.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/jszip.min.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/table/jquery.table2excel.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/sweetalerts/promise-polyfill.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/sweetalerts/sweetalert2.min.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/sweetalerts/custom-sweetalert.js"></script>
                    <script src="/hxzkoa/hxzk/plugins/perfect-scrollbar/perfect-scrollbar.min.js"></script>
                </head>
<body>
    <div style="border-style: inset;border-color: blue;border-width: 5px;">
        <div id="web1">
        </div>
        <div id="web2">
        </div>
        <div id="web3">
            <table>
                <thead>
                    <tr>
                        <th>id</th>
                        <th>name</th>
                        <th>password</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td></td>
                        <td></td>
                        <td></td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
<script>
    var wasdData = [10, 41, 35, 51, 49, 62, 69, 91, 148];
var wasdOptions = {
    series: [{
        name: "报文",
        data: wasdData,
    }],
    chart: {
        id: 'realtime',
        height: 300,
        width: 400,
        type: 'line',
        zoom: {
            enabled: false
        },
        animations: {
            enabled: true,
            easing: 'linear',
            dynamicAnimation: {
                speed: 10000
            }
        },
        toolbar: {
            show: false
        },
        zoom: {
            enabled: false
        }
    },
    dataLabels: {
        enabled: false
    },
    stroke: {
        curve: 'smooth'
    },
    markers: {
        size: 0
    },
    legend: {
        show: false
    },
    grid: {
        row: {
            colors: ['#f3f3f3', 'transparent'],
            opacity: 0.5
        },
    },
    xaxis: {
        range: 7
        // categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep'],
    },
    yaxis: {
        max: 1000
    },
};
var wasdChart = new ApexCharts(document.getElementById('web1'), wasdOptions);
wasdChart.render();
window.setInterval(function () {
    wasdData.push(weizhi);
    wasdChart.updateSeries([{
        data: wasdData
    }])
}, 10000)
var polarAreaChart = {
    chart: {
        height: 250,
        type: 'polarArea',
        toolbar: {
            show: false,
        }
    },
    dataLabels: {
        enabled: true,
        background: {
          enabled: true,
          borderRadius:1,
        }
      },
    stroke: {
        colors: '#0e1726'
    },
    series: reT_v,
    labels: reT_k,
    responsive: [{
        breakpoint: 480,
        options: {
            chart: {
                width: 200
            },
            legend: {
                position: 'bottom'
            }
        }
    }]
}
var chart = new ApexCharts(
    document.querySelector("#web2"),
    polarAreaChart
);
chart.render();
var times = setInterval(leida,10000);
function leida() {
    $.ajax({
        url: "/hxzkoa/settongjishuju.do",
        type: "POST",
        dataType: "JSON",
        success(data) {
            chart.updateOptions({
                series: data[1],
                labels: data[0]
            })
        }
    });
}
</script>
</html>
src/main/webapp/hxzk/top.html
@@ -67,9 +67,9 @@
                            <li>
                                <a href="/hxzkoa/anchorConfiguration.do"> åŸºç«™é…ç½® </a>
                            </li>
                            <li>
                                <a href="/hxzkoa/shows.do"> å†é…ä¸»é¡µ </a>
                            </li>
                            <!-- <li>
                                <a href="/hxzkoa/hxzk/newindex.jsp"> å†é…ä¸»é¡µ </a>
                            </li> -->
                            <!-- <li>
                                <a href="/hxzkoa/proximityConfiguration.do"> ä¸´è¿‘配置 </a>
                            </li>
@@ -212,7 +212,7 @@
                               <a href="/hxzkoa/personManagement.do"> äººå‘˜ç®¡ç† </a>
                           </li>
                           <li>
                               <a href="http://192.168.3.124:10000" target="_blank"> ç›‘控管理 </a>
                               <a href="http://192.168.1.220:10000" target="_blank"> ç›‘控管理 </a>
                           </li>
                        </ul>
                    </li>