Jump to content
Fórum Script Brasil
  • 0

Criar tabelas para agendamento


fininhors
 Share

Question

Bom dia, estou com uma dúvida quanto a criação de algumas tabelas para agendamento de consultas de um pequeno sistema q estou criando.
No sistema de agendamento é possível ver os horários, de acordo com os que o médico está na clinica.
Como cada médico pode estar presente em dias e horários diferentes, preciso criar as tabelas de acordo com esta regra.

Pensei em criar uma tabela com os horários, exemplo: 8:00, 8:15, 8:20, 8:30, etc sendo que o tempo de consulta depende de cada médico também.
Outra tabela seria dos dias da semana, exemplo: segunda, terça, quarta, etc.
E uma outra tabela faria a junção(cadastrar conforme o médico) de médico, dia e horários, exemplo: Médico Fulano, segunda: 8: 8:15, 8:30; Ciclano, terça: 10, 10:30, 11:00.

Existe a tabela de agendamento, esta só seria preenchida se realmente tiver um agendamento evitando uso dos recursos do banco sem necessidade.

Não sei como montar as tabelas, estou com problemas(falta de conhecimento) para modelar as mesmas.

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Olá

8 horas atrás, Denis Courcy disse:

Procure no google sobre diagramas de entidade relacionamento clinica. Você encontrará vários exemplos.

Denis, já procurei por vários exemplos na internet. Não encontrei nada parecido com o que eu preciso. Pelo menos nada de conteúdo livre. Por isso decidi pedir ajuda.

Link to comment
Share on other sites

  • 0

Boa noite Fininho.
Construí uma agenda para profissionais de saúde da seguinte maneira:

Tabela 01: contém todos os horários de atendimento da clinica, é alimentada no formulário de parâmetros do sistema, onde informo primeiro horário de atendimento, o último horário de atendimento no dia e o intervalo entre consultas

Nome: horarioreferencia
Campo: horario

Tabela 02: Armazena os horários com consulta agendada
Nome: HorarioConsulta
Campos:
- ideHorarioConsulta (primary key)
- idePaciente (foreign key da tabela paciente)
- ideProfissional (foreign key da tabela profissional)
- ideProfissionalEsp (foreign key da tabela especialidade do profissional)
- dtcConsulta (data da consulta)
- horInicio (horário de início da consulta)
- horTermino (horário de término da consulta)
- stsConsulta (status da consulta (agendada, cancelada, etc);
- dtcMarcacao (data que foi marcada a consulta)
- horMarcacao (hora que foi marcada a consulta)
- dtcAlteracao (data que foi alterada alguma informação da consulta)
- horAlteracao (hora que foi alterada alguma informação da consulta)
- ideUsuario (foreign key da tabela paciente)
- ideUsuarioAltera (foreign key da tabela paciente)

Quando for exibir os horários para marcação, você faz um left join entre a tabela HorarioConsulta e HorarioReferencia.

Espero ter ajudado.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...