|
@@ -5,7 +5,7 @@
|
|
:width="windowWidth"
|
|
:width="windowWidth"
|
|
:height="windowHeight"
|
|
:height="windowHeight"
|
|
:user="UserData"
|
|
:user="UserData"
|
|
- ref="IMUI"
|
|
|
|
|
|
+ ref="IMUI"
|
|
:contextmenu="contextmenu"
|
|
:contextmenu="contextmenu"
|
|
:contact-contextmenu="contactContextmenu"
|
|
:contact-contextmenu="contactContextmenu"
|
|
:theme="theme"
|
|
:theme="theme"
|
|
@@ -35,10 +35,10 @@
|
|
<span style="font-size:12px;">
|
|
<span style="font-size:12px;">
|
|
<span>打开抽屉:</span>
|
|
<span>打开抽屉:</span>
|
|
<span style="cursor:pointer;" @click="openDrawer('right')">
|
|
<span style="cursor:pointer;" @click="openDrawer('right')">
|
|
- 右侧 |
|
|
|
|
|
|
+ 右侧 |
|
|
</span>
|
|
</span>
|
|
<span style="cursor:pointer;" @click="openDrawer('rightInside')">
|
|
<span style="cursor:pointer;" @click="openDrawer('rightInside')">
|
|
- 右侧内部 |
|
|
|
|
|
|
+ 右侧内部 |
|
|
</span>
|
|
</span>
|
|
<span style="cursor:pointer;" @click="openDrawer('center')">
|
|
<span style="cursor:pointer;" @click="openDrawer('center')">
|
|
居中
|
|
居中
|
|
@@ -51,7 +51,7 @@
|
|
<span>相册</span>
|
|
<span>相册</span>
|
|
<span>文件</span>
|
|
<span>文件</span>
|
|
<span>活动</span>
|
|
<span>活动</span>
|
|
- <span>设置(左键弹出菜单)</span>
|
|
|
|
|
|
+ <span>设置(左键弹出菜单)</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
@@ -73,27 +73,27 @@
|
|
<input class="slot-search" placeholder="搜索群成员" />
|
|
<input class="slot-search" placeholder="搜索群成员" />
|
|
<div class="slot-group-member">
|
|
<div class="slot-group-member">
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2020-2/2020022821001845128.jpg"></div>
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2020-2/2020022821001845128.jpg"></div>
|
|
- <div class="name">像梦一样自由</div>
|
|
|
|
|
|
+ <div class="name">像梦一样自由</div>
|
|
</div>
|
|
</div>
|
|
<div class="slot-group-member">
|
|
<div class="slot-group-member">
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2018-4/15244505348390471.jpg"></div>
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2018-4/15244505348390471.jpg"></div>
|
|
- <div class="name">野火</div>
|
|
|
|
|
|
+ <div class="name">野火</div>
|
|
</div>
|
|
</div>
|
|
<div class="slot-group-member">
|
|
<div class="slot-group-member">
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2021-1/20211411391666.jpg"></div>
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2021-1/20211411391666.jpg"></div>
|
|
- <div class="name">霸王花</div>
|
|
|
|
|
|
+ <div class="name">霸王花</div>
|
|
</div>
|
|
</div>
|
|
<div class="slot-group-member">
|
|
<div class="slot-group-member">
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2021-1/2021113104111220.jpg"></div>
|
|
<div class="avatar"><img src="https://p.qqan.com/up/2021-1/2021113104111220.jpg"></div>
|
|
- <div class="name">森系Style</div>
|
|
|
|
|
|
+ <div class="name">森系Style</div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
|
|
+
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
</lemon-imui>
|
|
</lemon-imui>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
<el-dialog :visible.sync="dialogVisible">
|
|
<el-dialog :visible.sync="dialogVisible">
|
|
<img width="100%" :src="dialogImageUrl" alt="">
|
|
<img width="100%" :src="dialogImageUrl" alt="">
|
|
@@ -271,7 +271,7 @@ export default {
|
|
};
|
|
};
|
|
},
|
|
},
|
|
created(){
|
|
created(){
|
|
-
|
|
|
|
|
|
+
|
|
// this.$store.dispatch('qwLoginOut').then(() => {
|
|
// this.$store.dispatch('qwLoginOut').then(() => {
|
|
// });
|
|
// });
|
|
},
|
|
},
|
|
@@ -329,13 +329,13 @@ export default {
|
|
lastContent: "你好123",
|
|
lastContent: "你好123",
|
|
};
|
|
};
|
|
const IMUI = this.$refs.IMUI;
|
|
const IMUI = this.$refs.IMUI;
|
|
-
|
|
|
|
|
|
+
|
|
var conversationData = Conversations.filter(item => item.conversationId<=1688856679458971);
|
|
var conversationData = Conversations.filter(item => item.conversationId<=1688856679458971);
|
|
conversationData.sort((a1, a2) => {
|
|
conversationData.sort((a1, a2) => {
|
|
return a2.lastSendTime - a1.lastSendTime;
|
|
return a2.lastSendTime - a1.lastSendTime;
|
|
});
|
|
});
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|
|
// IMUI.initContacts(ContactsData);
|
|
// IMUI.initContacts(ContactsData);
|
|
// IMUI.initConversations(conversationData);
|
|
// IMUI.initConversations(conversationData);
|
|
// setTimeout(() => {
|
|
// setTimeout(() => {
|
|
@@ -344,7 +344,7 @@ export default {
|
|
|
|
|
|
this.getContacts(); //获取联系人信息
|
|
this.getContacts(); //获取联系人信息
|
|
this.getConversation(); //获取会话信息
|
|
this.getConversation(); //获取会话信息
|
|
-
|
|
|
|
|
|
+
|
|
IMUI.initMenus([
|
|
IMUI.initMenus([
|
|
{
|
|
{
|
|
name: "messages",
|
|
name: "messages",
|
|
@@ -400,8 +400,8 @@ export default {
|
|
},
|
|
},
|
|
]);
|
|
]);
|
|
|
|
|
|
- IMUI.initEmoji(EmojiData);
|
|
|
|
-
|
|
|
|
|
|
+ IMUI.initEmoji(EmojiData);
|
|
|
|
+
|
|
},
|
|
},
|
|
|
|
|
|
methods: {
|
|
methods: {
|
|
@@ -439,7 +439,7 @@ export default {
|
|
getConversation(queryParams).then(response => {
|
|
getConversation(queryParams).then(response => {
|
|
if(response.code==200){
|
|
if(response.code==200){
|
|
var conversation=response.data;
|
|
var conversation=response.data;
|
|
- IMUI.appendConversation(conversation);
|
|
|
|
|
|
+ IMUI.appendConversation(conversation);
|
|
that.appendMessageAction(msgData);
|
|
that.appendMessageAction(msgData);
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -455,7 +455,7 @@ export default {
|
|
}else{
|
|
}else{
|
|
conversation.unread+=1;
|
|
conversation.unread+=1;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
IMUI.topPopConversations(conversation);
|
|
IMUI.topPopConversations(conversation);
|
|
|
|
|
|
}
|
|
}
|
|
@@ -469,8 +469,8 @@ export default {
|
|
};
|
|
};
|
|
}
|
|
}
|
|
},
|
|
},
|
|
-
|
|
|
|
- getContacts(){
|
|
|
|
|
|
+
|
|
|
|
+ getContacts(){
|
|
getContactsByUser(this.qwUser.userId).then(response => {
|
|
getContactsByUser(this.qwUser.userId).then(response => {
|
|
this.contactData = response.data;
|
|
this.contactData = response.data;
|
|
this.$refs.IMUI.initContacts(this.contactData);
|
|
this.$refs.IMUI.initContacts(this.contactData);
|
|
@@ -494,36 +494,36 @@ export default {
|
|
//console.log("qxj request conversation:"+JSON.stringify(response.data));
|
|
//console.log("qxj request conversation:"+JSON.stringify(response.data));
|
|
});
|
|
});
|
|
},
|
|
},
|
|
- appendMessageAction(msgData){
|
|
|
|
- if(msgData.type=="text"){ //文本
|
|
|
|
- const message = {
|
|
|
|
- id: msgData.id,
|
|
|
|
- status: msgData.status,
|
|
|
|
- type: msgData.type,
|
|
|
|
- sendTime: msgData.sendTime,
|
|
|
|
- content: msgData.content,
|
|
|
|
- params1: "1",
|
|
|
|
- params2: "2",
|
|
|
|
- toContactId: msgData.toContactId,
|
|
|
|
- fromUser: msgData.fromUser,
|
|
|
|
- };
|
|
|
|
- this.appendRemoteMessage(message);
|
|
|
|
- }
|
|
|
|
- if(msgData.type=="image"){ //图片
|
|
|
|
- const message = {
|
|
|
|
- id: msgData.id,
|
|
|
|
- status: msgData.status,
|
|
|
|
- type: msgData.type,
|
|
|
|
- sendTime: msgData.sendTime,
|
|
|
|
- content: msgData.content,
|
|
|
|
- params1: "1",
|
|
|
|
- params2: "2",
|
|
|
|
- toContactId: msgData.toContactId,
|
|
|
|
- fromUser: msgData.fromUser,
|
|
|
|
- };
|
|
|
|
- this.appendRemoteMessage(message);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
|
|
+ // appendMessageAction(msgData){
|
|
|
|
+ // if(msgData.type=="text"){ //文本
|
|
|
|
+ // const message = {
|
|
|
|
+ // id: msgData.id,
|
|
|
|
+ // status: msgData.status,
|
|
|
|
+ // type: msgData.type,
|
|
|
|
+ // sendTime: msgData.sendTime,
|
|
|
|
+ // content: msgData.content,
|
|
|
|
+ // params1: "1",
|
|
|
|
+ // params2: "2",
|
|
|
|
+ // toContactId: msgData.toContactId,
|
|
|
|
+ // fromUser: msgData.fromUser,
|
|
|
|
+ // };
|
|
|
|
+ // this.appendRemoteMessage(message);
|
|
|
|
+ // }
|
|
|
|
+ // if(msgData.type=="image"){ //图片
|
|
|
|
+ // const message = {
|
|
|
|
+ // id: msgData.id,
|
|
|
|
+ // status: msgData.status,
|
|
|
|
+ // type: msgData.type,
|
|
|
|
+ // sendTime: msgData.sendTime,
|
|
|
|
+ // content: msgData.content,
|
|
|
|
+ // params1: "1",
|
|
|
|
+ // params2: "2",
|
|
|
|
+ // toContactId: msgData.toContactId,
|
|
|
|
+ // fromUser: msgData.fromUser,
|
|
|
|
+ // };
|
|
|
|
+ // this.appendRemoteMessage(message);
|
|
|
|
+ // }
|
|
|
|
+ // },
|
|
messageTimeFormat(time) {
|
|
messageTimeFormat(time) {
|
|
//console.log("qxj messageTimeFormat:"+time);
|
|
//console.log("qxj messageTimeFormat:"+time);
|
|
return this.friendlyDate(time);
|
|
return this.friendlyDate(time);
|
|
@@ -587,7 +587,21 @@ export default {
|
|
},
|
|
},
|
|
//接收消息回调
|
|
//接收消息回调
|
|
appendMessageAction(msgData){
|
|
appendMessageAction(msgData){
|
|
- if(msgData.type=="text"){ //文本 text image video voice
|
|
|
|
|
|
+ if(msgData.type=="text"){ //文本 text image video voice
|
|
|
|
+ const message = {
|
|
|
|
+ id: msgData.id,
|
|
|
|
+ status: msgData.status,
|
|
|
|
+ type: msgData.type,
|
|
|
|
+ sendTime: msgData.sendTime,
|
|
|
|
+ content: msgData.content,
|
|
|
|
+ params1: "1",
|
|
|
|
+ params2: "2",
|
|
|
|
+ toContactId: msgData.toContactId,
|
|
|
|
+ fromUser: msgData.fromUser,
|
|
|
|
+ };
|
|
|
|
+ this.appendRemoteMessage(message);
|
|
|
|
+ }
|
|
|
|
+ if(msgData.type=="image"){ //文本 text image video voice
|
|
const message = {
|
|
const message = {
|
|
id: msgData.id,
|
|
id: msgData.id,
|
|
status: msgData.status,
|
|
status: msgData.status,
|
|
@@ -606,11 +620,14 @@ export default {
|
|
handleSend(message, next, file) {
|
|
handleSend(message, next, file) {
|
|
console.log(JSON.stringify(message));
|
|
console.log(JSON.stringify(message));
|
|
var params={};
|
|
var params={};
|
|
|
|
+ const { IMUI } = this.$refs;
|
|
if(message.type=="text"){ //text image voice video
|
|
if(message.type=="text"){ //text image voice video
|
|
params={"conversationId":message.toContactId,"deviceId":this.qwUser.deviceId,"userId":this.qwUser.userId,"content":message.content};
|
|
params={"conversationId":message.toContactId,"deviceId":this.qwUser.deviceId,"userId":this.qwUser.userId,"content":message.content};
|
|
sendTextMsg(params).then(response => {
|
|
sendTextMsg(params).then(response => {
|
|
if(response.code==200){
|
|
if(response.code==200){
|
|
- next();
|
|
|
|
|
|
+ var conversation=IMUI.findConversationIndexById(message.toContactId);
|
|
|
|
+ IMUI.topPopConversations(conversation);
|
|
|
|
+ next();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}
|
|
@@ -760,7 +777,7 @@ export default {
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
.imui-center{
|
|
.imui-center{
|
|
- margin-bottom:"60px";
|
|
|
|
|
|
+ margin-bottom:"60px";
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
justify-content: center;
|
|
justify-content: center;
|
|
@@ -792,7 +809,7 @@ export default {
|
|
background: #111;
|
|
background: #111;
|
|
padding: 0 8px;
|
|
padding: 0 8px;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
</style>
|
|
</style>
|
|
|
|
|
|
|
|
|
|
@@ -805,7 +822,7 @@ export default {
|
|
padding:0 0 10px 0;
|
|
padding:0 0 10px 0;
|
|
.slot-group-notice
|
|
.slot-group-notice
|
|
padding: 10px 10px;
|
|
padding: 10px 10px;
|
|
-
|
|
|
|
|
|
+
|
|
.slot-search
|
|
.slot-search
|
|
width:calc(100% - 20px) ;
|
|
width:calc(100% - 20px) ;
|
|
margin:5px 10px;
|
|
margin:5px 10px;
|
|
@@ -822,7 +839,7 @@ export default {
|
|
height: 30px;
|
|
height: 30px;
|
|
line-height: 30px;
|
|
line-height: 30px;
|
|
margin-right:5px;
|
|
margin-right:5px;
|
|
- img
|
|
|
|
|
|
+ img
|
|
vertical-align: middle;
|
|
vertical-align: middle;
|
|
border-style: none;
|
|
border-style: none;
|
|
width: 100%;
|
|
width: 100%;
|
|
@@ -830,6 +847,6 @@ export default {
|
|
line-height: 30px;
|
|
line-height: 30px;
|
|
border-radius: 50%;
|
|
border-radius: 50%;
|
|
|
|
|
|
-
|
|
|
|
|
|
|
|
-</style>
|
|
|
|
|
|
+
|
|
|
|
+</style>
|