From e40ee62d3e9b71ffe3432d32a53a00c4097b5708 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Fri, 31 Dec 2021 09:03:28 +0800
Subject: [PATCH] +3d 2.5d
---
src/components/mobilePopupOurOnce/index.vue | 129 +++++++++++++++++++++++++++++++++++++------
1 files changed, 111 insertions(+), 18 deletions(-)
diff --git a/src/components/mobilePopupOurOnce/index.vue b/src/components/mobilePopupOurOnce/index.vue
index 7967a8f..03671b4 100644
--- a/src/components/mobilePopupOurOnce/index.vue
+++ b/src/components/mobilePopupOurOnce/index.vue
@@ -1,15 +1,37 @@
<template>
<div class="mobilePopupOurOnce">
- <div class="mobilePopupOurOnce_center">
+ <div
+ class="mobilePopupOurOnce_center"
+ :style="{
+ borderBottom: !ends ? '#d4d4d4 dashed 1px' : '',
+ marginBottom: !ends ? '6px' : '',
+ }"
+ >
<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
@@ -28,9 +50,30 @@
<script>
import { mapGetters } from "vuex";
+import { getChildNavDetail } from "@/api/mobile/public/arc";
export default {
- props: ["onceData"],
+ 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() {
@@ -46,18 +89,61 @@
},
methods: {
openOnce(val) {
- console.log(val, this.onceData.name);
- // 定位
- // this.mviewer.zoomToPosition(
- // new DC.Position(
- // e.wgs84Position.lng,
- // e.wgs84Position.lat - 0.016,
- // 1530,
- // 0,
- // -45
- // )
- // );
+ if (!this.ourData.name) {
+ console.log("数据传输失败");
+ return;
+ }
+ let that = this;
+ // console.log(that.ourData.lntLat);
+ if (val == "定位") {
+ //随地图移动窗口
+ this.$store.commit("MSET_BIGPOPUP", false); //关闭全屏弹窗
+ setTimeout(() => {
+ // // 定制化窗体
+ let d = {
+ position: {},
+ lntLat: that.ourData.lntLat,
+ query: { ...this.ourData, seebut: this.seebut },
+ useJWD: true, //仅使用经纬度
+ from: "PopupOurOnce",
+ };
+ 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,
+ introduce: result.introduce,
+ video: result.videourl,
+ };
+ this.ourData = d;
+ });
+ },
+ //"校园建筑"↑
},
};
</script>
@@ -70,18 +156,23 @@
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;
+ // margin-bottom: 8px;
height: 80px;
- border-bottom: #d4d4d4 dashed 1px;
+ // border-bottom: #d4d4d4 dashed 1px;
padding-bottom: 8px;
@extend .flexCenter;
.mobilePopupOurOnce_left {
width: 32%;
height: 100%;
@extend .flexCenter;
+ img {
+ width: 80px;
+ height: 80px;
+ }
}
.mobilePopupOurOnce_right {
width: 68%;
@@ -95,6 +186,7 @@
text-indent: 1em;
display: flex !important;
align-items: center !important;
+ // color: #fff;
}
.mobilePopupOurOnce_r_down {
height: 50%;
@@ -103,6 +195,7 @@
display: flex !important;
align-items: center !important;
.mobilePopupOurOnce_r_d_in {
+ // color: #fff;
font-size: 17px;
}
}
--
Gitblit v1.9.3