layui.use('table', function(){ var table = layui.table; var layer = layui.layer; var form = layui.form; var data = "username="+sessionStorage.getItem("username") $.get("/hxzkuwb/findUserRole",data,function (data) { if(data.juese == "访客"){ //标签设备 if (sessionStorage.getItem("YuYan") == "English"){ table.render({ elem: '#tag' ,url: '/hxzkuwb/findrenyuanDaPing' ,page: true //开启分页 ,skin: 'nob' //行边框风格 ,cols: [[ // 表头 {field: 'ponline', title: 'Status',templet: '#titleTpl1',width:80} ,{ field: 'ptagid', title: 'Number',align: 'left',width:80} ,{field: 'pname', title: 'Name' ,width:90} ,{field: 'pdepartment', title: 'Department',width:90} ,{field: 'ppower', title: 'Battery level%',width:80} ,{field: 'pphone', title: 'Telephone',width:140, templet:'#phoneTpl'} ,{field: 'paddtiem', title: 'Time',width:170} ,{toolbar: '#barDemotag',title: "details",width:80} ,{field: 'version',title: "Firmware Version",width:100} ]] }); }else{ table.render({ elem: '#tag' ,url: '/hxzkuwb/findrenyuanDaPing' ,page: true //开启分页 ,skin: 'nob' //行边框风格 ,cols: [[ // 表头 {field: 'ponline', title: '状态',templet: '#titleTpl1',width:80} ,{ field: 'ptagid', title: '编号',align: 'left',width:80} ,{field: 'pname', title: '名称' ,width:90} ,{field: 'pdepartment', title: '部门',width:90} ,{field: 'ppower', title: '电量%',width:80} ,{field: 'pphone', title: '电话',width:140, templet:'#phoneTpl'} ,{field: 'paddtiem', title: '时间',width:170} ,{toolbar: '#barDemotag',title: "看详情",width:80} ,{field: 'version',title: "固件版本",width:100} ]] }); } }else{ if (sessionStorage.getItem("YuYan") == "English"){ table.render({ elem: '#tag' ,url: '/hxzkuwb/findrenyuanDaPing' ,page: true //开启分页 ,skin: 'nob' //行边框风格 ,cols: [[ // 表头 {field: 'ponline', title: 'Status',templet: '#titleTpl1',width:80} ,{ field: 'ptagid', title: 'Number',align:'left',width:80} ,{field: 'pname', title: 'Name' ,width:90} ,{field: 'pdepartment', title: 'Department',width:90} ,{field: 'ppower', title: 'Battery level%',width:80} ,{field: 'pphone', title: 'Telephone',width:140, templet:'#phoneTpl'} ,{field: 'paddtiem', title: 'Time',width:170} ,{toolbar: '#barDemotag',title: "details",width:80} ,{field: 'version',title: "Firmware Version",width:100} ]] }); }else{ table.render({ elem: '#tag' ,url: '/hxzkuwb/findrenyuanDaPing' ,page: true //开启分页 ,skin: 'nob' //行边框风格 ,cols: [[ // 表头 {field: 'ponline', title: '状态',templet: '#titleTpl1',width:80} ,{ field: 'ptagid', title: '编号',align: 'left',width:80} ,{field: 'pname', title: '名称' ,width:90} ,{field: 'pdepartment', title: '部门',width:90} ,{field: 'ppower', title: '电量%',width:80} ,{field: 'pphone', title: '电话',width:140} ,{field: 'paddtiem', title: '时间',width:170} ,{toolbar: '#barDemotag',title: "看详情",width:80} ,{field: 'version',title: "固件版本",width:100} ]] }); } } }) if (sessionStorage.getItem("YuYan")== "English"){ table.render({ elem: '#anchor' ,url: '/hxzkuwb/findanchor' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: 'Number',width:80} ,{field: 'anchorid', title: 'Device' ,width:80} ,{ field: 'anchormode', title: 'Status',width:80 ,templet: '#titleTpl'} ,{ field: 'posz', title: 'X coordinate'} ,{ field: 'posy', title: 'Y coordinate',width:100 } ,{ field: 'layer', title: 'Floor',width:80 } ,{field: 'version', title: 'Version',width:80} ,{field: 'baoliu8', title: 'Battery level%',width:120} ,{field: 'greatetime', title: 'date',width:190} ]] }); }else{ table.render({ elem: '#anchor' ,url: '/hxzkuwb/findanchor' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: '序号',width:80} ,{field: 'anchorid', title: '设备' ,width:80} ,{ field: 'anchormode', title: '状态',width:80 ,templet: '#titleTpl'} ,{ field: 'posz', title: 'X坐标',width:100 } ,{ field: 'posy', title: 'Y坐标',width:100 } ,{ field: 'layer', title: '所在层',width:80 } ,{field: 'version', title: '版本',width:80} ,{field: 'baoliu8', title: '电量%',width:120} ,{field: 'greatetime', title: '日期',width:190} ]] }); } if (sessionStorage.getItem("YuYan") == "English"){ table.render({ elem: '#fence' ,url: '/hxzkuwb/findfence' ,skin: 'nob' ,page: true //开启分页 ,resize:true ,cols: [[ //表头 { field: 'name', title: 'Name',width:120} ,{field: 'type', title: 'Type',width:150} ,{field: 'bumen', title: 'Department',width:170} ,{field: 'start', title: 'Effective Time',width:170} ,{field: 'stop', title: 'Expiration Time',width:170} ,{field: 'baoliu7', title: 'Status',width:120,templet: '#titleTplFence'} ]] }); }else{ table.render({ elem: '#fence' ,url: '/hxzkuwb/findfence' ,skin: 'nob' ,page: true //开启分页 ,resize:true ,cols: [[ //表头 { field: 'name', title: '名称',width:120} ,{field: 'type', title: '类型',width:150} ,{field: 'bumen', title: '关联部门',width:170} ,{field: 'start', title: '生效时间',width:170} ,{field: 'stop', title: '失效时间',width:170} ,{field: 'baoliu7', title: '状态',width:120,templet: '#titleTplFence'} ]] }); } if (sessionStorage.getItem("YuYan") == "English"){ table.render({ elem: '#warning' ,url: '/hxzkuwb/findwarningDaPing' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: 'serial number',width:80} ,{ field: 'type', title: 'Alarm Type',width:120} ,{field: 'objectid', title: 'number',width:150} ,{field: 'baoliu2', title: 'Name',width:100} ,{field: 'time', title: 'Time',width:170} ,{field: 'baoliu1', title: 'Note',width:146} ,{field: 'status', title: 'operation',width:120,templet: '#titleWarning'} ]] }); }else{ table.render({ elem: '#warning' ,url: '/hxzkuwb/findwarningDaPing' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: '序号',width:80} ,{ field: 'type', title: '告警类型',width:120} ,{field: 'objectid', title: '编号',width:150} ,{field: 'baoliu2', title: '姓名',width:100} ,{field: 'time', title: '时间',width:170} ,{field: 'baoliu1', title: '备注',width:146} ,{field: 'status', title: '操作',width:120,templet: '#titleWarning'} ]] }); } if (sessionStorage.getItem("YuYan") == "English"){ table.render({ elem: '#person' ,url: '/hxzkuwb/findperson' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: 'ID',width:80} ,{ field: 'ptagid', title: 'Number',width:100} ,{field: 'pname', title: 'Name',width:100} ,{field: 'psex', title: 'Sex',width:60} ,{field: 'ponline', title: 'Status',width:150} ,{field: 'pdepartment', title: 'Department',width:165} ,{field: 'pphone', title: 'Telephone',width:170} ,{field: 'ppower', title: 'Battery level',width:131} ]] }); }else{ table.render({ elem: '#person' ,url: '/hxzkuwb/findperson' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: 'ID',width:80} ,{ field: 'ptagid', title: '编号',width:100} ,{field: 'pname', title: '姓名',width:100} ,{field: 'psex', title: '性别',width:60} ,{field: 'ponline', title: '状态',width:150} ,{field: 'pdepartment', title: '部门',width:165} ,{field: 'pphone', title: '电话',width:170} ,{field: 'ppower', title: '电量',width:131} ]] }); } table.render({ elem: '#gathers' ,url: '/hxzkuwb/findgather' ,skin: 'nob' ,page: true //开启分页 ,cols: [[ //表头 {field: 'id', title: 'ID',width:80} ,{ field: 'pernum', title: '人员上限',width:100} ,{field: 'typec2', title: '静默区域',width:120} ,{field: 'name', title: '围栏名称',width:120} ,{field: 'redius', title: '聚集半径',width:150} ,{field: 'shichang', title: '聚集时长',width:165} ,{field: 'weixianpin', title: '危险品名称',width:170} ]] }); if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } $.get("/hxzkuwb/getbumen", function (data) { var selectData = []; for (var i = 0; i < data.length; i++) { var option = { value: data[i].departmentname, title: data[i].departmentname }; selectData.push(option); } // 动态生成下拉框选项 var selectElem = document.getElementById('bumen'); for (var i = 0; i < selectData.length; i++) { var optionElem = document.createElement('option'); optionElem.value = selectData[i].value; optionElem.innerHTML = selectData[i].title; // 使用 innerHTML 属性来设置 HTML 内容 selectElem.appendChild(optionElem); } // 重新渲染下拉框 form.render('select'); if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } }); //人员刷新 form.on('submit(demo-table-search1)', function(data){ var field = data.field; // 获得表单字段 table.reload('tag', { url: "/hxzkuwb/findrenyuanDaPing", method:'get', page: { curr: 1 // 重新从第 1 页开始 } }); layer.msg('刷新成功'); $("#search1").text("刷新"+getCurrentTimes()) return false; // 阻止默认 form 跳转 }); table.on('row(tag)', function(obj){ var data = obj.data; $("#uperson1").val(data.ptagid) $("#uperson2").val(data.pname) $("#uperson3").val(data.pphone) $("#uperson4").val(data.pidcardnum); $("#uperson5").val(data.pzu); //标注选中样式 obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click'); }); //人员修改 form.on('submit(demo-table-update)', function(data){ //查询是否是超级管理员或者有修改权限 var username = sessionStorage.getItem("username") var data = "username="+username $.get("/hxzkuwb/findUserRole",data,function (data){ if(data.juese == "超级管理员" || data.uupdate == "Yes"){ var id = $("#uperson1").val(); if(id == "" || id == null){ layer.msg('请先选择一条信息') }else{ var field = data.field; // 获得表单字段 console.log(field) $("#perup").toggle() layer.msg('操作成功'); } }else{ layer.msg('当前没有权限操作该功能') } }) return false; // 阻止默认 form 跳转 }); // 监听表单提交事件 form.on('submit(myForm)', function(data){ var tagid = $("#uperson1").val(); var pname = $("#uperson2").val(); var sex = getSelectedRadioValue("pSex"); var phone = $("#uperson3").val(); var idcard = $("#uperson4").val(); var bumen = $("#bumen").val(); var pzu = $("#uperson5").val(); var data = "pTagid="+tagid+"&pName="+pname+"&pSex="+sex+"&pPhone="+phone+"&pIdcardnum="+idcard+"&pDepartment="+bumen+"&pZu="+pzu $.ajax({ url: "/hxzkuwb/updatePersonDaPing", type: "POST", data: data, async: false, // 设置为同步请求 success: function (data) { if(data == "success"){ layer.msg('修改成功') $("#perup").hide(); } } }); // 阻止表单默认提交行为 return false; }); //警告刷新 form.on('submit(demo-table-search2)', function(data){ var field = data.field; // 获得表单字段 table.reload('warning', { url: "/hxzkuwb/findwarning", method:'get', page: { curr: 1 // 重新从第 1 页开始 } }); layer.msg('刷新成功'); $("#search2").text("刷新"+getCurrentTimes()) return false; // 阻止默认 form 跳转 }); //围栏刷新 form.on('submit(demo-table-search3)', function(data){ var field = data.field; // 获得表单字段 table.reload('fence', { url: "/hxzkuwb/findfence", method:'get', page: { curr: 1 // 重新从第 1 页开始 } }); layer.msg('刷新成功'); $("#search3").text("刷新"+getCurrentTimes()) return false; // 阻止默认 form 跳转 }); //设备刷新 form.on('submit(demo-table-search4)', function(data){ var field = data.field; // 获得表单字段 table.reload('anchor', { url: "/hxzkuwb/findanchor", method:'get', page: { curr: 1 // 重新从第 1 页开始 } }); layer.msg('刷新成功'); $("#searchSheBei").text("刷新"+getCurrentTimes()) return false; // 阻止默认 form 跳转 }); //设备搜索 form.on('submit(demo-search1)', function(data){ var field = data.field; // 获得表单字段 console.log(field) table.reload('anchor', { url: "/hxzkuwb/findanchorSearch", method:'post', page: { curr: 1 // 重新从第 1 页开始 } ,where: field // 搜索的字段 }); layer.msg('搜索成功'); return false; // 阻止默认 form 跳转 }); form.on('submit(demo-search2)', function(data){ var field = data.field; // 获得表单字段 table.reload('fence', { url: "/hxzkuwb/findfenceSearch", method:'get', page: { curr: 1 // 重新从第 1 页开始 } ,where: field }); layer.msg('搜索成功'); return false; // 阻止默认 form 跳转 }); form.on('submit(demo-search3)', function(data){ var field = data.field; // 获得表单字段 table.reload('warning', { url: "/hxzkuwb/findwarningSearch", method:'get', page: { curr: 1 // 重新从第 1 页开始 } ,where: field }); layer.msg('搜索成功'); return false; // 阻止默认 form 跳转 }); form.on('select(filterSelect)', function(data){ var filterValue = {}; for (var i = 0; i < data.value.length; i++) { filterValue['param' + i] = data.value[i]; } table.reload('warning', { url: "/hxzkuwb/findwarningScreen", method:'get', page: { curr: 1 // 重新从第 1 页开始 } ,where: filterValue ,done: function (res, curr, count) { // res 即为后端返回的响应数据 $("#searnum").text('全部告警:'+count); // 输出总条数 } }); layer.msg('搜索成功'); return false; // 阻止默认 form 跳转 }); form.on('submit(demo-search4)', function(data){ var field = data.field; // 获得表单字段 table.reload('tag', { url: "/hxzkuwb/findpersonSearch", method:'get', page: { curr: 1 // 重新从第 1 页开始 } ,where: field }); layer.msg('搜索成功'); return false; // 阻止默认 form 跳转 }); //围栏开启/关闭 table.on('tool(fence)', function(obj){ var data = obj.data; var layEvent = obj.event; var username = sessionStorage.getItem("username") var dts = "name="+data.name var data ="username="+username switch (layEvent){ case "开启": var curr = $(".layui-laypage-em").next().text(); $.get("/hxzkuwb/findUserRole",data,function (data){ if(data.uupdate == "Yes"){ $.get("/hxzkuwb/FenceKaiQi",dts,function (data){ table.reload('fence', { url: "/hxzkuwb/findfence", method:'get', page: { curr: curr[1] // 重新从第 1 页开始 } }); layer.msg('操作成功') }) }else{ layer.msg('没有修改权限!请联系管理员') } }) break; case "关闭": var curr = $(".layui-laypage-em").next().text(); $.get("/hxzkuwb/findUserRole",data,function (data){ if(data.uupdate == "Yes"){ $.get("/hxzkuwb/FenceGuanBi",dts,function (data){ table.reload('fence', { url: "/hxzkuwb/findfence", method:'get', page: { curr: curr[1] // 重新从第 1 页开始 } }); layer.msg('操作成功') }) }else{ layer.msg('没有修改权限!请联系管理员') } }) break; } layer.msg('操作成功') }) var currentPage = 1; // 初始值为第一页 //告警处理 table.on('tool(warning)', function(obj){ var data = obj.data; $("#warningid").val(data.objectid) $("#warningidtype").text(data.type) $("#warningMsg").show(); $("#idwar").val(data.id); layer.msg('操作成功') }) }); var chartDom = document.getElementById('tong'); var myChart = echarts.init(chartDom); var option; // 定义更新图表数据的函数 function updateChart() { // 模拟获取最新的数据 var newData = tubiaotongji(); // 更新图表的数据 myChart.setOption({ series: [{ data: newData }] }); } // 每隔一段时间调用一次更新图表数据的函数 setInterval(updateChart, 10000); // 每10秒更新一次数据 option = { tooltip: { trigger: 'item' }, legend: { orient: 'vertical', right: 20, top: 0, bottom: 30, itemWidth: 15, textStyle: { color: 'white' } }, series: [ { name: '统计', type: 'pie', radius: ['20%', '40%'], center: ['35%', '60%'], avoidLabelOverlap: false, itemStyle: { borderRadius: 10, }, label: { show: false, position: 'center' }, emphasis: { label: { show: true, fontSize: 20, fontWeight: 'bold' } }, labelLine: { show: false }, data: [ { value: 0, name: '静止报警 0' }, { value: 0, name: 'SOS报警 0' }, { value: 0, name: '跌落报警 0' }, { value: 0, name: '缺员报警 0' }, { value: 0, name: '超员报警 0' }, { value: 0, name: '聚集报警 0' }, { value: 0, name: '越界报警 0' }, { value: 0, name: '进入报警 0' }, { value: 0, name: '低电报警 0' }, { value: 0, name: '离线基站 0' }, ] } ] }; option && myChart.setOption(option); function tubiaotongji() { var tu = []; if (sessionStorage.getItem("YuYan") == "English"){ $.ajax({ url: "/hxzkuwb/findWarnTongJiEnglish", type: "GET", async: false, // 将async参数设置为false,实现同步调用 success: function(data) { for (var i = 0; i < data.length; i++) { tu.push(data[i]); } } }); }else{ $.ajax({ url: "/hxzkuwb/findWarnTongJi", type: "GET", async: false, // 将async参数设置为false,实现同步调用 success: function(data) { for (var i = 0; i < data.length; i++) { tu.push(data[i]); } } }); } return tu; } //图表默认加载一次 setTimeout(function (){ updateChart() },1000) function wardis(){ $("#warningMsg1").show() } function sendMsg(){ var username1 = sessionStorage.getItem("username") var username = $(".kahao").text(); var context = $("#context1").val(); var data = "username="+username1+"&context="+context+"&tagid="+username if (context.length <2 || context.length >30){ layer.msg('当前输入内容有误,字符长度不能小于2并且不能大于30') return; } $.get("/hxzkuwb/sendMsg",data,function(data){ }) layer.msg('操作成功') $("#context1").val(""); if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } } function send(){ var username1 = sessionStorage.getItem("username") var username = $("#username").val(); var context = $("#context").val(); if(username == "" || username == null){ layer.msg("请输入设备ID") }else{ if (username.length < 2){ layer.msg('当前输入内容有误,字符长度不能小于2') if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } return } if (context.length <2 || context.length > 30){ layer.msg('当前输入内容有误,字符长度不能小于2并且不能大于30') if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } return; } var dts = "username="+username1; $.get("/hxzkuwb/findUserRole",dts,function (data){ if(data.juese=="访客"){ layer.msg('当前登录用户不具备权限!请联系管理员') }else{ var dt = "username="+username1+"&context="+context+"&tagid="+username $.get("/hxzkuwb/sendMsg",dt,function(data){ }) layer.msg('操作成功') } if (sessionStorage.getItem("YuYan") == "English"){ translate.execute(); } }) } } function getSelectedRadioValue(name) { var radios = document.getElementsByName(name); for (var i = 0; i < radios.length; i++) { if (radios[i].checked) { return radios[i].value; } } // 如果没有选中的值,可以返回一个默认值或者null return null; } setInterval(function (){ var user = localStorage.getItem("username") if (user == null){ window.location='../index.jsp' } },2000) //获取时分秒 function getCurrentTimes() { var now = new Date(); var hours = String(now.getHours()).padStart(2, '0'); var minutes = String(now.getMinutes()).padStart(2, '0'); var seconds = String(now.getSeconds()).padStart(2, '0'); var currentTime = hours+":"+minutes+":"+seconds; return currentTime; }