<template>
|
<div class="mapPopUpBox">
|
<div class="title">
|
<span>{{ info.event_name }}</span>
|
<el-icon class="header-close" @click.stop="props.detailClick"><Warning /></el-icon>
|
<el-icon class="header-close" @click.stop="props.removeLabel">
|
<Close />
|
</el-icon>
|
</div>
|
<div class="content">
|
<div class="medium">
|
<el-image
|
class="eventImage"
|
:src="getSmallImg(infoList?.link)"
|
:preview-src-list="[getSmallImg(infoList?.link)]"
|
fit="cover"
|
preview-teleported
|
></el-image>
|
</div>
|
|
<div class="details">
|
<div class="label">时间:</div>
|
<div class="value point">
|
{{
|
infoList?.create_time?.slice(5, 16).replace('-', '/') ||
|
infoList?.createTime?.slice(5, 16).replace('-', '/')
|
}}
|
</div>
|
<div class="label">地点:</div>
|
<div class="value">
|
{{ _.round(infoList?.metadata?.shootPosition?.lng, 3) }},{{
|
_.round(infoList?.metadata?.shootPosition?.lat, 3)
|
}}
|
</div>
|
</div>
|
</div>
|
</div>
|
</template>
|
<script setup>
|
import { ElImage, ElIcon } from 'element-plus'
|
import { Close,Warning } from '@element-plus/icons-vue'
|
import _ from 'lodash'
|
import { getShowImg, getSmallImg } from '@/utils/util';
|
const props = defineProps(['data', 'removeLabel','detailClick'])
|
const loading = ref(true)
|
|
const info = ref({
|
event_name: '',
|
status: 1,
|
url: '1',
|
longitude: '',
|
latitude: '',
|
create_time: '04/01 12:41',
|
})
|
const infoList = props.data
|
onMounted(async () => {})
|
</script>
|
|
<style scoped lang="scss">
|
.mapPopUpBox {
|
width: 271px;
|
height: 153px;
|
// background: url('@/assets/images/dataCenter/datamap/popUpBox.png') no-repeat center / 100% 100%;
|
border-radius: 20px;
|
background-color: #fff;
|
|
padding: 13px 13px 1px 13px;
|
pointer-events: all;
|
|
.title {
|
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei, serif;
|
font-weight: 400;
|
font-size: 18px;
|
line-height: 16px;
|
background: linear-gradient(180deg, #a8e5fb 0%, #e6f8ff 100%);
|
-webkit-background-clip: text;
|
-webkit-text-fill-color: transparent;
|
-moz-background-clip: text;
|
-moz-text-fill-color: transparent;
|
background-clip: text;
|
text-fill-color: transparent;
|
margin-bottom: 10px;
|
display: flex;
|
align-items: center;
|
justify-content: end;
|
|
.header-close {
|
width: 20px;
|
height: 100%;
|
line-height: 100%;
|
display: flex;
|
align-items: center;
|
color: black;
|
pointer-events: all;
|
cursor: pointer;
|
}
|
}
|
|
.content {
|
height: 102px;
|
width: 240px;
|
display: flex;
|
align-items: center;
|
|
.medium {
|
height: 102px;
|
width: 120px;
|
margin-right: 10px;
|
|
> img,
|
video,
|
div {
|
width: 100%;
|
height: 100%;
|
}
|
}
|
|
.details {
|
.label {
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
font-weight: 400;
|
font-size: 14px;
|
color: black;
|
line-height: 16px;
|
margin-bottom: 2px;
|
}
|
|
.value {
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
font-weight: 400;
|
font-size: 14px;
|
color: black;
|
line-height: 16px;
|
margin-bottom: 2px;
|
}
|
|
.point {
|
margin-bottom: 14px;
|
}
|
}
|
}
|
}
|
</style>
|