This commit is contained in:
2026-01-28 11:58:39 +08:00
3 changed files with 26 additions and 13 deletions

View File

@@ -94,14 +94,14 @@ interface Props {
api: any;
hideTree?: boolean;
templateId: any;
defaultExpandedKeys?: any;
defaultProjectId?: any;
}
const props = withDefaults(defineProps<Props>(), {
api: null,
hideTree: false,
templateId: 0,
defaultExpandedKeys: [],
defaultProjectId: '',
});
const emit = defineEmits(['choseNode', 'updateNav', 'search', 'viewTypeChange']);
@@ -112,6 +112,10 @@ const visible = ref(true);
const viewType = ref('1'); // 1文件模式 2作业模式
const loading = ref(false);
if (props.defaultProjectId) {
localStorage.setItem('DATA_OVERVIEW_NAV_LIST', '[]');
}
watch(
() => props.templateId,
() => {
@@ -130,24 +134,33 @@ watch(
originalName: item.originalName,
};
});
localStorage.setItem('DATA_OVERVIEW_NAV_LIST', JSON.stringify(data));
if (props.defaultProjectId) {
localStorage.setItem('DATA_OVERVIEW_NAV_LIST', '[]');
} else {
localStorage.setItem('DATA_OVERVIEW_NAV_LIST', JSON.stringify(data));
}
},
{ deep: true }
);
let navListStorageData: any = JSON.parse(localStorage.getItem('DATA_OVERVIEW_NAV_LIST') || '[]');
const openDefaultExpandedFun = (baseData: any) => {
if (navListStorageData.length > 0 || props.defaultExpandedKeys.length > 0) {
if (navListStorageData.length > 0 || props.defaultProjectId) {
// 1s后打开默认节点
setTimeout(() => {
if (baseData.length > 0 && props.defaultExpandedKeys.length > 0) {
const projectData = baseData.find((i: any) => i.id === props.defaultExpandedKeys[0]);
if (baseData.length > 0 && props.defaultProjectId) {
// 来自数据总览的匹配id来自项目列表的匹配relatedResourceUuid
const projectData = baseData.find(
(item: any) =>
item.id === props.defaultProjectId ||
item.relatedResourceUuid === props.defaultProjectId
);
navListStorageData = projectData ? [projectData] : [];
}
navList.value = navListStorageData;
expandedKeys.value = navList.value.map((i: any) => i.id);
currentKey.value = navList.value[navList.value.length - 1].id;
}, 1000);
currentKey.value = navList.value[navList.value.length - 1]?.id || '';
}, 0);
}
};

View File

@@ -8,7 +8,7 @@
:params="{
dimensionTemplateId: currentDimension,
}"
:defaultExpandedKeys="defaultExpandedKeys"
:defaultProjectId="defaultProjectId"
:hideTree="hideTree"
@choseNode="choseNodeFun"
@search="searchShow = true"
@@ -310,13 +310,13 @@ import emitter from '@/utils/eventBus';
interface Props {
hideAddBtn?: boolean;
hideTree?: boolean;
defaultExpandedKeys?: any;
defaultProjectId?: any;
}
withDefaults(defineProps<Props>(), {
hideAddBtn: false,
hideTree: false,
defaultExpandedKeys: [],
defaultProjectId: '',
});
const route = useRoute();

View File

@@ -136,8 +136,8 @@
</el-tab-pane>
<el-tab-pane label="文件数据" name="projectData">
<DataOverView
v-if="displayedTabs.includes('projectData')"
:defaultExpandedKeys="[]"
v-if="displayedTabs.includes('projectData') && projectUuid"
:defaultProjectId="projectUuid"
hideAddBtn
hideTree
/>