From a0e5e53faee9877a4fcc2baf7600d11402392a05 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期日, 25 六月 2023 17:43:50 +0800
Subject: [PATCH] 发布管理添加OSGB,LAS数据类型发布;综合展示页面属性查询,转空柱状图添加按项目分类查询

---
 src/views/datamanage/uploadmanage.vue  |  132 ++++++++++++++++++
 src/assets/lang/zh.js                  |    6 
 src/views/Tools/LayerTree.vue          |  221 ++++++++++++++++++++-----------
 src/views/Synthesis/LeftMenu.vue       |    2 
 src/components/preview_map.vue         |   13 +
 src/assets/lang/en.js                  |    6 
 src/components/MapView/mapSpacePop.vue |   13 +
 src/components/Screen/ProjectTree.vue  |    2 
 8 files changed, 300 insertions(+), 95 deletions(-)

diff --git a/src/assets/lang/en.js b/src/assets/lang/en.js
index 69e8700..205aec5 100644
--- a/src/assets/lang/en.js
+++ b/src/assets/lang/en.js
@@ -206,7 +206,11 @@
       labe11: 'Please enter the minimum level (0 to 22)',
       labe12: 'Please enter the maximum level (0 to 22)',
       labe13: 'Please enter a name',
-      labe14: 'Remove invalid values'
+      labe14: 'Remove invalid values',
+      heightOffset: 'Height offset',
+      coordinateSystemID: 'Coordinate System',
+      label1: 'Please enter the height offset (-10000~10000)',
+      label2: 'Please select a coordinate system'
     },
     dictionaryManage: 'dictionaryManage',
     dictionaryManageObj: {
diff --git a/src/assets/lang/zh.js b/src/assets/lang/zh.js
index b3642d3..61d9e64 100644
--- a/src/assets/lang/zh.js
+++ b/src/assets/lang/zh.js
@@ -199,7 +199,11 @@
       labe11: '璇疯緭鍏ユ渶灏忕骇鍒�(0 ~ 22)',
       labe12: '璇疯緭鍏ユ渶澶х骇鍒�(0 ~ 22)',
       labe13: '璇疯緭鍏ュ悕绉�',
-      labe14: '鍘婚櫎鏃犳晥鍊�'
+      labe14: '鍘婚櫎鏃犳晥鍊�',
+      heightOffset: '楂樺害鍋忕Щ閲�',
+      coordinateSystemID: '鍧愭爣绯�',
+      label1: '璇疯緭鍏ラ珮搴﹀亸绉婚噺锛�-10000 ~ 10000 锛�',
+      label2: '璇烽�夋嫨鍧愭爣绯�'
     },
     dictionaryManage: '瀛楀吀绠$悊',
     dictionaryManageObj: {
diff --git a/src/components/MapView/mapSpacePop.vue b/src/components/MapView/mapSpacePop.vue
index 6581e42..dcc924d 100644
--- a/src/components/MapView/mapSpacePop.vue
+++ b/src/components/MapView/mapSpacePop.vue
@@ -466,8 +466,14 @@
       this.formInline.region = this.options[0].value
     },
     setListDataStart() {
-      this.listdata.pageSize = 10
-      this.listdata.pageIndex = 1
+      this.listdata = {
+        pageIndex: 1,
+        pageSize: 10,
+        name: null,
+        srid: 4326,
+        wkt: null,
+        filter: null,
+      }
       this.tableData = []
     },
     //鍒濆鍖栨煡璇㈡潯浠�
@@ -613,7 +619,10 @@
       } else {
         this.listdata.filter = null;
       }
