Browse Source

添加客户阶段筛选

dev
jyt 2 years ago
parent
commit
15825171d9
3 changed files with 230 additions and 156 deletions
  1. +39
    -2
      pages/center/consumer/index.vue
  2. +40
    -3
      pages/center/records/index.vue
  3. +151
    -151
      pages/mine/details2.vue

+ 39
- 2
pages/center/consumer/index.vue View File

@@ -102,6 +102,15 @@
<image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
</view>
</view>
<view class="screen-counselor">
<view class="screen-text">
客户阶段
</view>
<view class="screen-sel" @click="selectPhaseShow = true">
<u-input v-model="screen.clientStageName" type="text" placeholder='请选择' class="screen-inp" disabled />
<image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
</view>
</view>
<!-- 录音标示 -->
<view class="screen-record">
<view class="screen-record-text">
@@ -167,6 +176,8 @@
<u-select v-model="selectshow" :list="freeList" @confirm="actionSelectCallback"></u-select>
<!-- 客户标签 -->
<u-select v-model="selectTipshow" :list="findKeywordsList" @confirm="selectCallback"></u-select>
<!-- 客户阶段 -->
<u-select v-model="selectPhaseShow" :list="phaseList" @confirm="selectPhase"></u-select>
<u-calendar v-model="totalTimeShow" mode="range" @change="totalTimeChange"></u-calendar>
@@ -209,6 +220,7 @@
screenShow:false,
selectshow:false,
selectTipshow:false,
selectPhaseShow:false,
buildingID:'',
screen:{
agentId:'',
@@ -216,7 +228,9 @@
visitRecord:'',
record:null,
cunsumerTips:'',
cunsumerTipsid:''
cunsumerTipsid:'',
clientStage:'',
clientStageName:''
},
stageList:['未知','到访','意向','定金','成交'],
recordList:[],
@@ -225,6 +239,7 @@
freeList:[],
userInfo:{},
findKeywordsList:[],
phaseList:[],
isnorefresh:'',
activeTotal:5,
activeTotal2:0,
@@ -248,6 +263,7 @@
this.getMyCustom()
this.getFreeList()
this.getfindKeywordsList()
this.getCustomPhase()
this.isnorefresh='';
}
},
@@ -362,6 +378,7 @@
query: {
projectId:this.buildingID,
keywordsId:this.screen.cunsumerTipsid,
clientStage:this.screen.clientStage,
agentId:this.screen.agentId,
dateType:dateType,
staTime:this.staTime,
@@ -434,6 +451,19 @@
this.findKeywordsList = res;
})
},
getCustomPhase(){
this.phaseList=[]
this.$u.post("http://192.168.31.167:8080/autoSR/api/customer/lifeTrackDefineList",{houseId:this.buildingID}).then(res => {
let tempArr = []
res.forEach(item=>{
let tempObj = {}
tempObj.label = item.stageName;
tempObj.value = item.id;
tempArr.push(tempObj)
})
this.phaseList = tempArr;
})
},
// 筛选
screenshow(){
this.screenShow=true
@@ -448,6 +478,10 @@
this.screen.cunsumerTips=e[0].label;
this.screen.cunsumerTipsid=e[0].value;
},
selectPhase(e){
this.screen.clientStageName=e[0].label;
this.screen.clientStage=e[0].value;
},
//重置
reset(){
this.screen={
@@ -456,7 +490,10 @@
visitRecord:'',
record:null,
cunsumerTips:'',
cunsumerTipsid:''
cunsumerTipsid:'',
clientStage:'',
clientStageName:''
}
this.nextPage=1;
this.recordList=[];


+ 40
- 3
pages/center/records/index.vue View File

@@ -90,6 +90,15 @@
<image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
</view>
</view>
<view class="screen-counselor">
<view class="screen-text">
客户阶段
</view>
<view class="screen-sel" @click="selectPhaseShow = true">
<u-input v-model="screen.clientStageName" type="text" placeholder='请选择' class="screen-inp" disabled />
<image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
</view>
</view>

<view class="screen-record">
<view class="screen-record-text">
@@ -148,6 +157,8 @@
</u-popup>
<!-- 选择顾问的选择框 -->
<u-select v-model="selectshow" :list="freeList" @confirm="actionSelectCallback"></u-select>
<!-- 客户阶段 -->
<u-select v-model="selectPhaseShow" :list="phaseList" @confirm="selectPhase"></u-select>
<u-calendar v-model="totalTimeShow" mode="range" @change="totalTimeChange"></u-calendar>
@@ -190,13 +201,17 @@
value:'',
screenShow:false,
selectshow:false,
selectPhaseShow:false,
phaseList:[],
totalTimeShow: false,
screen:{
agentId:'',//顾问id
record:'0',
markAdvisor:null,
visitRecord:null,
validInvalid:null
validInvalid:null,
clientStage:'',
clientStageName:''
},
freeList:[],//顾问
recordList:[],
@@ -249,6 +264,8 @@
this.getFreeList();
this.isnorefresh='';
}
this.getCustomPhase()
},
onReachBottom() {
if(this.totalRecord==this.nextPage){
@@ -264,6 +281,23 @@
}
},
methods:{
getCustomPhase(){
this.phaseList=[]
this.$u.post("http://192.168.31.167:8080/autoSR/api/customer/lifeTrackDefineList",{houseId:this.buildingID}).then(res => {
let tempArr = []
res.forEach(item=>{
let tempObj = {}
tempObj.label = item.stageName;
tempObj.value = item.id;
tempArr.push(tempObj)
})
this.phaseList = tempArr;
})
},
selectPhase(e){
this.screen.clientStageName=e[0].label;
this.screen.clientStage=e[0].value;
},
tapsoltishow(){
this.soltishow=true;
},
@@ -404,7 +438,8 @@
dateType:dateType,
recDurationInterval:recDurationInterval,
orderBy:orderBy,
validInvalid:this.screen.validInvalid
validInvalid:this.screen.validInvalid,
clientStage:this.screen.clientStage,
}
};
if(this.screen.agentId){
@@ -445,7 +480,9 @@
record:'0',
markAdvisor:null,
visitRecord:null,
validInvalid:null
validInvalid:null,
clientStage:'',
clientStageName:''
}
this.screenShow=false;
this.nextPage=1;


