feat: 报告初步显示

This commit is contained in:
2026-03-13 17:23:56 +08:00
parent 570701b927
commit 430d3fb7f1
5 changed files with 256 additions and 77 deletions

View File

@@ -4,9 +4,19 @@
<div class="btn" @click="versionTreeData.drawer = true">Version Tree</div>
</div>
<div class="content-wrapper">
<Agent ref="agentRef" :title="agentTitle" @update:sketchList="updateSketchList" />
<Agent
ref="agentRef"
:title="agentTitle"
@update:sketchList="updateSketchList"
@setTitle="handleSetTitle"
/>
<div class="preview-wrapper">
<Preview :type="previewType" :sketchList="sketchList" @deleteSketch="handleDeleteSketch" />
<Preview
ref="previewRef"
:type="previewType"
:sketchList="sketchList"
@deleteSketch="handleDeleteSketch"
/>
</div>
</div>
<VersionTreeIndex
@@ -19,7 +29,7 @@
</template>
<script setup lang="ts">
import { ref, watch, onMounted, computed } from 'vue'
import { ref, watch, onMounted, computed, onUnmounted } from 'vue'
import Agent from './components/Agent.vue'
import Preview from './components/Preview.vue'
import VersionTreeIndex from './components/versionTree/index.vue'
@@ -27,10 +37,13 @@
import { getProjectInfo } from '@/api/agent'
import { clearNodeChat, getNodeAncestors } from '@/api/versitonTree'
import { useRoute } from 'vue-router'
import MyEvent from '@/utils/myEvent'
const route = useRoute()
const projectStore = useProjectStore()
const previewRef = ref(null)
const agentTitle = ref('Conversation')
const previewType = ref<'sketch' | 'report'>('sketch')
const VersionTreeIndexRef = ref()
@@ -50,6 +63,10 @@
})
}
const handleSetTitle = (title: string) => {
agentTitle.value = title
}
const versionTreeData = ref({
drawer: false
})
@@ -86,6 +103,11 @@
const proJectId = computed(() => route.params.id)
const handleOpenReport = (data) => {
previewRef.value.setSessionId(data)
previewType.value = 'report'
}
watch(
() => proJectId.value,
(newVal, oldVal) => {
@@ -97,11 +119,15 @@
)
onMounted(() => {
MyEvent.add('openReport', handleOpenReport)
projectStore.clearProject()
if (proJectId.value) {
handleGetProjectInfoAndHistory()
}
})
onUnmounted(() => {
MyEvent.remove('openReport', handleOpenReport)
})
</script>
<style lang="less" scoped>