From 42921b4aa15528bb032545349b41554764b37e83 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期一, 24 七月 2023 11:18:11 +0800
Subject: [PATCH] 发布管理,las 数据发布页面修改

---
 src/views/datamanage/uploadmanage.vue |  149 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 127 insertions(+), 22 deletions(-)

diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue
index 6af219c..e8d4047 100644
--- a/src/views/datamanage/uploadmanage.vue
+++ b/src/views/datamanage/uploadmanage.vue
@@ -583,7 +583,10 @@
         >
           <el-row :gutter="20">
             <el-col :span="10">
-              <div style="height: 64px; display: flex; align-items: center;">
+              <div
+                class="contLable"
+                style="height: 64px; display: flex; align-items: center;"
+              >
                 {{ item.name }}
               </div>
             </el-col>
@@ -628,22 +631,69 @@
     <el-dialog
       :title="$t('common.publish')"
       :visible.sync="insertOsgbVisible"
-      width="25%"
       :close-on-click-modal="false"
       :show-close="false"
+      width="35%"
     >
-      <div style="width:100%; ">
-        <el-form
-          :model="osgbLasLayer"
-          label-width="160px"
+      <div>
+
+        <div
+          v-for="item in osgbLasOption"
+          style="margin-top: 10px; display: flex; align-items: center; justify-content: space-around;  "
         >
-          <el-form-item :label="$t('dataManage.vmobj.heightOffset')">
+          <div
+            class="contLable"
+            style=" margin: 0px 10px;"
+          >
+            {{ item.name }}
+          </div>
+          <div>
+            <div style="display: flex; align-items: center; margin: 0px 10px;">
+              <label class="contLable">楂樺害鍋忕Щ閲忥細</label>
+              <el-input
+                size="small"
+                v-model="item.zs"
+              >
+                <i slot="suffix">m</i></el-input>
+            </div>
+
+          </div>
+
+          <div v-show="formInline.type =='LAS'">
+            <div style="display: flex;  align-items: center; margin: 0px 10px;">
+              <label class="contLable">鍧愭爣绯伙細</label>
+              <el-select
+                v-if="!item.lids"
+                v-model="item.srids"
+                style="width: 100%;"
+                size="small"
+              >
+                <el-option
+                  v-for="item in stridOption"
+                  :key="item.id"
+                  :label="item.coordinate"
+                  :value="item.epsgcode"
+                >
+                </el-option>
+              </el-select>
+              <el-input
+                v-if="item.lids"
+                v-model="item.srids"
+                size="small"
+                disabled
+              ></el-input>
+            </div>
+
+          </div>
+
+        </div>
+        <!-- <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
+          </el-form-item> -->
+        <!-- <el-form-item
             v-if="formInline.type == 'LAS'"
             :label="$t('dataManage.vmobj.coordinateSystemID')"
           >
@@ -660,8 +710,8 @@
               >
               </el-option>
             </el-select>
-          </el-form-item>
-        </el-form>
+          </el-form-item> -->
+
         <div style="display: flex; justify-content: end;margin-top:10px;">
           <el-button
             size="small"
@@ -714,7 +764,8 @@
   publish_deletes,
   publish_update,
   publish_insert,
-  dataUpload_selectCoords
+  dataUpload_selectCoords,
+  publish_selectLasCs
 } from '../../api/api.js'
 import { conditions } from '../Archive/Archive';
 
@@ -798,6 +849,7 @@
         strid: ''
       },
       stridOption: [],
+      osgbLasOption: [],
     }
   },
   methods: {
@@ -811,17 +863,31 @@
     async setOsgbInsert() {
 
       var ids = [];
-      for (var i in this.multipleSelection) {
-        ids.push(this.multipleSelection[i].id)
+      var zs = []
+      for (var i in this.osgbLasOption) {
+        ids.push(this.osgbLasOption[i].id)
+        zs.push(this.osgbLasOption[i].zs)
       }
-      var strid;
-
+      var srids = [];
+      var lerro = [];
       if (this.formInline.type == 'LAS') {
-        if (!this.osgbLasLayer.strid) {
-          return this.$message('璇烽�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴');
-        } else {
-          strid = this.osgbLasLayer.strid.replace('EPSG:', '')
+        for (var i in this.osgbLasOption) {
+          if (this.osgbLasOption[i].srids) {
+            var epsg = this.osgbLasOption[i].srids.replace('EPSG:', '')
+            srids.push(epsg)
+          } else {
+            lerro.push(this.osgbLasOption[i].name)
+          }
         }
+        if (lerro.length > 0) {
+          return this.$message(lerro + '鏈�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴');
+        }
+
+        // if (!this.osgbLasLayer.strid) {
+        //   return this.$message('璇烽�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴');
+        // } else {
+        //   strid = this.osgbLasLayer.strid.replace('EPSG:', '')
+        // }
       }
       var obj = {
         dircode: this.formInline.dirid,
@@ -833,8 +899,8 @@
         noData: null,
         ids: ids,
         models: null,
-        srid: parseInt(strid),
-        z: parseFloat(parseFloat(this.osgbLasLayer.z).toFixed(3))
+        srids: srids,
+        zx: zs
       }
       this.loadDialogVisible = true
       this.setOsgbCanel();
@@ -1002,6 +1068,7 @@
         this.$message("璇烽�夋嫨瑕佸彂甯冪殑鏁版嵁")
         return
       }
+
       if (this.formInline.type == "DOM" || this.formInline.type == "DEM") {
 
         this.insertLayer.name = this.multipleSelection[0].name.split('.')[0];
@@ -1016,14 +1083,49 @@
         this.modelOptions = val;
         this.insertModelVisible = true;
       } else if (this.formInline.type == "OSGB") {
+
+        var val = JSON.parse(JSON.stringify(this.multipleSelection))
+        for (var i in val) {
+          val[i].zs = 0;
+          val[i].srids = null;
+        }
+        this.osgbLasOption = val;
         this.insertOsgbVisible = true;
+
       } else if (this.formInline.type == "LAS") {
+        var lids = [];
+        var val = JSON.parse(JSON.stringify(this.multipleSelection))
+        for (var i in val) {
+          val[i].zs = 0;
+          val[i].srids = null;
+          val[i].lids = false;
+          lids.push('ids=' + val[i].id)
+        }
+
+        var url = lids.join('&')
+        const data1 = await publish_selectLasCs(url);
+
+        if (data1.code != 200) {
+          this.$message('Las鏂囦欢鍧愭爣绯籌D澶辫触');
+        } else {
+          for (var i = 0; i < val.length; i++) {
+            var coord = data1.result[i]
+            if (coord > 0) {
+              val[i].srids = "EPDG:" + coord;
+              val[i].lids = true;
+            }
+          }
+
+        }
+
         const data = await dataUpload_selectCoords();
+
         if (data.code != 200) {
           this.$message('鍧愭爣绯绘暟鎹幏鍙栧け璐�');
         }
         this.stridOption = data.result;
 
+        this.osgbLasOption = val;
         this.insertOsgbVisible = true;
       } else {
         var std = [];
@@ -1488,5 +1590,8 @@
   /deep/.el-dialog__header {
     padding: 10px !important;
   }
+  .contLable {
+    width: 160px;
+  }
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.3