From d74b495736f0c04522ec54274b70fed0ded2878d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 27 Jun 2023 11:30:06 +0800
Subject: [PATCH] 任务新增导出

---
 public/map/widgets/clientManagement/ClientManagement.js |  261 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 261 insertions(+), 0 deletions(-)

diff --git a/public/map/widgets/clientManagement/ClientManagement.js b/public/map/widgets/clientManagement/ClientManagement.js
new file mode 100644
index 0000000..64e0d84
--- /dev/null
+++ b/public/map/widgets/clientManagement/ClientManagement.js
@@ -0,0 +1,261 @@
+/*
+ * @Description:
+ * @Version: 1.0
+ * @Author: yangsx
+ * @Date: 2019-12-09 19:01:40
+ * @LastEditors: song
+ * @LastEditTime: 2021-02-25 13:59:29
+ */
+define([
+    "dojo",
+    "dojo/_base/declare",
+    "dojo/_base/lang",
+    "base/BaseWidget",
+    "dojo/text!widgets/clientManagement/template.html",
+    "base/AppEvent",
+    "base/ConfigData",
+    "widgets/realTimePolice/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/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",
+    "esri/dijit/PopupTemplate",
+    "widgets/clientManagement/FlareClusterLayer_v3",
+    "dojo/domReady!",
+    "widgets/realTimePolice/LayUIDataTable"
+], 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,
+    FeatureSet,
+    HeatmapRenderer,
+    SimpleLineSymbol,
+    SimpleFillSymbol,
+    PictureMarkerSymbol,
+    SimpleMarkerSymbol,
+    SpatialReference,
+    GeometryService,
+    ProjectParameters,
+    GraphicsLayer,
+    LabelLayer,
+    TextSymbol,
+    SimpleRenderer,
+    ClassBreaksRenderer,
+    Geoprocessor,
+    DataFile,
+    webMercatorUtils,
+    Font,
+    ScreenPoint,
+    ImageParameters,
+    geometryEngine,
+    PopupTemplate,
+    FlareClusterLayer
+) {
+    var Widget = declare([BaseWidget], {
+        widgetName: "RealTimePolice",
+        label: "实时报警",
+        templateString: template,
+        _map: null,
+        objThis: null,
+        _siteLayer: new GraphicsLayer(),
+        layuiLayer: null,
+        layuiLadate: null,
+        tabIndex: 0,
+
+        zTree: null,
+
+        //存放表格数据
+        clientTableData: null,
+        //刷新表格
+        updateTable: null,
+
+        //存放查询条件值,方便联动查询
+        queryXZQ: null,
+        queryType: null,
+        queryZT: null,
+
+        //存放弹窗
+        mylay: null,
+
+        //存放聚合实体
+        clusterLayer: null,
+
+        //存放地图是否隐藏参数
+        mapShow: 1,
+
+        //存放树状图id
+        zTreeId: null,
+
+        constructor: function(options, srcRefNode) {
+            this._map = options.map;
+            objThis = this;
+
+            this._map.addLayer(this.realTimeAddEntitys);
+            this._map.addLayer(this.addOneEntitys);
+        },
+        startup: function() {
+            objThis._map.addLayer(objThis._siteLayer);
+            var that = this;
+
+
+        },
+
+
+        open: function() {
+            var that = this;
+            $.ajax({
+                url: '/api/equipment/equipment/pageDept?deviceName='+ window.clientID,
+                type: 'get',
+                dataType: 'JSON',
+                success: function(data) {
+                    var datas = data.data.records;
+                    for (var i = 0; i < datas.length; i++) {
+                        datas[i].x = Number(datas[i].jd);
+                        datas[i].y = Number(datas[i].wd);
+                    }
+                    that.flareClusterLayer(datas);
+                }
+            });
+
+        },
+
+
+        close: function() {
+
+        },
+
+        // 鼠标点击事件
+        clickHand: function() {},
+
+        //聚合图层事件
+        flareClusterLayer: function(datas) {
+
+            var that = this;
+
+            var preClustered = false;
+            var displaySingleFlaresAtCount = 10;
+            var areaDisplayMode = "";
+            // var allData = JSON.parse(DATA);
+            // DataManager.setData(allData);
+
+            //init the layer, more options are available and explained in the cluster layer constructor
+            that.clusterLayer = new FlareClusterLayer({
+                id: "flare-cluster-layer",
+                spatialReference: new esri.SpatialReference({ "wkid": 4326 }),
+                subTypeFlareProperty: "facilityType",
+                singleFlareTooltipProperty: "name",
+                displaySubTypeFlares: true,
+                displaySingleFlaresAtCount: displaySingleFlaresAtCount,
+                flareShowMode: "mouse",
+                preClustered: preClustered,
+                clusterRatio: 75,
+                clusterAreaDisplay: areaDisplayMode,
+                clusteringBegin: function() {
+                    console.log("clustering begin");
+                },
+                clusteringComplete: function() {
+                    console.log("clustering complete");
+                }
+            });
+
+            //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/selfbaojin2.gif", 80, 80).setOffset(0, 15);
+            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]));
+            var mdSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE, 24, new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([82, 163, 204, 0.8]), 1), new dojo.Color([102, 204, 255, 0.8]));
+            var smSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE, 22, new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([230, 184, 92, 0.8]), 1), new dojo.Color([255, 204, 102, 0.8]));
+            renderer.addBreak(0, 19, smSymbol);
+            renderer.addBreak(20, 150, mdSymbol);
+            renderer.addBreak(151, 1000, lgSymbol);
+            renderer.addBreak(1001, Infinity, xlSymbol);
+
+            that.clusterLayer.setRenderer(renderer); //use standard setRenderer.
+
+            //set up a popup template
+            var template = new PopupTemplate({
+                title: "{name}",
+                fieldInfos: [
+                    { fieldName: "facilityType", label: "Facility Type", visible: true },
+                    { fieldName: "postcode", label: "Post Code", visible: true },
+                    { fieldName: "isOpen", label: "Opening Hours", visible: true }
+                ]
+            });
+
+            //clusterLayer.infoTemplate = template;
+            that._map.infoWindow.titleInBody = false;
+
+            that._map.addLayer(that.clusterLayer);
+
+            //var data = DataManager.getData();
+            that.clusterLayer.addData(datas);
+
+        },
+        clearLayer: function() {
+            var that = this;
+            that._map.removeLayer(that.clusterLayer);
+            that.clusterLayer = null;
+        }
+
+
+    });
+    return Widget;
+});

--
Gitblit v1.9.3