import React, { useState, useEffect } from 'react'; import { FaUser, FaUserPlus, FaCalendarAlt, FaCalendarCheck } from 'react-icons/fa'; import './style/Inicio.css'; function Inicio({ setCurrentPage }) { const [pacientes, setPacientes] = useState([]); const [agendamentos, setAgendamentos] = useState([]); const [errorMessage, setErrorMessage] = useState(""); const [fieldErrors, setFieldErrors] = useState({}); useEffect(() => { const fetchPacientes = async () => { try { const res = await fetch("https://mock.apidog.com/m1/1053378-0-default/pacientes"); if (!response.ok) { const errorData = await response.json(); setErrorMessage(errorData.message || "Erro desconhecido"); if (errorData.details) { setFieldErrors(errorData.details); } return; } const data = await res.json(); setPacientes(data.data); setErrorMessage(""); setFieldErrors({}); } catch (error) { console.error("Erro ao buscar pacientes:", error); setErrorMessage("Falha na comunicação com o servidor"); } }; const fetchAgendamentos = async () => { try { const res = await fetch(); if (!response.ok) { const errorData = await response.json(); setErrorMessage(errorData.message || "Erro desconhecido"); if (errorData.details) { setFieldErrors(errorData.details); } return; } const data = await res.json(); setAgendamentos(data.data); } catch (error) { console.error("Erro ao buscar agendamentos:", error); setErrorMessage("Falha na comunicação com o servidor"); } }; fetchPacientes(); fetchAgendamentos(); }, []); const totalPacientes = pacientes.length; const novosEsseMes = pacientes.filter(p => p.createdAt && new Date(p.createdAt).getMonth() === new Date().getMonth()).length; const hoje = new Date(); const agendamentosDoDia = agendamentos.filter( a => a.data && new Date(a.data).getDate() === hoje.getDate() ); const agendamentosHoje = agendamentosDoDia.length; return (
{agendamento.nomePaciente}
{new Date(agendamento.data).toLocaleTimeString()}
Nenhum agendamento para hoje