diff --git a/my-vue-app/src/views/person/components/CustomerDetail.vue b/my-vue-app/src/views/person/components/CustomerDetail.vue index 4a2ffc8..f36adc7 100644 --- a/my-vue-app/src/views/person/components/CustomerDetail.vue +++ b/my-vue-app/src/views/person/components/CustomerDetail.vue @@ -186,87 +186,100 @@ watch(() => props.selectedContact, (newContact) => { }, { immediate: true }); // 基础信息分析 -const startBasicAnalysis = async () => { - if (!props.selectedContact) return; +// const startBasicAnalysis = async () => { +// if (!props.selectedContact) return; - isBasicAnalysisLoading.value = true; - basicAnalysisResult.value = ''; +// isBasicAnalysisLoading.value = true; +// basicAnalysisResult.value = ''; - // 构建表单信息 - const formData = props.formInfo || []; - let formInfoText = '暂无表单信息'; +// // 构建表单信息 +// const formData = props.formInfo || []; +// let formInfoText = '暂无表单信息'; - // ** 适配新的 formInfo 数组格式 ** - if (Array.isArray(formData) && formData.length > 0) { - const allInfo = []; +// // ** 适配新的 formInfo 数组格式 ** +// if (Array.isArray(formData) && formData.length > 0) { +// const allInfo = []; - // 遍历新格式: [{ question_label: "...", answer: "..." }, ...] - formData.forEach(item => { - // 检查字段是否存在且答案有效 - if ( - item.question_label && - item.answer && - item.answer !== '暂无' && - item.answer !== '' - ) { - // 格式化为 "问题标签: 答案" - allInfo.push(`${item.question_label.trim()}: ${item.answer.trim()}`); - } - }); +// // 遍历新格式: [{ question_label: "...", answer: "..." }, ...] +// formData.forEach(item => { +// // 检查字段是否存在且答案有效 +// if ( +// item.question_label && +// item.answer && +// item.answer !== '暂无' && +// item.answer !== '' +// ) { +// // 格式化为 "问题标签: 答案" +// allInfo.push(`${item.question_label.trim()}: ${item.answer.trim()}`); +// } +// }); - // 格式化表单信息文本 - formInfoText = allInfo.length > 0 - ? `=== 问卷/表单信息 ===\n${allInfo.join('\n')}` - : '暂无有效问卷/表单信息'; - } - // ** 适配结束 ** +// // 格式化表单信息文本 +// formInfoText = allInfo.length > 0 +// ? `=== 问卷/表单信息 ===\n${allInfo.join('\n')}` +// : '暂无有效问卷/表单信息'; +// } +// // ** 适配结束 ** - // 构建聊天记录信息 - const chatData = props.chatRecords || []; - const chatInfoText = chatData.messages && chatData.messages.length > 0 ? - `聊天记录数量: ${chatData.messages.length}条\n最近聊天内容: ${JSON.stringify(chatData.messages.slice(-3), null, 2)}` : - '暂无聊天记录'; +// // 构建聊天记录信息 +// const chatData = props.chatRecords || []; +// const chatInfoText = chatData.messages && chatData.messages.length > 0 ? +// `聊天记录数量: ${chatData.messages.length}条\n最近聊天内容: ${JSON.stringify(chatData.messages.slice(-3), null, 2)}` : +// '暂无聊天记录'; - // 构建通话记录信息 - const callData = props.callRecords || []; - const callInfoText = callData.length > 0 ? - `通话记录数量: ${callData.length}次\n通话记录详情: ${JSON.stringify(callData, null, 2)}` : - '暂无通话记录'; +// // 构建通话记录信息 +// const callData = props.callRecords || []; +// const callInfoText = callData.length > 0 ? +// `通话记录数量: ${callData.length}次\n通话记录详情: ${JSON.stringify(callData, null, 2)}` : +// '暂无通话记录'; - const query = `请对客户进行基础信息分析: -客户姓名:${props.selectedContact.name} -联系电话:${props.selectedContact.phone || '未提供'} -销售阶段:${props.selectedContact.salesStage || '未知'} +// const query = `请对客户进行基础信息分析: +// 客户姓名:${props.selectedContact.name} +// 联系电话:${props.selectedContact.phone || '未提供'} +// 销售阶段:${props.selectedContact.salesStage || '未知'} -=== 表单信息 === -${formInfoText} +// === 表单信息 === +// ${formInfoText} -=== 聊天记录 === -${chatInfoText} +// === 聊天记录 === +// ${chatInfoText} -=== 通话记录 === -${callData.length > 0 && callData[0].record_context ? callData[0].record_context : callInfoText} +// === 通话记录 === +// ${callData.length > 0 && callData[0].record_context ? callData[0].record_context : callInfoText} -请基于以上客户的表单信息、聊天记录和通话记录,分析客户的基本情况、背景信息和初步画像。`; +// 请基于以上客户的表单信息、聊天记录和通话记录,分析客户的基本情况、背景信息和初步画像。`; - try { - await chatService_01.sendMessage( - query, - (update) => { - basicAnalysisResult.value = update.content; - }, - () => { - isBasicAnalysisLoading.value = false; - console.log('基础信息分析完成'); - } - ); - } catch (error) { - console.error('基础信息分析失败:', error); - basicAnalysisResult.value = `分析失败: ${error.message}`; - isBasicAnalysisLoading.value = false; +// try { +// await chatService_01.sendMessage( +// query, +// (update) => { +// basicAnalysisResult.value = update.content; +// }, +// () => { +// isBasicAnalysisLoading.value = false; +// console.log('基础信息分析完成'); +// } +// ); +// } catch (error) { +// console.error('基础信息分析失败:', error); +// basicAnalysisResult.value = `分析失败: ${error.message}`; +// isBasicAnalysisLoading.value = false; +// } +// }; +const startBasicAnalysis=async ()=>{ + console.log("客户基础信息:", props.selectedContact); + const res=await https.post('api/v1/sales_timeline/get_customer_basic_info',{ + user_name:props.selectedContact.name, + phone:props.selectedContact.phone + }) + if(res.data){ + basicAnalysisResult.value = res.data; + console.log("客户基础信息分析结果:", res); + }else{ + basicAnalysisResult.value = '基础信息暂无数据' } -}; +} // SOP通话分析 const startSopAnalysis = async () => { if (!props.selectedContact) return;