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 ( <>
| Nome | CPF | Telefone | Ações | ||
|---|---|---|---|---|---|
| {medico.nome} | {medico.cpf} | {medico.email} | {medico.telefone} | {medico.ativo} |
{/* Ver Detalhes */}
{/* Editar */}
|
| Nenhum médico encontrado. | |||||
Tem certeza que deseja excluir este médico?