diff --git a/pages/im/friends/info.vue b/pages/im/friends/info.vue index f717f07..5e7534a 100644 --- a/pages/im/friends/info.vue +++ b/pages/im/friends/info.vue @@ -108,8 +108,8 @@ onLoad(e) { this.targetId = e.targetId getFriendInfo(e.targetId).then(res => { - this.userInfo = res - // 获取到用户信息之后,去检查一下要不要更新 + this.userInfo = res + // 获取到用户信息之后,去检查一下要不要更新 this.$store.dispatch('updateFriend', res) uni.setNavigationBarTitle({ title: res.name @@ -143,7 +143,7 @@ }, toPrivate() { uni.redirectTo({ - url: '/pages/im/private/chat?conversationType=1&targetId=' + this.targetId + url: '/pages/im/private/chat?targetId=' + this.targetId }); }, setRemark() { diff --git a/pages/im/index.vue b/pages/im/index.vue index 5eaf02e..5680aae 100644 --- a/pages/im/index.vue +++ b/pages/im/index.vue @@ -44,7 +44,7 @@ - {{ friend(item.targetId).name || '未知用户' }} + {{ friend(item.targetId).name }} {{ item.sentTime|timeCustomCN }} @@ -218,8 +218,7 @@ toDetail(item) { this.hidePop() uni.navigateTo({ - url: '/pages/im/private/chat?targetId=' + item.targetId + '&conversationType=' + item - .conversationType + url: '/pages/im/private/chat?targetId=' + item.targetId }) }, toFriend(targetId) { diff --git a/pages/im/private/chat.nvue b/pages/im/private/chat.nvue index 0fffb02..d1af30e 100644 --- a/pages/im/private/chat.nvue +++ b/pages/im/private/chat.nvue @@ -87,16 +87,12 @@ }, onLoad(e) { this.targetId = e.targetId - this.conversationType = e.conversationType // 会话类型 this.userInfo = this.$store.getters.userInfo(this.targetId) - - console.log(this.userInfo); - // 获取消息列表 - this.initMessageList() - uni.setNavigationBarTitle({ title: this.userInfo.name }) + // 获取消息列表 + this.initMessageList() // 监听消息已读状态 uni.$on('onReadReceiptReceived', (data) => { if (data.targetId == this.targetId) { diff --git a/store/modules/im.js b/store/modules/im.js index e6f0305..dc589f6 100644 --- a/store/modules/im.js +++ b/store/modules/im.js @@ -58,6 +58,7 @@ export default { model.find('userId=' + userInfo.userId, (err, result) => { if (userInfo.hash != result[0].hash) { commit('updateFriendInfo', userInfo) + console.log(userInfo); if (userInfo.portraitUrl && userInfo.portraitUrl != result[0].portraitUrl) { saveAvatar(userInfo, (savedFilePath) => { const info = { @@ -67,7 +68,9 @@ export default { portraitUrl: userInfo.portraitUrl, localAvatar: savedFilePath } - model.update('userId=' + userInfo.userId, info) + model.update('userId=' + userInfo.userId, info, (err, res) => { + console.log('保存结果', err, res); + }) commit('updateFriendInfo', info) }) } else { @@ -76,9 +79,11 @@ export default { name: userInfo.name, hash: userInfo.hash, portraitUrl: userInfo.portraitUrl, - localAvatar: '' + localAvatar: result[0].localAvatar } - model.update('userId=' + userInfo.userId, info) + model.update('userId=' + userInfo.userId, info, (err, res) => { + console.log('保存结果', err, res); + }) } } else { console.log('不用更新的用户', userInfo.userId, userInfo.name); @@ -102,7 +107,9 @@ export default { portraitUrl: userInfo.portraitUrl, localAvatar: savedFilePath } - model.insert(info) + model.insert(info, (err, res) => { + console.log('保存结果', err, res); + }) // 保存头像后,更新信息 commit('updateFriendInfo', info) }) @@ -115,7 +122,9 @@ export default { portraitUrl: userInfo.portraitUrl, localAvatar: '' } - model.insert(info) + model.insert(info, (err, res) => { + console.log('保存结果', err, res); + }) } } } diff --git a/utils/im/index.js b/utils/im/index.js index ef106b3..b992c67 100644 --- a/utils/im/index.js +++ b/utils/im/index.js @@ -136,8 +136,11 @@ const addListeners = () => { console.log('收到消息', res.data.message); const message = res.data.message if (inArray(message.objectName, notifyMsgTypes)) { - console.log('new Message'); + console.log('通知并计数的消息'); newMessage(message) + } else if (message.objectName === 'RC:ProfileNtf') { + console.log('更新资料消息', JSON.parse(message.content.data)); + store.dispatch('updateFriend', JSON.parse(message.content.data)) } }) diff --git a/utils/im/profile-update.json b/utils/im/profile-update.json new file mode 100644 index 0000000..c3d1147 --- /dev/null +++ b/utils/im/profile-update.json @@ -0,0 +1,20 @@ +{ + "objectName": "RC:ProfileNtf", + "receivedTime": 1644312766084, + "extra": "", + "messageUId": "BUR2-MQHQ-SMIO-I32D", + "conversationType": 6, + "messageDirection": 2, + "senderUserId": "10047", + "content": { + "extra": "", + "operation": "Update", + "objectName": "RC:ProfileNtf", + "data": "{\"a\":2,\"m\":\"修改用户信息\"}" + }, + "targetId": "10047", + "sentTime": 1644312766699, + "messageId": 26, + "receivedStatus": 0, + "sentStatus": 30 +} \ No newline at end of file