Jelajahi Sumber

数据中心

wangzhe 2 tahun lalu
induk
melakukan
a65573e0a5

+ 5 - 0
src/api/components/supermap.js

@@ -54,4 +54,9 @@ 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-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'),//室内消防栓
 }

+ 20 - 0
src/api/forest.js

@@ -1,5 +1,25 @@
 import request from '@/utils/request'
 
+// 获取消防左侧菜单列表
+export function fireControlViewList() {
+  return request({
+    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewList',
+    method: 'post',
+  })
+}
+// 点击左侧菜单列表查询落点
+export function fireControlViewPoint(type, name) {
+  return request({
+    url: '/center-firecontrol/VisuForestDataCenterController/fireControlViewPoint',
+    method: 'post',
+    data:{
+      // "name": name,
+      "type": type
+    }
+  })
+}
+
+
 // 获取绑定的事件类型
 export function getMenuEventType() {
   return request({

File diff ditekan karena terlalu besar
+ 219 - 12
src/assets/iconfont/demo_index.html


File diff ditekan karena terlalu besar
+ 42 - 6
src/assets/iconfont/iconfont.css


File diff ditekan karena terlalu besar
+ 1 - 1
src/assets/iconfont/iconfont.js


+ 65 - 2
src/assets/iconfont/iconfont.json

@@ -6,6 +6,69 @@
   "description": "",
   "glyphs": [
     {
+      "icon_id": "12770896",
+      "name": "垃圾桶",
+      "font_class": "centerdata-t-hydraulic-garbage-station",
+      "unicode": "e658",
+      "unicode_decimal": 58968
+    },
+    {
+      "icon_id": "35584502",
+      "name": "河道蓝线资源",
+      "font_class": "centerdata-t-hydraulic-channel-blueline",
+      "unicode": "e657",
+      "unicode_decimal": 58967
+    },
+    {
+      "icon_id": "2116699",
+      "name": "河流面",
+      "font_class": "centerdata-t-hydraulic-river",
+      "unicode": "e652",
+      "unicode_decimal": 58962
+    },
+    {
+      "icon_id": "2777434",
+      "name": "桥梁工程",
+      "font_class": "centerdata-t-hydraulic-wade-bridge-culvert",
+      "unicode": "e654",
+      "unicode_decimal": 58964
+    },
+    {
+      "icon_id": "4274470",
+      "name": "闸门信息",
+      "font_class": "centerdata-t-hydraulic-water-gate",
+      "unicode": "e655",
+      "unicode_decimal": 58965
+    },
+    {
+      "icon_id": "9400975",
+      "name": "推土机",
+      "font_class": "centerdata-t-hydraulic-battlefield",
+      "unicode": "e703",
+      "unicode_decimal": 59139
+    },
+    {
+      "icon_id": "9466856",
+      "name": "河长制河段",
+      "font_class": "centerdata-t-hydraulic-reach",
+      "unicode": "e670",
+      "unicode_decimal": 58992
+    },
+    {
+      "icon_id": "11858519",
+      "name": "排污口",
+      "font_class": "centerdata-t-hydraulic-outlet-sewage",
+      "unicode": "e656",
+      "unicode_decimal": 58966
+    },
+    {
+      "icon_id": "13956683",
+      "name": "水库",
+      "font_class": "centerdata-t-hydraulic-reservoir",
+      "unicode": "e6b3",
+      "unicode_decimal": 59059
+    },
+    {
       "icon_id": "6850817",
       "name": "三角警示",
       "font_class": "centerdata-t-traffic-warning-sign",
@@ -246,7 +309,7 @@
     {
       "icon_id": "21492584",
       "name": "5饲料",
-      "font_class": "farmenterprise_2",
+      "font_class": "farmenterprise_3",
       "unicode": "e67a",
       "unicode_decimal": 59002
     },
@@ -281,7 +344,7 @@
     {
       "icon_id": "11831137",
       "name": "菜刀",
-      "font_class": "farmenterprise_3",
+      "font_class": "farmenterprise_2",
       "unicode": "e731",
       "unicode_decimal": 59185
     },

File diff ditekan karena terlalu besar
+ 20 - 2
src/assets/iconfont/iconfont.svg


TEMPAT SAMPAH
src/assets/iconfont/iconfont.ttf


TEMPAT SAMPAH
src/assets/iconfont/iconfont.woff


TEMPAT SAMPAH
src/assets/iconfont/iconfont.woff2


+ 97 - 4
src/views/eventdetailsdialog.vue

@@ -39,7 +39,7 @@
                       <div class="i-list-con">
                         <div class="d-l-con-icon" style="flex-direction:row;flex-wrap: nowrap;">
                           <div class="icon-con" style="width: fit-content !important;"
-                               v-for="(item,index) in resourcesList" @click="listResourceByWz(item.type)">
+                               v-for="(item,index) in resourcesList" @click="fireControlViewPoint(item.type)">
                             <div class="iconfont icon icon-normal" :class="item.icon"></div>
                             <div class="icon-text">
                               <h5>{{ item.resourceName }}</h5>
@@ -1056,6 +1056,8 @@ import areaSupermap from '@/components/supermap'//区域标记地图
 import TcPlayer from '@/components/TcPlayer' //视频预览
 import findUserByDept from '@/views/findUserByDept' //责任人选择弹框
 import {
+  fireControlViewPoint,
+  fireControlViewList,
   getEventDetail,
   sendEventLog,
   listSJfl,
@@ -1246,6 +1248,7 @@ export default {
       eventType: null,//事件类型-大类
       eventTypeXl: null,//事件类型-小类
       statusFlag: null,//事件流程按钮
+      dataStatus: null,//不知道谁写的没定义报错了
       deptId: null,//事件流程部门
       eventCode: null,
       eventName: null,
@@ -1322,12 +1325,45 @@ export default {
     calendarDay: null//首页日历选择
   },
   created() {
+    // 获取消防左侧菜单列表
+    this.fireControlViewList();
     /** ----------------------------------摄像头预览开始------------------------------------- */
     const DHWsInstance = DHWs.getInstance()
     this.ws = DHWsInstance
     /** ----------------------------------摄像头预览结束------------------------------------- */
   },
   methods: {
+    // 获取消防左侧菜单列表
+    fireControlViewList() {
+      this.resourcesList = [];
+      let _this = this;
+      // {
+      //   resourceName: '取水口',
+      //     type: 'qsk',
+      //   count: '1',
+      //   icon: 'sj-icon-waterintake'
+      // },
+      fireControlViewList().then(function (res) {
+        // _this.resourcesList = res.data
+        //截取data.resourceTable字段中“_”分隔符最后一个作为关键字,重新拼接成前端需要的图标:class,格式sj-icon-xxxx,将其set回原数组
+        res.data.forEach(function (data, index) {
+          let obj = {};
+          let icon ='sj' + '-' + 'icon' + '-' + data.type.replaceAll("_", "-").replaceAll("@", "-");
+          obj.resourceName = data.name.replaceAll("(个)", "");
+          obj.type = data.type;
+          obj.count = data.num;
+          obj.icon = icon;
+          _this.resourcesList.push(obj);
+          console.log("icon_" + (index + 1) + "=", icon);
+        })
+        _this.resourcesList.push({
+          resourceName: '摄像头',
+          type: 'sxt',
+          count: '1',
+          icon: 'sj-icon-jkzx'
+        })
+      })
+    },
     /************************************责任制-开始****************************************/
     //初始化责任制数据列表
     initDutysystemTableData(){
@@ -1484,6 +1520,62 @@ export default {
         })
       }
     },
+    fireControlViewPoint(type) {
+      // alert(type)
+      if (this.resourcesListCheck.indexOf(type) > -1) {
+        this.resourcesListCheck.splice(this.resourcesListCheck.indexOf(type), 1)
+        setTimeout(() => {
+          this.$refs.supermapDialog.clearMByType(type)
+        }, 1000)
+      } else {
+        // 消防资源落点
+        let param = { longitude: this.longitude, latitude: this.latitude, type: type, radius: this.radius }
+        if (type != 'sxt') {
+          fireControlViewPoint(type).then(res => {
+            if (res.data != null && res.data.pointList.length > 0) {
+              this.resourcesListCheck.push(type)
+              var markersList = []
+              for (let i = 0; i < res.data.pointList.length; i++) {
+                let markersMap = {
+                  lng: 124.59,
+                  lat: 43.02,
+                  icon: 'marker',
+                  bindPopupHtml: '',
+                  click: '',
+                  parameter: '',
+                  keepBindPopup: false,
+                  isAggregation: true
+                }
+                if (res.data.pointList.length > 50) {
+                  markersMap.isAggregation = true
+                }
+                // centerdata_t_firecontrol_basic_linkage_force
+                // sj-icon-map-centerdata-t-firecontrol-basic-linkage-force
+                markersMap.icon = 'sj-icon-map-' + type.replaceAll("_", "-");
+                // alert(res.data.pointList[i].longitude)
+                markersMap.lng = res.data.pointList[i].longitude;
+                markersMap.lat = res.data.pointList[i].latitude;
+                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>' +
+                  '</div>'
+                markersList.push(markersMap)
+              }
+              setTimeout(() => {
+                this.$refs.supermapDialog.setMarkersByType(markersList, type)
+              }, 1000)
+            }
+          })
+        }else {
+          this.listResourceByWz(type);
+        }
+      }
+    },
     listResourceByWz(type) {
       if (this.resourcesListCheck.indexOf(type) > -1) {
         this.resourcesListCheck.splice(this.resourcesListCheck.indexOf(type), 1)
@@ -1529,9 +1621,10 @@ export default {
                 markersMap.icon = 'camera'
                 if (res.data[i].cameraCode != null) {
                   markersMap.click = 'preview'
-                  // markersMap.parameter = res.data[i].cameraCode
-                  markersMap.parameter = {code:res.data.data[i].cameraCode,
-                    type:res.data.data[i].cameraFactory}
+                  markersMap.radius = 0
+                  markersMap.parameter = {code:res.data[i].cameraCode,
+                    type:res.data[i].cameraFactory?res.data[i].cameraFactory:1}
+                    // type:1}//res.data[i].cameraFactory
                 }
               }
               markersMap.lng = res.data[i].longitude