Funcionalidade para mudar os botões se for cancelled ou confirmed

This commit is contained in:
joao_pedro 2025-11-05 20:32:27 -03:00
parent 0129482b7c
commit bd1ea9a206
3 changed files with 83 additions and 71 deletions

View File

@ -191,6 +191,7 @@ const confirmConsulta = (selectedPatientId) => {
<div> <div>
<h1> Gerencie suas consultas</h1> <h1> Gerencie suas consultas</h1>
{/*Adicionei esse className para poder ter o fundo branco presente no style, mesmo não sendo para um form */}
<div className='form-container'> <div className='form-container'>
<div className='btns-container'> <div className='btns-container'>
@ -204,7 +205,8 @@ const confirmConsulta = (selectedPatientId) => {
} }
</div> </div>
<h2>Seus próximos atendimentos</h2>
{viewFila ? {viewFila ?
<div className="fila-container"> <div className="fila-container">
<div className="fila-header"> <div className="fila-header">
@ -252,13 +254,15 @@ const confirmConsulta = (selectedPatientId) => {
</table> </table>
</div> </div>
: :
<div>
<h2 className='fila-titulo'>Suas proximas consultas</h2>
<TabelaAgendamentoDia agendamentos={consultasOrganizadas} setDictInfo={setDictInfo} <TabelaAgendamentoDia agendamentos={consultasOrganizadas} setDictInfo={setDictInfo}
selectedID={selectedID} setSelectedId={setSelectedId} setShowDeleteModal={setShowDeleteModal} selectedID={selectedID} setSelectedId={setSelectedId} setShowDeleteModal={setShowDeleteModal}
coresConsultas={coresConsultas} setListaConsultaID={setListaConsultaID} coresConsultas={coresConsultas} setListaConsultaID={setListaConsultaID}
listaConsultasID={listaConsultasID} setShowConfirmModal={setShowConfirmModal} listaConsultasID={listaConsultasID} setShowConfirmModal={setShowConfirmModal}
/> />
</div>
} }
{showDeleteModal && ( {showDeleteModal && (

View File

@ -108,5 +108,8 @@
.btns-container{ .btns-container{
display: flex; display: flex;
gap: 10px; gap: 10px;
}
.h2-proximos-agendamentos{
margin-top: 20px;
} }

View File

@ -15,38 +15,9 @@ const CardConsulta = ( {DadosConsulta, TabelaAgendamento, setShowDeleteModal, se
const [decidirBotton, setDecidirBotton] = useState("") const [decidirBotton, setDecidirBotton] = useState("")
/* const ids = useMemo(() => {
return {
doctor_id: DadosConsulta?.doctor_id,
patient_id: DadosConsulta?.patient_id,
status: DadosConsulta?.status
};
}, [DadosConsulta]);
*/
/*
useEffect(() => {
const BuscarMedicoEPaciente = async () => {
if (!ids.doctor_id || !ids.patient_id || ids.status === 'nada') return;
try {
const [Doctor, Patient] = await Promise.all([
GetDoctorByID(ids.doctor_id, authHeader),
GetPatientByID(ids.patient_id, authHeader)
]);
setMedico(Doctor?.[0] || null);
setPaciente(Patient?.[0] || null);
} catch (error) {
console.error('Erro ao buscar médico/paciente:', error);
}
};
BuscarMedicoEPaciente();
}, [ids, authHeader]);*/
let nameArrayPaciente = DadosConsulta?.paciente_nome?.split(' ') let nameArrayPaciente = DadosConsulta?.paciente_nome?.split(' ')
let nameArrayMedico = DadosConsulta?.medico_nome?.split(' ') let nameArrayMedico = DadosConsulta?.medico_nome?.split(' ')
let indice_cor = listaConsultasID.indexOf(DadosConsulta.id) let indice_cor = listaConsultasID.indexOf(DadosConsulta.id)
@ -74,37 +45,42 @@ const CardConsulta = ( {DadosConsulta, TabelaAgendamento, setShowDeleteModal, se
<div className='actions-container'> <div className='actions-container'>
<button className="btn btn-sm btn-edit-custom" <button className="btn btn-sm btn-edit-custom"
onClick={() => {
onClick={() => {navigate(`edit`) navigate(`edit`);
console.log(DadosConsulta);
console.log(DadosConsulta) setDictInfo({
setDictInfo({...DadosConsulta,paciente_cpf:DadosConsulta?.paciente_cpf, paciente_nome:DadosConsulta?.paciente_nome, nome_medico:DadosConsulta?.nome_medico}) ...DadosConsulta,
paciente_cpf: DadosConsulta?.paciente_cpf,
paciente_nome: DadosConsulta?.paciente_nome,
nome_medico: DadosConsulta?.medico_nome
});
}} }}
> >
<i className="bi bi-pencil me-1"></i> <i className="bi bi-pencil me-1"></i>
</button> </button>
{DadosConsulta.status === "cancelled" ?
{indice_cor !== -1 ? (
// Caso o ID esteja na lista
<>
{coresConsultas[indice_cor] === "cancelled" ?
<button <button
className="btn btn-sm btn-confirm-style" className="btn btn-sm btn-confirm-style"
onClick={() => { onClick={() => {
console.log(DadosConsulta.id) console.log(DadosConsulta.id);
setShowConfirmModal(true) setShowConfirmModal(true);
setSelectedId(DadosConsulta.id); setSelectedId(DadosConsulta.id);
}} }}
> >
<i class="bi bi-check-lg"></i> <i className="bi bi-check-lg"></i>
</button> </button>
: :
<button <button
className="btn btn-sm btn-delete-custom-style" className="btn btn-sm btn-delete-custom-style"
onClick={() => { onClick={() => {
console.log(DadosConsulta.id) console.log(DadosConsulta.id);
setSelectedId(DadosConsulta.id); setSelectedId(DadosConsulta.id);
setShowDeleteModal(true); setShowDeleteModal(true);
}} }}
> >
<i className="bi bi-trash me-1"></i> <i className="bi bi-trash me-1"></i>
@ -112,9 +88,38 @@ const CardConsulta = ( {DadosConsulta, TabelaAgendamento, setShowDeleteModal, se
} }
</>
) : (
// 🧩 Caso normal segue a lógica do status
<>
{DadosConsulta.status === "cancelled" ? (
<button
className="btn btn-sm btn-confirm-style"
onClick={() => {
console.log(DadosConsulta.id);
setShowConfirmModal(true);
setSelectedId(DadosConsulta.id);
}}
>
<i className="bi bi-check-lg"></i>
</button>
) : (
<button
className="btn btn-sm btn-delete-custom-style"
onClick={() => {
console.log(DadosConsulta.id);
setSelectedId(DadosConsulta.id);
setShowDeleteModal(true);
}}
>
<i className="bi bi-trash me-1"></i>
</button>
)}
</>
)}
</div> </div>
</div> </div>
: :
null null