做了聊天室的功能
表是这样设计的
id: { type: UUID, primaryKey: true, defaultValue: UUIDV1 },
fromUserId: { type: UUID, allowNull: false },
toUserId: { type: UUID, allowNull: false },
message: { type: STRING, allowNull: false },
isReaded: { type: BOOLEAN, allowNull: false, defaultValue: false },
createdAt: DATE,
updatedAt: DATE,
deletedAt: DATE
然后我要查当前用户的所有聊天者,就是微信的聊天列表
我是这样写的
const datas = await ctx.model.Chat.findAndCountAll({
where:{
[ctx.model.Sequelize.Op.or]:[
{ toUserId: ctx.user.id},
{ fromUserId: ctx.user.id}
]
},
group: ['toUserId', 'fromUserId'],
})
然后有会发现,跟一个用户会有两个聊天框,一个是他发我最后一条信息,和我发给他的最后一条信息:
我要怎么合并这两个呢?根据最后的发表时间
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…