You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.3 KiB
56 lines
1.3 KiB
/**
|
|
* !插入数据
|
|
* @param roomId
|
|
* @param sourceId
|
|
* @param orderId
|
|
* @param type
|
|
* @param fileId
|
|
* @param txt
|
|
* @param time
|
|
* @param userId
|
|
* @param nickName
|
|
* @param sendOrReceive
|
|
* @param address
|
|
*/
|
|
export const setMsgData = data => {
|
|
console.log('setMsgData', data)
|
|
const resData = data
|
|
const session_id = resData.chatId // 群id
|
|
|
|
let msgData = wx.getStorageSync('imMsgData') || {}
|
|
// * 插入群数据
|
|
if (msgData[session_id]) {
|
|
if (resData.timestamp > msgData[session_id].timestamp) {
|
|
msgData[session_id].timestamp = resData.timestamp
|
|
}
|
|
msgData[session_id].listMsg.push(resData)
|
|
} else {
|
|
msgData[session_id] = {
|
|
listMsg: [resData],
|
|
timestamp: resData.timestamp,
|
|
session_id: resData.session_id,
|
|
}
|
|
}
|
|
wx.setStorageSync('imMsgData', msgData)
|
|
return resData
|
|
}
|
|
|
|
|
|
// ! 获取群消息
|
|
export const getHistroyMsg = id => {
|
|
let msgData = wx.getStorageSync('imMsgData') || {}
|
|
let msgList = []
|
|
if (msgData[id]) {
|
|
const data = msgData[id]
|
|
// *处理历史消息并按时间排序
|
|
const compare = property => {
|
|
return function(a, b) {
|
|
var value1 = a[property]
|
|
var value2 = b[property]
|
|
return value1 - value2
|
|
}
|
|
}
|
|
msgList = data.listMsg.sort(compare('time'))
|
|
}
|
|
return { msgList }
|
|
}
|
|
|