diff --git a/my-vue-app/src/views/maneger/components/MemberDetails.vue b/my-vue-app/src/views/maneger/components/MemberDetails.vue index e5875d2..d9d0c68 100644 --- a/my-vue-app/src/views/maneger/components/MemberDetails.vue +++ b/my-vue-app/src/views/maneger/components/MemberDetails.vue @@ -49,7 +49,7 @@ - + -
+ { document.body.appendChild(link) link.click() document.body.removeChild(link) - // 实际项目中可能需要调用API来获取下载链接 console.log('下载录音:', recording.title) } @@ -252,6 +251,11 @@ const downloadRecording = (recording) => { const getGuidanceForMember = (member) => { const guidance = [] + // 检查member是否存在 + if (!member) { + return guidance + } + // 业绩相关建议 if (member.performance === 0) { guidance.push({ diff --git a/my-vue-app/src/views/maneger/components/PerformanceRanking.vue b/my-vue-app/src/views/maneger/components/PerformanceRanking.vue index a3a41d4..cf48ec3 100644 --- a/my-vue-app/src/views/maneger/components/PerformanceRanking.vue +++ b/my-vue-app/src/views/maneger/components/PerformanceRanking.vue @@ -14,7 +14,7 @@ v-for="(member, index) in displayMembers" :key="member.user_name || member.id" class="table-row" - :class="{ active: selectedMember && (selectedMember.user_name === member.user_name || selectedMember.id === member.id) }" + :class="{ active: selectedMember && selectedMember === member }" @click="selectMember(member)" @dblclick="handleDoubleClick(member)" > diff --git a/my-vue-app/src/views/person/components/RawDataCards.vue b/my-vue-app/src/views/person/components/RawDataCards.vue index 7397b3c..f94f288 100644 --- a/my-vue-app/src/views/person/components/RawDataCards.vue +++ b/my-vue-app/src/views/person/components/RawDataCards.vue @@ -91,6 +91,10 @@
用户: {{ call.user_name }} 客户: {{ call.customer_name }} + {{ call.record_tag }}
@@ -231,6 +235,7 @@ const callRecords = computed(() => { // 从 props.callInfo 中获取真实的通话记录数据 if (props.callInfo && Array.isArray(props.callInfo)) { + console.log('通话记录:', props.callInfo) return props.callInfo } @@ -581,6 +586,25 @@ const formatDateTime = (dateTimeString) => { font-size: 12px; color: #9ca3af; } + + .call-tag { + font-size: 11px; + font-weight: 600; + padding: 3px 8px; + border-radius: 12px; + + &.tag-20min { + background: #dcfce7; + color: #16a34a; + border: 1px solid #bbf7d0; + } + + &.tag-other { + background: #fef3c7; + color: #d97706; + border: 1px solid #fed7aa; + } + } } .call-actions {