Przeglądaj źródła

消防数据中心、事件详情页面资源落点接口及方式更换

wang_xy 1 rok temu
rodzic
commit
b7806a7c07

+ 3 - 9
src/api/components/supermap.js

@@ -28,9 +28,9 @@ export const iconList = {
   //数据中心图标
   'sj-icon-map-centerdata-t-forest-waterintake': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-waterintake.png'),//取水口
   'sj-icon-map-centerdata-t-forest-watercrane': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-watercrane.png'),//水鹤
-  'sj-icon-map-centerdata-t-forest-firehydrant-1': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant-1.png'),//地上消火
-  'sj-icon-map-centerdata-t-forest-firehydrant-2': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant-2.png'),//地下消火
-  'sj-icon-map-centerdata-t-forest-firehydrant-3': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant-3.png'),//室内消火
+  'sj-icon-map-centerdata-t-forest-firehydrant@1': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@1.png'),//地上消防
+  'sj-icon-map-centerdata-t-forest-firehydrant@2': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@2.png'),//地下消防
+  'sj-icon-map-centerdata-t-forest-firehydrant@3': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@3.png'),//室内消防
   'sj-icon-map-centerdata-t-firecontrol-basic-linkage-force': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-firecontrol-basic-linkage-force.png'),//基本联动力量
   'sj-icon-map-centerdata-t-firecontrol-foam-liquid': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-firecontrol-foam-liquid.png'),//泡沫液
   'sj-icon-map-centerdata-t-firecontrol-other-linkage-force': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-firecontrol-other-linkage-force.png'),//其他消防力量
@@ -39,9 +39,6 @@ export const iconList = {
   'sj-icon-map-centerdata-t-firecontrol-fire-pressure-sensor': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-firecontrol-fire-pressure-sensor.png'),//压力传感器
   'sj-icon-map-centerdata-t-firecontrol-fulltime-station': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-firecontrol-fulltime-station.png'),//专职站
   'sj-icon-map-centerdata_t_forest_watercrane': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata_t_forest_watercrane.png'),//水鹤
-  'sj-icon-map-centerdata_t_forest_firehydrant@1': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata_t_forest_firehydrant@1.png'),//地上消防栓
-  'sj-icon-map-centerdata_t_forest_firehydrant@2': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata_t_forest_firehydrant@2.png'),//地下消防栓
-  'sj-icon-map-centerdata_t_forest_firehydrant@3': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata_t_forest_firehydrant@3.png'),//室内消防栓
   'sj-icon-map-centerdata-t-forest-fireteam': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-fireteam.png'),//森林防火队
   'sj-icon-map-centerdata-slmonitor-traffic': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-slmonitor-traffic.png'),//交通精细化摄像头
 
@@ -57,8 +54,5 @@ export const iconList = {
 
 
   //云图图标
-  'sj-icon-map-centerdata-t-forest-firehydrant@1': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@1.png'),//地上消防栓
-  'sj-icon-map-centerdata-t-forest-firehydrant@2': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@2.png'),//地下消防栓
-  'sj-icon-map-centerdata-t-forest-firehydrant@3': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-t-forest-firehydrant@3.png'),//室内消防栓
   'sj-icon-map-centerdata-slmonitor': require('@/assets/icons/sj-icon-map/centerdata/sj-icon-map-centerdata-slmonitor.png'),//水利摄像头
 }

+ 6 - 42
src/api/datacenter.js

@@ -1,52 +1,16 @@
 import request from '@/utils/request'
 
-// 获取左侧菜单列表
-export function getResource() {
-  return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/getResource',
-    method: 'post',
-  })
-}
 // 获取左侧菜单列表-NEW
-export function fireControlViewList() {
+export function fireControlViewList(type) {
   return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewList',
-    method: 'post',
+    url: '/sooka-middleware/visual/getResourceList?type='+type,
+    method: 'get',
   })
 }
 //点击左侧菜单列表查询落点+按部门分组 NEW
