/*
|
* @Description:
|
* @Version: 1.0
|
* @Author: yangsx
|
* @Date: 2019-12-09 19:01:40
|
* @LastEditors: yangsx
|
* @LastEditTime: 2019-12-14 14:44:57
|
*/
|
define([
|
"dojo",
|
"dojo/_base/declare",
|
"dojo/_base/lang",
|
"base/BaseWidget",
|
"dojo/text!widgets/analysisAndJudgment/template.html",
|
"base/AppEvent",
|
"base/ConfigData",
|
"widgets/analysisAndJudgment/config",
|
"dojo/dom",
|
"dojo/dom-construct",
|
"dojo/dom-attr",
|
"dojo/dom-style",
|
"dojo/on",
|
"esri/layers/ArcGISDynamicMapServiceLayer",
|
"esri/layers/ArcGISTiledMapServiceLayer",
|
"esri/layers/FeatureLayer",
|
"controls/tab/TabControl",
|
"esri/dijit/SymbolStyler",
|
"esri/styles/basic",
|
"dojo/_base/array",
|
"esri/InfoTemplate",
|
"esri/tasks/query",
|
"esri/tasks/QueryTask",
|
"esri/Color",
|
"esri/graphic",
|
"esri/geometry/Point",
|
"esri/geometry/Extent",
|
"esri/tasks/FeatureSet",
|
"esri/renderers/HeatmapRenderer",
|
"esri/symbols/SimpleLineSymbol",
|
"esri/symbols/SimpleFillSymbol",
|
"esri/symbols/PictureMarkerSymbol",
|
"esri/symbols/SimpleMarkerSymbol",
|
"esri/SpatialReference",
|
"esri/tasks/GeometryService",
|
"esri/tasks/ProjectParameters",
|
"esri/layers/GraphicsLayer",
|
"esri/layers/LabelLayer",
|
"esri/symbols/TextSymbol",
|
"esri/renderers/SimpleRenderer",
|
"esri/renderers/ClassBreaksRenderer",
|
"esri/tasks/Geoprocessor",
|
"esri/tasks/DataFile",
|
"esri/geometry/webMercatorUtils",
|
"esri/symbols/Font",
|
"esri/geometry/ScreenPoint",
|
"esri/layers/ImageParameters",
|
"esri/geometry/geometryEngine",
|
"dojo/domReady!"
|
], function (
|
dojo,
|
declare,
|
lang,
|
BaseWidget,
|
template,
|
AppEvent,
|
ConfigData,
|
config,
|
dom,
|
domConstruct,
|
domAttr,
|
domStyle,
|
on,
|
ArcGISDynamicMapServiceLayer,
|
ArcGISTiledMapServiceLayer,
|
FeatureLayer,
|
TabControl,
|
SymbolStyler,
|
basic,
|
arrayUtils,
|
InfoTemplate,
|
Query,
|
QueryTask,
|
Color,
|
Graphic,
|
Point,
|
Extent,
|
FeatureSet,
|
HeatmapRenderer,
|
SimpleLineSymbol,
|
SimpleFillSymbol,
|
PictureMarkerSymbol,
|
SimpleMarkerSymbol,
|
SpatialReference,
|
GeometryService,
|
ProjectParameters,
|
GraphicsLayer,
|
LabelLayer,
|
TextSymbol,
|
SimpleRenderer,
|
ClassBreaksRenderer,
|
Geoprocessor,
|
DataFile,
|
webMercatorUtils,
|
Font,
|
ScreenPoint,
|
ImageParameters,
|
geometryEngine
|
) {
|
var Widget = declare([BaseWidget], {
|
widgetName: "AnalysisAndJudgment",
|
label: "分析研判",
|
templateString: template,
|
_map: null,
|
objThis: null,
|
_siteLayer: new GraphicsLayer(),
|
layuiLayer: null,
|
layuiLadate: null,
|
heatmapfeatureLayer_1: null,
|
tabIndex: 0,
|
|
// 保留添加实体图层的变量
|
analysisAddEntitys: null,
|
entitysData: [],
|
constructor: function (options, srcRefNode) {
|
this._map = options.map;
|
objThis = this;
|
|
|
this.analysisAddEntitys = new GraphicsLayer({ id: 'analysisAddEntitys' });
|
this.addOneEntitys = new GraphicsLayer({ id: 'addOneEntitys' });
|
this.addTwoEntitys = new GraphicsLayer({ id: 'addTwoEntitys' });
|
this.addThreeEntitys = new GraphicsLayer({ id: 'addThreeEntitys' });
|
|
this._map.addLayer(this.analysisAddEntitys);
|
this._map.addLayer(this.addOneEntitys);
|
},
|
startup: function () {
|
objThis._map.addLayer(objThis._siteLayer);
|
var that = this;
|
// 顶部tab得切换事件
|
$('.analysis-and-judgment-tab li').click(function () {
|
if (that.tabIndex == $(this).index()) return;
|
|
|
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();
|
$('.analysis-category input').prop('checked', false);
|
}
|
|
|
$(this).addClass('on').siblings().removeClass('on');
|
var ind = $(this).index();
|
$($('.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) {
|
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) {
|
that.getOwnerType($('#ownerCategory'));
|
that.getOwnerDj($('#ownerLevel'), '');
|
that.getOwnerTable($($('.analysis-container > div')[ind]).find('.tbody tbody'), '', '');
|
} else if (ind == 2) {
|
that.getEquipmentTable($($('.analysis-container > div')[ind]).find('.tbody tbody'), '');
|
}
|
|
that.tabIndex = $(this).index();
|
})
|
|
// 时间查询
|
$('#policeSelectTime').off('click').click(function () {
|
|
var times = $(this).prevAll();
|
|
layui.use('layer', function () {
|
|
var layer = layui.layer;
|
// 开始时间
|
var startTime = $(times[2]).val();
|
// 结束时间
|
var endTime = $(times[0]).val();
|
|
if (startTime == '') {
|
|
layer.msg('请选择开始时间!', {
|
icon: 5,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
});
|
return;
|
|
} else {
|
|
if (endTime == '') {
|
layer.msg('请选择结束时间!', {
|
icon: 5,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
});
|
return;
|
} else {
|
|
var text = $('#policeCategory div:eq(0)').text().trim();
|
|
var levelText = $('#policeArea > div:eq(0)').text().trim() == '全部' ? '' : $('#policeArea > div:eq(0)').attr('areaid');
|
that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), startTime, endTime, text == '全部' ? '' : text, levelText);
|
|
}
|
|
}
|
|
})
|
|
|
|
|
})
|
|
// 警情列表中的点击事件
|
$('.analysis-container-police .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function () {
|
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,
|
});
|
})
|
})
|
$('.analysis-container-police .analysis-table-content .tbody').off('click', '.location').on('click', '.location', function (event) {
|
event.stopPropagation();
|
})
|
$('.analysis-container-police .analysis-table-content .tbody').off('click', '.location input').on('click', '.location input', function (event) {
|
event.stopPropagation();
|
var lgtd = Number($(this).attr('lgtd'));
|
var lttd = Number($(this).attr('lttd'));
|
var position = new esri.geometry.Point(lgtd, lttd, new esri.SpatialReference({ wkid: 4326 }));//根据输入坐标信息找地图上的点
|
that._map.centerAndZoom(position, 18);//缩放,10是缩放级别,可以自定义,数值越大缩放越大
|
})
|
|
// 业主列表中的点击事件
|
$('.analysis-container-owner .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function () {
|
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,
|
});
|
})
|
})
|
$('.analysis-container-owner .analysis-table-content .tbody').off('click', '.location').on('click', '.location', function (event) {
|
event.stopPropagation();
|
})
|
$('.analysis-container-owner .analysis-table-content .tbody').off('click', '.location input').on('click', '.location input', function (event) {
|
event.stopPropagation();
|
var lgtd = Number($(this).attr('lgtd'));
|
var lttd = Number($(this).attr('lttd'));
|
var position = new esri.geometry.Point(lgtd, lttd, new esri.SpatialReference({ wkid: 4326 }));//根据输入坐标信息找地图上的点
|
that._map.centerAndZoom(position, 18);//缩放,10是缩放级别,可以自定义,数值越大缩放越大
|
})
|
|
// 设备列表中的点击事件
|
$('.analysis-container-equipment .analysis-table-content .tbody').off('click', 'tr').on('click', 'tr', function () {
|
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,
|
});
|
})
|
})
|
$('.analysis-container-equipment .analysis-table-content .tbody').off('click', '.location').on('click', '.location', function (event) {
|
event.stopPropagation();
|
})
|
$('.analysis-container-equipment .analysis-table-content .tbody').off('click', '.location input').on('click', '.location input', function (event) {
|
event.stopPropagation();
|
var lgtd = Number($(this).attr('lgtd'));
|
var lttd = Number($(this).attr('lttd'));
|
var position = new esri.geometry.Point(lgtd, lttd, new esri.SpatialReference({ wkid: 4326 }));//根据输入坐标信息找地图上的点
|
that._map.centerAndZoom(position, 18);//缩放,10是缩放级别,可以自定义,数值越大缩放越大
|
})
|
|
// 警情列表中得热力图是否选中事件
|
$('#policeHeatMap').click(function () {
|
that.checkBoxSelect(this);
|
})
|
// 业主信息列表中得热力图是否选中事件
|
$('#ownerHeatMap').click(function () {
|
that.checkBoxSelect(this);
|
})
|
// 设备信息列表的热力图是否选中事件
|
$('#equipmentHeatMap').click(function () {
|
that.checkBoxSelect(this);
|
})
|
// 警情信息中类别移入事件
|
$('#policeCategory').mouseenter(function () {
|
if ($('#policeCategory .select-list').is(':hidden')) {
|
$('#policeCategory .select-list').stop().slideDown(0);
|
}
|
})
|
// 警情信息中得类别移出事件
|
$('#policeCategory').mouseleave(function () {
|
if (!$('#policeCategory .select-list').is(':hidden')) {
|
$('#policeCategory .select-list').stop().slideUp(0);
|
}
|
})
|
// 警情信息中行政区移入事件
|
$('#policeArea').mouseenter(function () {
|
if ($('#policeArea .select-list').is(':hidden')) {
|
$('#policeArea .select-list').stop().slideDown(0);
|
}
|
})
|
// 警情信息中得行政区移出事件
|
$('#policeArea').mouseleave(function () {
|
if (!$('#policeArea .select-list').is(':hidden')) {
|
$('#policeArea .select-list').stop().slideUp(0);
|
}
|
})
|
// 业主信息中类别移入事件
|
$('#ownerCategory').mouseenter(function () {
|
if ($('#ownerCategory .select-list').is(':hidden')) {
|
$('#ownerCategory .select-list').stop().slideDown(0);
|
}
|
})
|
// 业主信息中得类别移出事件
|
$('#ownerCategory').mouseleave(function () {
|
if (!$('#ownerCategory .select-list').is(':hidden')) {
|
$('#ownerCategory .select-list').stop().slideUp(0);
|
}
|
})
|
// 业主信息中的等级移入事件
|
$('#ownerLevel').mouseenter(function () {
|
if ($('#ownerLevel .select-list').is(':hidden')) {
|
$('#ownerLevel .select-list').stop().slideDown(0);
|
}
|
})
|
// 业主信息中的等级移出事件
|
$('#ownerLevel').mouseleave(function () {
|
if (!$('#ownerLevel .select-list').is(':hidden')) {
|
$('#ownerLevel .select-list').stop().slideUp(0);
|
}
|
})
|
// 设备信息中类别移入事件
|
$('#equipmentCategory').mouseenter(function () {
|
if ($('#equipmentCategory .select-list').is(':hidden')) {
|
$('#equipmentCategory .select-list').stop().slideDown(0);
|
}
|
})
|
// 设备信息中得类别移出事件
|
$('#equipmentCategory').mouseleave(function () {
|
if (!$('#equipmentCategory .select-list').is(':hidden')) {
|
$('#equipmentCategory .select-list').stop().slideUp(0);
|
}
|
})
|
// 警情信息类,业主信息类,设备信息类别,具体项的点击事件
|
$('.analysis-container > div .select-list').off('click', 'li').on('click', 'li', function (event) {
|
|
var text = $(this).text().trim();
|
$(this).parent().parent().prev().html(text + '<i></i>');
|
$(this).parent().parent().stop().slideUp(0);
|
|
if ($(this).attr('areaid')) {
|
$(this).parent().parent().prev().attr('areaid', $(this).attr('areaid'));
|
} else if ($(this).attr('ownerid')) {
|
$(this).parent().parent().prev().attr('ownerid', $(this).attr('ownerid'));
|
}
|
|
|
if (that.tabIndex == 0) {
|
|
var levelText = $('#policeArea > div:eq(0)').text().trim() == '全部' ? '' : $('#policeArea > div:eq(0)').attr('areaid');
|
var overText = $('#policeCategory > div:eq(0)').text().trim() == '全部' ? '' : $('#policeCategory > div:eq(0)').text().trim();
|
|
if ($(this).attr('areaid')) {
|
that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), $('#analysis_select_time_start').val(), $('#analysis_select_time_end').val(), overText, levelText);
|
} else {
|
that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), $('#analysis_select_time_start').val(), $('#analysis_select_time_end').val(), overText, levelText);
|
}
|
|
|
} else if (that.tabIndex == 1) {
|
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);
|
}
|
|
} else if (that.tabIndex == 2) {
|
that.getEquipmentTable($('.analysis-container-equipment').find('.tbody tbody'), text == '全部' ? '' : text);
|
}
|
|
})
|
},
|
open: function () {
|
var time = this.getTime();
|
var that = this;
|
|
$("#tabcontainer").css("width","360px");
|
$('#mapcontentClass').addClass('client-max-map'); //追加样式
|
AppEvent.dispatchAppEvent(AppEvent.APPLICATION_RESIZE, {});
|
|
that.tabIndex = 0;
|
$('.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._map.addLayer(that.heatmapfeatureLayer_1);
|
$('#analysis_select_time_start').val(time.tomorrow);
|
$('#analysis_select_time_end').val(time.current);
|
|
layui.use('laydate', function () {
|
that.layuiLadate = layui.laydate;
|
//执行一个laydate实例 开始
|
that.layuiLadate.render({
|
elem: '#analysis_select_time_start', //指定元素
|
type: "datetime",
|
format: 'yyyy-MM-dd HH:mm',
|
trigger: 'click'
|
});
|
// 结束
|
that.layuiLadate.render({
|
elem: '#analysis_select_time_end', //指定元素
|
type: "datetime",
|
format: 'yyyy-MM-dd HH:mm',
|
trigger: 'click'
|
});
|
});
|
that.getArea($('#policeArea'));
|
that.getPoliceTableAnalysis($('.analysis-container-police').find('.tbody tbody'), time.tomorrow, time.current, '', '');
|
that.clickHand();
|
|
},
|
close: function () {
|
$("#tabcontainer").css("width", "66%");
|
$('#mapcontentClass').removeClass('client-max-map'); //删除样式
|
this.entitysData = [];
|
this.analysisAddEntitys.clear();
|
|
},
|
// 鼠标点击事件
|
clickHand: function () {
|
var self = this;
|
|
self._map.onClick = mapClick;
|
|
|
function mapClick(evt) {
|
if (evt.graphic) {
|
var result = evt.graphic.geometry.entityData;
|
var liText = evt.graphic.symbol.name;
|
if (liText == '警情信息') {
|
self.policeDetails(result.id);
|
} else if (liText == '业主信息') {
|
self.ownerDetails(result.id);
|
} else if (liText == '设备信息') {
|
self.equipmentDetails(result.id);
|
}
|
}
|
}
|
},
|
// 警情详情弹框
|
/**
|
*
|
* @param {number} id 警情ID
|
*/
|
policeDetails: function (id) {
|
var that = this;
|
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,
|
});
|
})
|
},
|
// 业主详情弹框
|
/**
|
*
|
* @param {number} id 警情ID
|
*/
|
ownerDetails: function (id) {
|
var that = this;
|
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,
|
});
|
})
|
},
|
// 设备详情弹框
|
/**
|
*
|
* @param {number} id 设备ID
|
*/
|
equipmentDetails: function (id) {
|
var that = this;
|
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,
|
});
|
})
|
},
|
//热力图渲染器,加载热力图
|
heatmFeaLayers: function () {
|
|
var layerDefinition = {
|
"geometryType": "esriGeometryPoint",
|
"fields": [{
|
"num": "num",
|
editable: true,
|
nullable: true,
|
"type": "esriFieldTypeInteger",
|
"alias": "数量"
|
}]
|
};
|
var featureCollection = {
|
layerDefinition: layerDefinition,
|
featureSet: null
|
};
|
//创建 FeatureLayer 图层
|
var featureLayer = new esri.layers.FeatureLayer(featureCollection, {
|
mode: esri.layers.FeatureLayer.MODE_SNAPSHOT,
|
outFields: ["*"],
|
opacity: .8
|
});
|
//设置渲染方式
|
|
return featureLayer;
|
},
|
// 获取当前时间,以及昨天现在的时间
|
getTime: function getTime() {
|
var timestamp = Date.parse(new Date());
|
|
// 当前时间
|
var currentTime = new Date(timestamp);
|
// 年
|
var currentY = currentTime.getFullYear();
|
// 月
|
var currentM = currentTime.getMonth() + 1 < 10 ? '0' + (currentTime.getMonth() + 1) : currentTime.getMonth() + 1;
|
// 日
|
var currentD = currentTime.getDate() < 10 ? '0' + currentTime.getDate() : currentTime.getDate();
|
// 时
|
var currentH = currentTime.getHours() < 10 ? '0' + currentTime.getHours() : currentTime.getHours();
|
// 分
|
var currentDd = currentTime.getMinutes() < 10 ? '0' + currentTime.getMinutes() : currentTime.getMinutes();
|
// 明天
|
var tomorrowTime = new Date(timestamp - 60 * 60 * 24 * 1000);
|
// 年
|
var tomorrowY = tomorrowTime.getFullYear();
|
// 月
|
var tomorrowM = tomorrowTime.getMonth() + 1 < 10 ? '0' + (tomorrowTime.getMonth() + 1) : tomorrowTime.getMonth() + 1;
|
// 日
|
var tomorrowD = tomorrowTime.getDate() < 10 ? '0' + tomorrowTime.getDate() : tomorrowTime.getDate();
|
// 时
|
var tomorrowH = tomorrowTime.getHours() < 10 ? '0' + tomorrowTime.getHours() : tomorrowTime.getHours();
|
// 分
|
var tomorrowDd = tomorrowTime.getMinutes() < 10 ? '0' + tomorrowTime.getMinutes() : tomorrowTime.getMinutes();
|
return {
|
current: currentY + '-' + currentM + '-' + currentD + ' ' + currentH + ':' + currentDd,
|
tomorrow: tomorrowY + '-' + tomorrowM + '-' + tomorrowD + ' ' + tomorrowH + ':' + tomorrowDd,
|
month: currentM + currentD
|
};
|
},
|
getArea: function (dom) {
|
dom.children('.select-list').children('ul').empty();
|
dom.children('.select-list').children('ul').append($("<li areaid='all'>全部</li>"));
|
var that = this;
|
$.ajax({
|
url: 'http://61.131.136.25:2082/api/blade-system/region/select?code=3601',
|
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 areaid=" + res[i].code + ">" + res[i].name + "</li>"));
|
}
|
}
|
})
|
},
|
// 获取警情信息列表
|
/**
|
*
|
* @param {object} dom jq对象
|
* @param {string} beginTime 开始时间
|
* @param {string} endTime 结束时间
|
* @param {*} waringType 警情的类别
|
*/
|
getPoliceTableAnalysis: function (dom, beginTime, endTime, waringType, addvcd) {
|
dom.empty();
|
var that = this;
|
$.ajax({
|
url: "http://61.131.136.25:2082/api/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 str = '';
|
that.entitysData = [];
|
that.analysisAddEntitys.clear();
|
for (var a, time, t, e, y, h, i = 0; i < result.length; i++) {
|
|
if (result[i].waringType == "紧急求救") {
|
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');
|
|
t = result[i].alarmTime.substr(0, 10);
|
e = result[i].alarmTime.substr(11);
|
time = t + ' ' + e;
|
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 += '</tr>';
|
dom.append(str);
|
str = '';
|
|
|
}
|
|
for (var i = 0; i < 1000; i++) {
|
var dd = Math.random();
|
var cc = Math.random();
|
}
|
}
|
})
|
},
|
getOwnerType: function (dom) {
|
dom.children('div:eq(0)').html("全部 <i></i>");
|
dom.children('.select-list').children('ul').empty();
|
dom.children('.select-list').children('ul').append($("<li ownerid='all'>全部</li>"));
|
$.ajax({
|
url: 'http://61.131.136.25:2082/api/lx/lx/seleclx',
|
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 ownerid=" + res[i].tnumber + ">" + res[i].types + "</li>"));
|
}
|
}
|
})
|
},
|
getOwnerDj: function (dom, tnumbers) {
|
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: 'http://61.131.136.25:2082/api/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) {
|
dom.empty();
|
var that = this;
|
$.ajax({
|
url: 'http://61.131.136.25:2082/api/suser/suser/selectList?type=' + type + '&dj=' + dj,
|
type: 'GET',
|
dataType: 'JSON',
|
success: function (data) {
|
var result = data.data;
|
var str = '';
|
that.entitysData = [];
|
that.analysisAddEntitys.clear();
|
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');
|
|
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 = '';
|
}
|
|
}
|
})
|
},
|
// 获取设备信息列表
|
getEquipmentTable: function (dom, deviceType) {
|
dom.empty();
|
var that = this;
|
$.ajax({
|
url: 'http://61.131.136.25:2082/api/equipment/equipment/selectList?deviceType=' + deviceType,
|
type: 'GET',
|
dataType: 'JSON',
|
success: function (data) {
|
var result = data.data;
|
var str = '';
|
that.entitysData = [];
|
that.analysisAddEntitys.clear();
|
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');
|
|
a = Number(i) + 1;
|
str += "<tr term-listid=" + result[i].id + ">";
|
str += '<td>' + a + '</td>';
|
str += '<td title=' + result[i].deviceName + '>' + result[i].deviceName + '</td>';
|
str += '<td title=' + result[i].deviceType + '>' + result[i].deviceType + '</td>';
|
str += '<td>' + result[i].deviceNumber + '</td>';
|
str += "<td class='location'> <input type='button' value='定位'" + ' lgtd=' + result[i].jd + ' lttd=' + result[i].wd + "></td>";
|
str += '</tr>';
|
dom.append(str);
|
str = '';
|
}
|
|
|
}
|
})
|
},
|
// 创建实体图层
|
createEntitysAnalysis: function (entitys, entityContent, name, item, lgtd, lttd, outlineColors) {
|
|
var symbol = new esri.symbol.PictureMarkerSymbol(outlineColors, 16, 16);
|
symbol.name = name;
|
var pt = new Point(lgtd, lttd, new SpatialReference({ wkid: 4326 }));
|
pt.entityData = item;
|
var graphic = new esri.Graphic(pt, symbol);
|
entitys.add(graphic);
|
|
|
entityContent.push(item);
|
},
|
// 热力图选中执行函数
|
checkBoxSelect: function (self) {
|
var heatmapRenderer = null;
|
// // return
|
// 选中
|
if ($(self).prop('checked') == true) {
|
heatmapRenderer = new HeatmapRenderer({
|
colorStops: [
|
{ ratio: 0.45, color: "rgba(000,000,255,0)" },
|
{ ratio: 0.55, color: "rgb(000,255,255)" },
|
{ ratio: 0.65, color: "rgb(000,255,000)" },
|
{ ratio: 0.75, color: "rgb(234,126,15)" },
|
{ ratio: 1.00, color: "rgb(255,000,000)" },
|
],
|
blurRadius: 48,
|
maxPixelIntensity: 184,
|
minPixelIntensity: 0
|
});
|
this.heatmapfeatureLayer_1.setRenderer(heatmapRenderer);
|
// 取消选中
|
var point = null;
|
for (var i = 0; i < this.entitysData.length; i++) {
|
point = new esri.geometry.Point(this.entitysData[i].lgtd, this.entitysData[i].lttd, new esri.SpatialReference({ wkid: 4326 }));
|
this.heatmapfeatureLayer_1.add(new esri.Graphic(point));
|
}
|
} else {
|
this.heatmapfeatureLayer_1.clear();
|
this.heatmapfeatureLayer_1.setRenderer();
|
}
|
}
|
});
|
return Widget;
|
});
|