From 74f3a7dcedba7e9aeac99287c3daf666a726d1d6 Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Sat, 14 Jun 2025 13:53:29 +0800
Subject: [PATCH] Merge branch 'refs/heads/feature/v2.0.0/后台管理数据中心'
---
src/views/dataCenter/dataCenter.vue | 43 ++++++++++++++++++++++++++++++++-----------
1 files changed, 32 insertions(+), 11 deletions(-)
diff --git a/src/views/dataCenter/dataCenter.vue b/src/views/dataCenter/dataCenter.vue
index 609ffe5..2991ab9 100644
--- a/src/views/dataCenter/dataCenter.vue
+++ b/src/views/dataCenter/dataCenter.vue
@@ -8,7 +8,7 @@
<!-- 表格部分 -->
<div class="dataTable">
<el-table
- v-loading="loading"
+ v-loading="loadings"
element-loading-text="加载中"
stripe
:data="tableData"
@@ -98,7 +98,7 @@
<el-dialog v-model="dialogVisible" width="60%" append-to-body>
<template #header="{ titleId, titleClass }">
<div class="my-header">
- <h4 :id="titleId" :class="titleClass">{{ dialogDetailList?.nickName }}</h4>
+ <h4 :id="titleId" :class="titleClass">{{ detailTitle}}</h4>
</div>
</template>
@@ -191,6 +191,7 @@
ref="mapComponent"
v-model:show="dataCenterMapVisible"
:jobId="jobId"
+
@lookDetail="lookDetail"
:dotData="mapList"
></dataCenterMap>
@@ -198,6 +199,7 @@
</template>
<script setup>
+import EventBus from '@/utils/eventBus';
import dataCenterMap from '@/views/dataCenter/components/dataCenterMap.vue';
import PanoramaPopup from '@/components/PanoramaPopup/PanoramaPopup.vue'; //全景
import { ElMessage, ElMessageBox, ElLoading } from 'element-plus';
@@ -235,7 +237,8 @@
visible: '可见光',
ir: '红外',
};
-const loading = ref(true);
+const loadings = ref(true);
+let loading
const total = ref(0);
const startTime = dayjs().subtract(6, 'day').startOf('day');
const endTime = dayjs().endOf('day');
@@ -266,13 +269,14 @@
// 获取列表数据
const getaiImagesPage = () => {
+loadings.value = true;
const params = {
orderByCreateTime: jobListParams.orderByCreateTime,
...jobListParams.searchParams,
};
getaiImagesPageAPI(params, { current: jobListParams.current, size: jobListParams.size }).then(
res => {
- loading.value = true;
+
total.value = res.data.data.total;
tableData.value = res.data.data.records.map(i => ({
...i,
@@ -283,7 +287,7 @@
file_name: i.name.split('/').pop(),
}));
// console.log('res', tableData.value);
- loading.value = false;
+ loadings.value = false;
}
);
};
@@ -351,7 +355,7 @@
}, index * 500); // 每个文件下载间隔50毫秒
});
} else {
- // loading = ElLoading.service({ background: 'rgba(0, 0, 0, 0.5)', text: '打包中,请稍等...' })
+ loading = ElLoading.service({ background: 'rgba(0, 0, 0, 0.5)', text: '打包中,请稍等...' })
const fileIds = list.map(i =>i.id);
console.log('fileIds', fileIds, list);
let aaa = {
@@ -370,7 +374,7 @@
downloadApi(aaa).then(res => {
console.log('res.data.data', res.data.data);
aLinkDownload(res.data.data, `sjzx-file-pack-${dayjs().format('YYYYMMDDHHmmss')}.zip`);
- // loading.close()
+ loading.close()
});
}
};
@@ -387,10 +391,10 @@
const params = {
...jobListParams.searchParams,
};
- console.log('params',params);
+ // console.log('params',params);
downloadApi(params).then(res => {
- console.log('res.data.data', res.data.data);
+ // console.log('res.data.data', res.data.data);
aLinkDownload(res.data.data, `sjzx-file-pack-${dayjs().format('YYYYMMDDHHmmss')}.zip`);
});
@@ -399,9 +403,10 @@
// 查看弹框
const dialogVisible = ref(false);
const dialogDetailList = ref(null);
-
+const detailTitle = ref('')
const lookDetail = val => {
getAttachInfoAPI(val.id).then(res => {
+ detailTitle.value = res.data.data.nickName
dialogDetailList.value = res.data.data;
dialogDetailList.value = { ...res.data.data, checkedinput: false };
});
@@ -411,7 +416,6 @@
const fileNameedit = ref('');
// 编辑文件名
const editTitle = val => {
-
val.checkedinput = true;
fileNameedit.value = val?.nickName;
};
@@ -444,6 +448,7 @@
// 验证并提示
if (!validateNickname(updateparams.nickName, '名称')) return;
item.checkedinput = false;
+ detailTitle.value = item.nickName
updataTitleApi(updateparams)
.then(res => {
if (res.status === 200) {
@@ -463,8 +468,12 @@
const mapList = ref(null);
const dataCenterMapVisible = ref(false);
const jobId = ref('');
+const statusType = ref(null)
const positionDetail = val => {
+// console.log('地图',val);
+
jobId.value = val.wayLineJobId;
+ // console.log('statusType.value',statusType.value);
mapList.value = val;
dataCenterMapVisible.value = true;
// 确保地图组件加载完成
@@ -478,7 +487,18 @@
onMounted(() => {
getaiImagesPage();
+ // 监听打开全景事件
+ EventBus.on('open-panorama', params => {
+ // console.log('收到全景事件:', params);
+ panoramaParamsShow.value = params.show;
+ panoramaParamsUrl.value = params.url;
+ });
});
+onBeforeUnmount(() => {
+ // 组件卸载时移除事件监听,防止内存泄漏
+ EventBus.off('open-panorama');
+});
+
</script>
<style scoped lang="scss">
@@ -576,6 +596,7 @@
.my-header :deep(.el-dialog__title) {
margin: 0 !important;
height: 19px;
+
}
.my-header {
display: flex;
--
Gitblit v1.9.3