Quellcode durchsuchen

Merge branch 'dev' of http://39.106.8.246:3003/web/ibms into dev

zhangyu vor 4 Jahren
Ursprung
Commit
9bb4fa2a5d

+ 2 - 3
src/components/point/report/objectInstance.vue

@@ -34,8 +34,7 @@
 
 <script>
 import { mapGetters } from 'vuex'
-import { SGraphyView } from "@saga-web/graphy/lib";
-import { LocationPointScene, DivideFloorScene } from "@saga-web/cad-engine"
+import { LocationPointScene, DivideFloorScene, FloorView } from "@saga-web/cad-engine"
 import { SColor } from "@saga-web/draw/lib";
 
 import {
@@ -303,7 +302,7 @@ export default {
         //刷新canvas
         that.refreshCanvas = new Date().getTime();
         if (!that.views[key]) {
-          that.views[key] = new SGraphyView(`${that.forms[key].instanceId}`)
+          that.views[key] = new FloorView(`${that.forms[key].instanceId}`)
         }
         that.views[key].scene = null;
         that.scenes[key] = null;

+ 20 - 10
src/views/data_admin/buildGraphy/graphyCanvas.vue

@@ -9,8 +9,8 @@
     </div>
     <!-- 底部操作按钮 -->
     <el-row v-show="type == 3" class="canvas-actions-box">
-      <canvasFun @move="moveCanvas" @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @divide="divide" @clearDivide="clearDivide" @undo="undo"
-        @redo="redo" @scale="scale" :isEdit="isEdit" :config="config" ref="canvasFun"></canvasFun>
+      <canvasFun @move="moveCanvas" @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @saveJson="saveJson" @divide="divide" @clearDivide="clearDivide"
+        @undo="undo" @redo="redo" @scale="scale" :isEdit="isEdit" :config="config" ref="canvasFun"></canvasFun>
     </el-row>
     <div v-show="menuShow" id="menu" ref="menu">
       <p @click="getDatails">编辑该标签</p>
@@ -27,8 +27,7 @@ import { mapGetters, mapActions } from "vuex";
 import {
   updateLocationPoint, //更新点位标签
 } from "@/api/scan/request";
-import { SGraphyView } from "@saga-web/graphy/lib";
-import { LocationPointScene, MarkerItem, SpaceItem } from "@saga-web/cad-engine/lib";
+import { FloorView, LocationPointScene, MarkerItem, SpaceItem } from "@saga-web/cad-engine/lib";
 import { SPoint } from "@saga-web/draw/lib";
 
 export default {
@@ -57,7 +56,13 @@ export default {
     };
   },
   computed: {
-    ...mapGetters('layout', ['projectId'])
+    ...mapGetters("layout", ["projectId", "projects"]),
+    projectName() {
+      let projectObj = this.projects.find(item => {
+        return item.id == this.projectId
+      })
+      return projectObj ? projectObj.name ? projectObj.name : projectObj.id : this.projectId
+    }
   },
   created() { },
   mounted() {
@@ -76,6 +81,7 @@ export default {
         this.type = 2;
       } else {
         this.buildMess = data;
+        this.buildFloorName = data.buildFloorName
         this.type = 3;
       }
     },
@@ -152,7 +158,7 @@ export default {
         this.view.scene.root.children = [];
         this.view = null;
       }
-      this.view = new SGraphyView("canvas");
+      this.view = new FloorView("canvas");
     },
     // 定位
     locationGraphy(point) {
@@ -162,7 +168,7 @@ export default {
     },
     //点击按钮
     addPoint(point) {
-      
+
       if (this.point.Id != point.Id) {
         console.log(point)
         this.point = point;
@@ -240,7 +246,7 @@ export default {
         this.view.scene = null;
         return
       }
-      this.view = new SGraphyView('canvas')
+      this.view = new FloorView('canvas')
     },
     // 清除默认左右键事件
     disableRightButton() {
@@ -269,11 +275,15 @@ export default {
     },
     // 保存为png
     savePng() {
-      this.view.saveImage(`${this.buildMess.code}.png`, 'png');
+      this.view.saveImage(`${this.projectName}-${this.buildFloorName}.png`, 'png');
     },
     // 保存为svg
     saveSvg() {
-      this.view.saveSceneSvg(`${this.buildMess.code}.svg`, 6400, 4800);
+      this.view.saveSceneSvg(`${this.projectName}-${this.buildFloorName}.svg`, 6400, 4800);
+    },
+    // 保存json
+    saveJson() {
+      this.view.saveFloorJson(`${this.projectName}-${this.buildFloorName}.json`)
     },
     // 切割划分
     divide() {

+ 12 - 6
src/views/data_admin/buildGraphy/index.vue

@@ -8,14 +8,16 @@
         </div> -->
     <div class='search-title'>
       <span class="p12">建筑楼层</span>
-      <el-cascader placeholder='请选择' v-model="buildVlaue" :options="options" @change="changeFloor" filterable :props="props" ref="buildfloor"></el-cascader>
+      <el-cascader placeholder='请选择' v-model="buildVlaue" :options="options" @change="changeFloor" filterable :props="props" ref="buildfloor">
+      </el-cascader>
     </div>
     <div class="graphy-view">
       <div class="graphy-main">
         <graphy-canvas v-if="show" @getDetails="getDetails" @resetPoint="resetPoint" ref="canvas"></graphy-canvas>
       </div>
       <div class="graphy-right">
-        <graphy-tabs v-show="show" ref="tabs" :floorOption="options" :pointParam="pointParam" @setFalg="setFalg" @getLocation="getLocation" @getPointList="sendPointList" @closeCanvas="closeCanvas">
+        <graphy-tabs v-show="show" ref="tabs" :floorOption="options" :pointParam="pointParam" @setFalg="setFalg" @getLocation="getLocation"
+          @getPointList="sendPointList" @closeCanvas="closeCanvas">
         </graphy-tabs>
       </div>
     </div>
@@ -61,7 +63,7 @@ export default {
         ProjId: this.projectId, //项目id
         UserId: this.userId, //用户id
         fllorName: "",
-        buildingData:[],//建筑楼层信息
+        buildingData: [],//建筑楼层信息
       },
       options: [],
       map: null,
@@ -81,14 +83,17 @@ export default {
     //修改楼层
     changeFloor(val) {
       let floorMap = "",
-        name = ""
+        name = "",
+        buildFloorName = ''
       this.options.map(item => {
         if (!!item.Floor && item.Floor.length) {
           if (item.BuildID == val[0]) {
+            buildFloorName = `${item.BuildLocalName || item.BuildName}-`
             item.Floor.map(child => {
               if (child.BuildID == val[1]) {
                 floorMap = child.StructureInfo ? child.StructureInfo.FloorMap : ''
                 name = child.FloorLocalName
+                buildFloorName += `${child.FloorLocalName || child.FloorName}`
               }
             })
           }
@@ -98,7 +103,8 @@ export default {
         code: val[1],
         map: floorMap,
         name: name,
-        buildingData:val
+        buildingData: val,
+        buildFloorName: buildFloorName
       }
       this.getPoint(obj)
     },
@@ -179,7 +185,7 @@ export default {
       this.$refs.tabs.getDetails(item);
     },
     //关闭canvas
-    closeCanvas(){
+    closeCanvas() {
       this.show = false;
     }
   },

+ 16 - 7
src/views/ready/buildfloor/drawGraphy/drawFloor.vue

@@ -9,11 +9,11 @@
 </template>
 
 <script>
-import { SGraphyView } from "@saga-web/graphy/lib";
 import { DivideFloorScene, FloorView, Opt } from "@saga-web/cad-engine/lib"
 import { SColor, SPoint } from "@saga-web/draw/lib";
 import canvasFun from "@/components/business_space/newGraphy/canvasFun"
 import { floorQueryOutline } from "@/api/scan/request";
+import { mapGetters } from "vuex";
 export default {
   components: {
     canvasFun
@@ -51,6 +51,15 @@ export default {
       default: false
     }
   },
+  computed: {
+    ...mapGetters("layout", ["projectId", "projects"]),
+    projectName() {
+      let projectObj = this.projects.find(item => {
+        return item.id == this.projectId
+      })
+      return projectObj ? projectObj.name ? projectObj.name : projectObj.id : this.projectId
+    }
+  },
   created() {
     this.FloorID = this.$route.query.FloorID;
     Opt.sceneMarkColor = new SColor('#00000080');
@@ -166,11 +175,15 @@ export default {
     },
     // 保存为png
     savePng() {
-      this.view.saveImage(`${this.floor}.png`, 'png');
+      this.view.saveImage(`${this.projectName}-${this.buildFloorName}.png`, 'png');
     },
     // 保存为svg
     saveSvg() {
-      this.view.saveSceneSvg(`${this.floor}.svg`, 6400, 4800);
+      this.view.saveSceneSvg(`${this.projectName}-${this.buildFloorName}.svg`, 6400, 4800);
+    },
+    // 保存json
+    saveJson() {
+      this.view.saveFloorJson(`${this.projectName}-${this.buildFloorName}.json`)
     },
     // 切割划分
     divide() {
@@ -184,10 +197,6 @@ export default {
     changeAbsorb(isAbsorbing) {
       this.drawMainScene.isAbsorbing = isAbsorbing;
     },
-    // 保存json
-    saveJson() {
-      this.view.saveFloorJson(`${this.floor}.json`)
-    },
     // 撤销
     undo() {
 

+ 3 - 1
src/views/ready/buildfloor/index.vue

@@ -175,6 +175,7 @@
         },
         loading: false, //列表loading
         curBuildId: "", //当前选中的建筑id
+        curBuildName: "", //当前选中建筑的名称
         curFloorId: "", //当前选中的楼层id
         modelId: "",
         alreadyRelatedModel: [],
@@ -216,6 +217,7 @@
         });
         this.buildList[index].active = true;
         this.curBuildId = this.buildList[index].BuildID;
+        this.curBuildName = this.buildList[index].BuildLocalName || this.buildList[index].BuildName;
         this.getFloorTableData();
         this.$forceUpdate();
       },
@@ -408,7 +410,7 @@
           this.modelId = "";
         } else {
           this.modelId = row.ModelId;
-          let pa = {modelId: this.modelId, FloorID: row.FloorID, BuildID: row.BuildID};
+          let pa = {modelId: this.modelId, FloorID: row.FloorID, BuildID: row.BuildID, BuildName: this.curBuildName};
           this.$router.push({name: "repetitionGraphy", query: pa});
         }
       },

+ 4 - 1
src/views/ready/buildfloor/repetitionGraphy.vue

@@ -41,6 +41,7 @@ export default {
     this.modelId = this.$route.query.modelId;
     this.FloorID = this.$route.query.FloorID;
     this.BuildID = this.$route.query.BuildID;
+    this.BuildName = this.$route.query.BuildName;
     this.init();
   },
   mounted() { },
@@ -121,10 +122,12 @@ export default {
         this.alreadyRelatedModel = res.Content.map(t => {
           if (t.FloorID != this.FloorID) return t.ModelId
           this.sign = t.Sign > 0
+          this.FloorName = t.FloorLocalName || t.FloorName
+          this.$refs.drawFloor.buildFloorName = `${this.BuildName}-${this.FloorName}`
         }).filter(t => t);
       });
     },
-    changeSign(flag){
+    changeSign(flag) {
       this.otherSign = flag
     }
   },

+ 4 - 5
src/views/screen/splitscreen/integrateresults/index.vue

@@ -24,8 +24,8 @@
       <div class="content-right" id="cadBox" v-loading="loading">
         <canvas v-show="drawCanvas" :height="cadHeight" :width="cadWidth" id="exampleCanvas" :k="refreshCanvas"></canvas>
         <div v-show="drawCanvas" class="operate">
-          <canvasFun @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @scale="scale" @saveJson="saveJson" :config="config" ref="canvasFun">
-          </canvasFun>
+          <!-- <canvasFun @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @scale="scale" @saveJson="saveJson" :config="config" ref="canvasFun">
+          </canvasFun> -->
         </div>
         <div class="no-data" v-show="!drawCanvas">
           <div class="position-icon">
@@ -39,8 +39,7 @@
 </template>
 
 <script>
-import { SGraphyView } from "@saga-web/graphy/lib";
-import { LocationPointScene, DivideFloorScene } from "@saga-web/cad-engine";
+import { LocationPointScene, DivideFloorScene, FloorView } from "@saga-web/cad-engine";
 import { SColor } from "@saga-web/draw/lib";
 import { queryEquip, floorQuery, zoneQueryOutline } from '@/api/scan/request';
 //组件
@@ -134,7 +133,7 @@ export default {
         //刷新canvas
         this.refreshCanvas = new Date().getTime();
         if (!this.views) {
-          this.views = new SGraphyView('exampleCanvas')
+          this.views = new FloorView('exampleCanvas')
         }
         this.views.scene = null;
         this.scenes = null;