From 193d9cb011ad366ea057feeee71f50ffda4c6f0c Mon Sep 17 00:00:00 2001 From: zhouyang Date: Fri, 6 Mar 2026 10:30:28 +0800 Subject: [PATCH] =?UTF-8?q?update:=E6=95=B0=E6=8D=AE=E5=88=86=E6=9E=90?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E5=9B=BE=E7=89=87=E5=AF=B9=E6=AF=94=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/analysis/components/cloudImage.vue | 95 ++++++++++++++++--- .../data/analysis/components/curveResult.vue | 9 +- .../components/performanceAnalysis.vue | 7 ++ 3 files changed, 96 insertions(+), 15 deletions(-) diff --git a/src/views/data/analysis/components/cloudImage.vue b/src/views/data/analysis/components/cloudImage.vue index 589d183b..0b7cb43f 100644 --- a/src/views/data/analysis/components/cloudImage.vue +++ b/src/views/data/analysis/components/cloudImage.vue @@ -1,24 +1,33 @@ - --> +
@@ -61,6 +70,7 @@ import { ref, nextTick, watch } from 'vue'; import { objectTypeArrayRemovesDuplicates } from '@/utils/common'; import FilePreview from '@/components/common/filePreview/index.vue'; import { downloadFileByStream } from '@/utils/file'; +import BaseTable from '@/components/common/table/baseTable.vue'; const props = defineProps({ checkTaskInfo: { @@ -83,18 +93,74 @@ const props = defineProps({ const env = import.meta.env; const previewVisible = ref(false); const fileId = ref(''); - +const showTableContent = ref(false); +const cloudTableRef = ref(); const imgLists = ref([]); +const tableData = ref([]); +const modelAttribute = ref([ + { + name: '文件名称', + value: 'originalName', + }, +]); + +const tableColumns = ref([]); const getTableColumnFun = (data: any) => { + console.log(data, 'data'); + showTableContent.value = false; + let originalNames = data.map((item: any) => { + return item.originalName; + }); + originalNames = objectTypeArrayRemovesDuplicates(originalNames, 1); + tableData.value = []; + const checkTypes = props.checkType; - let key = 'owntaskName'; + let key = 'owntaskId'; + let keyName = 'owntaskName'; if (checkTypes === '仿真任务') { - key = 'owntaskName'; + key = 'owntaskId'; + keyName = 'owntaskName'; } if (checkTypes === '仿真算例') { - key = 'ownRunName'; + key = 'ownRunId'; + keyName = 'ownRunName'; } + + let cloumns = data.map((item: any) => { + return { + value: item[key], + name: item[keyName], + }; + }); + cloumns = objectTypeArrayRemovesDuplicates(cloumns, 2); + + const allCloumn = modelAttribute.value.concat(cloumns); + + tableColumns.value = allCloumn.map((item: any) => { + return { + title: item.name, + key: item.value, + isShow: true, + }; + }); + for (let i = 0; i < originalNames.length; i++) { + const obj: any = { + originalName: originalNames[i], + }; + for (let j = 0; j < data.length; j++) { + if (data[j].originalName === originalNames[i]) { + obj[data[j][key]] = data[j].id; + } + } + tableData.value.push(obj); + } + showTableContent.value = true; + nextTick(() => { + cloudTableRef.value.setDataFun(tableData.value); + }); + return; + imgLists.value = []; const names: any = data.map((item: any) => { return item[key]; @@ -183,10 +249,17 @@ watch( .model-file-page { width: 100%; height: 100%; + // height: 600px; overflow: auto; .img-content { width: 100%; + + .img-item-inner { + // width: 300px; + height: 180px; + cursor: pointer; + } } .imglist { diff --git a/src/views/data/analysis/components/curveResult.vue b/src/views/data/analysis/components/curveResult.vue index 9cee483e..24c4ce11 100644 --- a/src/views/data/analysis/components/curveResult.vue +++ b/src/views/data/analysis/components/curveResult.vue @@ -103,7 +103,7 @@ const curveResultTableRef = ref(); const showTableContent = ref(false); const tableColumns = ref([]); -const selectName = ref('all'); +const selectName = ref(''); const tableData = ref([]); const columnsNum = ref(1); @@ -131,10 +131,11 @@ const getTableColumnFun = (data: any) => { taskOrRunList.value = tableData.value.map((item: any) => { return { name: item[selectKey.value], value: item[selectKey.value] }; }); - taskOrRunList.value.unshift({ name: '全部', value: 'all' }); - console.log(data, 'data'); - taskOrRunList.value = objectTypeArrayRemovesDuplicates(taskOrRunList.value, 2); + // taskOrRunList.value.unshift({ name: '全部', value: 'all' }); + taskOrRunList.value = objectTypeArrayRemovesDuplicates(taskOrRunList.value, 2); + selectName.value = taskOrRunList.value[0].value; + filterFileFun(); return; tableData.value = []; tableColumns.value = []; diff --git a/src/views/data/analysis/components/performanceAnalysis.vue b/src/views/data/analysis/components/performanceAnalysis.vue index 47f7b0bb..4f93cf6d 100644 --- a/src/views/data/analysis/components/performanceAnalysis.vue +++ b/src/views/data/analysis/components/performanceAnalysis.vue @@ -125,6 +125,7 @@ const getTableColumnsFun = (data: any) => { title: '指标信息', key: 'performanceInfo', isShow: true, + align: 'center', }, ]; const list: any = data || []; @@ -256,5 +257,11 @@ watch( display: flex; justify-content: center; } + + :deep(.vxe-table .vxe-header--row .vxe-table--column .vxe-header-cell--wrapper) { + display: flex; + align-items: center; + justify-content: center !important; + } }