客服记录加载更多
This commit is contained in:
parent
539e8479ad
commit
3862c13a77
@ -58,6 +58,7 @@ export default {
|
|||||||
return{
|
return{
|
||||||
customerShow:false,
|
customerShow:false,
|
||||||
params:{
|
params:{
|
||||||
|
client:2,
|
||||||
type:"",
|
type:"",
|
||||||
to_user_id:"",
|
to_user_id:"",
|
||||||
to_message:"",
|
to_message:"",
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
<div class="textCom textComNoneBack" v-if="item.send_message_type === 2">
|
<div class="textCom textComNoneBack" v-if="item.send_message_type === 2">
|
||||||
<div v-for="(em,ind) in item.to_message_list" :key="ind">
|
<div v-for="(em,ind) in item.to_message_list" :key="ind">
|
||||||
<span v-if="em.extension === 'png' || em.extension === 'jpg' || em.extension === 'gif' || em.extension === 'jpeg'">
|
<span v-if="em.extension === 'png' || em.extension === 'jpg' || em.extension === 'gif' || em.extension === 'jpeg'">
|
||||||
<el-image style="max-width: 140px;max-height: 140px;border-radius: 4px;" fit="cover" :src="em.file?em.file:em" preview-teleported :preview-src-list="[em.file?em.file:em]"></el-image>
|
<el-image style="max-width: 140px;max-height: 140px;border-radius: 4px;" fit="cover" lazy :src="em.file?em.file:em" preview-teleported :preview-src-list="[em.file?em.file:em]"></el-image>
|
||||||
</span>
|
</span>
|
||||||
<span class="fileView" v-else>
|
<span class="fileView" v-else>
|
||||||
<fileType size="30px" :fileType="em.extension" />
|
<fileType size="30px" :fileType="em.extension" />
|
||||||
|
|||||||
@ -15,7 +15,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="viewRight">
|
<div class="viewRight">
|
||||||
<div class="title">{{item.from_user && item.from_user.name==""?'匿名':item.from_user && item.from_user.name}}</div>
|
<div class="title">{{item.from_user && item.from_user.name==""?'匿名':item.from_user && item.from_user.name}}</div>
|
||||||
<div class="msg">{{item.to_message}}</div>
|
<div class="msg" v-if="item.to_message.send_message_type === 1">{{item.to_message.to_message}}</div>
|
||||||
|
<div class="msg" v-if="item.to_message.send_message_type === 2">
|
||||||
|
未命名
|
||||||
|
<!-- {{item.to_message_list[0].client_file_name?item.to_message_list[0].client_file_name:'未命名'}}-->
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -47,8 +51,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="textCom textComNoneBack" v-if="item.send_message_type === 2">
|
<div class="textCom textComNoneBack" v-if="item.send_message_type === 2">
|
||||||
<div :class="user_id != item.to_user_id?'fileRightItem':''" v-for="(em,ind) in item.to_message_list" :key="ind">
|
<div :class="user_id != item.to_user_id?'fileRightItem':''" v-for="(em,ind) in item.to_message_list" :key="ind">
|
||||||
<span v-if="em.extension === 'png' || em.extension === 'jpg' || em.extension === 'gif' || em.extension === 'jpeg'">
|
<span v-if="['png','jpg','gif','jpeg'].indexOf(em.file_type || em.extension) !=-1">
|
||||||
<el-image style="max-width: 280px;max-height: 240px;" fit="cover" :src="em.file?em.file:em" preview-teleported :preview-src-list="[em.file?em.file:em]"></el-image>
|
<el-image style="max-width: 280px;max-height: 240px;" fit="cover" lazy :src="em.file?em.file:em" preview-teleported :preview-src-list="[em.file?em.file:em]"></el-image>
|
||||||
</span>
|
</span>
|
||||||
<span class="fileView" v-else @click="linkFile(em)">
|
<span class="fileView" v-else @click="linkFile(em)">
|
||||||
<fileType size="26px" :fileType="em.extension || em.file_type" />
|
<fileType size="26px" :fileType="em.extension || em.file_type" />
|
||||||
@ -135,8 +139,11 @@ export default {
|
|||||||
msgList:[],
|
msgList:[],
|
||||||
user_id:0,
|
user_id:0,
|
||||||
to_user_id:0,
|
to_user_id:0,
|
||||||
|
page:1,
|
||||||
|
pageSize:1,
|
||||||
|
|
||||||
params:{
|
params:{
|
||||||
|
client:1, // 1 管理后台 2 客服端
|
||||||
to_user_id:"",
|
to_user_id:"",
|
||||||
to_message:"",
|
to_message:"",
|
||||||
},
|
},
|
||||||
@ -154,9 +161,10 @@ export default {
|
|||||||
const userInfo = this.$TOOL.data.get("USER_INFO");
|
const userInfo = this.$TOOL.data.get("USER_INFO");
|
||||||
this.user_id = userInfo.id;
|
this.user_id = userInfo.id;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
this.getContactList();
|
this.getContactList();
|
||||||
|
|
||||||
},1000)
|
},1000)
|
||||||
// 获取新消息
|
// 获取新消息
|
||||||
eventBus.$on('sockBack', this.getWsResult);
|
eventBus.$on('sockBack', this.getWsResult);
|
||||||
@ -171,12 +179,23 @@ export default {
|
|||||||
item.to_message_list = JSON.parse(item.to_message);
|
item.to_message_list = JSON.parse(item.to_message);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.msgList = res.data.rows;
|
this.msgList = res.data.rows.concat(this.msgList);
|
||||||
|
this.page = res.data.page;
|
||||||
|
this.pageSize = res.data.pageSize;
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
this.scrollDown();
|
if(res.data.page === res.data.pageSize){
|
||||||
|
this.scrollDown();
|
||||||
|
}
|
||||||
},500);
|
},500);
|
||||||
break;
|
break;
|
||||||
case 38:
|
case 38:
|
||||||
|
if(res.data.contact_list && res.data.contact_list.length>0){
|
||||||
|
res.data.contact_list.forEach(item=>{
|
||||||
|
if(item.send_message_type ==2){
|
||||||
|
item.to_message_list = JSON.parse(item.to_message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
this.contactsList = res.data.contact_list;
|
this.contactsList = res.data.contact_list;
|
||||||
if(res.data.contact_list.length>0){
|
if(res.data.contact_list.length>0){
|
||||||
if(this.mesList){
|
if(this.mesList){
|
||||||
@ -188,6 +207,9 @@ export default {
|
|||||||
this.mesList = false;
|
this.mesList = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -201,11 +223,22 @@ export default {
|
|||||||
this.contactsInfo = item;
|
this.contactsInfo = item;
|
||||||
this.to_user_id = item.from_user.id;
|
this.to_user_id = item.from_user.id;
|
||||||
this.params.to_user_id = item.from_user.id;
|
this.params.to_user_id = item.from_user.id;
|
||||||
this.getCustomerMsgList();
|
this.msgList = [];
|
||||||
|
this.getCustomerMsgList(false);
|
||||||
},
|
},
|
||||||
async getCustomerMsgList() {
|
async getCustomerMsgList(isPage=false) {
|
||||||
let params = {
|
let params = {}
|
||||||
to_user_id:this.to_user_id
|
if(!isPage){
|
||||||
|
params = {
|
||||||
|
to_user_id:this.to_user_id,
|
||||||
|
pageSize:30
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
params = {
|
||||||
|
to_user_id:this.to_user_id,
|
||||||
|
page:this.page,
|
||||||
|
pageSize:30
|
||||||
|
}
|
||||||
}
|
}
|
||||||
await this.$API.customer.list.post(params);
|
await this.$API.customer.list.post(params);
|
||||||
},
|
},
|
||||||
@ -271,8 +304,10 @@ export default {
|
|||||||
|
|
||||||
handleScroll(event){
|
handleScroll(event){
|
||||||
const { scrollTop } = event;
|
const { scrollTop } = event;
|
||||||
if(scrollTop === 0){
|
if(scrollTop === 0 && this.msgList.length>0 && this.page >1){
|
||||||
console.log(scrollTop)
|
this.page = this.page -1;
|
||||||
|
console.log('执行接口数据获取')
|
||||||
|
this.getCustomerMsgList(true)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
scrollDown() {
|
scrollDown() {
|
||||||
@ -418,6 +453,7 @@ export default {
|
|||||||
padding: 10px;
|
padding: 10px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
background: #f8f6f6;
|
background: #f8f6f6;
|
||||||
|
margin-bottom: 5px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.el-image{
|
.el-image{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user