import React, { useState, useEffect } from "react"; function TableDoctor({ setCurrentPage, setPatientID }) { const [medicos, setMedicos] = useState([]); const [search, setSearch] = useState(""); const [filtroAniversariante, setFiltroAniversariante] = useState(false); // estados do modal const [showDeleteModal, setShowDeleteModal] = useState(false); const [selectedDoctorId, setSelectedDoctorId] = useState(null); // Função para excluir médicos const deleteDoctor = async (id) => { const requestOptionsDelete = { method: "DELETE", redirect: "follow" }; try { await fetch( `https://mock.apidog.com/m1/1053378-0-default/pacientes/${id}`, requestOptionsDelete ); setMedicos((prev) => prev.filter((m) => m.id !== id)); } catch (error) { console.log("Deu problema", error); } finally { setShowDeleteModal(false); } }; // Função para verificar se hoje é aniversário const ehAniversariante = (dataNascimento) => { if (!dataNascimento) return false; const hoje = new Date(); const nascimento = new Date(dataNascimento); return ( hoje.getDate() === nascimento.getDate() && hoje.getMonth() === nascimento.getMonth() ); }; // Buscar médicos da API useEffect(() => { fetch("https://mock.apidog.com/m1/1053378-0-default/pacientes") .then((response) => response.json()) .then((result) => console.log('nada')) .catch((error) => console.log("Erro para encontrar médicos no banco de dados", error) ); }, []); // Filtrar médicos pelo campo de pesquisa e aniversariantes const medicosFiltrados = medicos.filter( (medico) => `${medico.nome} ${medico.cpf} ${medico.email} ${medico.telefone}` .toLowerCase() .includes(search.toLowerCase()) && (filtroAniversariante ? ehAniversariante(medico.data_nascimento) : true) ); return ( <>

Lista de Médicos

Médicos Cadastrados

setSearch(e.target.value)} className="form-control" style={{ maxWidth: "300px" }} />
{medicosFiltrados.length > 0 ? ( medicosFiltrados.map((medico) => ( )) ) : ( )}
Nome CPF Email Telefone Ações
{medico.nome} {medico.cpf} {medico.email} {medico.telefone} {medico.ativo}
{/* Ver Detalhes */} {/* Editar */}
Nenhum médico encontrado.
{/* Modal de confirmação de exclusão */} {showDeleteModal && (
e.target.classList.contains("modal") && setShowDeleteModal(false) } >
Confirmação de Exclusão

Tem certeza que deseja excluir este médico?

)} ); } export default TableDoctor;