From 81773ab04fd259e893c2d7f08dbdc9be772d01c4 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Tue, 21 Dec 2021 17:18:45 +0800
Subject: [PATCH] +,请求数据,弹框显示,优化代码长度

---
 src/components/mobilePopupOurOnce/index.vue |   85 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 77 insertions(+), 8 deletions(-)

diff --git a/src/components/mobilePopupOurOnce/index.vue b/src/components/mobilePopupOurOnce/index.vue
index a9437b1..bb20d60 100644
--- a/src/components/mobilePopupOurOnce/index.vue
+++ b/src/components/mobilePopupOurOnce/index.vue
@@ -8,14 +8,30 @@
       }"
     >
       <div class="mobilePopupOurOnce_left">
-        <img src="img/cc/cc.png" alt="" />
+        <img :src="icon" alt="" :key="icon" />
+        <el-image
+          style="width: 100px; height: 100px"
+          :src="icon"
+          :id="'mobileBigImgs' + icon + ''"
+          v-show="false"
+          :preview-src-list="srcList"
+        >
+        </el-image>
       </div>
       <div class="mobilePopupOurOnce_right">
         <div class="mobilePopupOurOnce_r_up">{{ onceData.name }}</div>
         <div class="mobilePopupOurOnce_r_down">
           <div v-for="(item, index) in seebut" :key="index">
             <el-link
-              icon="el-icon-map-location"
+              :icon="
+                item.name == '实景'
+                  ? 'el-icon-place'
+                  : item.name == '图集'
+                  ? 'el-icon-data-board'
+                  : item.name == '定位'
+                  ? 'el-icon-map-location'
+                  : ''
+              "
               class="mobilePopupOurOnce_r_d_in"
               @click="openOnce(item.name)"
               >{{ item.name }}</el-link
@@ -34,15 +50,28 @@
 
 <script>
 import { mapGetters } from "vuex";
+import { getChildNavDetail } from "@/api/mobile/public/arc";
 export default {
   props: ["onceData", "ends"],
   name: "mobilePopupOurOnce",
   created() {
     this.DC = global.DC;
+    if (this.onceData.icon) {
+      this.srcList = this.onceData.icon;
+      this.icon = this.srcList[0];
+    }
+    if (this.onceData.from == "校园建筑") {
+      this.getOnceCampus(this.onceData.id);
+    } else {
+      this.ourData = this.onceData;
+    }
   },
   data() {
     return {
       DC: "",
+      icon: "",
+      srcList: [],
+      ourData: {},
     };
   },
   computed: {
@@ -60,21 +89,57 @@
   },
   methods: {
     openOnce(val) {
+      if (!this.ourData.name) {
+        console.log("数据传输失败");
+        return;
+      }
       let that = this;
-      console.log(val, this.onceData);
       if (val == "定位") {
-        this.$store.commit("MSET_BIGPOPUP", false);
+        //随地图移动窗口
+        this.$store.commit("MSET_BIGPOPUP", false); //关闭全屏弹窗
         setTimeout(() => {
-          // 定制化窗体
+          //   // 定制化窗体
           let d = {
-            position: that.onceData.Cartesian3,
-            lntLat: that.onceData.position,
-            query: this.onceData,
+            position: {},
+            lntLat: that.ourData.lntLat,
+            query: { ...this.ourData, seebut: this.seebut },
+            useJWD: true, //仅使用经纬度
           };
           that.popupsDom = that.$store.dispatch("setMobileWindows", d);
         }, 500);
+        //固定窗口
+        // that.$store.dispatch("SET_OPENWIDOWFIXED", d);
+      } else if (val == "实景") {
+        this.$store.commit(
+          "MSET_OPENMOBILEPANORAMA",
+          "https://www.kuleiman.com/110487/index.html?m=1"
+        );
+      } else if (val == "图集") {
+        let imgsDom = document.getElementById("mobileBigImgs" + this.icon + "");
+        imgsDom.click();
       }
     },
+    //"校园建筑"↓
+    getOnceCampus(id) {
+      getChildNavDetail({ id: id }).then((res) => {
+        var result = res.data.data[0].list;
+        let d = {
+          name: result.mechanismname,
+          lntLat: [result.jd, result.wd],
+          alt: result.gd,
+          heading: result.heading,
+          pitch: result.pitch,
+          roll: result.roll,
+          bgImg: result.tpurl,
+          QRImg: result.codeurl,
+          websiteUrl: result.websiteurl,
+          telePhone: result.telephone,
+          address: result.address,
+        };
+        this.ourData = d;
+      });
+    },
+    //"校园建筑"↑
   },
 };
 </script>
@@ -99,6 +164,10 @@
       width: 32%;
       height: 100%;
       @extend .flexCenter;
+      img {
+        width: 100px;
+        height: 80px;
+      }
     }
     .mobilePopupOurOnce_right {
       width: 68%;

--
Gitblit v1.9.3