From bf58722dfd03ea1513f3acc7331d4d4403fca76e Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 18 Mar 2022 11:48:37 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/school-web
---
src/components/mobilePopupOurOnce/index.vue | 136 +++++++++++++++++++++++++++++++++++++++------
1 files changed, 117 insertions(+), 19 deletions(-)
diff --git a/src/components/mobilePopupOurOnce/index.vue b/src/components/mobilePopupOurOnce/index.vue
index a9437b1..f12dcc0 100644
--- a/src/components/mobilePopupOurOnce/index.vue
+++ b/src/components/mobilePopupOurOnce/index.vue
@@ -8,14 +8,35 @@
}"
>
<div class="mobilePopupOurOnce_left">
- <img src="img/cc/cc.png" alt="" />
+ <!-- <img :src="icon" alt="" :key="icon" /> -->
+ <el-image
+ style="width: 80px; height: 80px"
+ :src="icon"
+ :id="'mobileBigImgs' + icon + ''"
+ :preview-src-list="srcList"
+ >
+ <!-- v-show="false" -->
+ </el-image>
</div>
- <div class="mobilePopupOurOnce_right">
- <div class="mobilePopupOurOnce_r_up">{{ onceData.name }}</div>
+ <div class="mobilePopupOurOnce_right" @click.self.stop="openOnce('定位')">
+ <div
+ class="mobilePopupOurOnce_r_up"
+ @click.self.stop="openOnce('定位')"
+ >
+ {{ 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,25 +55,48 @@
<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.onceData.from == "文化风景") {
+ this.getOnceCampus(this.onceData.id);
+ } else {
+ this.ourData = this.onceData;
+ }
},
data() {
return {
- DC: "",
+ icon: "",
+ srcList: [],
+ ourData: {},
};
},
computed: {
...mapGetters(["mviewer"]),
seebut() {
- let buts = this.onceData.buts;
+ const buts = this.onceData.buts;
let b = [];
- for (let k in buts) {
+ for (const k in buts) {
+ if (buts[k] == "实景") {
+ continue;
+ }
b.push({
name: buts[k],
+ });
+ }
+ if (this.ourData.panoramaurl) {
+ b.push({
+ name: "实景",
+ });
+ } else {
+ b = b.filter((res) => {
+ return res.name != "实景";
});
}
return b;
@@ -60,21 +104,68 @@
},
methods: {
openOnce(val) {
- let that = this;
- console.log(val, this.onceData);
+ if (!this.ourData.name) {
+ console.log("数据传输失败");
+ return;
+ }
+ const that = this;
if (val == "定位") {
- this.$store.commit("MSET_BIGPOPUP", false);
+ // 活动定位
+ if (this.ourData.name == "活动") {
+ console.log(this.ourData);
+ return;
+ }
+ // 随地图移动窗口
+ this.$store.commit("MSET_BIGPOPUP", false); // 关闭全屏弹窗
setTimeout(() => {
- // 定制化窗体
- let d = {
- position: that.onceData.Cartesian3,
- lntLat: that.onceData.position,
- query: this.onceData,
+ // // 定制化窗体
+ const d = {
+ position: {},
+ lntLat: that.ourData.lntLat,
+ query: { ...this.ourData, seebut: this.seebut },
+ useJWD: true, // 仅使用经纬度
+ from: "PopupOurOnce",
};
- that.popupsDom = that.$store.dispatch("setMobileWindows", d);
+ that.$store.dispatch("setMobileWindows", d);
}, 500);
+ // 固定窗口
+ // that.$store.dispatch("SET_OPENWIDOWFIXED", d);
+ } else if (val == "实景") {
+ this.$store.commit("MSET_OPENMOBILEPANORAMA", this.ourData.panoramaurl);
+ // if(this.ourData.panoramaurl){
+ // }
+ // console.log(this.ourData.panoramaurl);
+ } else if (val == "图集") {
+ const imgsDom = document.getElementById(
+ "mobileBigImgs" + this.icon + ""
+ );
+ imgsDom.click();
}
},
+ // "校区建筑"↓
+ getOnceCampus(id) {
+ getChildNavDetail({ id: id }).then((res) => {
+ var result = res.data.data[0].list;
+ const 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,
+ introduce: result.introduce,
+ video: result.videourl,
+ panoramaurl: result.panoramaurl, // 全景
+ };
+ this.ourData = d;
+ });
+ },
+ // "校区建筑"↑
},
};
</script>
@@ -87,8 +178,9 @@
justify-content: center !important;
}
.mobilePopupOurOnce {
- padding: 0 0;
+ padding: 8px 0 0 0;
margin: 0 8px;
+ // background-image: linear-gradient(#29baf1, #28bbf0);
.mobilePopupOurOnce_center {
// margin-bottom: 8px;
height: 80px;
@@ -99,6 +191,10 @@
width: 32%;
height: 100%;
@extend .flexCenter;
+ img {
+ width: 80px;
+ height: 80px;
+ }
}
.mobilePopupOurOnce_right {
width: 68%;
@@ -112,6 +208,7 @@
text-indent: 1em;
display: flex !important;
align-items: center !important;
+ // color: #fff;
}
.mobilePopupOurOnce_r_down {
height: 50%;
@@ -120,10 +217,11 @@
display: flex !important;
align-items: center !important;
.mobilePopupOurOnce_r_d_in {
+ // color: #fff;
font-size: 17px;
}
}
}
}
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3