dedsudiyu 2 lat temu
rodzic
commit
b56cb71fb1
36 zmienionych plików z 1606 dodań i 203 usunięć
  1. 117 0
      src/api/evacuationBigData/index.js
  2. BIN
      src/assets/ZDimages/bigData3_2/icon_yg_yc.png
  3. BIN
      src/assets/ZDimages/bigData3_2/icon_yg_zc.png
  4. BIN
      src/assets/ZDimages/bigData3_2/icon_yygb_gq.png
  5. BIN
      src/assets/ZDimages/bigData3_2/icon_yygb_gq_yc.png
  6. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_dqy.png
  7. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_dqy_yc.png
  8. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_fc.png
  9. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_fc_yc.png
  10. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_he.png
  11. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_he_yc.png
  12. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_jw.png
  13. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_jw_yc.png
  14. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_lq.png
  15. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_lq_yc.png
  16. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_noy.png
  17. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_noy_yc.png
  18. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_sd.png
  19. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_sd_yc.png
  20. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_soe_yc.png
  21. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_soer.png
  22. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_tcoc.png
  23. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_tcoc_yc.png
  24. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_voc.png
  25. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_voc_yc.png
  26. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_wsd.png
  27. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_wsd_yc.png
  28. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_yq_yc.png
  29. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_yq_zc.png
  30. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_yyht_yc.png
  31. BIN
      src/assets/ZDimages/bigData3_2/icon_znjc_yyht_zc.png
  32. BIN
      src/assets/ZDimages/bigData3_2/img_mhz.png
  33. 21 10
      src/utils/evacuationLayout.js
  34. 14 4
      src/views/comprehensive/laboratoryManagement/building/buildingDetails.vue
  35. 1 0
      src/views/comprehensive/laboratoryManagement/building/newIndex.vue
  36. 1453 189
      src/views/newEvacuationBigData.vue

+ 117 - 0
src/api/evacuationBigData/index.js

@@ -0,0 +1,117 @@
+import request from '@/utils/request'
+
+/*****************************化学品信息页面*****************************/
+/*
+export function hxpChemicalList(query) {
+  return request({
+    url: '/chemical/hxpChemical/list',
+    method: 'get',
+    params: query
+  })
+}
+
+export function addHxpChemical(data) {
+  return request({
+    url: '/chemical/hxpChemical',
+    method: 'post',
+    data: data
+  })
+}
+
+export function putHxpChemical(data) {
+  return request({
+    url: '/chemical/hxpChemical',
+    method: 'put',
+    data: data
+  })
+}
+
+export function delHxpChemicalInfo(id) {
+  return request({
+    url: '/chemical//hxpChemical/'+id,
+    method: 'delete',
+  })
+}
+*/
+
+//获取喇叭列表
+export function getDeviceList(query) {
+  return request({
+    url: '/algorithm/speaker/getDeviceListBySub',
+    method: 'get',
+    params: query
+  })
+}
+
+//喇叭发送楼层消息记录
+export function addHxpChemical(data) {
+  return request({
+    url: '/laboratory/bigview/sendHornMess',
+    method: 'post',
+    data: data
+  })
+}
+//获取最新楼层消息数据
+export function getHornLastMess(query) {
+  return request({
+    url: '/laboratory/bigview/getHornLastMess',
+    method: 'get',
+    params: query
+  })
+}
+
+//获取实验室人员
+export function subOnlineUser(data) {
+  return request({
+    url: '/laboratory/onemachine/sub/online/user',
+    method: 'post',
+    data: data
+  })
+}
+
+//获取实验室危险源数据
+export function exitHazardTotal(query) {
+  return request({
+    url: '/laboratory/bigview/exitHazardTotal',
+    method: 'get',
+    params: query
+  })
+}
+//获取实验室火焰报警数据
+export function getFireStatus(query) {
+  return request({
+    url: '/algorithm/firedevice/getStatus',
+    method: 'get',
+    params: query
+  })
+}
+
+//获取楼层应急疏散相关布局数据
+export function getFloorData(id) {
+  return request({
+    url: '/laboratory/lineVertex/floor/'+id,
+    method: 'get',
+  })
+}
+
+//获取新楼栋楼层数据
+
+
+export function getBuildOrFloorList(query) {
+  return request({
+    url: '/laboratory/buildFloor/getBuildOrFloorList',
+    method: 'get',
+    params: query
+  })
+}
+
+//开始疏散
+export function executeEvacuation(data) {
+  console.log('executeEvacuation',data)
+  return request({
+    url: '/laboratory/lineVertex/executeEvacuation',
+    method: 'post',
+    data: data
+  })
+}
+