+ 151
- 151
pages/mine/details2.vue View File

@@ -126,9 +126,9 @@
</view>
</scroll-view>
<view class="bottombox">
<LongAudio :customerId="customerId" :infos="infos" :roleindex="roleindex"></LongAudio>
<!-- <LongAudio :customerId="customerId" :infos="infos" :roleindex="roleindex"></LongAudio> -->
<!-- 播放块 -->
<!-- <view class="bottomhead">
<view class="bottomhead">
<view class="audio-play" @tap="changePlayState">
<image class="image" mode="widthFix"
:src="audioPlay ? 'https://qufang.oss-cn-beijing.aliyuncs.com/upload/icon/xcx/jjycrm/pause.png' : 'https://qufang.oss-cn-beijing.aliyuncs.com/upload/icon/xcx/jjycrm/play.png'">
@@ -144,7 +144,7 @@
<text>{{timeStr}}</text>
</view>
</view>
</view> -->
</view>
<!-- 底部弹框 -->
<view class="botbotmm">
<view class="tmmchen" @click="guanjiancishifo()">
@@ -628,16 +628,16 @@
}
this.gituserlist()
this.innerAudioContext = uni.createInnerAudioContext();
// this.innerAudioContext.autoplay = false;
// this.innerAudioContext.title = '音频';
// this.onPlay()
// this.onPause()
// this.onCanplay()
// this.onEnded()
// this.onSeeking()
// this.onSeeked()
// this.TimeUpdate()
this.innerAudioContext.autoplay = false;
this.innerAudioContext.title = '音频';
this.onPlay()
this.onPause()
this.onCanplay()
this.onEnded()
this.onSeeking()
this.onSeeked()
this.TimeUpdate()
this.init(this.infos)

},
@@ -1092,93 +1092,93 @@
"&skpl=" + "1"
})
},
// onPlay() {
// this.innerAudioContext.onPlay(() => {
// // 播放监听
// console.log('播放!');
// this.audioPlay = true;
// wx.enableAlertBeforeUnload({
// message: "是否确认退出详情页面?",
// success: function(res) {
// console.log("方法注册成功:", res);
// },
// fail: function(errMsg) {
// console.log("方法注册失败:", errMsg);
// },
// });
// });
// },
// onPause() {
// this.innerAudioContext.onPause(() => {
// wx.disableAlertBeforeUnload({
// success: function(res) {
// console.log(res)
// },
// fail: function(e) {
// console.log(e)
// }
// });
// // 暂停监听
// console.log('暂停播放!');
// this.audioPlay = false
// });
// },
// onCanplay() {
// this.innerAudioContext.onCanplay((callback) => {
// console.log("缓冲回调", this.innerAudioContext.duration);
// })
// },
// onEnded() {
// this.innerAudioContext.onEnded(() => {
// // 结束播放监听
// console.log('播放结束!');
// this.audioPlay = false;
// });
// },
// onSeeking() {
// this.innerAudioContext.onSeeking((res) => {
// console.log("进行跳转", res);
// })
// },
// onSeeked() {
// this.innerAudioContext.onSeeked((res) => {
// console.log("结束跳转", res);
// this.$forceUpdate()
// });
// },
// TimeUpdate() {
// this.innerAudioContext.onTimeUpdate(() => {
// // var pages = getCurrentPages();
// // if(pages[pages.length-1].route!="pages/mine/details2"){
// // this.innerAudioContext.destroy();
// // }
// const {
// currentTime,
// duration
// } = this.innerAudioContext;
// console.log(currentTime, 'TimeUpdate, currentTime')
// this.playNow = parseInt(currentTime * 1000)
// console.log(this.playNow)
// if (this.dialogList.length == 0) {
// return
// } else {
// const message = this.dialogList[0].message;
// for (let i = 0; i < message.length; i++) {
// if (Number(message[i].bg) < this.playNow && Number(message[i].ed) > this.playNow) {
// this.scrollId = "dialog" + this.csdFileindex + "text" + message[i].bg;
// break;
// }
// }
// }
// const currTimeStr = this.formatTime(currentTime);
// this.sliderValue = parseInt(currentTime);
// // 变动的时间
// this.currentTimeStr = currTimeStr;
// //进度条最大值
// this.sliderMax = this.luyinList[this.csdFileindex].recordDuration;
// this.$forceUpdate()
// });
// },
onPlay() {
this.innerAudioContext.onPlay(() => {
// 播放监听
console.log('播放!');
this.audioPlay = true;
wx.enableAlertBeforeUnload({
message: "是否确认退出详情页面?",
success: function(res) {
console.log("方法注册成功:", res);
},
fail: function(errMsg) {
console.log("方法注册失败:", errMsg);
},
});
});
},
onPause() {
this.innerAudioContext.onPause(() => {
wx.disableAlertBeforeUnload({
success: function(res) {
console.log(res)
},
fail: function(e) {
console.log(e)
}
});
// 暂停监听
console.log('暂停播放!');
this.audioPlay = false
});
},
onCanplay() {
this.innerAudioContext.onCanplay((callback) => {
console.log("缓冲回调", this.innerAudioContext.duration);
})
},
onEnded() {
this.innerAudioContext.onEnded(() => {
// 结束播放监听
console.log('播放结束!');
this.audioPlay = false;
});
},
onSeeking() {
this.innerAudioContext.onSeeking((res) => {
console.log("进行跳转", res);
})
},
onSeeked() {
this.innerAudioContext.onSeeked((res) => {
console.log("结束跳转", res);
this.$forceUpdate()
});
},
TimeUpdate() {
this.innerAudioContext.onTimeUpdate(() => {
// var pages = getCurrentPages();
// if(pages[pages.length-1].route!="pages/mine/details2"){
// this.innerAudioContext.destroy();
// }
const {
currentTime,
duration
} = this.innerAudioContext;
console.log(currentTime, 'TimeUpdate, currentTime')
this.playNow = parseInt(currentTime * 1000)
console.log(this.playNow)
if (this.dialogList.length == 0) {
return
} else {
const message = this.dialogList[0].message;
for (let i = 0; i < message.length; i++) {
if (Number(message[i].bg) < this.playNow && Number(message[i].ed) > this.playNow) {
this.scrollId = "dialog" + this.csdFileindex + "text" + message[i].bg;
break;
}
}
}
const currTimeStr = this.formatTime(currentTime);
this.sliderValue = parseInt(currentTime);
// 变动的时间
this.currentTimeStr = currTimeStr;
//进度条最大值
this.sliderMax = this.luyinList[this.csdFileindex].recordDuration;
this.$forceUpdate()
});
},


