66 lines
1.3 KiB
TypeScript
66 lines
1.3 KiB
TypeScript
import AppError from "../errors/AppError";
|
|
import Whatsapp from "../models/Whatsapp";
|
|
|
|
import WhatsappQueue from "../models/WhatsappQueue"
|
|
import UserQueue from "../models/UserQueue"
|
|
|
|
import { Op, where } from "sequelize";
|
|
|
|
import wbotByUserQueue from '../helpers/GetWbotByUserQueue'
|
|
|
|
const GetDefaultWhatsApp = async (userId?: string | number ): Promise<Whatsapp> => {
|
|
|
|
// test del
|
|
let defaultWhatsapp = await Whatsapp.findOne({
|
|
where: { isDefault: true }
|
|
});
|
|
|
|
if (!defaultWhatsapp) {
|
|
|
|
if(userId){
|
|
|
|
let whatsapps = await wbotByUserQueue(userId)
|
|
|
|
if(whatsapps.length > 0){
|
|
|
|
defaultWhatsapp = whatsapps[0]
|
|
|
|
}// Quando o usuário não está em nenhuma fila
|
|
else{
|
|
defaultWhatsapp = await Whatsapp.findOne({ where: { status: 'CONNECTED' } });
|
|
}
|
|
|
|
|
|
}
|
|
else{
|
|
|
|
defaultWhatsapp = await Whatsapp.findOne({ where: { status: 'CONNECTED' } });
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!defaultWhatsapp) {
|
|
throw new AppError("ERR_NO_DEF_WAPP_FOUND");
|
|
}
|
|
|
|
return defaultWhatsapp;
|
|
//
|
|
|
|
|
|
|
|
// const defaultWhatsapp = await Whatsapp.findOne({
|
|
// where: { isDefault: true }
|
|
// });
|
|
|
|
// if (!defaultWhatsapp) {
|
|
// throw new AppError("ERR_NO_DEF_WAPP_FOUND");
|
|
// }
|
|
|
|
// return defaultWhatsapp;
|
|
|
|
|
|
};
|
|
|
|
export default GetDefaultWhatsApp;
|