feat: start delete whatsapp messages backend

This commit is contained in:
canove
2020-09-27 20:10:52 -03:00
parent 6f3c71570d
commit 2e1785ea15
8 changed files with 138 additions and 10 deletions

View File

@@ -0,0 +1,20 @@
import Message from "../../models/Message";
interface MessageData {
isDeleted?: boolean;
}
interface Request {
messageData: MessageData;
messageId: string;
}
const UpdateMessageService = async ({
messageData,
messageId
}: Request): Promise<Response> => {
const { isDeleted } = messageData;
const message = Message.update({ where: {messageId}, { isDeleted: true } } );
};
export default UpdateMessageService;

View File

@@ -0,0 +1,36 @@
import AppError from "../../errors/AppError";
import GetWbotMessage from "../../helpers/GetWbotMessage";
import Message from "../../models/Message";
import Ticket from "../../models/Ticket";
const DeleteWhatsAppMessage = async (messageId: string): Promise<Message> => {
const message = await Message.findByPk(messageId, {
include: [
{
model: Ticket,
as: "ticket",
include: ["contact"]
}
]
});
if (!message) {
throw new AppError("No message found with this ID.");
}
const { ticket } = message;
const messageToDelete = await GetWbotMessage(ticket, messageId);
try {
await messageToDelete.delete(true);
} catch (err) {
throw new AppError(
"Couldn't delete message from WhatsApp. Check connections page."
);
}
return message;
};
export default DeleteWhatsAppMessage;