|
|
@@ -2,118 +2,112 @@
|
|
|
<div class="fileInfo">
|
|
|
<a-spin :spinning="state.downloadLoading" tip="下载中...">
|
|
|
<div class="fileInfo-detail">
|
|
|
- <a-row>
|
|
|
- <a-col flex="auto">
|
|
|
- <div class="fileInfo-detail-left">
|
|
|
- <div class="fileInfo-detail-left-background" v-if="state.imgLoading">
|
|
|
- <a-spin tip="加载中..." />
|
|
|
- </div>
|
|
|
- <Panoramic :src="state.info.url" v-if="state.info.media_type === 3" />
|
|
|
- <video style="width: 100%;height: 100%;" controls :src="state.info.url"
|
|
|
- v-else-if="state.info.media_type === 4"></video>
|
|
|
- <a-image width="100%" height="100%" :src="state.info.url" v-else />
|
|
|
+ <div class="fileInfo-detail-left">
|
|
|
+ <div class="fileInfo-detail-left-background" v-if="state.imgLoading">
|
|
|
+ <a-spin tip="加载中..." />
|
|
|
+ </div>
|
|
|
+ <Panoramic :src="state.info.url" v-if="state.info.media_type === 3" />
|
|
|
+ <video style="width: 100%;height: 100%;" controls :src="state.info.url"
|
|
|
+ v-else-if="state.info.media_type === 4"></video>
|
|
|
+ <a-image style="object-fit:cover;" width="100%" height="100%" :src="state.info.url" v-else />
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info">
|
|
|
+ <CloseOutlined class="fileInfo-detail-info-close" @click="onClose" />
|
|
|
+ <div class="fileInfo-detail-info-title">
|
|
|
+ 详细信息
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 文件名称
|
|
|
</div>
|
|
|
- </a-col>
|
|
|
- <a-col flex="420px">
|
|
|
- <div class="fileInfo-detail-info">
|
|
|
- <CloseOutlined class="fileInfo-detail-info-close" @click="onClose" />
|
|
|
- <div class="fileInfo-detail-info-title">
|
|
|
- 详细信息
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 文件名称
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.file_name || '--' }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 文件类型
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.picture_type || '--' }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 任务名称
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.task_name || '--' }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 航线名称
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.wayline_name || '--' }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 分辨率
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- <div class="fileInfo-detail-info-item-content-line"
|
|
|
- v-if="state.info.image_width && state.info.image_height">
|
|
|
- {{ state.info.image_width }}*{{ state.info.image_height }}
|
|
|
- </div>
|
|
|
- <div v-else>
|
|
|
- --
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.file_name || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 文件类型
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.picture_type || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 任务名称
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.task_name || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 航线名称
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.wayline_name || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 分辨率
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ <div class="fileInfo-detail-info-item-content-line"
|
|
|
+ v-if="state.info.image_width && state.info.image_height">
|
|
|
+ {{ state.info.image_width }}*{{ state.info.image_height }}
|
|
|
</div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 文件大小
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.size > 0 ? (state.info.size / 1024 / 1024).toFixed(1) + 'M' : '--' }}
|
|
|
- </div>
|
|
|
+ <div v-else>
|
|
|
+ --
|
|
|
</div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 拍摄负载
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.payload || '--' }}
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 文件大小
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.size > 0 ? (state.info.size / 1024 / 1024).toFixed(1) + 'M' : '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 拍摄负载
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.payload || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item">
|
|
|
+ <div class="fileInfo-detail-info-item-title">
|
|
|
+ 拍摄时间
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-item-content">
|
|
|
+ {{ state.info.picture_time || '--' }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-map">
|
|
|
+ <div class="fileInfo-detail-info-map-title">
|
|
|
+ <div class="fileInfo-detail-info-map-title-text">
|
|
|
+ 照片位置
|
|
|
</div>
|
|
|
- <div class="fileInfo-detail-info-item">
|
|
|
- <div class="fileInfo-detail-info-item-title">
|
|
|
- 拍摄时间
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-item-content">
|
|
|
- {{ state.info.picture_time || '--' }}
|
|
|
- </div>
|
|
|
+ <div class="fileInfo-detail-info-map-title-icon">
|
|
|
+ <EnvironmentOutlined @click="onClickMapLocationReset" />
|
|
|
</div>
|
|
|
- <div class="fileInfo-detail-info-map">
|
|
|
- <div class="fileInfo-detail-info-map-title">
|
|
|
- <div class="fileInfo-detail-info-map-title-text">
|
|
|
- 照片位置
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-map-title-icon">
|
|
|
- <EnvironmentOutlined @click="onClickMapLocationReset" />
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="fileInfo-detail-info-map-content">
|
|
|
- <div id="photoPositionMap" :style="{ width: '100%', height: '100%' }"></div>
|
|
|
- <div class="fileInfo-detail-info-map-content-title">
|
|
|
- <span>
|
|
|
- {{ state.info.latitude }}° N
|
|
|
- </span>
|
|
|
- <span>
|
|
|
- {{ state.info.longitude }}° E
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ <div class="fileInfo-detail-info-map-content">
|
|
|
+ <div id="photoPositionMap" :style="{ width: '100%', height: '100%' }"></div>
|
|
|
+ <div class="fileInfo-detail-info-map-content-title">
|
|
|
+ <span>
|
|
|
+ {{ state.info.latitude }}° N
|
|
|
+ </span>
|
|
|
+ <span>
|
|
|
+ {{ state.info.longitude }}° E
|
|
|
+ </span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="fileInfo-area">
|
|
|
<a-tooltip placement="bottom" title="下载">
|
|
|
@@ -354,8 +348,10 @@ const onClickSelected = async (id: string) => {
|
|
|
}
|
|
|
|
|
|
&-detail {
|
|
|
+ display: flex;
|
|
|
+
|
|
|
&-left {
|
|
|
- width: calc(100vw - 420px);
|
|
|
+ flex: 1;
|
|
|
height: calc(100vh - 130px);
|
|
|
overflow: hidden;
|
|
|
|
|
|
@@ -370,7 +366,7 @@ const onClickSelected = async (id: string) => {
|
|
|
}
|
|
|
|
|
|
&-info {
|
|
|
- width: 100%;
|
|
|
+ width: 420px;
|
|
|
height: calc(100vh - 130px);
|
|
|
padding: 24px;
|
|
|
overflow: auto;
|
|
|
@@ -397,10 +393,11 @@ const onClickSelected = async (id: string) => {
|
|
|
&-title {
|
|
|
width: 85px;
|
|
|
color: hsla(0, 0%, 100%, .45);
|
|
|
+ margin-right: 16px;
|
|
|
}
|
|
|
|
|
|
&-content {
|
|
|
- margin-left: 16px;
|
|
|
+ flex: 1;
|
|
|
|
|
|
&-line {
|
|
|
display: flex;
|