BIN
src/assets/ZDimages/bigData3_2/icon_yg_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_yg_zc.png


BIN
src/assets/ZDimages/bigData3_2/icon_yygb_gq.png


BIN
src/assets/ZDimages/bigData3_2/icon_yygb_gq_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_dqy.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_dqy_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_fc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_fc_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_he.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_he_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_jw.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_jw_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_lq.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_lq_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_noy.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_noy_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_sd.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_sd_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_soe_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_soer.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_tcoc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_tcoc_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_voc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_voc_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_wsd.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_wsd_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_yq_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_yq_zc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_yyht_yc.png


BIN
src/assets/ZDimages/bigData3_2/icon_znjc_yyht_zc.png


BIN
src/assets/ZDimages/bigData3_2/img_mhz.png


+ 21 - 10
src/utils/evacuationLayout.js

@@ -112,14 +112,18 @@ export function setJsData(data) {
 export function addDoorPoint(newMapList) {
   let labNum = 0;
   let escapeNum = 0;
+  let corridorNum = 0;
   let lightNum = 0;
+  let evacuationList = JSON.parse(JSON.stringify(newMapList));
   for (let i = 0; i < newMapList.length; i++) {
     if (newMapList[i].type == 1 || newMapList[i].type == 3) {
       if(newMapList[i].type == 1){
         newMapList[i].key = 'lab'+labNum;
+        evacuationList[i].key = 'lab'+labNum;
         labNum++
       }else if(newMapList[i].type == 3){
         newMapList[i].key = 'escape'+escapeNum;
+        evacuationList[i].key = 'escape'+escapeNum;
         escapeNum++
       }
       //生成门点
@@ -174,6 +178,8 @@ export function addDoorPoint(newMapList) {
         }
       }
     } else if (newMapList[i].type == 2) {
+      evacuationList[i].key = 'corridor'+corridorNum;
+      corridorNum++
       //生成交通点
       let x1 = null
       let y1 = null
@@ -274,12 +280,14 @@ export function addDoorPoint(newMapList) {
       for (let s = 0; s < newMapList[i].lightList.length; s++){
         if( newMapList[i].lightList[s].type == "light"){
           newMapList[i].lightList[s].key = 'light'+lightNum;
+          evacuationList[i].lightList[s].key = 'light'+lightNum;
           lightNum++
         }
       }
     }
   }
-  return { mapList: newMapList, newList: connectionPoint(newMapList) }
+  // return console.log(newMapList);
+  return { mapList: newMapList, newList: connectionPoint(newMapList),evacuationList:evacuationList }
 }
 
 /*
@@ -347,35 +355,38 @@ export function calculateDoorPoint(bigObj, minObj, type) {
 export function connectionPoint(newMapList) {
   let list = []
   let doorNum = 0
+  let escapeNum = 0
   let lightNum = 0
   let trafficNum = 0
   let trafficNumOne = 0
-  let doorNumOne = 0
   // 绑定名称
   for (let i = 0; i < newMapList.length; i++) {
     if (newMapList[i].type == 2) {
       for (let j = 0; j < newMapList[i].lightList.length; j++) {
         if (newMapList[i].lightList[j].type == 'lab') {
-          doorNum++
-          newMapList[i].lightList[j].name = 'lab' + doorNum
+          // newMapList[i].lightList[j].name = 'lab' + doorNum
+          newMapList[i].lightList[j].name = newMapList[i].lightList[j].key
           newMapList[i].lightList[j].type = 'lab'
+          doorNum++
         }
         if (newMapList[i].lightList[j].type == 'escape') {
-          doorNumOne++
-          newMapList[i].lightList[j].name = 'escape' + doorNumOne
+          // newMapList[i].lightList[j].name = 'escape' + escapeNum
+          newMapList[i].lightList[j].name = newMapList[i].lightList[j].key
           newMapList[i].lightList[j].type = 'escape'
+          escapeNum++
         } else if (newMapList[i].lightList[j].type == 'light') {
-          lightNum++
-          newMapList[i].lightList[j].name = 'light' + lightNum
+          // newMapList[i].lightList[j].name = 'light' + lightNum
+          newMapList[i].lightList[j].name = newMapList[i].lightList[j].key
           newMapList[i].lightList[j].type = 'light'
+          lightNum++
         } else if (newMapList[i].lightList[j].type == 'traffic') {
-          trafficNum++
           newMapList[i].lightList[j].name = 'traffic' + trafficNum
           newMapList[i].lightList[j].type = 'traffic'
+          trafficNum++
         } else if (newMapList[i].lightList[j].type == 'connect') {
-          trafficNumOne++
           newMapList[i].lightList[j].name = 'connect' + trafficNumOne
           newMapList[i].lightList[j].type = 'connect'
+          trafficNumOne++
         }
       }
     }

+ 14 - 4
src/views/comprehensive/laboratoryManagement/building/buildingDetails.vue

@@ -285,6 +285,7 @@
 </template>
 
 <script>
+  import { Loading } from 'element-ui'
   import { getToken } from "@/utils/auth";
   import { checkDoorTo,checkLightDirection,checkRoom,calculateTrafficPoint,addDoorPoint,
     doorMoveJudge,lightMoveJudge,roomMove,roomAdd,lightAdd,addDoor,fourCornersZoom,
@@ -298,6 +299,7 @@
     data() {
       return {
         loading:false,
+        loadingInstance:{},
         uploadImgUrl: this.uploadUrl(), // 上传的图片服务器地址
         headers: {
           Authorization: "Bearer " + getToken(),
@@ -461,6 +463,7 @@
       // this.$set(this,'mapSrc','1');
     },
     methods:{
+      //提交
       setDataButton(){
         let self = this;
         if(checkRoom(this.mapList)&&
@@ -516,6 +519,7 @@
             buildFloorLayouts:roomList,//房间数据
             exitPointRelayList:lightList,//灯数据
             layoutData:JSON.stringify(this.mapList),//布局数据
+            layoutJoinData:JSON.stringify(obj.evacuationList),//布局数据
           };
           console.log('newObj',newObj);
           lineVertex(newObj).then(response => {
@@ -534,6 +538,8 @@
           this.$set(this,'mapSrc',this.propsData.imgUrl);
           this.$set(this,'layerWidth',this.propsData.canvasWidth);
           this.$set(this,'layerHeight',this.propsData.canvasHeight);
+          this.$set(this,'maxWidth',this.propsData.canvasWidth);
+          this.$set(this,'maxHeight',this.propsData.canvasHeight);
           this.$set(this,'mapList',JSON.parse(this.propsData.layoutData));
           this.$set(this,'shadeBoxType',1);
         }else{
@@ -995,10 +1001,11 @@
       },
       //上传
       handleAvatarSuccess(res, file, type) {
-        console.log('res',res);
-        console.log('file',file);
-        console.log('type',type);
+        // console.log('res',res);
+        // console.log('file',file);
+        // console.log('type',type);
         if(res){
+          this.loadingInstance.close();
           if(res.data){
             if(res.data.url){
               this.$set(this,'mapSrc',res.data.url)
@@ -1013,7 +1020,8 @@
         if (file.type == 'image/png' || file.type == 'image/jpeg' || file.type == 'image/gif') {
           this.asyncImgChecked(file).then(data => {
             if (data) {
-              console.log('data',data);
+              // console.log('data',data);
+              this.loadingInstance = Loading.service({ spinner:"", background: 'rgba(255, 255, 255, 0.1)' })
               return true;
             } else {
               this.$message.error('图片尺寸不能大于于1500 X 1000')
@@ -1043,6 +1051,8 @@
               }else{
                 self.$set(self,'layerWidth',width);
                 self.$set(self,'layerHeight',height);
+                self.$set(self,'maxWidth',width);
+                self.$set(self,'maxHeight',height);
                 resolve(true)
               }
             }

+ 1 - 0
src/views/comprehensive/laboratoryManagement/building/newIndex.vue

@@ -853,6 +853,7 @@
             type: type,
             parentId: item.parentId
           }
+          this.$set(this,'parentId',item.parentId);
           this.getTreeSonList(obj)
         }
       },

Plik diff jest za duży
+ 1453 - 189
src/views/newEvacuationBigData.vue