mirror of
https://github.com/cheveguerra/whaticket-community.git
synced 2026-04-18 03:39:29 +00:00
fix: apps throws an error when importing contacts from phone
This commit is contained in:
@@ -35,7 +35,7 @@ const ListContactsService = async ({
|
||||
where: whereCondition,
|
||||
limit,
|
||||
offset,
|
||||
order: [["createdAt", "DESC"]]
|
||||
order: [["name", "ASC"]]
|
||||
});
|
||||
|
||||
const hasMore = count > offset + contacts.length;
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
import AppError from "../../errors/AppError";
|
||||
import GetDefaultWhatsApp from "../../helpers/GetDefaultWhatsApp";
|
||||
import { getWbot } from "../../libs/wbot";
|
||||
import Contact from "../../models/Contact";
|
||||
@@ -22,7 +21,20 @@ const ImportContactsService = async (): Promise<void> => {
|
||||
if (phoneContacts) {
|
||||
await Promise.all(
|
||||
phoneContacts.map(async ({ number, name }) => {
|
||||
await Contact.create({ number, name });
|
||||
if (!number) {
|
||||
return null;
|
||||
}
|
||||
if (!name) {
|
||||
name = number;
|
||||
}
|
||||
|
||||
const numberExists = await Contact.findOne({
|
||||
where: { number }
|
||||
});
|
||||
|
||||
if (numberExists) return null;
|
||||
|
||||
return Contact.create({ number, name });
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import React, { useState, useEffect, useReducer } from "react";
|
||||
import openSocket from "socket.io-client";
|
||||
import { toast } from "react-toastify";
|
||||
import { useHistory } from "react-router-dom";
|
||||
|
||||
import { makeStyles } from "@material-ui/core/styles";
|
||||
import Table from "@material-ui/core/Table";
|
||||
@@ -86,6 +87,7 @@ const useStyles = makeStyles(theme => ({
|
||||
|
||||
const Contacts = () => {
|
||||
const classes = useStyles();
|
||||
const history = useHistory();
|
||||
|
||||
const [loading, setLoading] = useState(false);
|
||||
const [pageNumber, setPageNumber] = useState(1);
|
||||
@@ -191,6 +193,7 @@ const Contacts = () => {
|
||||
const handleimportContact = async () => {
|
||||
try {
|
||||
await api.post("/contacts/import");
|
||||
history.go(0);
|
||||
} catch (err) {
|
||||
const errorMsg = err.response?.data?.error;
|
||||
if (errorMsg) {
|
||||
|
||||
@@ -90,8 +90,7 @@ const messages = {
|
||||
importTitlte: "Import contacts",
|
||||
deleteMessage:
|
||||
"Are you sure you want to delete this contact? All related tickets will be lost.",
|
||||
importMessage:
|
||||
"Do you want to import all contacts from the phone? This function is experimental, you will have to reload the page after importing.",
|
||||
importMessage: "Do you want to import all contacts from the phone?",
|
||||
},
|
||||
buttons: {
|
||||
import: "Import Contacts",
|
||||
|
||||
@@ -93,7 +93,7 @@ const messages = {
|
||||
deleteMessage:
|
||||
"¿Estás seguro que deseas borrar este contacto? Todos los tickets relacionados se perderán.",
|
||||
importMessage:
|
||||
"¿Quieres importar todos los contactos desde tu teléfono? Esta función es experimental, tendrás que recargar la página después de importar.",
|
||||
"¿Quieres importar todos los contactos desde tu teléfono?",
|
||||
},
|
||||
buttons: {
|
||||
import: "Importar Contactos",
|
||||
|
||||
@@ -90,8 +90,7 @@ const messages = {
|
||||
importTitlte: "Importar contatos",
|
||||
deleteMessage:
|
||||
"Tem certeza que deseja deletar este contato? Todos os tickets relacionados serão perdidos.",
|
||||
importMessage:
|
||||
"Deseja importas todos os contatos do telefone? Essa função é experimental, você terá que recarregar a página após a importação.",
|
||||
importMessage: "Deseja importas todos os contatos do telefone?",
|
||||
},
|
||||
buttons: {
|
||||
import: "Importar Contatos",
|
||||
|
||||
Reference in New Issue
Block a user