-export function fireControlViewPoint(type, name) {
-  return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewPoint',
-    method: 'post',
-    data:{
-      "name": name,
-      "type": type
-    }
-  })
-}
-
-//点击左侧菜单列表查询落点
-export function getResourcePoint(resourceTable) {
-  return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/getResourcePoint',
-    method: 'post',
-    data:{"resourceTable":resourceTable}
-  })
-}
-//点击左侧菜单列表查询落点 new
-export function getPointByDeptId(type,deptId) {
-  return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/getPointByDeptId',
-    method: 'post',
-    data:{"type":type,"deptId":deptId}
-  })
-}
-//点击右侧菜单列表查询落点
-export function getResourcePointByDeptId(resourceTable,deptId) {
+export function fireControlViewPoint(type, name,deptId) {
   return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/getResourcePoint',
-    method: 'post',
-    data:{"resourceTable":resourceTable,"deptId":deptId}
+    url: '/sooka-middleware/visual/getResourcePoint?type='+type+'&name='+name+'&deptId='+deptId,
+    method: 'get'
   })
 }

+ 6 - 7
src/api/forest.js

@@ -1,18 +1,17 @@
 import request from '@/utils/request'
 
 // 获取消防左侧菜单列表
-export function fireControlViewList() {
+export function fireControlViewList(type) {
   return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewList',
-    method: 'post',
+    url: '/sooka-middleware/visual/getResourceList?type='+type,
+    method: 'get',
   })
 }
 // 点击左侧菜单列表查询落点
