@@ -484,6 +484,15 @@ | |||
"enablePullDownRefresh": true | |||
} | |||
}, | |||
{ | |||
"path": "Piabodata/requireminingAnalysis", | |||
"style": { | |||
"navigationBarTitleText": "需求挖掘分析", | |||
"navigationBarBackgroundColor": "#FFFFFF", | |||
"navigationBarTextStyle": "black", | |||
"enablePullDownRefresh": true | |||
} | |||
}, | |||
{ | |||
"path": "records/index", | |||
@@ -629,4 +638,4 @@ | |||
"query": "" //启动参数,在页面的onLoad函数里面得到 | |||
}] | |||
} | |||
} | |||
} |
@@ -602,18 +602,6 @@ | |||
this.guwenshow = false; | |||
this.Selectlevel = false; | |||
this.Selecttuandui = false; | |||
// this.tableDate = [] | |||
// this.pamect.showStatus = 0; | |||
// this.pamect.timeType = "4"; | |||
// this.pamect.firstStartDate = ''; | |||
// this.pamect.firstEndDate = ''; | |||
// this.pamect.lastStartDate = ''; | |||
// this.pamect.lastEndDate = ''; | |||
// this.pamect.accountId = ''; | |||
// this.pamect.marketingId = ''; | |||
// this.pamect.deptId = "" | |||
// this.activeTotal = 0; | |||
// this.timepickpickisshow = false; | |||
this.init() | |||
if (index == 1) { | |||
@@ -0,0 +1,697 @@ | |||
<template> | |||
<view class="box"> | |||
<!-- 选择器 --> | |||
<view class="boxtittab"> | |||
<view class="tabbox" @click="timeshow=true"> | |||
{{ time }} | |||
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon> | |||
</view> | |||
<view class="tabbox" @click="deptshow=true"> | |||
{{ dept}} | |||
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon> | |||
</view> | |||
<view class="tabbox" @click="guwenshow=true"> | |||
{{ guwen}} | |||
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon> | |||
</view> | |||
<!-- <view class="tabbox" @click="taptimetuisshow"> | |||
{{ huashu}} | |||
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon> | |||
</view> --> | |||
<!-- <view class="tabbox" @click="screenshow"> | |||
更多筛选<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon> | |||
</view> --> | |||
</view> | |||
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view> | |||
<view class="boxzonglan" style="min-height: 400rpx;"> | |||
<view class="zonglantitle">简报 <text @click="showDesc=true">统计说明</text></view> | |||
<view class="zonglanbox"> | |||
<view class="grid" style="height: auto;" v-for="(item,index) in numlist" :key="index"> | |||
<view class="audonum">{{item.name}}</view> | |||
<view class="num">{{item.firstnum||0}}</view> | |||
<view class="bottom"> | |||
<view class="leftnum">对比:{{item.endnum||0}}</view> | |||
<view class="rightnum" :class="item.duibinum>0?'red':'green'">{{item.duibinum||0}} | |||
<image v-if="item.duibinum>0" src="https://static.quhouse.com/c4145f84cc3c49769ee2ec11465c085b.png" mode="" /> | |||
<image v-else src="https://static.quhouse.com/c5dbf780e09a4da0b0bab2d7fa58accd.png" mode="" /> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 统计说明 --> | |||
<view class="black-bg" v-if="showDesc" > | |||
<view class="tongjiDesc"> | |||
<view class="tongji-title">统计说明</view> | |||
<view class="text"> | |||
<view><text class="bold">平均需求挖掘率:</text>筛选时间内,有效接待中已标记顾问的需求挖掘执行率的平均值;</view> | |||
<view><text class="bold">未标记:</text>筛选时间内,有效接待中未标记顾问的接待数;</view> | |||
<view><text class="bold">有效接待:</text>筛选时间内,标记为有效的接待数,不包含待接单;</view> | |||
<view><text class="bold">未挖掘需求数:</text>筛选时间内,需求挖掘平均执行率未0 的需求数;</view> | |||
</view> | |||
</view> | |||
<view class="close" @click="showDesc=false">X</view> | |||
</view> | |||
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view> | |||
<view class="single"> | |||
<view class="title"> | |||
<view class="title1">平均需求挖掘率趋势</view> | |||
</view> | |||
<!-- <view class="uchaserbox"> | |||
<qiun-data-charts type="line" :chartData="lineOptsect" :opts="lineOpts" background="none" | |||
:ontouch="true" canvasId="wangxiaohuaerlingilingwuyiba1" :canvas2d="true" /> | |||
</view> --> | |||
</view> | |||
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view> | |||
<view class="single"> | |||
<view class="title"> | |||
<view class="title1">平均需求挖掘分布</view> | |||
</view> | |||
<view class="uchaserbox"> | |||
<qiun-data-charts | |||
type="ring" | |||
:chartData="ringChartData" | |||
:canvas2d="true" | |||
:canvasId="ChartBoxIdwangxiaohuaerlingilingwuyiba1" | |||
:opts='opts' | |||
background="none" /> | |||
</view> | |||
</view> | |||
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view> | |||
<view class="single"> | |||
<view class="title"> | |||
<view class="title1">需求挖掘排名</view> | |||
</view> | |||
<view class="tabdada"> | |||
<view class="tabth"> | |||
<view>排名</view> | |||
<view>需求类型/挖掘执行接待数</view> | |||
<view>执行率</view> | |||
<view>操作</view> | |||
</view> | |||
<view v-if="total==0" style="color: #999999;width: 100%;height: 500rpx;line-height: 500rpx;text-align: center;" >暂无数据</view> | |||
<view class="tabtd" v-for="(item,i) in sortList" :key="i"> | |||
<view> | |||
<image v-if="i==0" class="ranking" src="../../../static/images/ranking1.png" mode=""></image> | |||
<image v-else-if="i==1" class="ranking" src="../../../static/images/ranking2.png" mode=""></image> | |||
<image v-else-if="i==2" class="ranking" src="../../../static/images/ranking3.png" mode=""></image> | |||
<view class="ranking1" v-else>{{i+1}}</view> | |||
</view> | |||
<view class="u-line-1">{{item.name}}({{item.selected}})</view> | |||
<view>{{item.fraction}}%</view> | |||
<view @click="Toview(item,i)">查看</view> | |||
</view> | |||
</view> | |||
</view> | |||
<u-popup v-model="timeshow" mode="bottom"> | |||
<view class="timeview" :style="{ color: activeTotal == 4 ? '#2B6EFF' : '#333333' }" | |||
@click="tabtimetap(4, '近7天')"> | |||
近7天</view> | |||
<view class="timeview" :style="{ color: activeTotal == 5 ? '#2B6EFF' : '#333333' }" | |||
@click="tabtimetap(5, '近15天')"> | |||
近15天</view> | |||
<view class="timeview" :style="{ color: activeTotal == 6 ? '#2B6EFF' : '#333333' }" | |||
@click="tabtimetap(6, '近30天')"> | |||
近30天</view> | |||
<view class="timeview" :style="{ color: activeTotal == 3 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(3,'自定义')"> | |||
自定义</view> | |||
</u-popup> | |||
<u-calendar v-model="calendarShow" mode="range" @change="calendarTimeChange"></u-calendar> | |||
<u-select v-model="guwenshow" :list="staffList" @confirm="staffSelectCallback($event,0)" | |||
:default-value='selindex'></u-select> | |||
<u-select v-model="deptshow" :list="teamList" @confirm="staffSelectCallback($event,1)" | |||
:default-value='selindex'></u-select> | |||
<!-- 加载组件 --> | |||
<loading v-model="LOADING"></loading> | |||
</view> | |||
</template> | |||
<script> | |||
var app = getApp(); | |||
var config = require("../../../config"); | |||
import loading from "@/components/loading/index.vue" | |||
export default { | |||
components: { | |||
loading | |||
}, | |||
data() { | |||
return { | |||
selindex: '', | |||
guwenshow: false, | |||
timeshow: false, | |||
selectshow: false, | |||
deptshow: false, | |||
deptVal: '', | |||
guwenVal: '', | |||
// 筛选文字展示 | |||
time: '近7天', | |||
dept: '部门', | |||
guwen: '顾问', | |||
huashu: '话术', | |||
showDesc: false, | |||
sortList: [], | |||
ringChartData: { | |||
}, | |||
// ring图 分布图 | |||
opts: { | |||
rotate: false, | |||
rotateLock: false, | |||
color: ["#1890FF","#91CB74","#FAC858","#EE6666"], | |||
padding: [5,5,5,5], | |||
dataLabel: true, | |||
legend: { | |||
show: true, | |||
position: "right", | |||
lineHeight: 25 | |||
}, | |||
title: { | |||
name: "", | |||
fontSize: 15, | |||
color: "#666666" | |||
}, | |||
subtitle: { | |||
name: "", | |||
fontSize: 25, | |||
color: "#7cb5ec" | |||
}, | |||
extra: { | |||
ring: { | |||
ringWidth: 60, | |||
activeOpacity: 0.5, | |||
activeRadius: 10, | |||
offsetAngle: 0, | |||
labelWidth: 15, | |||
border: false, | |||
borderWidth: 3, | |||
borderColor: "#FFFFFF" | |||
} | |||
} | |||
}, | |||
activeTotal: 4, | |||
houseId: '', | |||
// 员工列表 | |||
staffList: [], | |||
// 团队列表 | |||
teamList: [], | |||
team: { | |||
value: '', | |||
label: '' | |||
}, | |||
startDate: '', | |||
endDate: '', | |||
calendarShow: false, | |||
activeTab: 0, | |||
numlist: [{ | |||
name: '平均需求挖掘率', | |||
firstnum: '', | |||
endnum: '', | |||
duibinum: '', | |||
setName: 'wordFraction' | |||
}, { | |||
name: '未挖掘需求', | |||
firstnum: '', | |||
endnum: '', | |||
duibinum: '', | |||
setName: 'noFinishWord' | |||
}, | |||
{ | |||
name: '有效接待', | |||
firstnum: '', | |||
endnum: '', | |||
duibinum: '', | |||
setName: 'activeCustomer' | |||
}, | |||
{ | |||
name: '未标记', | |||
firstnum: '', | |||
endnum: '', | |||
duibinum: '', | |||
setName: 'markAdvisor' | |||
}, | |||
], | |||
lineOptsect: { | |||
"categories": [], | |||
"series": [{ | |||
"name": "第一段", | |||
"data": [] | |||
},{ | |||
"name": "第二段", | |||
"data": [] | |||
} | |||
] | |||
}, | |||
Theteamcomparedisshow: false, | |||
Groupcontrastisshow: false, | |||
allList: [], | |||
lineOpts: { | |||
yAxis: { | |||
data: [{ | |||
max: 100, | |||
min: 0, | |||
}] | |||
} | |||
}, | |||
}; | |||
}, | |||
onShow() { | |||
// this.LOADING = true | |||
// 获取项目id | |||
this.houseId = uni.getStorageSync('buildingID').id; | |||
// 获取员工 | |||
this.getStaffList() | |||
// 获取团队 | |||
this.getSectionList() | |||
this.getdata() | |||
}, | |||
onReady: function(){ | |||
// this.getRingData() | |||
}, | |||
onPullDownRefresh() { | |||
}, | |||
methods: { | |||
getdata(){ | |||
// 需求挖掘分析-简报 | |||
this.wordMiningAnalyze() | |||
// 挖掘趋势图 | |||
// this.getwordMiningAnalyzePercentage() | |||
// //需求挖掘排行 | |||
// this.getwordMiningRank() | |||
// // 需求挖掘f分布图 | |||
// this.getRingData() | |||
}, | |||
// 需求挖掘排行 | |||
getwordMiningRank(){ | |||
this.$u.post('/cusLvStatistics/wordMiningRank', { | |||
houseId: this.houseId, | |||
deptId: this.deptVal, | |||
createUser: this.guwenVal, | |||
"dateType":this.activeTotal, | |||
"firstStartDate":!this.activeTotal?this.startDate:'', | |||
"firstEndDate":!this.activeTotal?this.endDate:'' | |||
}) | |||
.then(res => { | |||
console.log(res) | |||
if(res.length){ | |||
this.sortList = res.map(item=>{ | |||
return { | |||
name: item.name, | |||
id: item.id, | |||
fraction: item.fraction, | |||
selected: item.selected | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
// 需求挖掘分布图 | |||
getRingData(){ | |||
this.$u.post('/cusLvStatistics/wordMiningAnalyzeFenbu', { | |||
houseId: this.houseId, | |||
deptId: this.deptVal, | |||
createUser: this.guwenVal, | |||
"firstStartDate":!this.activeTotal?this.startDate:'', | |||
"firstEndDate":!this.activeTotal?this.endDate:'', | |||
"dateType":this.activeTotal | |||
}) | |||
.then(res => { | |||
console.log(res) | |||
this.ringChartData = { series: [ | |||
{ | |||
data: [ | |||
{"name":"30%以下","value":res.a}, | |||
{"name":"30%~50%","value":res.b}, | |||
{"name":"50%~70%","value":res.c}, | |||
{"name":"70%以上","value":res.d}, | |||
] | |||
} | |||
]} | |||
}) | |||
}, | |||
Toview(){ | |||
//跳转到接待记录 | |||
uni.navigateTo({ | |||
url: '/pages/center/records/index' | |||
}); | |||
}, | |||
// 需求挖掘分析-简报 | |||
wordMiningAnalyze() { | |||
let params = { | |||
"houseId":this.houseId, | |||
deptId: this.deptVal, | |||
createUser: this.guwenVal, | |||
"dateType": this.activeTotal, | |||
"firstStartDate":!this.activeTotal?this.startDate:'', | |||
"firstEndDate":!this.activeTotal?this.endDate:'' | |||
} | |||
this.$u.post("/cusLvStatistics/wordMiningAnalyze",params).then(res => { | |||
// console.log(res.contrast) | |||
res.contrast.wordFraction = (res.contrast.fraction || 0) + '%' | |||
this.numlist.forEach(item => { | |||
item.duibinum = res.contrast[item.setName] | |||
item.endnum = res.end[item.setName] | |||
item.firstnum = res.first[item.setName] | |||
}) | |||
}) | |||
}, | |||
// 获取员工列表 | |||
getStaffList() { | |||
this.$u.post('/cusLvStatistics/selectAllAccountIdByHouseId', { | |||
houseId: this.houseId | |||
}) | |||
.then(res => { | |||
// console.log(res) | |||
if(res.length){ | |||
this.staffList = res.map(item => { | |||
return { | |||
label: item.name, | |||
value: item.accountId | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
// 需求挖掘率趋势图 | |||
getwordMiningAnalyzePercentage() { | |||
this.$u.post('/cusLvStatistics/wordMiningAnalyzePercentage', { | |||
houseId: this.houseId, | |||
deptId: this.deptVal, | |||
createUser: this.guwenVal, | |||
"dateType": this.activeTotal, | |||
"firstStartDate":!this.activeTotal?this.startDate:'', | |||
"firstEndDate":!this.activeTotal?this.endDate:'' | |||
}) | |||
.then(res => { | |||
let categories1 = [] | |||
let categories2 = [] | |||
if(res.first&&res.first.length){ | |||
categories1 = res.first.map(item=> item.statDate.substring(0,10)) | |||
this.lineOptsect.series[0].data=res.first.map(item=> item.wordFraction) | |||
}else{ | |||
categories1= [] | |||
this.lineOptsect.series[0] = [] | |||
} | |||
if(res.end&&res.end.length){ | |||
this.lineOptsect.series[1].data=res.end.map(item=> item.wordFraction) | |||
categories2 = res.end.map(item => item.statDate.substring(0,10)) | |||
}else{ | |||
categories2 = [] | |||
} | |||
let categories3 =[] | |||
categories1.forEach(item1=>{ | |||
categories2.forEach(item2=>{ | |||
categories3.push(item1+ 'vs' + item2) | |||
}) | |||
}) | |||
this.lineOptsect.categories = categories3 | |||
console.log(this.lineOptsect.categories) | |||
}) | |||
}, | |||
// 获取团队列表 | |||
getSectionList() { | |||
this.$u.post('/cusLvStatistics/findAllDeptIdByHouseId', { | |||
houseId: this.houseId | |||
}) | |||
.then(res => { | |||
this.teamList = [] | |||
if(res.length){ | |||
this.teamList = res.map(item=> { | |||
return { | |||
label: item.deptName, | |||
value: item.deptId | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
//时间切换 | |||
tabtimetap(index, text) { | |||
if (index == 3) { | |||
this.calendarShow = true; | |||
this.activeTotal = null | |||
} else { | |||
this.activeTotal = index; | |||
this.endDate = '' | |||
this.startDate = '' | |||
this.time = text | |||
this.getdata() | |||
} | |||
this.timeshow = false | |||
}, | |||
staffSelectCallback(e, idx) { | |||
if (idx == 0) { | |||
this.guwenVal = e[0].value | |||
this.guwen = e[0].label | |||
} else { // 部门 | |||
this.dept = e[0].label | |||
this.deptVal = e[0].value | |||
} | |||
this.getdata() | |||
}, | |||
//自定义时间 | |||
calendarTimeChange(e) { | |||
// console.log(e.startDate, e.endDate) | |||
this.activeTotal = null; | |||
this.endDate = e.endDate | |||
this.startDate = e.startDate | |||
this.time = '自定义' | |||
this.getdata() | |||
} | |||
} | |||
}; | |||
</script> | |||
<style lang="scss" scoped> | |||
.box { | |||
width: 100%; | |||
height: 100%; | |||
background: #FAFAFA; | |||
} | |||
//时间切换的样式 | |||
.boxtittab { | |||
position: sticky; | |||
top: var(--window-top); | |||
z-index: 999; | |||
width: 100; | |||
height: 92rpx; | |||
background: #FFFFFF; | |||
border: 1px solid #E0E0E0; | |||
display: flex; | |||
align-items: center; | |||
.tabbox { | |||
flex: 1; | |||
height: 100%; | |||
text-align: center; | |||
line-height: 92rpx; | |||
color: #666666; | |||
font-size: 28rpx; | |||
overflow: hidden; | |||
text-overflow: ellipsis; | |||
display: -webkit-box; | |||
/* 将对象作为弹性伸缩盒子模型显示 */ | |||
-webkit-line-clamp: 1; | |||
/* 控制最多显示几行 */ | |||
-webkit-box-orient: vertical; | |||
/* 设置或检索伸缩盒对象的子元素的排列方式 */ | |||
} | |||
} | |||
.timeview { | |||
height: 80rpx; | |||
line-height: 80rpx; | |||
width: 100%; | |||
text-align: center; | |||
border-bottom: 1px solid #F8F8F8; | |||
} | |||
.black-bg{ | |||
position: fixed; | |||
background: rgba(0,0,0,0.6); | |||
left: 0; | |||
right: 0; | |||
top: 0; | |||
bottom: 0; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: center; | |||
align-items: center; | |||
z-index: 9999; | |||
.tongjiDesc{ | |||
width: 80%; | |||
background: #FFFFFF; | |||
border-radius: 4rpx; | |||
padding: 30rpx; | |||
} | |||
.close{ | |||
background: #fff; | |||
border-radius: 50%; | |||
width: 80rpx; | |||
height: 80rpx; | |||
margin-top: 30rpx; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
} | |||
.tongji-title{ | |||
text-align: center; | |||
font-size: 30rpx; | |||
margin-bottom: 20rpx; | |||
} | |||
.text view{ | |||
margin-bottom: 24rpx; | |||
} | |||
.bold{ | |||
font-weight: bold; | |||
} | |||
} | |||
.grid:nth-child(1) { | |||
border-right: none; | |||
border-bottom: none; | |||
} | |||
.grid:nth-child(2) { | |||
border-bottom: none; | |||
} | |||
.grid:nth-child(3) { | |||
border-right: none; | |||
} | |||
.grid .bottom{ | |||
display: flex; | |||
align-items: center; | |||
padding-left: 20rpx; | |||
margin: 10rpx 0 20rpx; | |||
.leftnum{ | |||
height: 36rpx; | |||
font-size: 26rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
color: #666666; | |||
line-height: 36rpx; | |||
margin-right: 20rpx; | |||
} | |||
.rightnum{ | |||
height: 36rpx; | |||
font-size: 26rpx; | |||
font-family: PingFangSC-Semibold, PingFang SC; | |||
font-weight: 600; | |||
color: #666; | |||
line-height: 36rpx; | |||
display: flex; | |||
align-items: center; | |||
&.red{ | |||
color: #E6273A; | |||
} | |||
&.green{ | |||
color: #43CD80; | |||
} | |||
image{ | |||
width: 18rpx; | |||
height: 14rpx; | |||
margin-left: 6rpx; | |||
} | |||
} | |||
} | |||
.zonglantitle{ | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
text{ | |||
color: #666666; | |||
} | |||
} | |||
.uchaserbox{ | |||
width: 100%; | |||
height: 500rpx; | |||
} | |||
.tabdada { | |||
width: 100%; | |||
height: 580rpx; | |||
overflow-y: auto; | |||
padding-bottom: 20rpx; | |||
.tabth { | |||
width: 100%; | |||
height: 28rpx; | |||
display: flex; | |||
font-size: 28rpx; | |||
line-height: 28rpx; | |||
color: #666666; | |||
margin-top: 28rpx; | |||
} | |||
.tabth>view:nth-of-type(1) { | |||
width: 10%; | |||
text-align: center; | |||
} | |||
.tabth>view:nth-of-type(2) { | |||
width: 46%; | |||
text-align: center; | |||
} | |||
.tabth>view:nth-of-type(3) { | |||
width: 22%; | |||
text-align: center; | |||
} | |||
.tabth>view:nth-of-type(4) { | |||
width: 22%; | |||
text-align: center; | |||
} | |||
.tabtd { | |||
width: 100%; | |||
height: 30rpx; | |||
display: flex; | |||
font-size: 26rpx; | |||
line-height: 30rpx; | |||
margin-top: 32rpx; | |||
} | |||
.tabtd>view:nth-of-type(1) { | |||
width: 10%; | |||
text-align: center; | |||
line-height: 30rpx; | |||
} | |||
.tabtd>view:nth-of-type(2) { | |||
width: 46%; | |||
max-width: 400rpx; | |||
text-align: center; | |||
color: #333333; | |||
} | |||
.tabtd>view:nth-of-type(3) { | |||
width: 22%; | |||
text-align: center; | |||
color: #333333; | |||
} | |||
.tabtd>view:nth-of-type(4) { | |||
width: 22%; | |||
text-align: center; | |||
color: #2671E2; | |||
} | |||
.ranking { | |||
width: 34rpx; | |||
height: 34rpx; | |||
} | |||
.ranking1 { | |||
width: 30rpx; | |||
height: 30rpx; | |||
background: #ECF1FF; | |||
color: #424D64; | |||
font-size: 18rpx; | |||
text-align: center; | |||
line-height: 30rpx; | |||
border-radius: 50%; | |||
margin: 0 auto; | |||
} | |||
.tabech { | |||
width: 100%; | |||
height: 600rpx; | |||
} | |||
} | |||
</style> |
@@ -35,7 +35,10 @@ | |||
</view> | |||
</view> | |||
<view class="content-sec-lab"> | |||
顾问姓名:<view class="content-sec-lab1">{{customerInfo.ownerName}}</view> | |||
顾问姓名:<view class="content-sec-lab1">{{customerInfo.ownerName||'--'}}</view> | |||
</view> | |||
<view class="content-sec-lab"> | |||
需求挖掘:<view class="content-sec-lab1">{{customerInfo.wordFraction||0}}%</view> | |||
</view> | |||
<view class="content-sec-lab"> | |||
添加时间:<view class="content-sec-lab1">{{customerInfo.createTime}}</view> | |||
@@ -141,7 +144,12 @@ | |||
<!-- 评分 --> | |||
<view class="ratecenter" v-if="activeTotal==2"> | |||
<view class="ratetetle">执行总览</view> | |||
<view class="my-tab"> | |||
<view class="tab-item" :class="tabactive==0?'tabactive':''" @click="tabactive=0">销讲执行率</view> | |||
<view class="tab-item" :class="tabactive==1?'tabactive':''" @click="tabactive=1">需求挖掘执行率</view> | |||
</view> | |||
<view class="xiaojiang" v-if="tabactive==0"> | |||
<view class="ratetetle">执行总览</view> | |||
<view class="rateyuanbox"> | |||
<view class="rateyuanboxzuo"> | |||
<view class="boxzuoview cccccc">{{customerInfo.visitRecord || '--'}}次</view> | |||
@@ -193,7 +201,7 @@ | |||
</view> | |||
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i"> | |||
<view class="Level2che" @click="changeshow2(subitem,1)"> | |||
<view class="title1">{{subitem.name}}</view> | |||
<view class="title1 u-line-1">{{subitem.name}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="zhixing" v-if="!subitem.selected">已执行</view> | |||
<view class="zhixing2" v-else>未执行</view> | |||
@@ -211,12 +219,113 @@ | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-if="che.selected==1" class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
<view v-if="subitem.show" style="width: 100%;height: 30rpx;"></view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="xuqiu" v-if="tabactive==1"> | |||
<view class="ratetetle">执行总览</view> | |||
<view class="rateyuanbox"> | |||
<view class="rateyuanboxzuo"> | |||
<view class="boxzuoview cccccc">{{customerInfo.visitRecord || '--'}}次</view> | |||
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">到访次数</view> | |||
</view> | |||
<view class="rateyuanboxyou"> | |||
<view class="boxzuoview" style="width: 100%;display: flex;justify-content: center;"> | |||
<u-circle-progress active-color="#4FC78F" width='139' :percent="customerInfo.wordFraction||0"> | |||
<view style="text-align: center;color: #4FC78F;">{{customerInfo.wordFraction||0}}%</view> | |||
</u-circle-progress> | |||
</view> | |||
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">需求挖掘执行率</view> | |||
</view> | |||
<view class="rateyuanboxzuo"> | |||
<view class="boxzuoview cccccc">{{customerInfo.mm}}min</view> | |||
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">接待时长</view> | |||
</view> | |||
</view> | |||
<view | |||
style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;"> | |||
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 20rpx;">指标</view> | |||
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 170rpx;">执行率 | |||
</view> | |||
</view> | |||
<!-- 暂无数据 --> | |||
<view v-if="KeyWordsfractionList.length==0" style="width: 100%;height: 100%;display: flex;align-items: center;"> | |||
<view style="width: 100%;padding-top: 60rpx;"> | |||
<view style="width: 100%;text-align: center;"> | |||
<image style="width: 220rpx;height: 200rpx;" | |||
src="https://static.quhouse.com/zhikong_xcx_img/nodatalist.png" mode=""></image> | |||
</view> | |||
<view style="text-align: center;width: 100%;margin-top: 20rpx;color: #999999;">暂无数据</view> | |||
</view> | |||
</view> | |||
<!-- 挖掘执行话术展示 --> | |||
<view class="Level-box" v-else v-for="(item,index) in KeyWordsfractionList" :key="index"> | |||
<view class="Level1che" @click="changeshowlevel1(item,1)"> | |||
<view class="title1">{{item.name}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="jindutiao"> | |||
<view class="huanxing" :style="{width: item.fraction||0 +'%'}"></view> | |||
<view class="text">{{item.fraction||0}}%</view> | |||
</view> | |||
</view> | |||
<view class="jiantobox"> | |||
<image v-if="!item.show" class="arrow rotatearrow" src="/static/images/down.png" mode="" /> | |||
<image v-else class="arrow" src="/static/images/up.png" mode="" /> | |||
</view> | |||
</view> | |||
<!-- 话术在一级下 --> | |||
<view v-if="item.showLevel==1"> | |||
<view class="hhhbox" v-if="item.show" style="padding: 30rpx;"> | |||
<view class="hsnrtest">话术内容</view> | |||
<view class="Level3che" @tap="clickaudeopal(che)" | |||
v-for="(che,inc) in item.questionList" :key='inc'> | |||
<view class="title1">{{inc+1}}.{{che.question}}</view> | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 话术在二级下 --> | |||
<view v-if="item.showLevel==2"> | |||
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i"> | |||
<view class="Level2che" @click="changeshow2(subitem,1)"> | |||
<view class="title1 u-line-1">{{subitem.name}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="zhixing" v-if="!subitem.selected">已执行</view> | |||
<view class="zhixing2" v-else>未执行</view> | |||
</view> | |||
<view class="jiantobox"> | |||
<image v-if="!subitem.show" class="arrow rotatearrow" src="/static/images/down.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/up.png" mode="" /> | |||
</view> | |||
</view> | |||
<view v-if="subitem.show" style="padding: 30rpx 0;"> | |||
<view class="hsnrtest">话术内容</view> | |||
<view class="Level3che" @tap="clickaudeopal(che)" | |||
v-for="(che,inc) in subitem.questionList" :key='inc'> | |||
<view class="title1">{{inc+1}}.{{che.question}}</view> | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
@@ -249,6 +358,7 @@ | |||
}, | |||
data() { | |||
return { | |||
tabactive: 0, | |||
activeTotal: 0, | |||
customerId: '', | |||
tipshow: false, | |||
@@ -261,6 +371,7 @@ | |||
totalRate: [], | |||
ratelist: [], | |||
fllowList: [], | |||
KeyWordsfractionList: [],//需求挖掘话术list | |||
userInfo: {}, | |||
buttonisshow: false | |||
} | |||
@@ -288,6 +399,37 @@ | |||
this.tabtimetap(0) | |||
}, | |||
methods: { | |||
changeshowlevel1(item,type){ | |||
console.log(item) | |||
item.show = !item.show | |||
}, | |||
// 客户详情需求挖掘话术 | |||
getfindKeyWordsBycusId() { | |||
this.$u.get("/cusLvStatistics/findKeyWordsBycusId?cusId=" + this.customerId).then(res => { | |||
console.log(res) | |||
if(res.length){ | |||
res.forEach(item=>{ | |||
item.show = false | |||
item.children.forEach(obj=>{ | |||
obj.show = false | |||
if(obj.questionList.length){ | |||
obj.questionList.forEach(subobj=>{ | |||
subobj.show =false | |||
}) | |||
} | |||
}) | |||
if(item.questionList.length){ | |||
item.questionList.forEach(obj=>{ | |||
obj.show =false | |||
}) | |||
} | |||
}) | |||
this.KeyWordsfractionList = res | |||
}else{ | |||
this.KeyWordsfractionList = [] | |||
} | |||
}) | |||
}, | |||
// 获取到访记录 | |||
getVisitList() { | |||
this.$u.get("/customer/findByPhoneAndProject?id=" + this.customerId, ).then(res => { | |||
@@ -328,10 +470,10 @@ | |||
this.getFollowList() | |||
} else { | |||
this.getRatelist() | |||
this.getfindKeyWordsBycusId() | |||
} | |||
}, | |||
tapThevisiting(item) { | |||
console.log("11111111111111") | |||
uni.showLoading({ | |||
title: '加载中', | |||
mask: true | |||
@@ -678,7 +820,7 @@ | |||
align-items: center; | |||
.title1 { | |||
flex: 2; | |||
flex: 3; | |||
font-size: 28rpx; | |||
color: #333333; | |||
font-weight: 400; | |||
@@ -798,6 +940,32 @@ | |||
background-color: #FFFFFF; | |||
padding-bottom: 30rpx; | |||
width: 100%; | |||
.my-tab{ | |||
padding: 20rpx 0; | |||
display: flex; | |||
justify-content: space-around; | |||
align-items: center; | |||
border-bottom: 1px solid #E0E0E0; | |||
.tab-item{ | |||
padding: 0 30rpx; | |||
height: 56rpx; | |||
font-size: 28rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
color: #666666; | |||
line-height: 56rpx; | |||
text-shadow: 0px 1px 0px #E0E0E0; | |||
} | |||
.tabactive{ | |||
height: 56rpx; | |||
background: rgba(38, 113, 226, 0.1); | |||
box-shadow: 0px 1px 0px 0px #E0E0E0; | |||
border-radius: 28rpx; | |||
font-weight: 600; | |||
color: #2671E2; | |||
} | |||
} | |||
.ratetetle { | |||
padding: 30rpx; | |||
@@ -841,7 +1009,7 @@ | |||
.tab { | |||
height: 88rpx; | |||
border-bottom: 1px solid #E0E0E0; | |||
// border-bottom: 1px solid #E0E0E0; | |||
background: #FFFFFF; | |||
display: flex; | |||
align-items: center; | |||
@@ -941,7 +1109,6 @@ | |||
.content-sec { | |||
border-top: 1px solid #E0E0E0; | |||
padding: 0 30rpx; | |||
height: 270rpx; | |||
position: relative; | |||
.content-sec-lab { | |||
@@ -984,7 +1151,7 @@ | |||
font-weight: 400; | |||
color: #2671E2; | |||
line-height: 45rpx; | |||
bottom: 15rpx; | |||
bottom: 100rpx; | |||
right: 30rpx; | |||
text-align: center; | |||
} | |||
@@ -72,14 +72,17 @@ | |||
</view> | |||
<view class="content-sec-lab"> | |||
顾问姓名:<view class="content-sec-lab1">{{item.agentName}}</view> | |||
顾问姓名:<view class="content-sec-lab1">{{item.agentName||'--'}}</view> | |||
</view> | |||
<view class="content-sec-lab"> | |||
需求挖掘:<view class="content-sec-lab1">{{item.wordFraction||0}}%</view> | |||
</view> | |||
<view class="content-sec-lab"> | |||
添加时间:<view class="content-sec-lab1">{{item.createTime}}</view> | |||
</view> | |||
<view class="content-sec-num"> | |||
<view class="">{{item.visitRecord || '--'}}次到访</view> | |||
<view class="">{{item.fraction || '0'}}% | {{item.mm || '0'}}<text | |||
<view class="">{{item.fraction || 0}}% | {{item.mm || 0}}<text | |||
style="font-size: 24rpx;">min</text></view> | |||
</view> | |||
</view> | |||
@@ -78,10 +78,12 @@ | |||
<view class="arriveNum">第{{item.visitRecord || "--"}}次接待</view> | |||
</view> | |||
<view class="right"> | |||
<!-- {{item.fraction || '0'}}% | {{item.fraction || '0'}}分 --> | |||
{{item.fraction || '0'}}% | |||
</view> | |||
</view> | |||
<view class="content-last"> | |||
需求挖掘:{{item.wordFraction|| 0}}% | |||
</view> | |||
<view class="content-last"> | |||
{{item.createTime}} | {{item.mm || '0'}} min | |||
</view> | |||
@@ -433,6 +435,7 @@ | |||
this.$u.post("/customer/lifeTrackDefineList", { | |||
houseId: this.buildingID | |||
}).then(res => { | |||
this.LOADING = false | |||
let tempArr = [] | |||
res.forEach(item => { | |||
let tempObj = {} | |||
@@ -119,31 +119,25 @@ | |||
<view class="realnum">{{realtimeobj.fraction || 0}}%</view> | |||
<view class="realtext">平均执行率</view> | |||
</view> | |||
<view class="real" @click="towajue"> | |||
<view class="realnum">{{realtimeobj.wordFraction || 0}}%</view> | |||
<view class="realtext">平均挖掘率</view> | |||
</view> | |||
<view class="real"> | |||
<view @click="prohibitedtap(1)" v-if="methodsisshow==true" class="realnum" style="color: red;"> | |||
{{realtimeobj.prohibitedCustomer || 0}} | |||
</view> | |||
<view @click="prohibitedtap(1)" v-if="methodsisshow==true" class="realtext">违禁预警</view> | |||
</view> | |||
<view class="real"> | |||
<view class="realnum"></view> | |||
<view class="realtext"></view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="title" style="display: flex;"> | |||
<view style="width: 55%;">概览</view> | |||
<view class="cet" style="display: flex;"> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 2 }" @click="tabtimeclick(2)">近7天 | |||
</view> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 6 }" @click="tabtimeclick(6)"> | |||
近30天</view> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 7 }" @click="tabtimeclick(7)">自定义 | |||
</view> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 2 }" @click="tabtimeclick(2)">近7天</view> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 6 }" @click="tabtimeclick(6)">近30天</view> | |||
<view class="cetview" :class="{ activecllasscet: zhixingcenterindex == 7 }" @click="tabtimeclick(7)">自定义</view> | |||
</view> | |||
</view> | |||
<view class="real-timebox"> | |||
@@ -166,6 +160,10 @@ | |||
<view class="realnum">{{Thisweekobj.avgDuration|| 0}}</view> | |||
<view class="realtext">平均接待时长</view> | |||
</view> | |||
<view class="real" @click="towajue"> | |||
<view class="realnum">{{Thisweekobj.wordFraction || 0}}%</view> | |||
<view class="realtext">平均挖掘率</view> | |||
</view> | |||
<view class="real" @click="prohibitedtap(2)" v-if="methodsisshow==true"> | |||
<view class="realnum" style="color: red;">{{Thisweekobj.prohibitedCustomer || 0}}</view> | |||
<view class="realtext">违禁预警</view> | |||
@@ -174,10 +172,6 @@ | |||
<view class="realnum"></view> | |||
<view class="realtext"></view> | |||
</view> | |||
<view class="real"> | |||
<view class="realnum"></view> | |||
<view class="realtext"></view> | |||
</view> | |||
</view> | |||
</view> | |||
@@ -193,7 +187,6 @@ | |||
</view> | |||
</view> | |||
<!-- 项目切换 --> | |||
<view v-if="Showhiddenunits"> | |||
<u-select :mask-close-able="false" v-model="Showhiddenunits" mode="single-column" :list="lpanlist" | |||
@@ -269,6 +262,7 @@ | |||
prohibitedCustomer: '', | |||
tagCustomer: '', | |||
fraction: '', | |||
wordFraction: '', | |||
receptionCount: '' | |||
}, | |||
Thisweekobj: { | |||
@@ -278,6 +272,7 @@ | |||
prohibitedCustomer: '', | |||
tagCustomer: '', | |||
fraction: '', | |||
wordFraction: '', | |||
receptionCount: '' | |||
}, | |||
methodsisshow: false, | |||
@@ -396,6 +391,11 @@ | |||
}, 3000) | |||
}, | |||
methods: { | |||
towajue(){ | |||
uni.navigateTo({ | |||
url: "/pages/center/Piabodata/requireminingAnalysis" | |||
}) | |||
}, | |||
close() { | |||
this.isShowUpdate = false; | |||
}, | |||
@@ -533,6 +533,7 @@ | |||
avgDuration: Math.floor(data.data.data.avgDuration / 60) || 0, | |||
tagCustomer: data.data.data.tagCustomer, | |||
fraction: data.data.data.fraction, | |||
wordFraction: data.data.data.wordFraction, | |||
receptionCount: data.data.data.receptionCount | |||
} | |||
} | |||
@@ -564,6 +565,7 @@ | |||
avgDuration: Math.floor(data.data.data.avgDuration / 60) || 0, | |||
tagCustomer: data.data.data.tagCustomer, | |||
fraction: data.data.data.fraction, | |||
wordFraction: data.data.data.wordFraction, | |||
receptionCount: data.data.data.receptionCount | |||
} | |||
} | |||
@@ -41,9 +41,9 @@ | |||
export default { | |||
data() { | |||
return { | |||
username: '', | |||
username: '',//18831048327 ,18888888800 | |||
//获取到的用户名的值 | |||
password: '', | |||
password: '',//123456 | |||
//获取到的密码栏中的值 | |||
passwordType: true, | |||
agreeChecked: true | |||
@@ -241,10 +241,9 @@ | |||
</view> | |||
</view> | |||
<view class="pingfenbox"> | |||
<view :class="{ activecllasscet: zhixingcenterindex == 0 }" @click="recordclick(0)">销讲总执行率{{totalRate}}% | |||
</view> | |||
<view v-if="methodsisshow==true" :class="{ activecllasscet: zhixingcenterindex == 1 }" | |||
@click="recordclick(1)">禁忌执行</view> | |||
<view :class="{ activecllasscet: zhixingcenterindex == 0 }" @click="recordclick(0)">销讲总执行率{{totalRate||0}}%</view> | |||
<view v-if="methodsisshow==true" :class="{ activecllasscet: zhixingcenterindex == 1 }" @click="recordclick(1)">禁忌执行</view> | |||
<view :class="{ activecllasscet: zhixingcenterindex == 2 }" @click="recordclick(2)">需求挖掘率{{KeyWordsfraction||0}}%</view> | |||
</view> | |||
<view v-if="zhixingcenterindex == 0" class="cenisbox"> | |||
<view | |||
@@ -254,7 +253,7 @@ | |||
</view> | |||
</view> | |||
<view class="Level-box" v-for="(item,index) in ratelist" :key="index"> | |||
<view class="Level1che" @click="changeshow(item,1)"> | |||
<view class="Level1che" @click="item.show = !item.show"> | |||
<view class="title1">{{item.name.substring(0,8)}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="jindutiao"> | |||
@@ -268,7 +267,7 @@ | |||
</view> | |||
</view> | |||
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i"> | |||
<view class="Level2che" @click="changeshow2(subitem,1)"> | |||
<view class="Level2che" @click="item.show = !item.show"> | |||
<view class="title1">{{subitem.name.substring(0,8)}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="zhixing" v-if="!subitem.selected">已执行</view> | |||
@@ -287,6 +286,8 @@ | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
<view v-if="subitem.show" style="width: 100%;height: 30rpx;"></view> | |||
@@ -301,6 +302,75 @@ | |||
<view v-if="prohibitedlist.length==0" style="width: 100%;text-align: center;margin-top: 60rpx;">暂无数据 | |||
</view> | |||
</view> | |||
<view v-if="zhixingcenterindex == 2" class="cenisbox"> | |||
<view | |||
style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;"> | |||
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 20rpx;">指标</view> | |||
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 170rpx;">执行率 | |||
</view> | |||
</view> | |||
<view class="Level-box" v-for="(item,index) in KeyWordsfractionList" :key="index"> | |||
<view class="Level1che" @click="item.show = !item.show"> | |||
<view class="title1">{{item.name}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="jindutiao"> | |||
<view class="huanxing" :style="{width: item.fraction||0+'%'}"></view> | |||
<view class="text">{{item.fraction||0}}%</view> | |||
</view> | |||
</view> | |||
<view class="jiantobox"> | |||
<image v-if="!item.show" class="arrow rotatearrow" src="/static/images/down.png" mode="" /> | |||
<image v-else class="arrow" src="/static/images/up.png" mode="" /> | |||
</view> | |||
</view> | |||
<!-- 话术在一级下 --> | |||
<view v-if="item.showLevel==1"> | |||
<view class="hhhbox" v-if="item.show" style="padding: 30rpx;"> | |||
<view class="hsnrtest">话术内容</view> | |||
<view class="Level3che" @tap="clickaudeopal(che)" | |||
v-for="(che,inc) in item.questionList" :key='inc'> | |||
<view class="title1">{{inc+1}}.{{che.question}}</view> | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 话术在二级下 --> | |||
<view v-if="item.showLevel==2"> | |||
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i"> | |||
<view class="Level2che" @click="item.show = !item.show"> | |||
<view class="title1 u-line-1">{{subitem.name}}</view> | |||
<view class="leve1-jindu"> | |||
<view class="zhixing" v-if="!subitem.selected">已执行</view> | |||
<view class="zhixing2" v-else>未执行</view> | |||
</view> | |||
<view class="jiantobox"> | |||
<image v-if="!subitem.show" class="arrow rotatearrow" src="/static/images/down.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/up.png" mode="" /> | |||
</view> | |||
</view> | |||
<view v-if="subitem.show" style="padding: 30rpx 0;"> | |||
<view class="hsnrtest">话术内容</view> | |||
<view class="Level3che" @tap="clickaudeopal(che)" | |||
v-for="(che,inc) in subitem.questionList" :key='inc'> | |||
<view class="title1">{{inc+1}}.{{che.question}}</view> | |||
<view class="jiantobox"> | |||
<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png" | |||
mode="" /> | |||
<image v-else class="arrow" src="/static/images/rate-nocheck.png" | |||
mode="" /> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 客户意向 --> | |||
@@ -445,6 +515,8 @@ | |||
data() { | |||
return { | |||
KeyWordsfraction: 0, | |||
KeyWordsfractionList: [], | |||
noClick: true, | |||
kehuyixiangcenterindex: 0, | |||
Acquirecustomerintentlist2: [], | |||
@@ -698,9 +770,10 @@ | |||
this.zhixingcenterindex = i; | |||
if (i == 0) { | |||
this.getRatelist() | |||
} else { | |||
console.log('999') | |||
} else if(i==1) { | |||
this.huoqujinji() | |||
}else{ | |||
this.getfindKeyWordsBycusId() | |||
} | |||
}, | |||
//获取禁忌 | |||
@@ -1047,7 +1120,6 @@ | |||
} else { | |||
tempRoleIndex = this.roleindex | |||
} | |||
console.log() | |||
uni.request({ | |||
url: config.service.getCorpusAnal + '?corpusId=' + this.luyinList[this.csdFileindex].id + | |||
"&bg=" + bgcd + "&speaker=" + tempRoleIndex + "&voFlag=" + voFlagValue + | |||
@@ -1503,7 +1575,6 @@ | |||
this.messagelisy = this.dialogList[i].message | |||
this.argtextindex1 = i; | |||
this.argtextindex2 = index; | |||
}, | |||
//回到顶部 | |||
gotoTop() { | |||
@@ -1512,21 +1583,34 @@ | |||
this.scrollId = "top"; | |||
}) | |||
}, | |||
//切换tab | |||
changeTab(type) { | |||
if (type == 0) { | |||
this.tab = 0 | |||
} else { | |||
this.tab = 1; | |||
this.getRatelist(); | |||
} | |||
}, | |||
//评分上下显隐 | |||
changeshow(item, type) { | |||
item.show = !item.show; | |||
}, | |||
changeshow2(item, type) { | |||
item.show = !item.show; | |||
// 客户详情需求挖掘话术 | |||
getfindKeyWordsBycusId() { | |||
this.$u.get("/cusLvStatistics/findKeyWordsBycusId?cusId=" + this.customerId).then(res => { | |||
// console.log(res) | |||
if(res.length){ | |||
this.KeyWordsfraction = 0 | |||
res.forEach(item=>{ | |||
this.KeyWordsfraction += +item.fraction // 总执行率 | |||
item.show = false | |||
item.children.forEach(obj=>{ | |||
obj.show = false | |||
if(obj.questionList.length){ | |||
obj.questionList.forEach(subobj=>{ | |||
subobj.show =false | |||
}) | |||
} | |||
}) | |||
if(item.questionList.length){ | |||
item.questionList.forEach(obj=>{ | |||
obj.show =false | |||
}) | |||
} | |||
}) | |||
this.KeyWordsfractionList = res | |||
}else{ | |||
this.KeyWordsfractionList = [] | |||
} | |||
}) | |||
}, | |||
getRatelist() { | |||
this.$u.get("/customer/findzkMByCusId", { | |||
@@ -1,8 +1,7 @@ | |||
// http.js使用域名 | |||
const baseUrl = 'http://81.70.55.170:9090/autoSR/api';// 最新测试 | |||
// const baseUrl = 'http://192.168.31.148:8080/api';// 泽明 | |||
// const baseUrl = 'http://127.0.0.1:8080/autoSR/api'; // 本地 | |||
// const baseUrl = 'http://192.168.31.161:8080/autoSR/api'; // 长龙 | |||
// const baseUrl = 'http://192.168.31.169:8080/autoSR/api'; // 长龙 | |||
// const baseUrl = 'http://192.168.31.90:8080/api'; // 盛浩 | |||
// const baseUrl = 'https://zkgj.quhouse.com/api'; // 质控正式 | |||
// const baseUrl = 'https://hfju.com/api'; // 数智正式 | |||
@@ -17,7 +16,6 @@ const baseUrl = 'http://81.70.55.170:9090/autoSR/api';// 最新测试 | |||
// const host = 'http://192.168.31.57:8080/autoSR/api';// 本地 | |||
const host = baseUrl; // 测试站 | |||
// const host = 'http://192.168.31.167:8080/autoSR/api'; // 长龙 | |||
// const host = 'http://192.168.31.134:8080/autoSR/api'; // 佳豪 | |||
// const host = 'http://10.2.1.104:8081/autoSR/api'; // 刘敏 | |||
// const host = 'https://zkgj.quhouse.com/api'; // 质控正式 | |||
// const host = 'https://hfju.com/api'; // 数智正式 | |||