This commit is contained in:
X1627315083@163.com
2026-02-26 10:19:51 +08:00
parent 8ebaa46211
commit ccc6d2cb7b
9 changed files with 123 additions and 26 deletions

View File

@@ -5,7 +5,7 @@ import Detail from './detail/index.vue'
// import { versionsList } from './tools/versionsData'
import { findAndAddChild, findAndRemoveChild } from '../../../../../utils/treeDiagram'
import { useProjectStore } from '@/stores'
import { versionTree, getChatNodeDetail } from '@/api/versitonTree'
import { versionTree } from '@/api/versitonTree'
const props = defineProps({
versionTreeData: {
@@ -25,34 +25,39 @@ const props = defineProps({
const versionsList = ref([])
const projectStore = useProjectStore()
let oldProjectId:any = ''
watch(()=>props.versionTreeData?.drawer, (newVal, oldVal) => {
console.log(newVal)
if(newVal){
versionTree({
projectId: projectStore.state.id
}).then(res => {
console.log(res)
// setVersionsList
// versionsList.value = res.data
})
console.log(newVal,oldProjectId,projectStore.state.id)
if(newVal && oldProjectId !== projectStore.state.id && projectStore.state.id){
getVersionTree()
oldProjectId = JSON.parse(JSON.stringify(projectStore.state.id))
}
})
const getVersionTree = ()=>{
versionTree({
projectId: projectStore.state.id
}).then(res => {
setVersionsList([res])
})
}
const setVersionsList = (res)=>{
versionsList.value = [res]
//设置versionId
function traverseArray(items,father, callback) {
for (let i = 0; i < items.length; i++) {
const item = items[i]
if(!item.url)continue
callback(item, i,father)
if (item.children && Array.isArray(item.children) && item.children.length > 0) {
traverseArray(item.children, item, callback)
}
}
}
traverseArray(versionsList.value,'',(item,i,father)=>{
traverseArray(res,'',(item,i,father)=>{
item.versionId = father?`${father.versionId}-${i+1}`:'1'
})
versionsList.value = res
}
const treeRef = ref(null)
@@ -104,7 +109,7 @@ const versionDelete = (versionDetail)=>{
let data = reactive({})
// onMounted(() => {setVersionsList('')})
onUnmounted(() => {})
defineExpose({})
defineExpose({getVersionTree})
const {} = toRefs(data)
</script>
<template>
@@ -146,6 +151,7 @@ const {} = toRefs(data)
<div class="versionTreeBox">
<div class="tree">
<Tree
v-if="versionsList.length > 0"
ref="treeRef"
:versionsList="versionsList"
:treeState="treeState"