-export function fireControlViewPoint(type, name) {
+export function fireControlViewPoint(param) {
   return request({
-    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewPoint',
-    method: 'post',
-    data:type
+    url: '/sooka-middleware/visual/getResourcePoint?type='+param.type+'&longitude='+param.longitude+'&latitude='+param.latitude+'&radius='+param.radius,
+    method: 'get'
   })
 }
 

+ 102 - 583
src/views/datacenter.vue

@@ -16,7 +16,7 @@
               src="../assets/images/integrated/light.png"
               style="width: 100%; margin-top: 0.4rem"
             />
-            <div class="sj-search" v-show="showSearch">
+            <div class="sj-search">
               <el-input
                 v-model="searchName"
                 placeholder="请输入名称"
@@ -107,7 +107,6 @@
 import {
   fireControlViewList,
   fireControlViewPoint,
-  getPointByDeptId,
 } from "@/api/datacenter";
 
 import supermap from "@/components/supermap-2.5d"; //超图
@@ -116,12 +115,14 @@ import vBottomMenu from "@/components/vBottomMenu.vue"; //一体化公共底部
 import eventLocation from "@/components/eventLocation.vue"; //事件定位弹窗
 import TVWall from "@/components/TVWall.vue"; //电视墙弹窗
 import { getIconBg } from "@/api/components/sookaMapIcon";
-import {getUserProfile} from "@/api/system/user"; //资源底色控制文件
+import {getUserProfile} from "@/api/system/user";
+import { Button } from '@/dahua/TVWalllib/iview' //资源底色控制文件
 
 // import echarts from 'echarts'
 let echarts = require("echarts");
 export default {
   components: {
+    Button,
     supermap,
     vheader,
     vBottomMenu,
@@ -140,7 +141,6 @@ export default {
     this.getSuperMapUrl();
 
     setTimeout(() => {
-      // this.getResource()
       this.fireControlViewList();
     }, 2000)
     this.bottomMenuList(); //获取底部公共组件消息和任务
@@ -148,11 +148,10 @@ export default {
   data() {
     return {
       // 搜索框
-      showSearch: false,
+      showSearch: true,
       // 搜索名称
-      searchName: undefined,
+      searchName: "",
       // 搜索类型
-      searchType: undefined,
       iconCurrentIndex: "",
       listCurrentIndex: "",
       markersList: [],
@@ -197,7 +196,7 @@ export default {
     // 根据名称筛选资源点位
     searchByName() {
       this.$modal.msgSuccess("正在查询,请稍后...");
-      this.fireControlViewPoint(this.searchType, this.searchName);
+      this.fireControlViewPoint(this.resourceTable, this.searchName);
     },
     /** ----------------------------------底部按钮公用组件开始------------------------------------- */
     bottomMenuList() {
@@ -350,9 +349,11 @@ export default {
     },
     fireControlViewList() {
       let that = this;
-      fireControlViewList().then(function (res) {
-        for (let i = 1; i < res.data.length; i++) {
-          that.resourcesList.push(res.data[i]);
+      fireControlViewList("xiaofang").then(function (res) {
+        for (let i = 0; i < res.data.length; i++) {
+          if(res.data[i].type !='centerdata_t_forest_fireteam'){
+            that.resourcesList.push(res.data[i]);
+          }
         }
         //截取data.resourceTable字段中“_”分隔符最后一个作为关键字,重新拼接成前端需要的图标:class,格式sj-icon-xxxx,将其set回原数组
         that.resourcesList.forEach(function (data, index) {
@@ -364,75 +365,29 @@ export default {
             data.type.replaceAll("_", "-").replaceAll("@", "-");
           console.log("icon_" + (index + 1) + "=", icon);
           that.$set(that.resourcesList[index], "icon", icon);
-
           //每个图标对应固定颜色
           that.$set(that.resourcesList[index], "bg", getIconBg(icon));
-          // if(index < 5){
-          //   // that.fireControlViewPoint(data.type, 'undefined');
-          //   that.fireControlViewPoint(data.type, '所有');
-          // }
         });
-
-        //数据自动落点开始
-        let maxCount = 100; //落点数超过这个数的资源不落点
-        let list = res.data;
-        let counts = [];
-        let points = [];
-        let types = [];
-        for (let i = 0; i < list.length; i++) {
-          //获取符合要求的类型及数量
-          if (list[i].num <= maxCount) {
-            counts.push(list[i].num);
-            points.push({
-              type: list[i].type,
-              count: list[i].num,
-            });
-          }
-        }
-        for (let i = 0; i < points.length; i++) {
-          if (points[i].count == Math.max(...counts)) {
-            types.push(points[i].type);
-            let countsTemp = [];
-            for (let j = 0; j < counts.length; j++) {
-              if (counts[j] != Math.max(...counts)) {
-                countsTemp.push(counts[j]);
-              }
-            }
-            counts = countsTemp;
-            break;
-          }
-        }
-        for (let i = 0; i < points.length; i++) {
-          if (points[i].count == Math.max(...counts)) {
-            types.push(points[i].type);
-            break;
-          }
-        }
-        for (let i = 0; i < types.length; i++) {
-          that.fireControlViewPoint(types[i], "所有");
-        }
-        //数据自动落点结束
+        that.fireControlViewPoint("xiaofang", "");
       });
     },
     fireControlViewPoint(resourceTable, name) {
       // 搜索框
-      // if(name == 'undefined' && this.showSearch == false){
-      // if(name == '所有' && this.showSearch == false){
-      if (name == "所有") {
-        name = undefined;
+      if (name == "" || name == null || name == undefined) {
+        name = "";
       } else {
         this.showSearch = true;
       }
-      // console.log("name=", name = "111111111235464")
       console.log("name=", name);
       console.log("this.showSearch=", this.showSearch);
-      // 搜索类型
-      this.searchType = resourceTable;
+      if(resourceTable == this.resourceTable){
+        resourceTable = "xiaofang"
+      }
       let that = this;
       that.resourceTable = resourceTable;
       that.markersList = [];
       that.source = [];
-      fireControlViewPoint(resourceTable, name).then((res) => {
+      fireControlViewPoint(resourceTable, name,"").then((res) => {
         let pointList = res.data.pointList;
         that.deptGroupList = res.data.deptList;
         if (res.data.deptList != null && res.data.deptList.length > 0) {
@@ -447,24 +402,25 @@ export default {
 
         if (res.data.pointList != null && res.data.pointList.length > 0) {
           for (let i = 0; i < res.data.pointList.length; i++) {
-            let markersMap = {
-              lng: res.data.pointList[i].longitude,
-              lat: res.data.pointList[i].latitude,
-              icon: "marker",
-              bindPopupHtml: "",
-              click: "",
-              name: i,
-              keepBindPopup: false,
-              isAggregation: false,
-            };
-            that.markersList.push(
-              this.getMarkersMap(
-                resourceTable,
-                markersMap,
-                res.data.pointList[i]
-              )
-            );
-            // that.markersList.push(markersMap)
+            if(res.data.pointList[i].indexName != 'centerdata_t_forest_fireteam'){
+              let markersMap = {
+                lng: res.data.pointList[i].longitude,
+                lat: res.data.pointList[i].latitude,
+                icon: "marker",
+                bindPopupHtml: "",
+                click: "",
+                name: i,
+                keepBindPopup: false,
+                isAggregation: false,
+              };
+              that.markersList.push(
+                this.getMarkersMap(
+                  resourceTable == "xiaofang" ? res.data.pointList[i].indexName:resourceTable,
+                  markersMap,
+                  res.data.pointList[i]
+                )
+              );
+            }
           }
         }
         if (this.showSearch == true) {
@@ -475,500 +431,61 @@ export default {
       });
     },
     getMarkersMap(resourceTable, markersMap, item) {
-      if (resourceTable == "centerdata_t_firecontrol_basic_linkage_force") {
-        //基本联动力量
-        markersMap.icon =
-          "sj-icon-map-centerdata-t-firecontrol-basic-linkage-force";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>单位名称:" +
-          (item.company ? item.company : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "</div>";
-      } else if (resourceTable == "centerdata_t_firecontrol_fire_force") {
-        //消防力量
-        markersMap.icon = "sj-icon-map-centerdata-t-firecontrol-fire-force";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>地址:" +
-          (item.address ? item.address : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.principal ? item.principal : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.contact ? item.contact : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (resourceTable == "centerdata_t_forest_waterintake") {
-        //取水口
-        markersMap.icon = "sj-icon-map-centerdata-t-forest-waterintake";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>取水口名称:" +
-          (item.name ? item.name : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.contacts ? item.contacts : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          (item.phone
-            ? "<span>" +
-              '                  <div class="d-l-con">' +
-              '                  <div class="d-l-l-text">' +
-              "                  <h4>联系电话:" +
-              item.phone +
-              "</h4>" +
-              "                </div>" +
-              "                </div>" +
-              "                </span></div>"
-            : "");
-      } else if (resourceTable == "centerdata_t_forest_watercrane") {
-        //水鹤
-        markersMap.icon = "sj-icon-map-centerdata-t-forest-watercrane";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>水鹤名称:" +
-          (item.name ? item.name : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.contacts ? item.contacts : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.phone ? item.phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (
-        resourceTable == "centerdata_t_forest_firehydrant@1" ||
-        resourceTable == "centerdata_t_forest_firehydrant@2" ||
-        resourceTable == "centerdata_t_forest_firehydrant@3"
-      ) {
-        //消火栓
-        // markersMap.icon = 'sj-icon-map-centerdata-t-firecontrol-foam-liquid'
-        let icon =
-          "sj-icon-map-centerdata-t-forest-firehydrant-" +
-          resourceTable.slice(-1);
-        // sj-icon-map-centerdata-t-forest-firehydrant-1
-        console.log("icon=", icon);
-        markersMap.icon = icon;
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>消火栓名称:" +
-          (item.name ? item.name : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          ' <div class="d-l-con">' +
-          ' <div class="d-l-l-text">' +
-          " <h4>地址:" +
-          (item.firehydrant_address ? item.firehydrant_address : "") +
-          "</h4>" +
-          " </div>" +
-          " </div>" +
-          " </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.contacts ? item.contacts : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.phone ? item.phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (resourceTable == "centerdata_t_firecontrol_fire_key_places") {
-        //重点场所
-        markersMap.icon =
-          "sj-icon-map-centerdata-t-firecontrol-fire-key-places";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>重点场所名称:" +
-          (item.name ? item.name : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.person ? item.person : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.phone ? item.phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (
-        resourceTable == "centerdata_t_firecontrol_fire_pressure_sensor"
-      ) {
-        //压力传感器
-        markersMap.icon =
-          "sj-icon-map-centerdata-t-firecontrol-fire-pressure-sensor";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>压力传感器名称:" +
-          (item.name ? item.name : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>编号:" +
-          (item.number ? item.number : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>参数:" +
-          (item.parameters ? item.parameters : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (resourceTable == "centerdata_t_firecontrol_foam_liquid") {
-        //泡沫液
-        markersMap.icon = "sj-icon-map-centerdata-t-firecontrol-foam-liquid";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>单位名称:" +
-          (item.company ? item.company : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系人:" +
-          (item.contacts ? item.contacts : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.contacts_phone ? item.contacts_phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      } else if (resourceTable == "centerdata_t_firecontrol_fulltime_station") {
-        //专职站
-        markersMap.icon =
-          "sj-icon-map-centerdata-t-firecontrol-fulltime-station";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>地址:" +
-          (item.address ? item.address : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>负责人:" +
-          (item.principal ? item.principal : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>电话:" +
-          (item.contacts_phone ? item.contacts_phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "</div>";
-      } else if (
-        resourceTable == "centerdata_t_firecontrol_other_linkage_force"
-      ) {
-        //其他联动力量
-        markersMap.icon =
-          "sj-icon-map-centerdata-t-firecontrol-other-linkage-force";
-        markersMap.lng = item.longitude;
-        markersMap.lat = item.latitude;
-        markersMap.click = "sewageOutletClick";
-        markersMap.parameter = item;
-        markersMap.bindPopupHtml =
-          '<div class="map-tip">' +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>经纬度:" +
-          (item.longitude ? item.longitude : "") +
-          "," +
-          (item.latitude ? item.latitude : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>单位名称:" +
-          (item.company ? item.company : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>单位电话:" +
-          (item.company_phone ? item.company_phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系人:" +
-          (item.contacts ? item.contacts : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span>" +
-          "<span>" +
-          '                  <div class="d-l-con">' +
-          '                  <div class="d-l-l-text">' +
-          "                  <h4>联系电话:" +
-          (item.contacts_phone ? item.contacts_phone : "") +
-          "</h4>" +
-          "                </div>" +
-          "                </div>" +
-          "                </span></div>";
-      }
+      let icon = "sj-icon-map-"+resourceTable.replaceAll("_", "-");
+      markersMap.lng = item.longitude;
+      markersMap.lat = item.latitude;
+      markersMap.click = "sewageOutletClick";
+      markersMap.parameter = item;
+      markersMap.icon = icon;
+      markersMap.bindPopupHtml =
+        '<div class="map-tip">' +
+        "<span>" +
+        '                  <div class="d-l-con">' +
+        '                  <div class="d-l-l-text">' +
+        "                  <h4>经纬度:" +
+        (item.longitude ? item.longitude : "") +
+        "," +
+        (item.latitude ? item.latitude : "") +
+        "</h4>" +
+        "                </div>" +
+        "                </div>" +
+        "                </span>" +
+        "<span>" +
+        '                  <div class="d-l-con">' +
+        '                  <div class="d-l-l-text">' +
+        "                  <h4>名称:" +
+        (item.name ? item.name : "") +
+        "</h4>" +
+        "                </div>" +
+        "                </div>" +
+        "                </span>" +
+        "<span>" +
+        '                  <div class="d-l-con">' +
+        '                  <div class="d-l-l-text">' +
+        "                  <h4>地址:" +
+        (item.address ? item.address : "") +
+        "</h4>" +
+        "                </div>" +
+        "                </div>" +
+        "                </span>" +
+        "<span>" +
+        '                  <div class="d-l-con">' +
+        '                  <div class="d-l-l-text">' +
+        "                  <h4>联系人:" +
+        (item.contacts ? item.contacts : "") +
+        "</h4>" +
+        "                </div>" +
+        "                </div>" +
+        "                </span>" +
+        "<span>" +
+        '                  <div class="d-l-con">' +
+        '                  <div class="d-l-l-text">' +
+        "                  <h4>联系电话:" +
+        (item.phone ? item.phone : "") +
+        "</h4>" +
+        "                </div>" +
+        "                </div>" +
+        "                </span></div>";
       return markersMap;
     },
     sewageOutletClick(data) {
@@ -1028,13 +545,13 @@ export default {
       this.listCurrentIndex = deptId;
       let that = this;
       //点击左侧地图落点
-      getPointByDeptId(that.resourceTable, deptId).then((res) => {
+      fireControlViewPoint(that.resourceTable,that.searchName, deptId).then((res) => {
         that.markersList = [];
-        if (res.data != null && res.data.length > 0) {
-          for (let i = 0; i < res.data.length; i++) {
+        if (res.data != null && res.data.pointList.length>0) {
+          for (let i = 0; i < res.data.pointList.length; i++) {
             let markersMap = {
-              lng: res.data[i].longitude,
-              lat: res.data[i].latitude,
+              lng: res.data.pointList[i].longitude,
+              lat: res.data.pointList[i].latitude,
               icon: "marker",
               bindPopupHtml: "",
               click: "",
@@ -1043,9 +560,11 @@ export default {
               isAggregation: false,
             };
             console.log("resourceTable=", that.resourceTable);
-            console.log("res.data[i]=", res.data[i]);
+            console.log("res.data[i]=", res.data.pointList[i]);
             that.markersList.push(
-              this.getMarkersMap(that.resourceTable, markersMap, res.data[i])
+              that.getMarkersMap(
+                that.resourceTable == "xiaofang" ? res.data.pointList[i].indexName:that.resourceTable,
+                markersMap, res.data.pointList[i])
             );
           }
         }

+ 28 - 12
src/views/eventdetailsdialog.vue

@@ -2388,13 +2388,7 @@ export default {
     fireControlViewList() {
       this.resourcesList = [];
       let _this = this;
-      // {
-      //   resourceName: '取水口',
-      //     type: 'qsk',
-      //   count: '1',
-      //   icon: 'sj-icon-waterintake'
-      // },
-      fireControlViewList().then(function (res) {
+      fireControlViewList("xiaofang").then(function (res) {
         // _this.resourcesList = res.data
         //截取data.resourceTable字段中“_”分隔符最后一个作为关键字,重新拼接成前端需要的图标:class,格式sj-icon-xxxx,将其set回原数组
         res.data.forEach(function (data, index) {
@@ -2410,11 +2404,6 @@ export default {
           obj.type = data.type;
           obj.count = data.num;
           obj.icon = icon;
-          // if(resourceName != "重点场所"
-          //   && resourceName != "基本联动力量"
-          //   && resourceName != "其他联动力量"){
-          //   _this.resourcesList.push(obj);
-          // }
           _this.resourcesList.push(obj);
           console.log("icon_" + (index + 1) + "=", icon);
           //每个图标对应固定颜色
@@ -2754,6 +2743,24 @@ export default {
                   "<span>" +
                   '                  <div class="d-l-con">' +
                   '                  <div class="d-l-l-text">' +
+                  "                  <h4>名称:" +
+                  (res.data.pointList[i].name?res.data.pointList[i].name:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
+                  "                  <h4>地址:" +
+                  (res.data.pointList[i].address?res.data.pointList[i].address:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
                   "                  <h4>联系人:" +
                   (res.data.pointList[i].contacts?res.data.pointList[i].contacts:'无') +
                   "</h4>" +
@@ -2769,6 +2776,15 @@ export default {
                   "                </div>" +
                   "                </div>" +
                   "                </span>" +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
+                  "                  <h4>距离事件距离:" +
+                  (res.data.pointList[i].distance?res.data.pointList[i].distance+'米':'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
                   "</div>";
                 markersList.push(markersMap);
               }

+ 89 - 53
src/views/firespread.vue

@@ -2060,36 +2060,35 @@ export default {
     fireControlViewList() {
       this.resourcesList1 = [];
       let _this = this;
-      // {
-      //   resourceName: '取水口',
-      //     type: 'qsk',
-      //   count: '1',
-      //   icon: 'sj-icon-waterintake'
-      // },
-      fireControlViewList().then(function(res) {
+      fireControlViewList("xiaofang").then(function (res) {
         // _this.resourcesList = res.data
         //截取data.resourceTable字段中“_”分隔符最后一个作为关键字,重新拼接成前端需要的图标:class,格式sj-icon-xxxx,将其set回原数组
-        res.data.forEach(function(data, index) {
+        res.data.forEach(function (data, index) {
           let obj = {};
-          let icon = 'sj' + '-' + 'icon' + '-' + data.type.replaceAll("_", "-").replaceAll("@", "-");
-          obj.resourceName = data.name.replaceAll("(个)", "");
+          let icon =
+            "sj" +
+            "-" +
+            "icon" +
+            "-" +
+            data.type.replaceAll("_", "-").replaceAll("@", "-");
+          let resourceName = data.name.replaceAll("(个)", "");
+          obj.resourceName = resourceName;
           obj.type = data.type;
           obj.count = data.num;
           obj.icon = icon;
-          _this.resourcesList1.push(obj);
+          _this.resourcesList.push(obj);
           console.log("icon_" + (index + 1) + "=", icon);
           //每个图标对应固定颜色
-          _this.$set(_this.resourcesList1[index], "bg", getIconBg(icon));
-
-        })
-        _this.resourcesList1.push({
-          resourceName: '摄像头',
-          type: 'sxt',
-          count: '1',
-          icon: 'sj-icon-jkzx',
-          bg: '#f5ad1b'
-        })
-      })
+          _this.$set(_this.resourcesList[index], "bg", getIconBg(icon));
+        });
+        _this.resourcesList.push({
+          resourceName: "摄像头",
+          type: "sxt",
+          count: "1",
+          icon: "sj-icon-jkzx",
+          bg: "#f5ad1b",
+        });
+      });
     },
     fireControlViewPoint(type) {
       // alert(type)
@@ -2115,48 +2114,85 @@ export default {
                 let markersMap = {
                   lng: 124.59,
                   lat: 43.02,
-                  icon: 'marker',
-                  bindPopupHtml: '',
-                  click: '',
-                  parameter: '',
+                  icon: "marker",
+                  bindPopupHtml: "",
+                  click: "",
+                  parameter: "",
                   keepBindPopup: false,
-                  isAggregation: true
-                }
-                markersMap.icon = 'sj-icon-map-' + type.replaceAll("_", "-");
+                  isAggregation: true,
+                };
+                markersMap.icon = "sj-icon-map-" + type.replaceAll("_", "-");
                 markersMap.lng = res.data.pointList[i].longitude;
                 markersMap.lat = res.data.pointList[i].latitude;
-                markersMap.bindPopupHtml = '<div class="map-tip">' +
-                  '<span>' +
+                markersMap.bindPopupHtml =
+                  '<div class="map-tip">' +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
+                  "                  <h4>资源名称:" +
+                  res.data.pointList[i].name +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
+                  "                  <h4>经纬度:" +
+                  res.data.pointList[i].longitude +
+                  "," +
+                  res.data.pointList[i].latitude +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
+                  '                  <div class="d-l-con">' +
+                  '                  <div class="d-l-l-text">' +
+                  "                  <h4>名称:" +
+                  (res.data.pointList[i].name?res.data.pointList[i].name:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
                   '                  <div class="d-l-con">' +
                   '                  <div class="d-l-l-text">' +
-                  '                  <h4>资源名称:' + res.data.pointList[i].name + '</h4>' +
-                  '                </div>' +
-                  '                </div>' +
-                  '                </span>' +
-                  '<span>' +
+                  "                  <h4>地址:" +
+                  (res.data.pointList[i].address?res.data.pointList[i].address:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
                   '                  <div class="d-l-con">' +
                   '                  <div class="d-l-l-text">' +
-                  '                  <h4>经纬度:' + res.data.pointList[i].longitude + ',' + res.data.pointList[i]
-                    .latitude + '</h4>' +
-                  '                </div>' +
-                  '                </div>' +
-                  '                </span>' +
-                  '<span>' +
+                  "                  <h4>联系人:" +
+                  (res.data.pointList[i].contacts?res.data.pointList[i].contacts:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
                   '                  <div class="d-l-con">' +
                   '                  <div class="d-l-l-text">' +
-                  '                  <h4>联系人:' + (res.data.pointList[i].contacts?res.data.pointList[i].contacts:'无') + '</h4>' +
-                  '                </div>' +
-                  '                </div>' +
-                  '                </span>' +
-                  '<span>' +
+                  "                  <h4>电话:" +
+                  (res.data.pointList[i].phone?res.data.pointList[i].phone:'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "<span>" +
                   '                  <div class="d-l-con">' +
                   '                  <div class="d-l-l-text">' +
-                  '                  <h4>电话:' + (res.data.pointList[i].phone?res.data.pointList[i].phone:'无')+ '</h4>' +
-                  '                </div>' +
-                  '                </div>' +
-                  '                </span>' +
-                  '</div>'
-                markersList.push(markersMap)
+                  "                  <h4>距离事件距离:" +
+                  (res.data.pointList[i].distance?res.data.pointList[i].distance+'米':'无') +
+                  "</h4>" +
+                  "                </div>" +
+                  "                </div>" +
+                  "                </span>" +
+                  "</div>";
+                markersList.push(markersMap);
               }
               setTimeout(() => {
                 this.$refs.supermapDialog1.setMarkersByType(markersList, type)