From e7252c1273dee61c8ec9dda77cada11e32b9bb33 Mon Sep 17 00:00:00 2001 From: Ricardo Paes Date: Thu, 24 Feb 2022 08:07:24 -0300 Subject: [PATCH] :sparkles: When starting ticket set queue automatically if user is only one linked --- .../services/TicketServices/CreateTicketService.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/backend/src/services/TicketServices/CreateTicketService.ts b/backend/src/services/TicketServices/CreateTicketService.ts index 890c0f9..bfda479 100644 --- a/backend/src/services/TicketServices/CreateTicketService.ts +++ b/backend/src/services/TicketServices/CreateTicketService.ts @@ -2,18 +2,21 @@ import AppError from "../../errors/AppError"; import CheckContactOpenTickets from "../../helpers/CheckContactOpenTickets"; import GetDefaultWhatsApp from "../../helpers/GetDefaultWhatsApp"; import Ticket from "../../models/Ticket"; +import User from "../../models/User"; import ShowContactService from "../ContactServices/ShowContactService"; interface Request { contactId: number; status: string; userId: number; + queueId ?: number; } const CreateTicketService = async ({ contactId, status, - userId + userId, + queueId }: Request): Promise => { const defaultWhatsapp = await GetDefaultWhatsApp(userId); @@ -21,11 +24,17 @@ const CreateTicketService = async ({ const { isGroup } = await ShowContactService(contactId); + if(queueId === undefined) { + const user = await User.findByPk(userId, { include: ["queues"]}); + queueId = user?.queues.length === 1 ? user.queues[0].id : undefined; + } + const { id }: Ticket = await defaultWhatsapp.$create("ticket", { contactId, status, isGroup, - userId + userId, + queueId }); const ticket = await Ticket.findByPk(id, { include: ["contact"] });