Alterações

This commit is contained in:
joao_pedro 2025-11-01 17:36:33 -03:00
parent 65b7590bee
commit 0f94fc4446

View File

@ -5,9 +5,11 @@ import { useNavigate } from 'react-router-dom'
import { useEffect, useState, useMemo } from 'react' import { useEffect, useState, useMemo } from 'react'
import API_KEY from '../components/utils/apiKeys' import API_KEY from '../components/utils/apiKeys'
import { useAuth } from '../components/utils/AuthProvider' import { useAuth } from '../components/utils/AuthProvider'
import { GetPatientByID } from '../components/utils/Functions-Endpoints/Patient'
import { GetDoctorByID } from '../components/utils/Functions-Endpoints/Doctor'
import { UserInfos } from '../components/utils/Functions-Endpoints/General' import { UserInfos } from '../components/utils/Functions-Endpoints/General'
import dayjs from 'dayjs'
import TabelaAgendamentoDia from "../components/AgendarConsulta/TabelaAgendamentoDia" import TabelaAgendamentoDia from "../components/AgendarConsulta/TabelaAgendamentoDia"
const ConsultasPaciente = ({ setConsulta }) => { const ConsultasPaciente = ({ setConsulta }) => {
@ -25,20 +27,39 @@ const ConsultasPaciente = ({ setConsulta }) => {
const [filaDeEspera, setFilaDeEspera] = useState([]) const [filaDeEspera, setFilaDeEspera] = useState([])
const [viewFila, setViewFila] = useState(false)
useMemo(() => { useMemo(() => {
let conjuntoConsultas = {} let conjuntoConsultas = {}
let filaEspera = [] let filaEspera = []
const fetchInfosConsultas = async (consulta) => {
let doctor = await GetDoctorByID(consulta.doctor_id, authHeader)
let paciente = await GetPatientByID(consulta.patient_id, authHeader)
console.log(doctor, "PACIENTE TRAZIDO PELO ")
let consultaMelhorada = {...consulta, paciente_nome:paciente[0].full_name, medico_nome:doctor[0].full_name }
console.log(consultaMelhorada,"ID DO MEDICO")
}
console.log("so muda") console.log("so muda")
if(!listaTodasConsultas.length) return if(!listaTodasConsultas.length) return
for(let i = 0; listaTodasConsultas.length > i; i++){ for(let i = 0; listaTodasConsultas.length > i; i++){
let consulta = listaTodasConsultas[i] let consulta = listaTodasConsultas[i]
fetchInfosConsultas(consulta);
if(consulta.status === "requested"){ if(consulta.status === "requested"){
filaDeEspera.push(consulta) filaEspera.push(consulta)
}else{ }else{
@ -61,7 +82,7 @@ const ConsultasPaciente = ({ setConsulta }) => {
setConsultasOrganizadas(conjuntoConsultas) setConsultasOrganizadas(conjuntoConsultas)
setFilaDeEspera(filaEspera) setFilaDeEspera(filaEspera)
console.log(conjuntoConsultas) console.log(filaEspera, "fila de espera")
@ -137,10 +158,72 @@ const ConsultasPaciente = ({ setConsulta }) => {
<i className="bi bi-plus-circle"></i> Adicionar Consulta <i className="bi bi-plus-circle"></i> Adicionar Consulta
</button> </button>
<button onClick={() => setViewFila(true)}> Fila de espera</button>
<h2>Seus próximos atendimentos</h2> <h2>Seus próximos atendimentos</h2>
{viewFila ?
<div className="fila-container">
<div className="fila-header">
<input
type="text"
placeholder="Pesquisar na fila de espera..."
className="busca-fila-espera"
//value={searchTerm}
//onChange={(e) => setSearchTerm(e.target.value)}
/>
<h2 className="fila-titulo">Fila de Espera</h2>
</div>
<table className="fila-tabela">
<thead>
<tr>
<th>Nome do Paciente</th> {/* Ajustado o cabeçalho */}
<th>CPF</th> {/* Ajustado o cabeçalho */}
<th>Médico Solicitado</th> {/* Ajustado o cabeçalho */}
<th>Data da Solicitação</th> {/* Ajustado o cabeçalho */}
<th>Ações</th>
</tr>
</thead>
<tbody>
{filaDeEspera.map((item, index) => (
<tr key={index}>
<td> <p>{item?.patient_id} </p> </td>
<td><p>{item?.paciente_cpf} </p></td>
<td><p>{item.Infos?.nome_medico} </p></td>
<td>{dayjs(item.agendamento?.created_at).format('DD/MM/YYYY HH:mm')}</td>
<td> <div className="d-flex gap-2">
<button className="btn btn-sm btn-edit"
onClick={() => {
console.log(item, 'item')
navigate(`${2}/edit`)
}}
>
<i className="bi bi-pencil me-1"></i> Editar
</button>
<button
className="btn btn-sm btn-delete"
onClick={() => {
setSelectedId(item.id)
setShowDeleteModal(true);
}}
>
<i className="bi bi-trash me-1"></i> Excluir
</button>
</div></td>
</tr>
))}
</tbody>
</table>
</div>
:
<TabelaAgendamentoDia agendamentos={consultasOrganizadas} listaConsultasID={[]}/> <TabelaAgendamentoDia agendamentos={consultasOrganizadas} listaConsultasID={[]}/>
{showDeleteModal && }
{showDeleteModal &&
<div className="modal-dialog modal-dialog-centered"> <div className="modal-dialog modal-dialog-centered">
<div className="modal-content"> <div className="modal-content">
<div className="modal-header bg-danger bg-opacity-25"> <div className="modal-header bg-danger bg-opacity-25">