init(info) {
@@ -1224,16 +1224,16 @@
})
},
//搜索跳转
// adasdasdasd(e) {
// const currTimeStr = this.formatTime(e)
// this.currentTimeStr = currTimeStr
// this.innerAudioContext.seek(e);
// if (uni.getStorageSync('entrance') == 1) {
// return
// } else {
// this.innerAudioContext.play();
// }
// },
adasdasdasd(e) {
const currTimeStr = this.formatTime(e)
this.currentTimeStr = currTimeStr
this.innerAudioContext.seek(e);
if (uni.getStorageSync('entrance') == 1) {
return
} else {
this.innerAudioContext.play();
}
},
//下一页
ltolower() {
var lengthcz = this.newluyinList.length - 1;
@@ -1701,41 +1701,41 @@
return util.formatSecond(time)
},
// 录音暂停播放
// changePlayState() {
// if (this.audioPlay == false) {
// this.innerAudioContext.play();
// } else {
// this.innerAudioContext.pause()
// }
// },
changePlayState() {
if (this.audioPlay == false) {
this.innerAudioContext.play();
} else {
this.innerAudioContext.pause()
}
},
//音频前进回退
// sliderChangeComplate(e) {
// let platetime = e.detail.value * 1000;
// this.dialogList = []
// uni.request({
// url: config.service.fastForward + '?corpusId=' + this.luyinList[this.csdFileindex].id +
// "&bg=" + platetime, //仅为示例,并非真实接口地址。
// method: "GET",
// header: {
// 'content-type': 'application/json',
// 'Access-Token': uni.getStorageSync('weapp_session_login_data').token
// },
// success: (data) => {
// this.textindex = data.data.data.index;
// this.toptextindex = data.data.data.index;
// if (data.data.data.index > this.newluyinList.length) {
// this.dialogList.push(this.newluyinList[0])
// } else {
// this.dialogList.push(this.newluyinList[data.data.data.index])
// }
// console.log(e.detail, '1233333333333333333333333333333333333333333333333333333333333')
// const currTimeStr = this.formatTime(e.detail.value)
// this.currentTimeStr = currTimeStr
// this.innerAudioContext.seek(e.detail.value);
// this.innerAudioContext.play();
// }
// })
// },
sliderChangeComplate(e) {
let platetime = e.detail.value * 1000;
this.dialogList = []
uni.request({
url: config.service.fastForward + '?corpusId=' + this.luyinList[this.csdFileindex].id +
"&bg=" + platetime, //仅为示例,并非真实接口地址。
method: "GET",
header: {
'content-type': 'application/json',
'Access-Token': uni.getStorageSync('weapp_session_login_data').token
},
success: (data) => {
this.textindex = data.data.data.index;
this.toptextindex = data.data.data.index;
if (data.data.data.index > this.newluyinList.length) {
this.dialogList.push(this.newluyinList[0])
} else {
this.dialogList.push(this.newluyinList[data.data.data.index])
}
console.log(e.detail, '1233333333333333333333333333333333333333333333333333333333333')
const currTimeStr = this.formatTime(e.detail.value)
this.currentTimeStr = currTimeStr
this.innerAudioContext.seek(e.detail.value);
this.innerAudioContext.play();
}
})
},
//长按点击播放
clickbofang(dialog, item) {
this.innerAudioContext.pause()
@@ -1780,13 +1780,13 @@

this.innerAudioContext.src = this.recordPath;
this.innerAudioContext.title = '音频';
// this.onPlay()
// this.onPause()
// this.onCanplay()
// this.onEnded()
// this.onSeeking()
// this.onSeeked()
// this.TimeUpdate()
this.onPlay()
this.onPause()
this.onCanplay()
this.onEnded()
this.onSeeking()
this.onSeeked()
this.TimeUpdate()
},
formatTime(num) {
//格式化时间格式


Loading…
Cancel
Save