From 80bb9784aecb44bdc17abd5c20660b0a4422f7a0 Mon Sep 17 00:00:00 2001 From: lbw_9527443 <780139497@qq.com> Date: Wed, 20 Aug 2025 15:33:59 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=AE=A2=E6=88=B7=E8=AF=A6=E6=83=85):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8DSOP=E5=88=86=E6=9E=90=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=B9=B6=E4=BC=98=E5=8C=96=E9=80=9A=E8=AF=9D=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 重构SOP分析功能,移除不必要的recordContext参数,改为使用组件内部数据。优化通话记录显示逻辑,当存在通话记录时优先显示record_context内容。在sale.vue中添加对SOP分析事件的处理,通过ref调用CustomerDetail组件的方法。 --- .../src/views/person/components/CustomerDetail.vue | 14 +++++++++----- my-vue-app/src/views/person/sale.vue | 13 ++++++++++++- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/my-vue-app/src/views/person/components/CustomerDetail.vue b/my-vue-app/src/views/person/components/CustomerDetail.vue index 15bbc7d..af38017 100644 --- a/my-vue-app/src/views/person/components/CustomerDetail.vue +++ b/my-vue-app/src/views/person/components/CustomerDetail.vue @@ -258,7 +258,7 @@ ${formInfoText} ${chatInfoText} === 通话记录 === -${callInfoText} +${callData.length > 0 && callData[0].record_context ? callData[0].record_context : callInfoText} 请基于以上客户的表单信息、聊天记录和通话记录,分析客户的基本情况、背景信息和初步画像。`; try { @@ -280,15 +280,19 @@ ${callInfoText} }; // SOP通话分析 -const startSopAnalysis = async (recordContext) => { +const startSopAnalysis = async () => { if (!props.selectedContact) return; isSopAnalysisLoading.value = true; sopAnalysisResult.value = ''; + // 构建通话记录信息 + const callData = props.callRecords || []; + const callInfoText = callData.length > 0 ? + `通话记录数量: ${callData.length}次\n通话记录详情: ${JSON.stringify(callData, null, 2)}` : + '暂无通话记录'; + const query = `=== 通话记录 === +${callData.length > 0 && callData[0].record_context ? callData[0].record_context : callInfoText}`; - const query = callData.value - - console.log(888888, recordContext); try { await chatService.sendMessage( diff --git a/my-vue-app/src/views/person/sale.vue b/my-vue-app/src/views/person/sale.vue index ed46679..19282b9 100644 --- a/my-vue-app/src/views/person/sale.vue +++ b/my-vue-app/src/views/person/sale.vue @@ -69,7 +69,8 @@ :call-info="callRecords" @view-form-data="handleViewFormData" @view-chat-data="handleViewChatData" - @view-call-data="handleViewCallData" /> + @view-call-data="handleViewCallData" + @analyze-sop="handleAnalyzeSop" /> @@ -84,6 +85,7 @@
{ // STATE const selectedContactId = ref(null); const contextPanelRef = ref(null); +const customerDetailRef = ref(null); const selectedStage = ref('全部'); // 选中的销售阶段 const isPageLoading = ref(true); // 页面整体加载状态 @@ -725,6 +728,14 @@ const handleViewChatData = async (contact) => { const handleViewCallData = (contact) => { // TODO: 实现通话录音查看逻辑 }; + +// 处理SOP分析事件 +const handleAnalyzeSop = (analyzeData) => { + console.log('收到SOP分析请求:', analyzeData); + if (customerDetailRef.value && analyzeData.content) { + customerDetailRef.value.startSopAnalysis(analyzeData.content); + } +}; // 销售漏斗 const SalesFunnel = ref([]) async function CenterGetSalesFunnel() {