From 81a26f23ac0567da23b1621d4813a5a2ab54baa2 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 06 Dec 2023 16:36:39 +0800
Subject: [PATCH] 校园搜索功能修改完善,及地图点击弹窗显示内容更换
---
src/components/map/components/campusBuildingSearch.vue | 149 +++++++++++--------------------------------------
1 files changed, 35 insertions(+), 114 deletions(-)
diff --git a/src/components/map/components/campusBuildingSearch.vue b/src/components/map/components/campusBuildingSearch.vue
index da6bcfc..abd3af4 100644
--- a/src/components/map/components/campusBuildingSearch.vue
+++ b/src/components/map/components/campusBuildingSearch.vue
@@ -39,6 +39,7 @@
name: 'campusBuildingSearch',
data () {
return {
+ map2D: this.$store.state.openlayerData.openlayers.map2D,
shortcutList: [
{
bgimg: '/changjing/img/search/org.png',
@@ -54,13 +55,13 @@
// path: '/pcLayout/default/orgnav/ofc',
// code: 2
// },
- // {
- // bgimg: '/changjing/img/search/teach.png',
- // title: '教学科研',
- // type: 'arc',
- // path: '/pcLayout/default/arc/teaching',
- // code: 2
- // },
+ {
+ bgimg: '/changjing/img/search/teach.png',
+ title: '教学科研',
+ type: 'arc',
+ path: '/pcLayout/default/arc/teaching',
+ code: 2
+ },
{
bgimg: '/changjing/img/search/venue.png',
title: '校园场馆',
@@ -68,13 +69,13 @@
path: '/pcLayout/default/arc/venue',
code: 3
},
- {
- bgimg: '/changjing/img/search/floor.png',
- title: '主要场馆',
- type: 'arc',
- path: '/pcLayout/default/arc/rest',
- code: 7
- }
+ // {
+ // bgimg: '/changjing/img/search/floor.png',
+ // title: '主要场馆',
+ // type: 'arc',
+ // path: '/pcLayout/default/arc/rest',
+ // code: 7
+ // }
// {
// bgimg: '/changjing/img/search/scenery.png',
// title: '文化风景',
@@ -89,6 +90,9 @@
searchValList: []
}
},
+
+ inject: ["layoutElement"],
+
computed: {
...mapGetters([
// 校园内导航的显示关闭
@@ -98,8 +102,10 @@
'twoOrThree'
])
},
+
created () {
},
+
methods: {
coordinate (item) {
const arr = item.split(',')
@@ -116,7 +122,8 @@
this.searchValShow = false
return
}
- getSearchList({ mechanismName: this.searchInput }).then((res) => {
+
+ getSearchList({ mechanismName: this.searchInput, campus: this.layoutElement.campusValue }).then((res) => {
if (res.data.data.length > 0) {
this.searchValList = res.data.data
this.searchValShow = true
@@ -223,107 +230,21 @@
that.searchValList = []
that.searchValShow = false
- this.$store.commit('CLEAR_ALL', null)
-
- var imgArr = param.tpurl.split(',')
-
- this.$store.commit('SET_POPUPBGURL', imgArr[0])
- this.$store.commit('SET_POPUPQRURL', param.codeurl)
-
- this.$store.commit('SET_STATENAME', param.mechanismname)
- this.$store.commit('SET_SITENAME', param.address)
- this.$store.commit('SET_TELEPHONE', param.telephone)
- this.$store.commit('SET_INTRODUCETEXT', param.introduce)
- if (param.panoramaurl != '') {
- this.$store.commit('SET_PANORAMAURL', param.panoramaurl)
- }
- if (param.videourl && param.videourl != '') {
- this.$store.commit('SET_MONITORURL', param.videourl)
- }
- this.$store.commit('SET_POPUPIMGATLAS', imgArr)
- if (param.jx != undefined && param.jx != '') {
- var tabOne = param.jx.split(',')
- this.$store.commit('SET_TEACHLIST', tabOne)
- } else {
- this.$store.commit('SET_TEACHLIST', [])
- }
-
- if (param.sh != undefined && param.sh != '') {
- var tabTwo = param.sh.split(',')
- this.$store.commit('SET_LIVELIST', tabTwo)
- } else {
- this.$store.commit('SET_LIVELIST', [])
- }
-
- this.newPopup(param, obj)
- if (this.twoOrThree == '三 维') {
- this.$store.commit('SET_POINTPOSITION', [
- Number(obj.lng),
- Number(obj.lat),
- Number(param.gd),
- Number(param.heading),
- Number(param.pitch),
- Number(param.roll)
- ])
-
- global.viewer.flyToPosition(
- new global.DC.Position(
- Number(obj.lng),
- Number(obj.lat),
- 300,
- Number(param.heading),
- Number(param.pitch),
- Number(param.roll)
- ),
- () => { },
- 0.5
- )
- } else {
- this.$store.commit('SET_POINTPOSITION', [
- Number(param.jd),
- Number(param.wd),
- Number(50),
- Number(param.heading),
- Number(param.pitch),
- Number(param.roll)
- ])
-
- global.viewer.flyToPosition(
- new global.DC.Position(
- Number(param.jd),
- Number(param.wd),
- 300,
- Number(param.heading),
- Number(param.pitch),
- Number(param.roll)
- ),
- () => { },
- 0.5
- )
- }
- },
-
- newPopup (item, obj) {
- let position
- if (this.twoOrThree == '三 维') {
- position = global.DC.Transform.transformWGS84ToCartesian(
- new global.DC.Position(Number(obj.lng), Number(obj.lat), Number(item.gd))
- )
- } else {
- position = global.DC.Transform.transformWGS84ToCartesian(
- new global.DC.Position(Number(item.jd), Number(item.wd), Number(50))
- )
- }
-
- // eslint-disable-next-line no-unused-vars
- var popup = new global.DC.DivForms(global.viewer, {
- domId: 'divFormsDomBox',
- position: [position]
+ this.$store.dispatch('setOurDataInPoput', {
+ item: param
})
- this.$store.commit('SET_PANORAMAPOPUP', false)
- this.$store.commit('SET_MONITORPOPUP', false)
- this.$store.commit('SET_DETAILSPOPUP', true)
+ this.openPopups({
+ lng: Number(obj.lng),
+ lat: Number(obj.lat),
+ item: param,
+ })
+ },
+
+ openPopups (value) {
+ this.map2D.getView().setCenter([value.lng, value.lat])
+
+ this.$EventBus.$emit('openInfoWindowHtml', value)
}
}
}
--
Gitblit v1.9.3