| | |
| | | //防抖 |
| | | onceTimeMethodS: null, |
| | | onceTime: 300, |
| | | // 警情缓存 |
| | | Pdata: null, |
| | | // 警情图标缓存 |
| | | Pdatas: null, |
| | | //业主缓存 |
| | | Ydata: null, |
| | | // 业主图标缓存 |
| | | Ydatas: null, |
| | | //设备缓存 |
| | | Sdata: null, |
| | | // 设备图标缓存 |
| | | Sdatas: null, |
| | | |
| | | constructor: function (options, srcRefNode) { |
| | | this._map = options.map; |
| | |
| | | dataType: 'JSON', |
| | | success: function (res) { |
| | | var datas = res.data; |
| | | // console.log(datas) |
| | | var heatmapRenderer = null; |
| | | that.entityData = []; |
| | | for (var i = 0; i < datas.length; i++) { |
| | |
| | | }) |
| | | } |
| | | that.flareClusterLayer(datas); |
| | | // console.log(datas) |
| | | that.heatmapfeatureLayer = that.heatmFeaLayers(); |
| | | that._map.addLayer(that.heatmapfeatureLayer); |
| | | // that.checkBoxSelect();//左侧控制热力图重复 |
| | |
| | | $('.analysis-and-judgment-tab li:eq(0)').addClass('on').siblings().removeClass('on'); |
| | | $($('.analysis-container > div')[0]).stop().show().siblings().stop().hide(); |
| | | |
| | | that.heatmapfeatureLayer_1 = that.heatmFeaLayers(); |
| | | that.heatmapfeatureLayer = that.heatmFeaLayers(); |
| | | |
| | | that._map.addLayer(that.heatmapfeatureLayer_1); |
| | | that._map.addLayer(that.heatmapfeatureLayer); |
| | | $('#analysis_select_time_start').val(time.tomorrow); |
| | | $('#analysis_select_time_end').val(time.current); |
| | | |
| | |
| | | }); |
| | | }); |
| | | that.getArea($('#policeArea')); |
| | | that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), time.tomorrow, time.current, '', ''); |
| | | // that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), time.tomorrow, time.current, '', ''); |
| | | that.clickHand(); |
| | | |
| | | } |
| | |
| | | objThis._map.addLayer(objThis._siteLayer); |
| | | var that = this; |
| | | // console.log(mySelf.clusterLayer) |
| | | that.getEquipmentTable($('.analysis-container-equipment').find('.tbody tbody'), ''); |
| | | that.getEquipmentTable($('.analysis-container-equipment').find('.tbody tbody'), '', 'once'); |
| | | // 顶部tab得切换事件 |
| | | $('.analysis-and-judgment-tab li').click(function () { |
| | | // if (that.tabIndex == $(this).index()) return; |
| | | // if ($(this).index() == 1) { return }; |
| | | // if ($(this).index() == 2) { return }; |
| | | |
| | | //解决打开热力图 切换top获取不了数据问题 警情 |
| | | if ($('#policeHeatMap').prop('checked') == true) { |
| | | // console.log($('#policeHeatMap').prop('checked') == true) |
| | | $('#policeHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#policeHeatMap')); |
| | | } else |
| | | //解决打开热力图 切换top获取不了数据问题 业主 |
| | | if ($('#ownerHeatMap').prop('checked') == true) { |
| | | // console.log($('#ownerHeatMap').prop('checked') == true) |
| | | $('#ownerHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#ownerHeatMap')); |
| | | } else |
| | | //解决打开热力图 切换top获取不了数据问题 设备 |
| | | if ($('#equipmentHeatMap').prop('checked') == true) { |
| | | // console.log($('#equipmentHeatMap').prop('checked') == true) |
| | | $('#equipmentHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#equipmentHeatMap')); |
| | | } |
| | | |
| | | |
| | | // console.log($('#policeHeatMap').prop('checked') == true) |
| | | if (that.entitysData.length > 0) { |
| | | that.analysisAddEntitys.clear(); |
| | | that.entitysData = []; |
| | | } |
| | | |
| | | if (that.heatmapfeatureLayer_1.graphics.length > 0) { |
| | | that.heatmapfeatureLayer_1.clear(); |
| | | that.heatmapfeatureLayer_1.setRenderer(); |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) { |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | $('.analysis-category input').prop('checked', false); |
| | | } |
| | | |
| | | |
| | | |
| | | $(this).addClass('on').siblings().removeClass('on'); |
| | |
| | | $($('.analysis-container > div')[ind]).stop().show().siblings().stop().hide(); |
| | | var overText = $('#policeCategory > div:eq(0)').text().trim() == '全部' ? '' : $('#policeCategory > div:eq(0)').text().trim(); |
| | | var levelText = $('#policeArea > div:eq(0)').text().trim() == '全部' ? '' : $('#policeArea > div:eq(0)').attr('areaid'); |
| | | if (ind == 0) { |
| | | if (ind == 1) { |
| | | that.getArea($('#policeArea')); |
| | | that.getPoliceTableAnalysis($($('.analysis-container > div')[ind]).find('.tbody tbody'), |
| | | $('#analysis_select_time_start').val() + ':00', |
| | | $('#analysis_select_time_end').val() + ':00', overText, levelText) |
| | | } else if (ind == 1) { |
| | | } else if (ind == 2) { |
| | | that.getOwnerType($('#ownerCategory')); |
| | | that.getOwnerDj($('#ownerLevel'), ''); |
| | | that.getOwnerTable($($('.analysis-container > div')[ind]).find('.tbody tbody'), '', ''); |
| | | } else if (ind == 2) { |
| | | } else if (ind == 0) { |
| | | that.getEquipmentTable($($('.analysis-container > div')[ind]).find('.tbody tbody'), ''); |
| | | } |
| | | |
| | |
| | | }) |
| | | |
| | | // 警情列表中的点击事件 |
| | | $('.analysis-container-police .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function () { |
| | | $('.analysis-container-police .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function (event) { |
| | | if ($('#policeHeatMap').prop('checked') == true) {// 点击关闭热力图 |
| | | // console.log('relitu') |
| | | $('#policeHeatMap').click(); |
| | | } |
| | | var id = $(this).attr('term-list'); |
| | | var url = './popup/html/police-details.html?obj=' + id; |
| | | layui.use('layer', function () { |
| | | that.layuiLayer = layui.layer; |
| | | that.layuiLayer.config({ |
| | | extend: 'myskin/police-details.css' |
| | | }); |
| | | that.layuiLayer.close(that.layuiLayer.index); |
| | | that.layuiLayer.open({ |
| | | title: '警情详情', |
| | | type: 2, |
| | | shadeClose: true, |
| | | shade: false, |
| | | maxmin: false, //开启最大化最小化按钮 |
| | | area: ['500px', '400px'], |
| | | offset: 'auto', |
| | | skin: 'police-details', |
| | | content: url, |
| | | closeBtn: 1, |
| | | }); |
| | | }) |
| | | var b = mySelf.Pdata; |
| | | for (var key in b) { |
| | | if (b[key].id == id) { |
| | | b = b[key]; |
| | | break; |
| | | } |
| | | } |
| | | // console.log(b, id); |
| | | event.stopPropagation(); |
| | | var winSize = [+window.innerHeight / 2 - 242 + 'px', +window.innerWidth - 380 + 'px']; |
| | | |
| | | if (b.jd == '' || b.wd == '') { |
| | | // console.log('无地图经纬度'); |
| | | b.haveJW = '无地图经纬度'; |
| | | } else { |
| | | // console.log('有地图经纬度') |
| | | b.haveJW = '有地图经纬度'; |
| | | // var lgtd = Number($(this).find('input').attr('lgtd')); |
| | | // var lttd = Number($(this).find('input').attr('lttd')); |
| | | var lgtd = Number(b.jd); |
| | | var lttd = Number(b.wd); |
| | | // console.log($(this).find('input').attr('lttd')); |
| | | var position = new esri.geometry.Point(lgtd, lttd, new esri.SpatialReference({ wkid: 4326 }));//根据输入坐标信息找地图上的点 |
| | | that._map.centerAndZoom(position, 18);//缩放,10是缩放级别,可以自定义,数值越大缩放越大 |
| | | } |
| | | //解决重复JSON.stringify将循环结构转换为JSON。有几率出错,err:TypeError: Converting circular structure to JSON |
| | | //舍弃上面方法,原因是对象里面嵌入对象,造成不能转换成JSON,吧对象去掉就好, |
| | | var as = b; |
| | | var setdata = JSON.stringify(as); |
| | | // console.log(setdata,'setdata') |
| | | var intOpen = () => { |
| | | layui.use('layer', function () { |
| | | that.layuiLayer = layui.layer; |
| | | that.layuiLayer.config({ |
| | | extend: 'myskin/FlareClusterLayer.css' |
| | | }); |
| | | that.layuiLayer.close(that.layuiLayer.index); |
| | | that.layuiLayer.open({ |
| | | title: '', |
| | | type: 2, |
| | | shadeClose: true, |
| | | shade: false, |
| | | skin: 'demo-class', |
| | | id: 'onelyTwo', |
| | | maxmin: false, //开启最大化最小化按钮 |
| | | area: ['360px', '484px'], |
| | | // area: 'auto', |
| | | offset: winSize, |
| | | skin: 'flare', |
| | | isOutAnim: false, |
| | | closeBtn: 2, //关闭按钮,可通过配置1和2来展示,0关闭 |
| | | content: ['./popup/html/SupervisoryMapPdata.html'], |
| | | resize: false, |
| | | scrollbar: false, |
| | | // tipsMore: true, //允许多个tipe |
| | | // content: num, |
| | | success: function (layero, index) { //成功后添加全局点击关闭 |
| | | $("#layui-layer-iframe" + index).contents().find("#sidIput").val(setdata); |
| | | |
| | | }, |
| | | }) |
| | | }) |
| | | } |
| | | if (mySelf.onceTimeMethod == null) {//防抖.限制时间内点击次数,否则会造成不能正确销毁前一个弹窗 |
| | | intOpen(); |
| | | mySelf.onceTimeMethod = setTimeout(() => { |
| | | mySelf.onceTimeMethod = null; |
| | | }, mySelf.onceTime); |
| | | } else { |
| | | }; |
| | | }) |
| | | $('.analysis-container-police .analysis-table-content .tbody').off('click', '.location').on('click', '.location', function (event) { |
| | | event.stopPropagation(); |
| | |
| | | }) |
| | | |
| | | // 业主列表中的点击事件 |
| | | $('.analysis-container-owner .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function () { |
| | | $('.analysis-container-owner .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function (event) { |
| | | if ($('#ownerHeatMap').prop('checked') == true) {// 点击关闭热力图 |
| | | // console.log('relitu') |
| | | $('#ownerHeatMap').click(); |
| | | } |
| | | var id = $(this).attr('term-list'); |
| | | var url = './popup/html/owner-details.html?id=' + id; |
| | | layui.use('layer', function () { |
| | | that.layuiLayer = layui.layer; |
| | | that.layuiLayer.config({ |
| | | extend: 'myskin/owner-details.css' |
| | | }); |
| | | that.layuiLayer.close(that.layuiLayer.index); |
| | | that.layuiLayer.open({ |
| | | title: '业主详情', |
| | | type: 2, |
| | | shadeClose: true, |
| | | shade: false, |
| | | maxmin: false, //开启最大化最小化按钮 |
| | | area: ['500px', '340px'], |
| | | offset: 'auto', |
| | | skin: 'owner-details', |
| | | content: url, |
| | | closeBtn: 1, |
| | | }); |
| | | }) |
| | | var b = mySelf.Ydata; |
| | | for (var key in b) { |
| | | if (b[key].id == id) { |
| | | b = b[key]; |
| | | break; |
| | | } |
| | | } |
| | | |
| | | event.stopPropagation(); |
| | | if (b.jd == '' || b.wd == '') { |
| | | // console.log('无地图经纬度'); |
| | | b.haveJW = '无地图经纬度'; |
| | | } else { |
| | | // console.log('有地图经纬度') |
| | | b.haveJW = '有地图经纬度'; |
| | | var lgtd = Number(b.jd); |
| | | var lttd = Number(b.wd); |
| | | // console.log($(this).find('input').attr('lttd')); |
| | | var position = new esri.geometry.Point(lgtd, lttd, new esri.SpatialReference({ wkid: 4326 }));//根据输入坐标信息找地图上的点 |
| | | that._map.centerAndZoom(position, 18);//缩放,10是缩放级别,可以自定义,数值越大缩放越大 |
| | | } |
| | | |
| | | |
| | | |
| | | // console.log(b, id); |
| | | var winSize = [+window.innerHeight / 2 - 242 + 'px', +window.innerWidth - 380 + 'px']; |
| | | var as = b; |
| | | var bs = {}; |
| | | for (let key in as) { |
| | | if (typeof as[key] != 'object') { |
| | | bs[key] = as[key] |
| | | // as = as[key].attributes; |
| | | // console.log('youduixang ') |
| | | // break; |
| | | } |
| | | } |
| | | var setdata = JSON.stringify(bs); |
| | | // console.log(setdata,'setdata') |
| | | var intOpen = () => { |
| | | layui.use('layer', function () { |
| | | that.layuiLayer = layui.layer; |
| | | that.layuiLayer.config({ |
| | | extend: 'myskin/FlareClusterLayer.css' |
| | | }); |
| | | that.layuiLayer.close(that.layuiLayer.index); |
| | | that.layuiLayer.open({ |
| | | title: '', |
| | | type: 2, |
| | | shadeClose: true, |
| | | shade: false, |
| | | skin: 'demo-class', |
| | | id: 'onelyTwo', |
| | | maxmin: false, //开启最大化最小化按钮 |
| | | area: ['360px', '484px'], |
| | | // area: 'auto', |
| | | offset: winSize, |
| | | skin: 'flare', |
| | | isOutAnim: false, |
| | | closeBtn: 2, //关闭按钮,可通过配置1和2来展示,0关闭 |
| | | content: ['./popup/html/SupervisoryMapYdata.html'], |
| | | resize: false, |
| | | scrollbar: false, |
| | | // tipsMore: true, //允许多个tipe |
| | | // content: num, |
| | | success: function (layero, index) { //成功后添加全局点击关闭 |
| | | $("#layui-layer-iframe" + index).contents().find("#sidIput").val(setdata); |
| | | |
| | | }, |
| | | }) |
| | | }) |
| | | } |
| | | if (mySelf.onceTimeMethod == null) {//防抖.限制时间内点击次数,否则会造成不能正确销毁前一个弹窗 |
| | | intOpen(); |
| | | mySelf.onceTimeMethod = setTimeout(() => { |
| | | mySelf.onceTimeMethod = null; |
| | | }, mySelf.onceTime); |
| | | } else { |
| | | }; |
| | | |
| | | }) |
| | | $('.analysis-container-owner .analysis-table-content .tbody').off('click', '.location').on('click', '.location', function (event) { |
| | | event.stopPropagation(); |
| | |
| | | // 设备列表中的点击事件 |
| | | $('.analysis-container-equipment .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function (event) { |
| | | var id = $(this).attr('term-listid'); |
| | | // // var url = './popup/html/equipment-details.html?obj=' + id;//设备每一项钟打开警情窗口 |
| | | // // layui.use('layer', function () { |
| | | // // that.layuiLayer = layui.layer; |
| | | // // that.layuiLayer.config({ |
| | | // // extend: 'myskin/equipment-details.css' |
| | | // // }); |
| | | // // that.layuiLayer.close(that.layuiLayer.index); |
| | | // // that.layuiLayer.open({ |
| | | // // title: '警情详情', |
| | | // // type: 2, |
| | | // // shadeClose: true, |
| | | // // shade: false, |
| | | // // maxmin: false, //开启最大化最小化按钮 |
| | | // // area: ['520px', '320px'], |
| | | // // offset: 'auto', |
| | | // // skin: 'equipment-details', |
| | | // // content: url, |
| | | // // closeBtn: 1, |
| | | // // }); |
| | | // // }) |
| | | |
| | | |
| | | |
| | | if ($('#equipmentHeatMap').prop('checked') == true) {// 点击关闭热力图 |
| | | // console.log('relitu') |
| | | $('#equipmentHeatMap').click(); |
| | | } |
| | | |
| | | event.stopPropagation(); |
| | | var lgtd = Number($(this).find('input').attr('lgtd')); |
| | |
| | | $('.analysis-container > div .select-list').off('click', 'li').on('click', 'li', function (event) { |
| | | // console.log(event.currentTarget.innerHTML,'innerhtml') |
| | | var text = $(this).text().trim(); |
| | | // console.log(text,'text()') |
| | | // console.log(this,text,'text()') |
| | | // console.log(that.tabIndex,'tabIndex') |
| | | |
| | | |
| | | //解决打开热力图 切换top获取不了数据问题 警情 |
| | | if ($('#policeHeatMap').prop('checked') == true) { |
| | | // console.log($('#policeHeatMap').prop('checked') == true) |
| | | $('#policeHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#policeHeatMap')); |
| | | } else |
| | | //解决打开热力图 切换top获取不了数据问题 业主 |
| | | if ($('#ownerHeatMap').prop('checked') == true) { |
| | | // console.log($('#ownerHeatMap').prop('checked') == true) |
| | | $('#ownerHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#ownerHeatMap')); |
| | | } else |
| | | //解决打开热力图 切换top获取不了数据问题 设备 |
| | | if ($('#equipmentHeatMap').prop('checked') == true) { |
| | | // console.log($('#equipmentHeatMap').prop('checked') == true) |
| | | $('#equipmentHeatMap').prop('checked', false); |
| | | that.checkBoxSelect($('#equipmentHeatMap')); |
| | | var time = setTimeout(() => { |
| | | // $('#equipmentHeatMap').click(function () { |
| | | // that.checkBoxSelect('#equipmentHeatMap'); |
| | | // })(); |
| | | $('#equipmentHeatMap').click(); |
| | | }, 500); |
| | | } |
| | | |
| | | |
| | | $(this).parent().parent().prev().html(text + '<i></i>'); |
| | | $(this).parent().parent().stop().slideUp(0); |
| | |
| | | |
| | | |
| | | } else if (that.tabIndex == 2) { |
| | | var categoryText = $('#ownerCategory > div:eq(0)').text().trim() == '全部' ? '' : $('#ownerCategory > div:eq(0)').attr('ownerid'); |
| | | var levelText = $('#ownerLevel > div:eq(0)').text().trim() == '全部' ? '' : $('#ownerLevel > div:eq(0)').text().trim(); |
| | | |
| | | var parentId = $(this).parent().parent().parent().attr('id'); |
| | | if (parentId == 'ownerCategory') { |
| | | that.getOwnerDj($('#ownerLevel'), categoryText); |
| | | that.getOwnerTable($('.analysis-container-owner').find('.tbody tbody'), categoryText, ''); |
| | | } else { |
| | | that.getOwnerTable($('.analysis-container-owner').find('.tbody tbody'), categoryText, levelText); |
| | | } |
| | | |
| | | that.getOwnerTable($('.analysis-container-owner').find('.tbody tbody'), text == '全部' ? '' : text); |
| | | } else if (that.tabIndex == 0) { |
| | | that.getEquipmentTable($('.analysis-container-equipment').find('.tbody tbody'), text == '全部' ? '' : text); |
| | | } |
| | |
| | | }) |
| | | }, |
| | | getPoliceTableAnalysis: function (dom, beginTime, endTime, waringType, addvcd) { |
| | | dom.empty(); |
| | | dom.empty();//警情信息 |
| | | var that = this; |
| | | $.ajax({ |
| | | url: "/api/blade-jfpts/alarm/alarm/page?current=1&size=99999&waringType=&beginTime=" + beginTime + "&endTime=" + endTime + "&province=36&city=3601&district=" + addvcd, |
| | | type: 'get', |
| | | dataType: 'JSON', |
| | | success: function (data) { |
| | | var result = data.data.records; |
| | | // var result = data.data.records; |
| | | var oldData = data.data.records |
| | | var result = oldData; |
| | | that.Pdata = oldData; |
| | | // console.log(that.Pdata);//警情筛选 |
| | | var str = ''; |
| | | that.entitysData = []; |
| | | that.analysisAddEntitys.clear(); |
| | |
| | | result[i].waringType = "一键求助" |
| | | } |
| | | |
| | | |
| | | that.createEntitysAnalysis(that.analysisAddEntitys, that.entitysData, '警情信息', { |
| | | lgtd: result[i].jd, |
| | | lttd: result[i].wd, |
| | | id: result[i].id |
| | | }, result[i].jd, result[i].wd, './images/police-situation.png'); |
| | | }, result[i].jd, result[i].wd, |
| | | // './images/police-situation.png' |
| | | ); |
| | | |
| | | t = result[i].alarmTime.substr(0, 10); |
| | | e = result[i].alarmTime.substr(11); |
| | |
| | | y = result[i].alarmTime.substr(5, 5); |
| | | h = result[i].alarmTime.substr(11, 5); |
| | | a = Number(i) + 1; |
| | | |
| | | |
| | | str += '<tr term-list=' + result[i].id + '>'; |
| | | str += '<td>' + a + '</td>'; |
| | | str += '<td title=' + result[i].waringType + '>' + result[i].waringType + '</td>'; |
| | | str += '<td title=' + result[i].alarmPeople + '>' + result[i].alarmPeople + '</td>'; |
| | | str += "<td><a href='javascript:;' title=" + time + ">" + y + ' ' + h + "</a></td>"; |
| | | str += "<td class='location'> <input type='button' value='定位'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | // str += "<td class='location' style='display: none'> <input type='button' value='定位'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | if (result[i].jtype == 0) { |
| | | str += "<td class='location'> <input style='color:#fff;background-color:#F35B5B;width: 50px' type='button' value='未处理'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | } else { |
| | | if (result[i].jtype == 1) { |
| | | str += "<td class='location'> <input style='color:#fff;background-color:rgb(18, 145, 230);width: 50px' type='button' value='处理中'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | |
| | | } else { |
| | | str += "<td class='location'> <input style='color:#fff;background-color:#32C1A2;width: 50px' type='button' value='已处理'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | |
| | | } |
| | | } |
| | | |
| | | str += '</tr>'; |
| | | dom.append(str); |
| | | str = ''; |
| | | |
| | | |
| | | } |
| | | |
| | | that.clearLayer();//图标清除 |
| | | that.entityData = []; |
| | | for (var i = 0; i < result.length; i++) { |
| | | result[i].x = Number(result[i].jd); |
| | | result[i].y = Number(result[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(result[i].jd), |
| | | lttd: Number(result[i].wd) |
| | | }) |
| | | } |
| | | // console.log(result);//警情 |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | that.flareClusterLayer(result);//图标渲染 |
| | | that.Pdatas = result; |
| | | that.clusterLayer._setUserState('警情');//切换聚合图标点击事件 |
| | | |
| | | for (var i = 0; i < 1000; i++) { |
| | | var dd = Math.random(); |
| | |
| | | dom.children('div:eq(0)').html("全部 <i></i>"); |
| | | dom.children('.select-list').children('ul').empty(); |
| | | dom.children('.select-list').children('ul').append($("<li>全部</li>")); |
| | | $.ajax({ |
| | | url: '/api/blade-jfpts/dj/dj/selectName?tnumbers=' + tnumbers, |
| | | type: 'GET', |
| | | dataType: 'JSON', |
| | | success: function (data) { |
| | | var res = data.data; |
| | | for (var i = 0; i < res.length; i++) { |
| | | dom.children('.select-list').children('ul').append($("<li>" + res[i].dj + "</li>")); |
| | | } |
| | | } |
| | | }) |
| | | // $.ajax({ |
| | | // url: '/api/blade-jfpts/dj/dj/selectName?tnumbers=' + tnumbers, |
| | | // type: 'GET', |
| | | // dataType: 'JSON', |
| | | // success: function (data) { |
| | | // var res = data.data; |
| | | // for (var i = 0; i < res.length; i++) { |
| | | // dom.children('.select-list').children('ul').append($("<li>" + res[i].dj + "</li>")); |
| | | // } |
| | | // } |
| | | // }) |
| | | }, |
| | | // 获取业主信息列表 |
| | | getOwnerTable: function (dom, type, dj) { |
| | | getOwnerTable: function (dom, deviceType) { |
| | | dom.empty(); |
| | | var that = this; |
| | | $.ajax({ |
| | | url: '/api/blade-jfpts/suser/suser/selectList?type=' + type + '&dj=' + dj, |
| | | type: 'GET', |
| | | // url: '/api/blade-system/tenant/page', |
| | | // type: 'GET', |
| | | url: '/api/blade-system/tenant/selectListTe', |
| | | type: 'POST', |
| | | dataType: 'JSON', |
| | | success: function (data) { |
| | | var result = data.data; |
| | | // var result = data.data; |
| | | var oldData = data.data; |
| | | // console.log(deviceType) |
| | | var result = []; |
| | | that.Ydata = oldData; |
| | | |
| | | if (deviceType == '') { |
| | | result = oldData; |
| | | } else if (deviceType == '医院') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].type == '0') { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } else if (deviceType == '学校') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].type == '1') { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } else if (deviceType == '小区') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].type == '2') { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | that.clearLayer();//图标清除 |
| | | that.entityData = []; |
| | | for (var i = 0; i < result.length; i++) { |
| | | result[i].x = Number(result[i].jd); |
| | | result[i].y = Number(result[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(result[i].jd), |
| | | lttd: Number(result[i].wd) |
| | | }) |
| | | } |
| | | // console.log(result);//业主 |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | |
| | | that.flareClusterLayer(result);//图标渲染 |
| | | that.Ydatas = result; |
| | | that.clusterLayer._setUserState('业主');//切换聚合图标点击事件 |
| | | |
| | | |
| | | var str = ''; |
| | | that.entitysData = []; |
| | | that.analysisAddEntitys.clear(); |
| | | var createD = (id, a, name, dj, type) => { |
| | | str += "<tr term-list=" + id + ">"; |
| | | str += '<td>' + a + '</td>'; |
| | | str += '<td>' + name + '</td>'; |
| | | str += '<td>' + dj + '</td>'; |
| | | str += '<td>' + type + '</td>'; |
| | | // str += "<td class='location' style='display: none'> <input type='button' value='定位'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | str += '</tr>'; |
| | | dom.append(str); |
| | | str = ''; |
| | | } |
| | | for (var a, i = 0; i < result.length; i++) { |
| | | |
| | | that.createEntitysAnalysis(that.analysisAddEntitys, that.entitysData, '业主信息', { |
| | | lgtd: result[i].jd, |
| | | lttd: result[i].wd, |
| | | id: result[i].id |
| | | }, result[i].jd, result[i].wd, './images/owner.png'); |
| | | }, result[i].jd, result[i].wd, |
| | | // './images/业主.png' |
| | | ); |
| | | |
| | | a = Number(i) + 1; |
| | | str += "<tr term-list=" + result[i].id + ">"; |
| | | str += '<td>' + a + '</td>'; |
| | | str += '<td>' + result[i].type + '</td>'; |
| | | str += '<td>' + result[i].dj + '</td>'; |
| | | str += '<td>' + result[i].yname + '</td>'; |
| | | str += "<td class='location'> <input type='button' value='定位'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | | str += '</tr>'; |
| | | dom.append(str); |
| | | str = ''; |
| | | if (result[i].type === "0") { |
| | | createD(result[i].id, a, result[i].tenant_name, result[i].dj, '医院') |
| | | } else if (result[i].type === "1") { |
| | | createD(result[i].id, a, result[i].tenant_name, result[i].nature, '学校') |
| | | } else if (result[i].type === "2") { |
| | | createD(result[i].id, a, result[i].tenant_name, result[i].housetype, '小区') |
| | | } else { |
| | | createD(result[i].id, a, result[i].tenant_name, result[i].dj, '其他') |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | // console.log(that.Ydata);//业主筛选 |
| | | } |
| | | }) |
| | | }, |
| | | // 获取设备信息列表 |
| | | getEquipmentTable: function (dom, deviceType) { |
| | | getEquipmentTable: function (dom, deviceType, once) { |
| | | dom.empty(); |
| | | var that = this; |
| | | // console.log(that.clusterLayer) |
| | |
| | | type: 'GET', |
| | | dataType: 'JSON', |
| | | success: function (data) { |
| | | var result = data.data; |
| | | console.log(result) |
| | | var oldData = data.data; |
| | | var result = []; |
| | | that.Sdata = oldData; |
| | | |
| | | var str = ''; |
| | | that.entitysData = []; |
| | | that.analysisAddEntitys.clear(); |
| | | |
| | | |
| | | if (deviceType == '') { |
| | | result = oldData; |
| | | } else if (deviceType == '在线') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].state == '' && oldData[key].jtype != 1 && oldData[key].onlineStatus == 1) { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } else if (deviceType == '离线') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].state == '' && oldData[key].jtype != 1 && oldData[key].onlineStatus != 1) { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } else if (deviceType == '警报') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].state == '' && oldData[key].jtype == 1) { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } else if (deviceType == '故障') { |
| | | for (var key in oldData) { |
| | | // console.log(oldData[key]); |
| | | if (oldData[key].state != '') { |
| | | result.push(oldData[key]); |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (once != 'once') { |
| | | that.clearLayer();//图标清除 |
| | | that.entityData = []; |
| | | for (var i = 0; i < result.length; i++) { |
| | | result[i].x = Number(result[i].jd); |
| | | result[i].y = Number(result[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(result[i].jd), |
| | | lttd: Number(result[i].wd) |
| | | }) |
| | | } |
| | | // console.log(result);//设备筛选 |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | that.flareClusterLayer(result);//图标渲染 |
| | | that.clusterLayer._setUserState('设备');//切换聚合图标点击事件 |
| | | |
| | | } |
| | | that.Sdatas = result; |
| | | |
| | | for (var a, i = 0; i < result.length; i++) { |
| | | that.createEntitysAnalysis(that.analysisAddEntitys, that.entitysData, '设备信息', { |
| | | lgtd: result[i].jd, |
| | | lttd: result[i].wd, |
| | | id: result[i].id |
| | | }, result[i].jd, result[i].wd, './images/ceshi.png'); |
| | | }, result[i].jd, result[i].wd, |
| | | // './images/ceshi.png' |
| | | ); |
| | | var stares = ''; |
| | | |
| | | a = Number(i) + 1; |
| | |
| | | str += '<td>' + result[i].deviceNumber + '</td>'; |
| | | // console.log(result[i].state); |
| | | |
| | | |
| | | |
| | | if (result[i].state != '') { |
| | | stares = '故障'; |
| | | str += "<td class='location'> <input style='background-image:linear-gradient(to right, #F49966 , #F49966' type='button' value=" + stares + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>"; |
| | |
| | | checkBoxSelect: function (self) {//选择热力图 |
| | | var that = this; |
| | | var heatmapRenderer = null; |
| | | // console.log(self); |
| | | // // return |
| | | // 选中 |
| | | if ($(self).prop('checked') == true) { |
| | | that.clearLayer();//图标清除 |
| | | // console.log($(self).attr('id'), 1); |
| | | // if (1) { |
| | | heatmapRenderer = new HeatmapRenderer({ |
| | | colorStops: [ |
| | |
| | | this.heatmapfeatureLayer.add(new esri.Graphic(point)); |
| | | } |
| | | } else { |
| | | // console.log(self, 2); |
| | | if ($(self).attr('class') == 'p') { |
| | | that.entityData = []; |
| | | for (var i = 0; i < this.Pdatas.length; i++) { |
| | | this.Pdatas[i].x = Number(this.Pdatas[i].jd); |
| | | this.Pdatas[i].y = Number(this.Pdatas[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(this.Pdatas[i].jd), |
| | | lttd: Number(this.Pdatas[i].wd) |
| | | }) |
| | | } |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | // $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | that.flareClusterLayer(this.Pdatas);//图标渲染 |
| | | } else if ($(self).attr('class') == 'Y') { |
| | | that.entityData = []; |
| | | for (var i = 0; i < this.Ydatas.length; i++) { |
| | | this.Ydatas[i].x = Number(this.Ydatas[i].jd); |
| | | this.Ydatas[i].y = Number(this.Ydatas[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(this.Ydatas[i].jd), |
| | | lttd: Number(this.Ydatas[i].wd) |
| | | }) |
| | | } |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | // $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | that.flareClusterLayer(this.Ydatas);//图标渲染 |
| | | } else if ($(self).attr('class') == 'S') { |
| | | that.entityData = []; |
| | | for (var i = 0; i < this.Sdatas.length; i++) { |
| | | this.Sdatas[i].x = Number(this.Sdatas[i].jd); |
| | | this.Sdatas[i].y = Number(this.Sdatas[i].wd); |
| | | that.entityData.push({ |
| | | lgtd: Number(this.Sdatas[i].jd), |
| | | lttd: Number(this.Sdatas[i].wd) |
| | | }) |
| | | } |
| | | if (that.heatmapfeatureLayer.graphics.length > 0) {//热力图数据映射 |
| | | that.heatmapfeatureLayer.clear(); |
| | | that.heatmapfeatureLayer.setRenderer(); |
| | | // $('.analysis-category input').prop('checked', false); |
| | | }; |
| | | that.flareClusterLayer(this.Sdatas);//图标渲染 |
| | | } |
| | | this.heatmapfeatureLayer.clear(); |
| | | this.heatmapfeatureLayer.setRenderer(); |
| | | } |
| | |
| | | |
| | | |
| | | //聚合图层事件 |
| | | flareClusterLayer: function (datas) { //top聚合事件,导航 |
| | | flareClusterLayer: function (datas, userState) { //top聚合事件,导航 |
| | | |
| | | var that = this; |
| | | |
| | |
| | | }); |
| | | |
| | | //set up a class breaks renderer to render different symbols based on the cluster count. Use the required clusterCount property to break on. |
| | | var defaultSym = new PictureMarkerSymbol("./images/jingbaored.png", 33, 48).setOffset(0, 15); |
| | | var defaultSym = new PictureMarkerSymbol("./images/jingbaored.png", 33, 48).setOffset(0, 1); |
| | | var renderer = new ClassBreaksRenderer(defaultSym, "clusterCount"); |
| | | var xlSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE, 32, new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([200, 52, 59, 0.8]), 1), new dojo.Color([250, 65, 74, 0.8])); |
| | | var lgSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE, 28, new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([41, 163, 41, 0.8]), 1), new dojo.Color([51, 204, 51, 0.8])); |