diff --git a/config.js b/config.js
index c6d5858..6f6b84b 100644
--- a/config.js
+++ b/config.js
@@ -42,6 +42,8 @@ var config = {
cmmentList:`${host}/comment/list`,
// 新增评论
saveCmment:`${host}/comment/saveCmment`,
+ // 获取客户来源列表
+ sourceList: `${host}/customer/sourceList`,
// 新增文件评论
saveCmmentUpload:`${host}/comment/upload`,
// 点赞
diff --git a/env/cl.js b/env/cl.js
index 31228e3..d4c5e15 100644
--- a/env/cl.js
+++ b/env/cl.js
@@ -1,5 +1,5 @@
const ENV_PATH = {
- baseUrl: 'http://192.168.31.161:9999', // 长龙
+ baseUrl: 'http://192.168.31.160:9999', // 长龙
}
module.exports = ENV_PATH
\ No newline at end of file
diff --git a/manifest.json b/manifest.json
index a288498..374cacc 100644
--- a/manifest.json
+++ b/manifest.json
@@ -82,7 +82,7 @@
"usingComponents" : true,
"permission" : {},
"requiredBackgroundModes" : [ "audio" ],
- "lazyCodeLoading": "requiredComponents",
+ "lazyCodeLoading" : "requiredComponents",
"plugins" : {
"WechatSI" : {
"version" : "0.3.4",
diff --git a/pages.json b/pages.json
index 7060278..4bf0c0c 100644
--- a/pages.json
+++ b/pages.json
@@ -463,6 +463,15 @@
"enablePullDownRefresh": true
}
},
+ {
+ "path": "Piabodata/requireminingAnalysis",
+ "style": {
+ "navigationBarTitleText": "需求挖掘分析",
+ "navigationBarBackgroundColor": "#FFFFFF",
+ "navigationBarTextStyle": "black",
+ "enablePullDownRefresh": true
+ }
+ },
{
"path": "Piabodata/StaffAnalysis",
"style": {
diff --git a/pages/center/Piabodata/requireminingAnalysis.vue b/pages/center/Piabodata/requireminingAnalysis.vue
new file mode 100644
index 0000000..4dc9392
--- /dev/null
+++ b/pages/center/Piabodata/requireminingAnalysis.vue
@@ -0,0 +1,751 @@
+
+
+
+
+
+ {{ time }}
+
+
+
+ {{ dept}}
+
+
+
+ {{ guwen}}
+
+
+
+
+
+ 简报 统计说明
+
+
+ {{item.name}}
+ {{item.firstnum||0}}
+
+ 对比:{{item.endnum||0}}
+ {{item.duibinum||0}}
+
+
+
+
+
+
+
+
+
+
+ 统计说明
+
+ 平均挖掘执行率:筛选时间内,有效接待中已标记顾问的挖掘执行率的平均值;
+ 未标记:筛选时间内,有效接待中未标记顾问的接待数;
+ 有效接待:筛选时间内,标记为有效的接待数,不包含待接单;
+ 未挖掘数:筛选时间内,挖掘平均执行率为0的接待数;
+
+
+ X
+
+
+
+
+ 平均挖掘执行率趋势
+
+
+
+
+
+
+
+
+ 需求挖掘分布
+
+
+
+
+
+
+
+
+ 需求挖掘排名
+
+
+
+ 排名
+ 需求类型/挖掘执行接待数
+ 执行率
+ 操作
+
+ 暂无数据
+
+
+
+
+
+ {{i+1}}
+
+ {{item.name}}({{item.selected}})
+ {{max100(item.fraction)}}%
+ 查看
+
+
+
+
+
+ 近7天
+
+ 近15天
+
+ 近30天
+
+ 自定义
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/center/consumer/consumerDetail.vue b/pages/center/consumer/consumerDetail.vue
index 283ac23..3e6fd1e 100644
--- a/pages/center/consumer/consumerDetail.vue
+++ b/pages/center/consumer/consumerDetail.vue
@@ -11,16 +11,14 @@
B
C
D
- {{ customerInfo.clientStageName }}
+
+ {{ customerInfo.clientStageName }}
+
-
@@ -31,13 +29,13 @@
顾问姓名:{{customerInfo.agentName||'--'}}
-
- 客户标签:
- 暂无
- {{che.name}}
-
- 查看全部
+
+
+ 挖掘执行:{{customerInfo.wordFraction||0}}%
+
+
+ 挖掘成功:{{customerInfo.wordFinishFraction||0}}%
+
添加时间:{{customerInfo.createTime}}
@@ -45,14 +43,9 @@
到访{{customerInfo.visitRecord || '--'}}次
- {{customerInfo.mm || '0'}}min/{{customerInfo.fraction || '0'}}%
+ {{customerInfo.mm || '0'}}min/{{customerInfo.fraction || '0'}}%
-
@@ -71,7 +64,10 @@
跟进记录
- 执行率
+ 销讲执行率
+
+
+ 挖掘执行率
@@ -94,10 +90,6 @@
{{item.agentName || '--'}}
代接待
-
@@ -129,19 +121,17 @@
{{item.agentName.slice(0,1) || '--'}}
{{item.agentName || '||'}}
- {{ item.clientStageName }}
+ {{ item.clientStageName }}
+
{{item.createTime}}
-
-
+
执行总览
@@ -155,11 +145,11 @@
{{customerInfo.fraction}}%
- 销讲执行率
+ 销讲执行率
{{customerInfo.mm}}min
- 接待时长
+ 接待时长
@@ -210,20 +200,147 @@
-
+
+
+
+
+
+
+
+
+
+ 暂无数据
+
+
+
+
+
+ 挖掘执行率:{{customerInfo.wordFraction||0}}%
+ 挖掘成功率:{{customerInfo.wordFinishFraction||0}}%
+
+
+ 指标
+
+ 执行率
+
+ 挖掘成功
+
+
+
+
+
+
+
+
+
+ 暂无数据
+
+
+
+
+
+ {{ item.name }}
+
+ 执行{{ item.fraction || 0 }}%
+
+
+ 已完成({{item.keywordsList.length}})
+ 未完成
+
+
+
+
+
+
+
+
+
+
+ 客户标签:{{ getKeywordsList(item.keywordsList) }}
+ 话术内容:
+ 暂无话术
+
+
+ {{inc+1}}.{{che.showFormatExpression}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ subitem.name }}
+
+ 已执行
+ 未执行
+
+
+ 已完成
+ 未完成
+
+
+
+
+
+
+
+
+ 客户标签:{{ getKeywordsList(subitem.keywordsList) }}
+ 话术内容:
+ 暂无话术
+
+
+ {{ inc + 1 }}.{{ che.showFormatExpression }}
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -237,17 +354,18 @@
-
+
diff --git a/pages/mine/ScoringPlaylist.vue b/pages/mine/ScoringPlaylist.vue
index 290cc6a..41e1dd6 100644
--- a/pages/mine/ScoringPlaylist.vue
+++ b/pages/mine/ScoringPlaylist.vue
@@ -1,16 +1,31 @@
-
-
-
-
-
+
+
+
+
+
+
+ {{ item.Content.time }}
+
+
+
+
+
+
+
+
+
+ {{dealword(subitem)[1]}}
+
-
- {{item.Content.time}}
-
@@ -21,23 +36,44 @@
export default {
data() {
return {
- customerId:'',
- listarr:[],
- id:'',
- type:'',
+ customerId: '',
+ listarr: [],
+ id: '',
+ type: '',
tipsFncName: '', // 提醒页面变更的值
from: '', // 标记需要刷新的来源
};
},
onLoad(options) {
this.customerId = options.customerId;
- this.id=options.id;
- this.type=options.type;
+ this.id = options.id;
+ this.type = options.type;
if (options.UpDateEvent) this.tipsFncName = options.UpDateEvent
if (options.from) this.from = options.from
this.searchinfo()
},
methods: {
+
+ // 对话加命中标签
+ dealTypes(type) {
+ if (type) {
+ let tem = type.substring(1).split(',')
+ return tem
+ } else {
+ return []
+ }
+ },
+ // 对话加命中标签
+ dealword(type) {
+ if (type) {
+ let a = type.split('-')
+ let rest = type.substring(2).split('-').join(',')
+ let arr = [a[0], rest]
+ return arr
+ } else {
+ return []
+ }
+ },
formatTime(num) {
//格式化时间格式
num = num.toFixed(0);
@@ -48,35 +84,35 @@
return min + ":" + second;
},
//搜索
- searchinfo(){
- let parames={
- marketingId:this.id,
- customerId:this.customerId,
- type:this.type
+ searchinfo() {
+ let parames = {
+ marketingId: this.id,
+ customerId: this.customerId,
+ type: this.type
}
this.$u.post("/corpus/pinWordMatching", parames).then(res => {
- res.forEach(item=>{
- item.Content=JSON.parse(item.transferContent)
+ res.forEach(item => {
+ item.Content = JSON.parse(item.transferContent)
})
- res.forEach(cet=>{
- cet.Content.time=this.formatTime(cet.Content.bg/1000)
+ res.forEach(cet => {
+ cet.Content.time = this.formatTime(cet.Content.bg / 1000)
})
- this.listarr=res;
+ this.listarr = res;
})
},
//跳转
- toaidoinfo(item,id,index){
- item.customerId=this.customerId;
- item.id=id;
- item.index=index;
+ toaidoinfo(item, id, index) {
+ item.customerId = this.customerId;
+ item.id = id;
+ item.index = index;
this.infostust(item)
},
//只有一条的时候
- infostust(item){
+ infostust(item) {
console.log("zobudao")
let d = JSON.parse(JSON.stringify([item]))
- d[0].onebest="";
- console.log(d)
+ d[0].onebest = "";
+ console.log(d)
const parames = {
pageNum: 1,
pageSize: 100,
@@ -87,7 +123,7 @@
this.$u.post("/corpus/findByPage", parames).then(res => {
uni.setStorageSync("entrance", 2); //写入缓存
uni.setStorageSync("searchobj", d[0]); //写入缓存
- if(res[0].merge==0){
+ if (res[0].merge == 0) {
let newobj = res[0];
if (this.tipsFncName) {
uni.$emit(this.tipsFncName, d[0])
@@ -100,11 +136,11 @@
url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&itemobj=${JSON.stringify(d[0])}&stateisshow=${'2'}&refresh=true`
})
}
-
+
uni.navigateTo({
url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&itemobj=${JSON.stringify(d[0])}&stateisshow=${'2'}`
})
- }else{
+ } else {
let newobj = res[0];
uni.navigateTo({
url: `/pages/mine/details?customerId=${newobj.customerId}&status=${newobj.status}&itemobj=${JSON.stringify(d[0])}&stateisshow=${'2'}`
@@ -112,10 +148,50 @@
}
})
},
-
+
},
}
diff --git a/pages/mine/calibration.vue b/pages/mine/calibration.vue
index 57d3162..809b694 100644
--- a/pages/mine/calibration.vue
+++ b/pages/mine/calibration.vue
@@ -79,6 +79,7 @@
let param = {
keywordIds:'',
id: this.customerId,
+ projectId: uni.getStorageSync("buildingID").id
}
let str = []
this.allList.map(item => {
diff --git a/pages/mine/details2.vue b/pages/mine/details2.vue
index 29d14e7..bd640dd 100644
--- a/pages/mine/details2.vue
+++ b/pages/mine/details2.vue
@@ -80,6 +80,23 @@
+
+
+
+
+
+
+
+
+
+ {{dealword(subitem)[1]}}
+
+
+
@@ -287,10 +304,12 @@
- 销讲总执行率{{totalRate}}%
+ 销讲总执行率{{totalRate}}%
禁忌执行
+ 需求挖掘率
暂无数据
+
+
+
+ 挖掘执行:{{wordFraction||0}}%
+ 挖掘成功:{{percent||0}}%
+
+
+ 指标
+
+ 执行率
+
+ 挖掘成功
+
+
+
+
+
+ {{item.name}}
+
+ 执行{{item.fraction || 0}}%
+ 已完成({{
+ item.keywordsList.length
+ }})
+ 未完成
+
+
+
+
+
+
+
+
+
+
+ 客户标签:{{ getKeywordsList(item.keywordsList) }}
+ 话术内容:
+ 暂无话术
+
+
+ {{inc+1}}.{{che.showFormatExpression}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{subitem.name}}
+
+ 已执行
+ 未执行
+
+
+ 已完成
+ 未完成
+
+
+
+
+
+
+
+
+ 客户标签:{{ getKeywordsList(subitem.keywordsList) }}
+ 话术内容:
+ 暂无话术
+
+
+ {{inc+1}}.{{che.showFormatExpression}}
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -393,7 +513,6 @@
-
@@ -486,6 +605,7 @@
},
data() {
return {
+ KeyWordsfractionList: [],
customStyle: {
'width': '320rpx',
'font-size': '34rpx',
@@ -600,10 +720,11 @@
nowPlaying: 0, // 当前播放位置
stepPosition: 0, // 需要跳转的播放位置
-
templateList: [], // 销讲业务
showTemplate: false, // 展示选择销讲业务弹窗
templateName: '', // 销讲业务类型文字
+ percent: 0,// 挖掘成功
+ wordFraction: 0,// 挖掘执行
};
},
computed: {
@@ -621,6 +742,8 @@
this.customerId = options.customerId;
this.itemobj = uni.getStorageSync('searchobj');
this.stateisshow = options.stateisshow;
+ this.wordFraction = options.wordFraction == 'undefined' ? 0 : options.wordFraction;
+
this.$zaudio.autoPlay = true
if (options.refresh) this.refresh = options.refresh
@@ -701,7 +824,6 @@
},
methods: {
-
// 获取销讲业务
getMarketingBusiness() {
this.$u.get('/customer/marketingBusiness', {
@@ -711,7 +833,80 @@
this.templateList = res
})
},
-
+ hangeshow2(item, type) {
+ item.show = !item.show;
+ },
+ //挖掘率话术客户标签展示
+ getKeywordsList(list) {
+ let keywords = [];
+ if (list && list.length) {
+ keywords = list.map((item) => item.name);
+ } else {
+ return "--";
+ }
+ return keywords.join(",");
+ },
+ // // 计算挖掘执行的完成率
+ getPercent() {
+ let countArr = this.KeyWordsfractionList.filter(item => item.selected == 0)
+ this.percent = (countArr.length / this.KeyWordsfractionList.length) * 100
+ this.percent = this.percent.toFixed(0)
+ },
+ // 客户详情需求挖掘话术
+ getfindKeyWordsBycusId() {
+ this.$u.get("/cusLvStatistics/findKeyWordsBycusId?cusId=" + this.customerId).then(res => {
+ // console.log(res)
+ if (res.length) {
+ res.forEach((item, index) => {
+ item.show = false
+ if (index == 0) {
+ item.show = true
+ }
+ item.children.forEach((obj, i) => {
+ obj.show = false
+ if (i == 0 && index == 0) {
+ obj.show = true;
+ }
+ })
+ })
+ this.KeyWordsfractionList = res
+ this.getPercent()
+ } else {
+ this.KeyWordsfractionList = []
+ }
+ })
+ },
+ clickWajue(item) {
+ if (item.isAskQuestions == 0) {
+ this.Pinspeak = false
+ uni.navigateTo({
+ url: '/pages/learning/Keywordsearch?customerId=' + this.customerId + "&keyword=" + item
+ .showFormatExpression +
+ "&skpl=" + "2" + '&UpDateEvent=DETAILS2INIT'
+ })
+ }
+ },
+ // 对话加命中标签
+ dealTypes(type) {
+ if (type) {
+ // let tem = type.split(',')
+ let tem = type.substring(1).split(',')
+ return tem
+ } else {
+ return []
+ }
+ },
+ // 对话加命中标签
+ dealword(type) {
+ if (type) {
+ let a = type.split('-')
+ let rest = type.substring(2).split('-').join(',')
+ let arr = [a[0], rest]
+ return arr
+ } else {
+ return []
+ }
+ },
// 跳转设备日志页面
eqLogClick() {
uni.navigateTo({
@@ -861,8 +1056,10 @@
this.zhixingcenterindex = i;
if (i == 0) {
this.getRatelist()
- } else {
+ } else if(i ==1) {
this.huoqujinji()
+ }else{
+ this.getfindKeyWordsBycusId()
}
},
//获取禁忌
@@ -1119,7 +1316,7 @@
this.stateisshow = 1;
uni.navigateTo({
url: '/pages/learning/Keywordsearch?customerId=' + this.customerId + "&status=" + this.status +
- "&skpl=" + "1" + '&UpDateEvent=DETAILS2INIT'
+ "&skpl=" + "1" + '&UpDateEvent=DETAILS2INIT&types=1'
})
},
//标记选择角色
@@ -1985,6 +2182,40 @@