|
@@ -26,6 +26,7 @@ import Font = require("esri/symbols/Font");
|
|
|
import HiddenInfoSearch = require("./HiddenInfoSearch");
|
|
|
import MaintenanceSearch = require("./MaintenanceSearch");
|
|
|
import SiteSearch = require("./SiteSearch");
|
|
|
+import AjaxSend = require("common/AjaxSend.class")
|
|
|
declare var jscolor;
|
|
|
export = MapWatching;
|
|
|
class MapWatching extends BaseWidget {
|
|
@@ -60,13 +61,15 @@ class MapWatching extends BaseWidget {
|
|
|
|
|
|
XJGraphicLayers: XJGraphicLayer;
|
|
|
untilTodayHideDangerList = [];
|
|
|
-
|
|
|
+ ajaxSend = null;
|
|
|
startup() {
|
|
|
this.setHtml(_.template(this.template.split("$$")[0])({
|
|
|
hello: this.config.hello + (/\/([a-zA-Z]+)$/g.exec(this.widgetPath)[1])
|
|
|
}));
|
|
|
+ this.ajaxSend = new AjaxSend();
|
|
|
|
|
|
this.domObj.parents(".panel").css("bottom", "50px");
|
|
|
+ this.getRegionType()
|
|
|
this.hiddenInfohSearch = new HiddenInfoSearch(this);
|
|
|
this.maintenanceSearch = new MaintenanceSearch(this);
|
|
|
this.siteSearch = new SiteSearch(this);
|
|
@@ -82,7 +85,23 @@ class MapWatching extends BaseWidget {
|
|
|
this.destoryWidget();
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ getRegionType(){
|
|
|
+ var sendData = {
|
|
|
+ current:1,
|
|
|
+ size:10
|
|
|
+ }
|
|
|
+ this.ajaxSend.sendAjax(this, sendData, this.config.gpsregiontype, this.ajaxSend.type.get, result =>{
|
|
|
+ var regionTypes = result.result.records;
|
|
|
+ var regionTypeStr = "";
|
|
|
+ for(let i of regionTypes){
|
|
|
+ regionTypeStr += "<li class='list-group-item' layerName='GraphicLayer_xjregion' regionType='"+i.id+"' choosed='no'>";
|
|
|
+ regionTypeStr += "<label for='checkbox_"+i.id+"'>"+i.regionTypeName+"</label>";
|
|
|
+ regionTypeStr += "<input type='checkbox' name='checkbox-"+i.id+"' data-source-layer-index='0' data-source-check-group='grid' class='pull-right list-group-item-check'/>";
|
|
|
+ regionTypeStr += "</li>";
|
|
|
+ }
|
|
|
+ this.domObj.find('.GraphicLayer_xjregion_ul').empty().append(regionTypeStr);
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
|
|
|
destoryWidget() {
|
|
@@ -93,7 +112,7 @@ class MapWatching extends BaseWidget {
|
|
|
|
|
|
this.map.infoWindow.hide();
|
|
|
this.AppX.runtimeConfig.routeplayer.Hide();
|
|
|
-
|
|
|
+
|
|
|
if (this.setIntervalNumber != undefined) {
|
|
|
clearInterval(this.setIntervalNumber);
|
|
|
this.setIntervalNumber = undefined;
|
|
@@ -139,15 +158,16 @@ class MapWatching extends BaseWidget {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
+
|
|
|
let dom=this.domObj.find("#xunjianlayer li input[type='checkbox']:checked");
|
|
|
if(dom.length>0){
|
|
|
$.each(dom,function(index,event){
|
|
|
var layerName = $(event).parent("li").attr("layername");
|
|
|
+ var regionType = $(event).parent("li").attr("regionType");
|
|
|
var choosedState = $(event).parent("li").attr("choosed");
|
|
|
var curentObject = $(event).parent("li");
|
|
|
var checkboxObjec = $(this);
|
|
|
- this.layerControl2(layerName, choosedState, curentObject, checkboxObjec);
|
|
|
+ this.layerControl2(layerName, choosedState, curentObject, checkboxObjec,regionType);
|
|
|
}.bind(this))
|
|
|
}
|
|
|
}
|
|
@@ -165,7 +185,7 @@ class MapWatching extends BaseWidget {
|
|
|
console.log(results.message);
|
|
|
return;
|
|
|
}
|
|
|
- var refrshTimeSpan = results.result.refreshInternal * 1000;
|
|
|
+ var refrshTimeSpan = results.result.refreshInternal * 2000;
|
|
|
var pathLineColor = results.result.trailLineColor;
|
|
|
var pathLineWidth = results.result.trailLineWidth;
|
|
|
var pathPointColor = results.result.trailPointColor;
|
|
@@ -272,12 +292,12 @@ class MapWatching extends BaseWidget {
|
|
|
this.XJGraphicLayers.clearGraphics();
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+
|
|
|
initEvent() {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
@@ -338,15 +358,24 @@ class MapWatching extends BaseWidget {
|
|
|
|
|
|
this.displayHidedangerOfUser(departmentid, userid);
|
|
|
}.bind(this));
|
|
|
-
|
|
|
|
|
|
- this.domObj.find("#xunjianlayer li input[type='checkbox']").bind("click", function (event) {
|
|
|
- var layerName = $(event.currentTarget).parent("li").attr("layername");
|
|
|
- var choosedState = $(event.currentTarget).parent("li").attr("choosed");
|
|
|
+ this.domObj.find("#xunjianlayer").on("click","li input[type='checkbox']",function(event){
|
|
|
+ var layerName = $(event.currentTarget).parent("li").attr("layername");
|
|
|
+ var regionType = $(event.currentTarget).parent("li").attr("regionType");
|
|
|
+ var choosedState = $(event.currentTarget).parent("li").attr("choosed");
|
|
|
var curentObject = $(event.currentTarget).parent("li");
|
|
|
var checkboxObjec = $(this);
|
|
|
- this.layerControl(layerName, choosedState, curentObject, checkboxObjec);
|
|
|
- }.bind(this));
|
|
|
+ this.layerControl(layerName, choosedState, curentObject, checkboxObjec,regionType);
|
|
|
+ }.bind(this));
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
this.domObj.find(".workerpagination .pageturning").on("click", this.workerListPageTurning.bind(this));
|
|
|
|
|
@@ -374,7 +403,7 @@ class MapWatching extends BaseWidget {
|
|
|
checkingPoint: new PictureMarkerSymbol(this.root + config.PNGPATH_CheckPointPng.checking, 45, 45),
|
|
|
checkedPath: new SimpleLineSymbol({
|
|
|
color: new Color("#0000ff"),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: 3
|
|
|
}),
|
|
|
checkingPath: new SimpleLineSymbol({
|
|
@@ -405,7 +434,7 @@ class MapWatching extends BaseWidget {
|
|
|
path: {
|
|
|
oraginalPath: new SimpleLineSymbol({
|
|
|
color: new Color("#0000FF"),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: 1
|
|
|
})
|
|
|
}
|
|
@@ -1467,7 +1496,7 @@ class MapWatching extends BaseWidget {
|
|
|
"periodName": rows[i].preiodName,
|
|
|
"deviceTypeName": rows[i].deviceTypeName,
|
|
|
"type": rows[i].chilePlanStateName,
|
|
|
- "percent": rows[i].percent1,
|
|
|
+ "percent": rows[i].percent1,
|
|
|
"description": rows[i].description
|
|
|
}
|
|
|
mainPlanInfos.push(mainPlanInfo);
|
|
@@ -1584,12 +1613,12 @@ class MapWatching extends BaseWidget {
|
|
|
var linePath: Array<any> = [];
|
|
|
var lineSymbol = new SimpleLineSymbol({
|
|
|
color: new Color(this.watchingSetting._workerPathColor),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: this.watchingSetting.pathLineWith
|
|
|
});
|
|
|
var carLineSymbol = new SimpleLineSymbol({
|
|
|
color: new Color(this.watchingSetting._carPathColor),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: this.watchingSetting.pathLineWith
|
|
|
});
|
|
|
var allPolyline = [];
|
|
@@ -1799,7 +1828,7 @@ class MapWatching extends BaseWidget {
|
|
|
var lineSymbol = new SimpleLineSymbol({
|
|
|
|
|
|
color: new Color(this.watchingSetting.pathLineColor),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: this.watchingSetting.pathLineWith
|
|
|
});
|
|
|
|
|
@@ -1918,7 +1947,7 @@ class MapWatching extends BaseWidget {
|
|
|
|
|
|
|
|
|
* 可通过部门或人员姓名进行查询。
|
|
|
- *
|
|
|
+ *
|
|
|
*/
|
|
|
|
|
|
displayQualifiedUser(departmentId, userState) {
|
|
@@ -2021,15 +2050,33 @@ class MapWatching extends BaseWidget {
|
|
|
* 初始化图层管理模块
|
|
|
*/
|
|
|
|
|
|
- layerControl(layerName, choosedState, curentObject, checkboxObjec) {
|
|
|
+ layerControl(layerName, choosedState, curentObject, checkboxObjec,regionType) {
|
|
|
var activeGraphicLayer = <GraphicsLayer>this.map.getLayer("worker_activeGraphicLayer");
|
|
|
activeGraphicLayer.clear();
|
|
|
var config = this.config.layerControl;
|
|
|
var layer = this.map.getLayer(layerName);
|
|
|
if (choosedState == "yes") {
|
|
|
- layer.hide();
|
|
|
- curentObject.attr("choosed", "no");
|
|
|
- checkboxObjec.prop("checked", false);
|
|
|
+ if(regionType){
|
|
|
+ var XJRegionGraphicLayer = <GraphicsLayer>this.map.getLayer("GraphicLayer_xjregion");
|
|
|
+ var graphics = layer.graphics.filter(element => {
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ return element.attributes != regionType
|
|
|
+ });
|
|
|
+ XJRegionGraphicLayer.clear();
|
|
|
+ graphics.forEach(element => {
|
|
|
+ XJRegionGraphicLayer.add(element);
|
|
|
+ });
|
|
|
+ curentObject.attr("choosed", "no");
|
|
|
+ checkboxObjec.prop("checked", false);
|
|
|
+ }else{
|
|
|
+ layer.hide();
|
|
|
+ curentObject.attr("choosed", "no");
|
|
|
+ checkboxObjec.prop("checked", false);
|
|
|
+ }
|
|
|
+
|
|
|
} else {
|
|
|
layer.show();
|
|
|
curentObject.attr("choosed", "yes");
|
|
@@ -2049,11 +2096,12 @@ class MapWatching extends BaseWidget {
|
|
|
case "GraphicLayer_xjregion":
|
|
|
var xjRegionUrl = this.apiRoot + config.URL_region;
|
|
|
var xjRegionData = {
|
|
|
- "companyid": AppX.appConfig.deptId,
|
|
|
+
|
|
|
+ "regionType":regionType,
|
|
|
"current": 1,
|
|
|
"size": 100000
|
|
|
};
|
|
|
- var xjRegionInfoInterface = new BackGroundInterface(xjRegionUrl, headers, xjRegionData, this.requestXJRegionInfoCallback.bind(this));
|
|
|
+ var xjRegionInfoInterface = new BackGroundInterface(xjRegionUrl, headers, xjRegionData, this.requestXJRegionInfoCallback.bind(this,regionType));
|
|
|
break;
|
|
|
case "GraphicLayer_buildsite":
|
|
|
var buildSiteUrl = this.apiRoot + config.URL_buildsite;
|
|
@@ -2111,7 +2159,7 @@ class MapWatching extends BaseWidget {
|
|
|
* 初始化图层管理模块
|
|
|
*/
|
|
|
|
|
|
- layerControl2(layerName, choosedState, curentObject, checkboxObjec) {
|
|
|
+ layerControl2(layerName, choosedState, curentObject, checkboxObjec,regionType) {
|
|
|
var activeGraphicLayer = <GraphicsLayer>this.map.getLayer("worker_activeGraphicLayer");
|
|
|
activeGraphicLayer.clear();
|
|
|
var config = this.config.layerControl;
|
|
@@ -2134,11 +2182,12 @@ class MapWatching extends BaseWidget {
|
|
|
case "GraphicLayer_xjregion":
|
|
|
var xjRegionUrl = this.apiRoot + config.URL_region;
|
|
|
var xjRegionData = {
|
|
|
- "companyid": AppX.appConfig.deptId,
|
|
|
+
|
|
|
+ "regionType":regionType,
|
|
|
"current": 1,
|
|
|
"size": 100000
|
|
|
};
|
|
|
- var xjRegionInfoInterface = new BackGroundInterface(xjRegionUrl, headers, xjRegionData, this.requestXJRegionInfoCallback.bind(this));
|
|
|
+ var xjRegionInfoInterface = new BackGroundInterface(xjRegionUrl, headers, xjRegionData, this.requestXJRegionInfoCallback.bind(this,regionType));
|
|
|
break;
|
|
|
case "GraphicLayer_buildsite":
|
|
|
var buildSiteUrl = this.apiRoot + config.URL_buildsite;
|
|
@@ -2278,7 +2327,7 @@ class MapWatching extends BaseWidget {
|
|
|
var config = this.config.requestXJLineInfoCallback;
|
|
|
var symbol = new SimpleLineSymbol({
|
|
|
color: new Color("#FF0000"),
|
|
|
- style: "solid",
|
|
|
+ style: "solid",
|
|
|
width: 2
|
|
|
})
|
|
|
var XJLineGraphicLayer = <GraphicsLayer>this.map.getLayer("GraphicLayer_xjline");
|
|
@@ -2291,16 +2340,27 @@ class MapWatching extends BaseWidget {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- requestXJRegionInfoCallback(result) {
|
|
|
+ requestXJRegionInfoCallback(regionType,result) {
|
|
|
var config = this.config.requestXJRegionInfoCallback;
|
|
|
var symbol = new SimpleFillSymbol(SimpleFillSymbol.STYLE_SOLID, new SimpleLineSymbol(SimpleLineSymbol.STYLE_DASHDOT, new Color([255, 0, 0]), 2), new Color([0, 0, 0, 0.1]));
|
|
|
var XJRegionGraphicLayer = <GraphicsLayer>this.map.getLayer("GraphicLayer_xjregion");
|
|
|
+ var graphics = XJRegionGraphicLayer.graphics.filter(ele=>{
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ return ele.attributes != regionType;
|
|
|
+ });
|
|
|
+ console.log(XJRegionGraphicLayer.graphics);
|
|
|
+ XJRegionGraphicLayer.clear();
|
|
|
+ graphics.forEach(element =>{
|
|
|
+ XJRegionGraphicLayer.add(element)
|
|
|
+ })
|
|
|
var rows = result.result.records;
|
|
|
var polygons = [];
|
|
|
for (var i = 0, length = rows.length; i < length; i++) {
|
|
|
if (rows[i].geometry !== "") {
|
|
|
var polygon = new Polygon(JSON.parse(rows[i].geometry));
|
|
|
- var graphic = new Graphic(polygon, symbol);
|
|
|
+ var graphic = new Graphic(polygon, symbol,regionType);
|
|
|
var creatTime = rows[i].createDate.split(" ")[0];
|
|
|
XJRegionGraphicLayer.add(graphic);
|
|
|
|
|
@@ -2492,7 +2552,7 @@ class MapWatching extends BaseWidget {
|
|
|
class Animation {
|
|
|
timespan: number;
|
|
|
progress: Function;
|
|
|
- easing: Function;
|
|
|
+ easing: Function;
|
|
|
constructor(timespan, process, easing) {
|
|
|
this.timespan = timespan;
|
|
|
this.progress = process;
|