mirror of
https://github.com/cheveguerra/whaticket-community.git
synced 2026-04-20 20:59:16 +00:00
feat: search contacts and messages
This commit is contained in:
@@ -253,6 +253,10 @@ const TicketsList = () => {
|
|||||||
}
|
}
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
setTickets([]);
|
||||||
|
}, [searchParam]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setLoading(true);
|
setLoading(true);
|
||||||
const delayDebounceFn = setTimeout(() => {
|
const delayDebounceFn = setTimeout(() => {
|
||||||
@@ -384,7 +388,8 @@ const TicketsList = () => {
|
|||||||
|
|
||||||
const handleSearchContact = e => {
|
const handleSearchContact = e => {
|
||||||
if (e.target.value === "") {
|
if (e.target.value === "") {
|
||||||
setTab("open");
|
// setTab("open");
|
||||||
|
setSearchParam(e.target.value.toLowerCase());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setSearchParam(e.target.value.toLowerCase());
|
setSearchParam(e.target.value.toLowerCase());
|
||||||
@@ -418,13 +423,14 @@ const TicketsList = () => {
|
|||||||
return ticketsFound;
|
return ticketsFound;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
console.log(tickets);
|
||||||
const renderTickets = (status, userId) => {
|
const renderTickets = (status, userId) => {
|
||||||
const viewTickets = tickets.map(ticket => {
|
const viewTickets = tickets.map(ticket => {
|
||||||
if (
|
if (
|
||||||
(ticket.status === status && ticket.userId === userId) ||
|
(ticket.status === status && ticket.userId === userId) ||
|
||||||
(ticket.status === status && showAllTickets) ||
|
(ticket.status === status && showAllTickets) ||
|
||||||
(ticket.status === "closed" && status === "closed") ||
|
(ticket.status === "closed" && status === "closed") ||
|
||||||
searchParam
|
status === "all"
|
||||||
)
|
)
|
||||||
return (
|
return (
|
||||||
<React.Fragment key={ticket.id}>
|
<React.Fragment key={ticket.id}>
|
||||||
@@ -517,23 +523,25 @@ const TicketsList = () => {
|
|||||||
|
|
||||||
if (loading) {
|
if (loading) {
|
||||||
return <TicketsSkeleton />;
|
return <TicketsSkeleton />;
|
||||||
}
|
} else if (
|
||||||
|
countTickets(status, userId) === "" &&
|
||||||
// else if (countTickets(status, userId) === "" && status !== "closed") {
|
status !== "closed" &&
|
||||||
// return (
|
status !== "all"
|
||||||
// <div className={classes.noTicketsDiv}>
|
) {
|
||||||
// <span className={classes.noTicketsTitle}>
|
return (
|
||||||
// {status === "pending" ? "Tudo resolvido" : "Pronto pra mais?"}
|
<div className={classes.noTicketsDiv}>
|
||||||
// </span>
|
<span className={classes.noTicketsTitle}>
|
||||||
// <p className={classes.noTicketsText}>
|
{status === "pending" && "Tudo resolvido"}
|
||||||
// {status === "pending"
|
{status === "open" && "Pronto pra mais?"}
|
||||||
// ? "Nenhum ticket pendente por enquanto. Hora do café!"
|
</span>
|
||||||
// : "Aceite um ticket da fila para começar."}
|
<p className={classes.noTicketsText}>
|
||||||
// </p>
|
{status === "pending" &&
|
||||||
// </div>
|
"Nenhum ticket pendente por enquanto. Hora do café!"}
|
||||||
// );
|
{status === "open" && "Aceite um ticket da fila para começar."}
|
||||||
// }
|
</p>
|
||||||
else {
|
</div>
|
||||||
|
);
|
||||||
|
} else {
|
||||||
return viewTickets;
|
return viewTickets;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -645,7 +653,24 @@ const TicketsList = () => {
|
|||||||
className={classes.contactsWrapper}
|
className={classes.contactsWrapper}
|
||||||
>
|
>
|
||||||
<Paper square elevation={0} className={classes.closedTicketsList}>
|
<Paper square elevation={0} className={classes.closedTicketsList}>
|
||||||
<List>{renderTickets()}</List>
|
{loading ? (
|
||||||
|
<TicketsSkeleton />
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
{tickets.length === 0 ? (
|
||||||
|
<div className={classes.noTicketsDiv}>
|
||||||
|
<span className={classes.noTicketsTitle}>
|
||||||
|
"Nada encontrado"
|
||||||
|
</span>
|
||||||
|
<p className={classes.noTicketsText}>
|
||||||
|
Tente buscar por outro termo.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<List>{renderTickets("all")}</List>
|
||||||
|
)}
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</Paper>
|
</Paper>
|
||||||
</TabPanel>
|
</TabPanel>
|
||||||
<audio id="sound" preload="auto">
|
<audio id="sound" preload="auto">
|
||||||
|
|||||||
Reference in New Issue
Block a user