diff --git a/src/PagesMedico/Agendamento.jsx b/src/PagesMedico/Agendamento.jsx deleted file mode 100644 index db3b20f..0000000 --- a/src/PagesMedico/Agendamento.jsx +++ /dev/null @@ -1,226 +0,0 @@ -import React, { useState, useMemo } from 'react'; - -import TabelaAgendamentoDia from '../components/AgendarConsulta/TabelaAgendamentoDia'; -import TabelaAgendamentoSemana from '../components/AgendarConsulta/TabelaAgendamentoSemana'; -import TabelaAgendamentoMes from '../components/AgendarConsulta/TabelaAgendamentoMes'; -import FormNovaConsulta from '../components/AgendarConsulta/FormNovaConsulta'; - -// ✨ NOVO: Caminho de importação corrigido com base na sua estrutura de pastas -import AgendamentosMes from '../components/AgendarConsulta/DadosConsultasMock.js'; - -import dayjs from 'dayjs'; -// Importe os estilos -import "./styleMedico/Agendamento.css"; -import "./styleMedico/FilaEspera.css"; - -const Agendamento = () => { - - const [FiladeEspera, setFiladeEspera] = useState(false); - const [tabela, setTabela] = useState('diario'); - const [PageNovaConsulta, setPageConsulta] = useState(false); - const [searchTerm, setSearchTerm] = useState(''); - - // Dados da fila de espera (sem alteração) - const filaEsperaData = [ - { nome: 'Ricardo Pereira', email: 'ricardo.pereira@gmail.com', cpf: '444.777.666-55', telefone: '(79) 99123-4567', entrada: '25/09/2025 às 08:00' }, - { nome: 'Ana Costa', email: 'ana.costa@gmail.com', cpf: '321.654.987-00', telefone: '(79) 97777-3333', entrada: '25/09/2025 às 08:30' }, - { nome: 'Lucas Martins', email: 'lucas.martins@gmail.com', cpf: '777.666.555-33', telefone: '(79) 99654-3210', entrada: '25/09/2025 às 09:00' }, - { nome: 'João Souza', email: 'joao.souza@gmail.com', cpf: '987.654.321-00', telefone: '(79) 98888-2222', entrada: '25/09/2025 às 14:00' }, - { nome: 'Maria Silva', email: 'maria.silva@gmail.com', cpf: '123.456.789-00', telefone: '(79) 99999-1111', entrada: '25/09/2025 às 14:30' }, - { nome: 'Fernanda Lima', email: 'fernanda.lima@gmail.com', cpf: '888.999.000-22', telefone: '(79) 98877-6655', entrada: '26/09/2025 às 09:30' }, - { nome: 'Carlos Andrade', email: 'carlos.andrade@gmail.com', cpf: '222.555.888-11', telefone: '(79) 99876-5432', entrada: '26/09/2025 às 10:00' }, - { nome: 'Juliana Oliveira', email: 'juliana.o@gmail.com', cpf: '111.222.333-44', telefone: '(79) 98765-1234', entrada: '26/09/2025 às 11:30' }, - ]; - - // Filtro da fila de espera (sem alteração) - const filteredFila = filaEsperaData.filter(item => - item.nome.toLowerCase().includes(searchTerm.toLowerCase()) || - item.email.toLowerCase().includes(searchTerm.toLowerCase()) || - item.cpf.includes(searchTerm) || - item.telefone.includes(searchTerm) - ); - - // Lógica para filtrar os dados da AGENDA (AgendamentosMes) - const filteredAgendamentos = useMemo(() => { - if (!searchTerm.trim()) { - return AgendamentosMes; - } - - const lowerCaseSearchTerm = searchTerm.toLowerCase(); - const filteredData = {}; - - for (const semana in AgendamentosMes) { - filteredData[semana] = {}; - for (const dia in AgendamentosMes[semana]) { - filteredData[semana][dia] = AgendamentosMes[semana][dia].filter(agendamento => - agendamento.status === 'vazio' || - (agendamento.paciente && agendamento.paciente.toLowerCase().includes(lowerCaseSearchTerm)) - ); - } - } - return filteredData; - }, [searchTerm]); - - const ListarDiasdoMes = (ano, mes) => { - let segundas = []; let tercas = []; let quartas = []; let quintas = []; let sextas = [] - const base = dayjs(`${ano}-${mes}-01`) - const DiasnoMes = base.daysInMonth() - for (let d = 1; d <= DiasnoMes; d++) { - const data = dayjs(`${ano}-${mes}-${d}`) - const dia = data.format('dddd') - switch (dia) { - case 'Monday': segundas.push(d); break - case 'Tuesday': tercas.push(d); break - case 'Wednesday': quartas.push(d); break - case 'Thursday': quintas.push(d); break - case 'Friday': sextas.push(d); break - default: break - } - } - let ListaDiasDatas = [segundas, tercas, quartas, quintas, sextas] - return ListaDiasDatas - } - - const handleClickAgendamento = (agendamento) => { - if (agendamento.status !== 'vazio') return - else setPageConsulta(true) - } - - const handleClickCancel = () => setPageConsulta(false) - - return ( -
| Nome | -CPF | -Telefone | -Entrou na fila de espera | -|
|---|---|---|---|---|
| {item.nome} | -{item.email} | -{item.cpf} | -{item.telefone} | -{item.entrada} | -
| Horário | +Horário | {} |
|---|---|---|
{`${horario[0]}:${horario[1]}`} |
+ {`${horario[0]}:${horario[1]}`} |
handleClickAgendamento(agendamento)}>
) vertical e horizontalmente */ + text-align: center; + vertical-align: middle; + + /* Cor de fundo clara para contrastar levemente, se desejar */ + /* background-color: #f9f9f9; */ + + /* Garante que a coluna não fique muito estreita */ + width: 15%; /* Exemplo, ajuste se necessário */ +} + +/* 2. Estilização do P (O texto do horário) */ +.horario-texto { + /* Remove a margem padrão do para alinhamento preciso */ + margin: 0; + + /* Aplica a cor azul condizente com o "10:30" da imagem */ + color: #007bff; /* Tonalidade de azul Bootstrap/padrão */ + + /* Aumenta a fonte para dar mais destaque */ + font-size: 1.3em; /* 1.3 vezes o tamanho normal */ + + /* Deixa a fonte mais pesada para ser mais visível */ + font-weight: bold; + + /* Se você quiser garantir que a fonte seja a mesma do resto do site */ + /* font-family: 'Arial', sans-serif; */ +} + +/* 3. Estilização do cabeçalho (opcional, para consistência) */ +.cabecalho-horario { + background-color: #007bff; /* Cor de fundo azul como na imagem */ + color: white; + font-weight: bold; + text-align: center; +} /* Células da tabela */ .tabeladiaria th, .tabeladiaria td { diff --git a/src/data/sidebar-items-adm.json b/src/data/sidebar-items-adm.json index 2d77c70..195b288 100644 --- a/src/data/sidebar-items-adm.json +++ b/src/data/sidebar-items-adm.json @@ -14,6 +14,17 @@ "icon": "hospital-fill", "url": "/admin/medicos" }, + { + "name": "Agendamentos", + "icon": "calendar-plus-fill", + "url": "/admin/agendamento" + }, + + { + "name": "Relaototios", + "icon": "table", + "url": "/admin/laudo" + }, { "name": "Gestão de Usuários", @@ -25,12 +36,5 @@ "name": "Painel Administrativo", "icon": "file-bar-graph-fill", "url": "/admin/painel" - }, - - { - "name": "Laudo do Paciente", - "icon": "table", - "url": "/admin/laudo" } - ] \ No newline at end of file diff --git a/src/pages/Agendamento.jsx b/src/pages/Agendamento.jsx index 5d1e82c..4a226d3 100644 --- a/src/pages/Agendamento.jsx +++ b/src/pages/Agendamento.jsx @@ -281,12 +281,12 @@ const handleSearchMedicos = (term) => { Mudar Disponibilidade - - + {!PageNovaConsulta ? (
+
-
-
-
@@ -324,17 +324,8 @@ const handleSearchMedicos = (term) => {
)}
-
-
+
+
@@ -453,7 +444,7 @@ const handleSearchMedicos = (term) => {
) : (
-
-
)
diff --git a/src/perfis/Perfil_adm/Perfiladm.jsx b/src/perfis/Perfil_adm/Perfiladm.jsx
index 0b5ee13..2632fbe 100644
--- a/src/perfis/Perfil_adm/Perfiladm.jsx
+++ b/src/perfis/Perfil_adm/Perfiladm.jsx
@@ -14,6 +14,8 @@ import DoctorEditPage from "../../pages/DoctorEditPage";
import UserDashboard from '../../PagesAdm/gestao.jsx';
import PainelAdministrativo from '../../PagesAdm/painel.jsx';
import admItems from "../../data/sidebar-items-adm.json";
+
+
// ...restante do código...
function Perfiladm() {
return (
diff --git a/src/perfis/Perfil_medico/PerfilMedico.jsx b/src/perfis/Perfil_medico/PerfilMedico.jsx
index b1b9546..9037a53 100644
--- a/src/perfis/Perfil_medico/PerfilMedico.jsx
+++ b/src/perfis/Perfil_medico/PerfilMedico.jsx
@@ -4,7 +4,7 @@ import Sidebar from "../../components/Sidebar";
import DoctorRelatorioManager from "../../PagesMedico/DoctorRelatorioManager";
import Prontuario from "../../PagesMedico/prontuario";
import Relatorio from "../../PagesMedico/relatorio";
-import Agendamento from "../../PagesMedico/Agendamento";
+import DoctorAgendamentoManager from "../../PagesMedico/DoctorAgendamentoManager";
import Chat from "../../PagesMedico/Chat";
import DoctorItems from "../../data/sidebar-items-medico.json";
import FormNovoRelatorio from "../../PagesMedico/FormNovoRelatorio";
@@ -23,7 +23,7 @@ function PerfilMedico() {
|