+      if (this.$store.state.pigCode) {
+        this.listdata.dirs = this.$store.state.pigCode;
 
+      }
 
       const data = await dataQuerySelectByPage(this.listdata)
       if (data.code != 200) {
diff --git a/src/components/Screen/ProjectTree.vue b/src/components/Screen/ProjectTree.vue
index 0402085..e35807c 100644
--- a/src/components/Screen/ProjectTree.vue
+++ b/src/components/Screen/ProjectTree.vue
@@ -434,7 +434,7 @@
         new Cesium.Cesium3DTileset({
           name: res.cnName,
           url: url, //192.168.20.106,to4
-          maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
+          maximumScreenSpaceError: url.indexOf("/pnts/") > -1 ? 16 : 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
           maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512
           dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse
           skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
diff --git a/src/components/preview_map.vue b/src/components/preview_map.vue
index eec2e45..85b9640 100644
--- a/src/components/preview_map.vue
+++ b/src/components/preview_map.vue
@@ -831,7 +831,7 @@
           new Cesium.Cesium3DTileset({
             name: rs.cnName,
             url: url, //192.168.20.106,to4
-            maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
+            maximumScreenSpaceError: url.indexOf("/pnts/") > -1 ? 16 : 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
             maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512
             dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse
             skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
@@ -991,6 +991,7 @@
         var res = this.$store.state.previewLayer;
         var type = res.type;
         res.ulr = res.url.replace("{host}", iisHost);
+
         if (type == 'DEM') {
           window.terrainLayer.deleteObject();
           // Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider();
@@ -1025,12 +1026,13 @@
           Viewer.camera.flyTo({
             destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], height),
           });
-        } else if (type == '3dml' || type == 'fbx' || type == 'ifc' || type == 'rvt' || type == 'cpt') {
+        } else if (type == '3dml' || type == 'fbx' || type == 'ifc' || type == 'rvt'
+          || type == 'cpt' || type == 'osgb' || type == 'las' || type == 'laz') {
           if (this.app.tileset) viewer.scene.primitives.remove(this.app.tileset);
 
           this.app.tileset = this.createTileset(res);
           var that = this;
-
+          this.editModelFlag = true;
           Viewer.scene.primitives.add(this.app.tileset).readyPromise.then(function (ts) {
 
             that.setModleLocatin()
@@ -1197,6 +1199,7 @@
     },
     //鏄鹃殣
     showTileset() {
+
       if (!this.app.tileset) return;
       this.app.tileset.show = !this.app.tileset.show;
     },
@@ -1212,7 +1215,7 @@
         name: 'tsTest',
         skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
         baseScreenSpaceError: 1024,
-        maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16锛屾暟鍊煎姞澶ц兘璁╂渶缁堟垚鍍忓彉妯$硦
+        maximumScreenSpaceError: res.url.indexOf("/pnts/") > -1 ? 16 : 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16锛屾暟鍊煎姞澶ц兘璁╂渶缁堟垚鍍忓彉妯$硦
         skipScreenSpaceErrorFactor: 16,
         skipLevels: 1,
         immediatelyLoadDesiredLevelOfDetail: false,
@@ -1230,7 +1233,7 @@
       });
     },
     setEditModelLayer(res) {
-      this.editModelFlag = true;
+
       if (res.json) {
         var json = JSON.parse(res.json)
         this.modelForm = json;
diff --git a/src/views/Synthesis/LeftMenu.vue b/src/views/Synthesis/LeftMenu.vue
index d969198..7c77664 100644
--- a/src/views/Synthesis/LeftMenu.vue
+++ b/src/views/Synthesis/LeftMenu.vue
@@ -1729,7 +1729,7 @@
                 new Cesium.Cesium3DTileset({
                   name: res.cnName,
                   url: modelUrl + "/tileset/m/SN/tileset.json",
-                  maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
+                  maximumScreenSpaceError: modelUrl.indexOf("/pnts/") > -1 ? 16 : 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
                   maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512
                   dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse
                   skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
diff --git a/src/views/Tools/LayerTree.vue b/src/views/Tools/LayerTree.vue
index decb1b3..bfac89b 100644
--- a/src/views/Tools/LayerTree.vue
+++ b/src/views/Tools/LayerTree.vue
@@ -2,52 +2,107 @@
   <div class="lalala tree-container">
     <el-form ref="form">
       <el-form-item>
-        <el-select v-model="$store.state.pigCode" clearable filterable style="width :100%" @change="prjChanged"
-          placeholder="璇烽�夋嫨椤圭洰">
-          <el-option v-for="item in menus" :key="item.code" :label="item.name" :value="item.code">
+        <el-select
+          v-model="$store.state.pigCode"
+          clearable
+          filterable
+          style="width :100%"
+          @change="prjChanged"
+          placeholder="璇烽�夋嫨椤圭洰"
+        >
+          <el-option
+            v-for="item in menus"
+            :key="item.code"
+            :label="item.name"
+            :value="item.code"
+          >
           </el-option>
         </el-select>
       </el-form-item>
       <el-form-item>
-        <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText" class="search">
+        <el-input
+          placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
+          v-model="filterText"
+          class="search"
+        >
         </el-input>
       </el-form-item>
     </el-form>
-    <el-tree ref="tree" :data="treeData" node-key="id" show-checkbox :props="defaultProps" @node-click="handleLeftclick"
-      @node-contextmenu="rightClick" @check="handleCheckChange" :default-checked-keys="handleTreeCheck"
-      :expand-on-click-node="false" :filter-node-method="filterNode" draggable>
-      <span class="slot-t-node"
-              slot-scope="{ node, data }">
-          <span v-show="!data.isEdit">
-            <span :class="[data.id >= 99 ? 'slot-t-node--label' : '']">{{
+    <el-tree
+      ref="tree"
+      :data="treeData"
+      node-key="id"
+      show-checkbox
+      :props="defaultProps"
+      @node-click="handleLeftclick"
+      @node-contextmenu="rightClick"
+      @check="handleCheckChange"
+      :default-checked-keys="handleTreeCheck"
+      :expand-on-click-node="false"
+      :filter-node-method="filterNode"
+      draggable
+    >
+      <span
+        class="slot-t-node"
+        slot-scope="{ node, data }"
+      >
+        <span v-show="!data.isEdit">
+          <span :class="[data.id >= 99 ? 'slot-t-node--label' : '']">{{
               node.label
             }}</span>
-      </span>
-      <span v-show="data.isEdit">
-            <el-input class="slot-t-input"
-                      size="mini"
-                      autofocus
-                      v-model="data.label"
-                      :ref="'slotTreeInput' + data.id"
-                      @blur.stop="nodeBlur(node, data)"
-                      @keydown.native.enter="nodeBlur(node, data)"></el-input>
-          </span>
+        </span>
+        <span v-show="data.isEdit">
+          <el-input
+            class="slot-t-input"
+            size="mini"
+            autofocus
+            v-model="data.label"
+            :ref="'slotTreeInput' + data.id"
+            @blur.stop="nodeBlur(node, data)"
+            @keydown.native.enter="nodeBlur(node, data)"
+          ></el-input>
+        </span>
       </span>
     </el-tree>
-    <el-card class="box-card" ref="card" :style="{ ...rightClickMenuStyle }" v-show="menuVisible">
-      <div class="edit" @click="showLayerAttribute()" v-if="showProp && !shwoHistogram">
+    <el-card
+      class="box-card"
+      ref="card"
+      :style="{ ...rightClickMenuStyle }"
+      v-show="menuVisible"
+    >
+      <div
+        class="edit"
+        @click="showLayerAttribute()"
+        v-if="showProp && !shwoHistogram"
+      >
         <i class="el-icon-tickets"></i>&nbsp;&nbsp;灞炴��
       </div>
-      <div class="edit" @click="positioning()" v-if="showLocal">
+      <div
+        class="edit"
+        @click="positioning()"
+        v-if="showLocal"
+      >
         <i class="el-icon-tickets"></i>&nbsp;&nbsp;瀹氫綅
       </div>
-      <div class="edit" @click="pellucidity()" v-if="showOpacity">
+      <div
+        class="edit"
+        @click="pellucidity()"
+        v-if="showOpacity"
+      >
         <i class="el-icon-tickets"></i>&nbsp;&nbsp;閫忔槑搴�
       </div>
-      <div class="edit" @click="histogram()" v-show="shwoHistogram">
+      <div
+        class="edit"
+        @click="histogram()"
+        v-show="shwoHistogram"
+      >
         <i class="el-icon-tickets"></i>&nbsp;&nbsp;閽诲瓟鏌辩姸鍥�
       </div>
-      <div class="edit" v-show="shwoTileDown" @click="tileDownload()">
+      <div
+        class="edit"
+        v-show="shwoTileDown"
+        @click="tileDownload()"
+      >
         <i class="el-icon-download"></i>&nbsp;&nbsp;鐡︾墖涓嬭浇
       </div>
     </el-card>
@@ -64,7 +119,7 @@
 export default {
   name: "tree",
   components: { queryinfo },
-  data () {
+  data() {
     return {
       isBusy: false, // 姝e繖
       lastPrjCode: "", // 鏈�鍚庨�夋嫨椤圭洰缂栫爜
@@ -101,11 +156,11 @@
     };
   },
   watch: {
-    filterText (val) {
+    filterText(val) {
       this.$refs.tree.filter(val);
     },
   },
-  mounted () {
+  mounted() {
     this.getMenus();
     this.$bus.$on("treeDataCopy", (res) => {
       this.$store.state.treeData = this.treeData;
@@ -121,12 +176,12 @@
   },
   methods: {
     // 鑾峰彇鑿滃崟
-    async getMenus () {
+    async getMenus() {
       let data = await project_selectDirAll();
       if (data && data.code == 200) this.menus = data.result;
     },
     // 鍒濆鍖栧浘灞�
-    async layersStart () {
+    async layersStart() {
       let data = await perms_selectLayers();
       if (data.code != 200) {
         return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触");
@@ -147,7 +202,7 @@
       sessionStorage.setItem("checkedLayers", JSON.stringify(checkedLayers));
     },
     // 璁剧疆鏍戞暟鎹�
-    setTreeData (source) {
+    setTreeData(source) {
       /*let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕
       return cloneData.filter((father) => {
         // 寰幆鎵�鏈夐」
@@ -164,7 +219,7 @@
       return arr;
     },
     // 璁剧疆鏍戝瓙鑺傜偣鏁版嵁
-    setTreeChildData (data, arr, pid) {
+    setTreeChildData(data, arr, pid) {
       let i = 0;
       while (i < data.length) {
         let d = data[i];
@@ -188,7 +243,7 @@
       }
     },
     // 鑺傜偣鑾峰緱鐒︾偣浜嬩欢
-    nodeBlur (node, data) {
+    nodeBlur(node, data) {
       if (!data.label.length) return this.$message.error("鑿滃崟鍚嶄笉鍙负绌猴紒");
       if (data.isEdit) this.$set(data, "isEdit", false);
       this.$nextTick(() => {
@@ -196,22 +251,22 @@
       });
     },
     // 榧犳爣宸﹀嚮浜嬩欢
-    handleLeftclick (data, node) {
+    handleLeftclick(data, node) {
       this.rmListener();
     },
     // 鍙栨秷榧犳爣鐩戝惉浜嬩欢
-    rmListener () {
+    rmListener() {
       this.menuVisible = false;
       //  瑕佸強鏃跺叧鎺夌洃鍚紝涓嶅叧鎺夌殑鏄竴涓潙锛屼笉淇′綘璇曡瘯锛岃櫧鐒跺墠鍙版樉绀虹殑鏃跺�欐病鏈夊暐姣涚梾锛屽姞涓�涓猘lert浣犲氨鐭ラ亾浜�
       document.removeEventListener("click", this.rmListener);
     },
     // 杩囨护鑺傜偣
-    filterNode (value, data) {
+    filterNode(value, data) {
       if (!value) return true;
       return data.cnName.indexOf(value) !== -1;
     },
     // 榧犳爣鍙冲嚮浜嬩欢
-    rightClick (event, object, node, element) {
+    rightClick(event, object, node, element) {
       if (object.type == 1 || node.data.children != null) return;
 
       this.currentNode = node;
@@ -229,7 +284,7 @@
       this.$refs.card.$el.style.top = event.pageY + "px";
     },
     // 灞炴�ф樉绀�
-    showLayerAttribute (data) {
+    showLayerAttribute(data) {
       this.rmListener();
       this.currentData = data ? data : this.currentData;
       let layer = this.currentData.enName.replaceAll("_", "");
@@ -238,7 +293,7 @@
       this.$store.state.mapPopBoxFlag = "2";
     },
     // 瀹氫綅
-    async positioning () {
+    async positioning() {
       this.rmListener();
       if (["Tileset", "3DML"].indexOf(this.currentData.serveType) > -1) {
         for (let i in Viewer.scene.primitives._primitives) {
@@ -267,7 +322,7 @@
       }
     },
     // 閽诲瓟鏌辩姸鍥�
-    async histogram () {
+    async histogram() {
       this.rmListener();
       let layer = this.currentData.enName.replaceAll("_", "");
       this.$store.state.mapSpaceQueryLayer = layer;
@@ -275,7 +330,7 @@
       this.$store.state.showPopBoxFlag = true;
     },
     // 閫忔槑搴�
-    pellucidity () {
+    pellucidity() {
       this.rmListener();
       for (let j in Viewer.scene.primitives._primitives) {
         if (Viewer.scene.primitives._primitives[j].id == this.currentData.cnName) {
@@ -286,13 +341,13 @@
       }
     },
     // 鑾峰彇楂樺害
-    getHeight (level) {
+    getHeight(level) {
       if (level > -1 && level < 23) return this.levelArray[level];
 
       return this.levelArray[this.levelArray.length - 1];
     },
     // 鐡︾墖涓嬭浇
-    tileDownload () {
+    tileDownload() {
       this.rmListener();
 
       var that = this;
@@ -305,7 +360,7 @@
       );
     },
     // 鑾峰彇鐡︾墖鍥涜嚦鑼冨洿
-    getTileRectangle (res) {
+    getTileRectangle(res) {
       var value = res.rectangle.coordinates.getValue();
       var val = {
         pubid: this.currentData.pubid,
@@ -319,7 +374,7 @@
       this.$bus.$emit("titleDown", val);
     },
     // 鍥惧眰閫変腑浜嬩欢
-    handleCheckChange (data, checked) {
+    handleCheckChange(data, checked) {
       if (this.isBusy) return;
 
       let nodes = [];
@@ -355,7 +410,7 @@
       if (obj.WMS.length) this.setChangeWMS(obj.WMS, checked);
     },
     // 鑾峰彇瀛愯妭鐐�
-    getNodes (data, arr) {
+    getNodes(data, arr) {
       if (data.children) {
         for (let i = 0, c = data.children.length; i < c; i++) {
           let node = data.children[i];
@@ -370,7 +425,7 @@
       }
     },
     // 鑾峰彇鑺傜偣ID
-    getCheckNodesIds () {
+    getCheckNodesIds() {
       let nodes = this.$refs.tree.getCheckedNodes();
       let ids = [];
       for (let i in nodes) {
@@ -380,12 +435,12 @@
       return ids;
     },
     // 鍒囨崲WMS鏈嶅姟
-    setChangeWMS (layers, checked) {
+    setChangeWMS(layers, checked) {
       let value = this.$refs.tree.getCheckedNodes();
       this.$bus.$emit("showMenuLayer", value);
     },
     // 鍒囨崲Tileset
-    setChangeTileset (layers, checked) {
+    setChangeTileset(layers, checked) {
       let ids = this.getCheckNodesIds(), arr = [];
       for (let k in layers) {
         let layer = layers[k];
@@ -412,7 +467,7 @@
       if (arr.length) this.addTilesetLayers(arr);
     },
     // 娣诲姞Tileset鍥惧眰
-    addTilesetLayers (layers) {
+    addTilesetLayers(layers) {
       for (let i in layers) {
         let res = layers[i];
         let url = res.url.indexOf("{host}") > -1 ? res.url.replace("{host}", iisHost) : modelUrl + "/" + res.url;
@@ -466,7 +521,7 @@
       }
     },
     // 鍒囨崲TMS
-    setChangeTMS (layers, checked) {
+    setChangeTMS(layers, checked) {
       let ids = this.getCheckNodesIds(), arr = [];
       for (let j in layers) {
         let layer = layers[j];
@@ -486,7 +541,7 @@
       if (arr.length) this.addTMSLayers(arr);
     },
     // 娣诲姞TMS鍥惧眰
-    addTMSLayers (layers) {
+    addTMSLayers(layers) {
       for (let i in layers) {
         let res = layers[i];
         res.url = res.url.indexOf("{host}") > -1 ? res.url.replace("{host}", iisHost) : res.url;
@@ -506,7 +561,7 @@
       }
     },
     // 鍒囨崲Mpt
-    setChangeMpt (layers, checked) {
+    setChangeMpt(layers, checked) {
       let ids = this.getCheckNodesIds(), arr = [];
       for (let j in layers) {
         let layer = layers[j];
@@ -526,7 +581,7 @@
       if (arr.length) this.addMptLayers(arr);
     },
     // 娣诲姞Mpt鍥惧眰
-    addMptLayers (layers) {
+    addMptLayers(layers) {
       for (let i in layers) {
         let res = layers[i];
         if (res.url.indexOf("{host}") > -1) res.url = res.url.replace("{host}", iisHost);
@@ -540,7 +595,7 @@
       }
     },
     // 鍒囨崲DEM
-    setChangeDEM (layers, checked) {
+    setChangeDEM(layers, checked) {
       let ids = this.getCheckNodesIds(), arr = [];
       for (let i in layers) {
         let layer = layers[i];
@@ -554,7 +609,7 @@
       this.addDEMLayers(url, null == url);
     },
     // 娣诲姞DEM鍥惧眰
-    addDEMLayers (url, useSG) {
+    addDEMLayers(url, useSG) {
       if (useSG) {
         if (Viewer.terrainProvider._isMPT) return;
 
@@ -574,7 +629,7 @@
       });
     },
     // 璁剧疆Tileset鍙傛暟
-    async setTilesetArgs (tileset, res) {
+    async setTilesetArgs(tileset, res) {
       if (res.serveType == '3DML' || !res.pubid) {
         this.setTilesetHeigth(tileset, parseFloat(res.elev));
         return;
@@ -584,7 +639,7 @@
       if (data.code == 200 && data.result.json) this.setTilesetCoord(tileset, data.result.json);
     },
     // 璁剧疆Tileset楂樺害
-    setTilesetHeigth (tileset, height) {
+    setTilesetHeigth(tileset, height) {
       //3dtile妯″瀷鐨勮竟鐣岀悆浣�
       let boundingSphere = tileset.boundingSphere;
       //杩崱灏旂┖闂寸洿瑙掑潗鏍�=>鍦扮悊鍧愭爣锛堝姬搴﹀埗锛�
@@ -599,7 +654,7 @@
       // Viewer.flyTo(tileset);
     },
     // 璁剧疆Tileset鍧愭爣
-    setTilesetCoord (tileset, json) {
+    setTilesetCoord(tileset, json) {
       let vm = JSON.parse(json);
       let pos = Cesium.Cartesian3.fromDegrees(vm.lon, vm.lat, vm.height);
       let converter = Cesium.Transforms.eastNorthUpToFixedFrame;
@@ -609,7 +664,7 @@
       // Viewer.flyTo(tileset);
     },
     // 鏍规嵁Pubid璁剧疆TMS鍥惧眰
-    async setTMSLayerByPubid (res) {
+    async setTMSLayerByPubid(res) {
       const data = await comprehensive_selectPubById({ id: res.pubid });
       if (!data || data.code != 200) return;
 
@@ -637,8 +692,10 @@
       // }
     },
     // 鍒囨崲椤圭洰
-    prjChanged (code) {
+    prjChanged(code) {
+
       this.$store.state.pigCode = code;
+
       //if (code) {
       this.isBusy = true;
       let checkedLayers = this.getCheckedLayersByCode(code);
@@ -660,7 +717,7 @@
       }
     },
     // 鏍规嵁椤圭洰缂栫爜鑾峰彇閫変腑鍥惧眰
-    getCheckedLayersByCode (code) {
+    getCheckedLayersByCode(code) {
       let layers = [];
       for (let i = 0, c = this.treeData.length; i < c; i++) {
         this.getCheckedChildLayersByCode(this.treeData[i], code, layers, false);
@@ -669,7 +726,7 @@
       return layers;
     },
     // 鏍规嵁椤圭洰缂栫爜鑾峰彇閫変腑瀛愬浘灞�
-    getCheckedChildLayersByCode (data, code, layers, isPrj) {
+    getCheckedChildLayersByCode(data, code, layers, isPrj) {
       if (data.children && data.children.length) {
         for (let i = 0, c = data.children.length; i < c; i++) {
           let layer = data.children[i];
@@ -696,7 +753,7 @@
       }
     },
     // 鑾峰彇鏂版爲鏁版嵁
-    getNewTreeData (code) {
+    getNewTreeData(code) {
       let data = JSON.parse(JSON.stringify(this.sourceData));
       if (!code) return data;
 
@@ -706,7 +763,7 @@
       return data;
     },
     // 璁剧疆鏍戞暟鎹瓙鑺傜偣
-    setSubTreeData (data, code) {
+    setSubTreeData(data, code) {
       let j = 0;
       while (j < data.length) {
         let d = data[j];
@@ -725,7 +782,7 @@
       }
     },
     // 绉婚櫎椤圭洰鏍戞暟鎹�
-    rmPrjTreeData (data, code) {
+    rmPrjTreeData(data, code) {
       /*let j = 0;
       while (j < data.length) {
         let d = data[j];
@@ -778,7 +835,7 @@
       }
     },
     // 娣诲姞WFS鍥惧眰 *
-    addWFSLayers (res) {
+    addWFSLayers(res) {
       let url =
         res.resource +
         "?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
@@ -819,7 +876,7 @@
 </script>
 <style scoped lang="less">
 /* 鐐瑰嚮鑺傜偣鏃剁殑閫変腑棰滆壊 */
-.tree-container /deep/.el-tree-node.is-current>.el-tree-node__content {
+.tree-container /deep/.el-tree-node.is-current > .el-tree-node__content {
   color: #409eff !important;
 }
 
@@ -851,19 +908,19 @@
   padding-left: 16px;
 }
 
-.tree-container /deep/ .el-tree>.el-tree-node:before {
+.tree-container /deep/ .el-tree > .el-tree-node:before {
   border-left: none;
 }
 
-.tree-container /deep/ .el-tree>.el-tree-node:after {
+.tree-container /deep/ .el-tree > .el-tree-node:after {
   border-top: none;
 }
 
-.tree-container /deep/ .el-tree>.el-tree-node:before {
+.tree-container /deep/ .el-tree > .el-tree-node:before {
   border-left: none;
 }
 
-.tree-container /deep/ .el-tree>.el-tree-node:after {
+.tree-container /deep/ .el-tree > .el-tree-node:after {
   border-top: none;
 }
 
@@ -926,7 +983,11 @@
   z-index: 8;
 }
 
-.tree-container /deep/ .el-tree-node .el-tree-node__children .el-tree-node__content::before {
+.tree-container
+  /deep/
+  .el-tree-node
+  .el-tree-node__children
+  .el-tree-node__content::before {
   border-left: 0px dashed #ccc;
   height: 100%;
   top: 0;
@@ -946,7 +1007,7 @@
 }
 
 .tree-container /deep/ .el-tree-node {
-  .is-leaf+.el-checkbox .el-checkbox__inner {
+  .is-leaf + .el-checkbox .el-checkbox__inner {
     display: inline-block;
   }
 
@@ -955,7 +1016,11 @@
   }
 }
 
-.tree-container /deep/ .el-tree-node .el-tree-node__children .el-tree-node__content::after {
+.tree-container
+  /deep/
+  .el-tree-node
+  .el-tree-node__children
+  .el-tree-node__content::after {
   border-top: 0px dashed #ccc;
 }
 
@@ -973,7 +1038,7 @@
 /deep/.el-card__body {
   padding: 10px !important;
 
-  >div {
+  > div {
     padding-bottom: 10px;
     border-bottom: 1px solid #ccc;
 
diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue
index 05bf602..6af219c 100644
--- a/src/views/datamanage/uploadmanage.vue
+++ b/src/views/datamanage/uploadmanage.vue
@@ -624,6 +624,58 @@
       </div>
     </el-dialog>
 
+    <!-- OSGB LAS -->
+    <el-dialog
+      :title="$t('common.publish')"
+      :visible.sync="insertOsgbVisible"
+      width="25%"
+      :close-on-click-modal="false"
+      :show-close="false"
+    >
+      <div style="width:100%; ">
+        <el-form
+          :model="osgbLasLayer"
+          label-width="160px"
+        >
+          <el-form-item :label="$t('dataManage.vmobj.heightOffset')">
+            <el-input
+              :placeholder="$t('dataManage.vmobj.label1')"
+              v-model="osgbLasLayer.z"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            v-if="formInline.type == 'LAS'"
+            :label="$t('dataManage.vmobj.coordinateSystemID')"
+          >
+            <el-select
+              v-model="osgbLasLayer.strid"
+              :placeholder="$t('dataManage.vmobj.label2')"
+              style="width: 100%;"
+            >
+              <el-option
+                v-for="item in stridOption"
+                :key="item.id"
+                :label="item.coordinate"
+                :value="item.epsgcode"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-form>
+        <div style="display: flex; justify-content: end;margin-top:10px;">
+          <el-button
+            size="small"
+            type="primary"
+            @click="setOsgbInsert"
+          >{{$t('common.submit')}}</el-button>
+          <el-button
+            size="small"
+            type="info"
+            @click="setOsgbCanel"
+          >{{$t('common.cancel')}}</el-button>
+        </div>
+      </div>
+    </el-dialog>
     <div
       class="loadBox"
       v-if="loadDialogVisible"
@@ -662,6 +714,7 @@
   publish_deletes,
   publish_update,
   publish_insert,
+  dataUpload_selectCoords
 } from '../../api/api.js'
 import { conditions } from '../Archive/Archive';
 
@@ -703,6 +756,12 @@
         value: 'MPT',
         label: '鍦烘櫙鏁版嵁(.mpt)'
       }, {
+        value: 'OSGB',
+        label: '鍊炬枩鏁版嵁(.osgb)'
+      }, {
+        value: 'LAS',
+        label: '鐐逛簯鏁版嵁(.las, .laz)'
+      }, {
         value: 'CPT',
         label: '鐐逛簯鏁版嵁(.cpt)'
       }, {
@@ -733,11 +792,66 @@
       loadDialogVisible: false,
       options: [],
       isFullscreen: false,
-
+      insertOsgbVisible: false,
+      osgbLasLayer: {
+        z: '0',
+        strid: ''
+      },
+      stridOption: [],
     }
   },
   methods: {
+    setOsgbCanel() {
+      this.insertOsgbVisible = false;
+      this.osgbLasLayer = {
+        z: '0',
+        strid: ''
+      }
+    },
+    async setOsgbInsert() {
 
+      var ids = [];
+      for (var i in this.multipleSelection) {
+        ids.push(this.multipleSelection[i].id)
+      }
+      var strid;
+
+      if (this.formInline.type == 'LAS') {
+        if (!this.osgbLasLayer.strid) {
+          return this.$message('璇烽�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴');
+        } else {
+          strid = this.osgbLasLayer.strid.replace('EPSG:', '')
+        }
+      }
+      var obj = {
+        dircode: this.formInline.dirid,
+        depcode: this.formInline.depid,
+        min: null,
+        max: null,
+        name: null,
+        type: this.formInline.type,
+        noData: null,
+        ids: ids,
+        models: null,
+        srid: parseInt(strid),
+        z: parseFloat(parseFloat(this.osgbLasLayer.z).toFixed(3))
+      }
+      this.loadDialogVisible = true
+      this.setOsgbCanel();
+      const data = await publish_insert(obj);
+
+      if (data.code == 200 && data.result > 0) {
+        this.$message({
+          message: '鏁版嵁鍙戝竷鎴愬姛',
+          type: 'success'
+        });
+      } else {
+        this.$message.error("鏁版嵁鍙戝竷澶辫触")
+      }
+      this.loadDialogVisible = false
+      this.getTableData();
+
+    },
     setModelCanel() {
       this.insertModelVisible = false;
       this.modelOptions = [];
@@ -900,11 +1014,17 @@
           val[i].isModel = null
         }
         this.modelOptions = val;
-
         this.insertModelVisible = true;
+      } else if (this.formInline.type == "OSGB") {
+        this.insertOsgbVisible = true;
+      } else if (this.formInline.type == "LAS") {
+        const data = await dataUpload_selectCoords();
+        if (data.code != 200) {
+          this.$message('鍧愭爣绯绘暟鎹幏鍙栧け璐�');
+        }
+        this.stridOption = data.result;
 
-
-
+        this.insertOsgbVisible = true;
       } else {
         var std = [];
         for (var i in this.multipleSelection) {
@@ -988,10 +1108,10 @@
         var that = this
         this.$confirm('纭畾鏄惁鍒犻櫎鎵�閫夊唴瀹�?')
           .then(_ => {
-            done();
+            that.deletePage()
           })
           .catch(_ => {
-            that.deletePage()
+
           });
       }
     },

--
Gitblit v1.9.3