| | |
| | | <template> |
| | | <div class="w-full space-y-3"> |
| | | <template v-if="parsedData && parsedData.length > 0"> |
| | | <template v-for="(item, index) in parsedData" :key="item.id"> |
| | | <div class="w-full space-y-3" v-if="parsedData && parsedData.length > 0"> |
| | | <div v-for="(item, index) in parsedData" :key="index"> |
| | | <!-- <el-button type="primary" v-if="showReportIndex.includes(index) && conclusion.length > 0" @click="showAgentReport(index)">报告</el-button> --> |
| | | <component |
| | | ref="componentRef" |
| | |
| | | :is="summaryAnswerTypeMapCom[item.type]" |
| | | :data="item" |
| | | :originData="originData" |
| | | :reportIndex="reportIndex" |
| | | :summaryIndex="index" |
| | | chartHeight="20rem" |
| | | :tableLimitHeight="tableLimitHeight" |
| | | :historyId="historyId" |
| | | @updateQuery="(res) => updateRecordSet(index, res)" |
| | | :disabled="isTalking || isSharePage" |
| | | ></component> |
| | | |
| | | <div class="flex flex-col" v-if="showReportIndex.includes(index) && conclusion?.length > 0"> |
| | |
| | | <span> |
| | | {{ toggleReportLabel(item) }} |
| | | </span> |
| | | <span class="ywifont" :class="{ 'ywicon-unfold': !item.stepIsShow, 'ywicon-fold': item.stepIsShow }"></span> |
| | | <span class="ywifont" :class="{ 'ywicon-unfold': !item.reportIsShow, 'ywicon-fold': item.reportIsShow }"></span> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 过程输出 --> |
| | | <div v-show="item.reportIsShow" class="max-h-[2/3vh] markdown-it" v-html="md.render(getReport(index))"></div> |
| | | </div> |
| | | </template> |
| | | </template> |
| | | </div> |
| | | </div> |
| | | <el-empty v-else :image-size="200" class="!py-3"> |
| | | <!-- <template #description> |
| | | <span > 暂无数据 </span> |
| | | </template> --> |
| | | </el-empty> |
| | | <!-- <ReportDlg v-model="infoDlgIsShow" :report="report" :agentKey="agentKey"></ReportDlg> --> |
| | | </div> |
| | | </template> |
| | |
| | | |
| | | import ReportDlg from './ReportDlg.vue'; |
| | | import { md } from '../../libs/markdown'; |
| | | import { isSharePage } from '/@/stores/chatRoom'; |
| | | import service from '/@/utils/request'; |
| | | const props = defineProps(chatComProps); |
| | | const tableLimitHeight = document.body.clientHeight * 0.7; |
| | | const parsedData = computed<any[]>(() => { |
| | |
| | | const getReport = (agentEndIndex) => { |
| | | const agent = parsedData.value[agentEndIndex]; |
| | | const agentKey = agent.agent_key; |
| | | // debugger; |
| | | const foundReport = props.conclusion.find((item) => item.agent_key === agentKey); |
| | | |
| | | const foundReport = props.conclusion?.find((item) => item.agent_key === agentKey); |
| | | const report = foundReport?.report ?? ''; |
| | | return report; |
| | | }; |
| | |
| | | const toggleReport = (item) => { |
| | | item.reportIsShow = !item.reportIsShow; |
| | | }; |
| | | // const infoDlgIsShow = ref(false); |
| | | // const report = ref(null); |
| | | |
| | | // const agentKey = ref(''); |
| | | |
| | | // const conclusion = computed(() => props.originData?.content?.origin?.conclusion ?? []); |
| | | // const showAgentReport = (agentStartIndex) => { |
| | | // const agent = parsedData.value[agentStartIndex]; |
| | | // agentKey.value = agent.agent_key; |
| | | // const foundReport = conclusion.value.find((item) => item.agent_key === agentKey.value); |
| | | // report.value = foundReport?.report; |
| | | |
| | | // infoDlgIsShow.value = true; |
| | | // }; |
| | | </script> |
| | | <style scoped lang="scss"></style> |