From e796a19136b69b24c4e585010523a3a31b68f3f7 Mon Sep 17 00:00:00 2001 From: Wentao Lyu <35-wentao.lyu@users.noreply.git.stereye.tech> Date: Wed, 29 Mar 2023 13:32:01 +0800 Subject: [PATCH] fix: remove related messages when deleting conversations. --- api/models/Conversation.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/api/models/Conversation.js b/api/models/Conversation.js index fed22793d2..c7ff0f18f8 100644 --- a/api/models/Conversation.js +++ b/api/models/Conversation.js @@ -149,9 +149,10 @@ module.exports = { } }, deleteConvos: async (user, filter) => { - let deleteCount = await Conversation.deleteMany({ ...filter, user }).exec(); - console.log('deleteCount', deleteCount); - deleteCount.messages = await deleteMessages({ ...filter, user }); + let toRemove = await Conversation.find({...filter, user}).select('conversationId') + const ids = toRemove.map(instance => instance.conversationId); + let deleteCount = await Conversation.deleteMany({...filter, user}).exec(); + deleteCount.messages = await deleteMessages({conversationId: {$in: ids}}); return deleteCount; } };