Skip to content

Dev-HideyukiTakahashi/corleone-medlife

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Corleone-MedLife


Aplicação para uma uma clínica que faz consultas médicas, atendente realiza o cadastro do paciente para consulta e o médico realiza a mesma.




Login: admin / Senha: admin
Login: medico / Senha: medico
Login: atendente / Senha: atendente


Requisitos
Requisitos do Sistema

  • Gerenciar cadastro dos pacientes.
  • Cadastrar nova consulta que cai na fila do atendimento.
  • Verificar consulta marcada e cancelar caso paciente não chegar em até 10 minutos antes da cosulta.
  • Na data da consulta, encaminhar os dados do paciente para o médico responsável.
  • Imprimir relatório com os exames e medicamentos de acordo com o diagnóstico do médico.
  • Repassar possível retorno para o cadastro de cliente.
  • Encerrar com a conclusão do atendimento e diagnóstico.


Casos de uso

Admin

CRUD do sistema.
  • Registrar dados de um novo atendente ou médico no banco de dados. Buscar, alterar e excluir.
      Entrada esperada:
      -Paciente: Id, nome, endereço, telefone, idade, sexo, cpf, email
      -Médico: id, nome, telefone, foto, fotoExt, email, crm
      Saída esperada:
      -Cadastro de um novo atendente no sistema.
      -Cadastro de um novo médico sistema.
      -Lista com todos os dados de médicos e atendentes com opção para editar/excluir.

Atendente

Paciente entra em contato com a clínica - Cadastro.
  • Registrar dados pessoais e triagem do paciente para consulta.
      Entrada esperada:
      -Paciente: Id, nome, endereço, telefone, idade, sexo, cpf, email
      -Consulta: Descrição da necessidade detalhada.
      Saída esperada:
      -Cadastro de um novo paciente no banco de dados.
      -Dados da triagem para o preparar o médico.
      -Data/Hora da consulta marcada com os dados do paciente..
      **Encaminhar por email ou SMS dados da consulta.
Paciente chega na clínica - Consulta marcada/retorno:
  • Confirmar dados pessoais e horário para consulta/retorno.
      Entrada esperada:
      -Buscar dados do paciente no banco de dados e confirmar o registro do paciente tal como a consulta.
      -Encaminhar dados para o médico responsável.
      Saída esperada:
      -Encaminhar dados da consulta para o sistema do médico.
Paciente não comparece na clínica 10 minutos antes de consulta:
  • Caso atendente entrar em contato minutos antes e confirmar a ausência do paciente, remarcar. Caso contrário cancelar consulta.
      Entrada esperada:
      -Criar uma nova consulta e substituir a antiga com os mesmo dados do paciente.
      -Cancelar consulta em sistema.
      Saída esperada:
      -Data/Hora da consulta remarcada marcada com os dados do paciente.
      -Lista com todos os dados de médicos e atendentes com opção para editar/excluir.
      **Encaminhar por email ou SMS dados da consulta / cancelamento.

Médico

Recebe uma um registro para nova consulta do paciente:
  • Incrementa os dados da consulta com informações da avaliação do médico.
      Entrada esperada:
      -Recebe dados da consulta/paciente, enviados pelo atendente.
      -Incrementa no campo de consulta, informações do paciente.
      -Gera um arquivo com a receita e/ou exames necessários para retorno.
      Saída esperada:
      -Atualização da entidade consulta no banco de dados.
      -Criação de um PDF para impressão, com informações necessárias para o paciente.
Recebe uma um registro de retorno do paciente:
  • Incrementa os dados da consulta com informações da avaliação do médico e exames.
      Entrada esperada:
      -Recebe dados da consulta/paciente, enviados pelo atendente.
      -Incrementa no campo de consulta, informações do paciente.
      -Gera um arquivo com a receita e/ou exames necessários para outro retorno.
      -Finaliza o atendimento não havendo a necessidade de mais informações.
      -Gera um arquivo com diagnóstico final e possíveis medicamentos necessários.
      Saída esperada:
      -Atualização da entidade consulta no banco de dados.
      -Criação de um PDF para impressão, com informações necessárias para o paciente.
      -Finaliza o atendimento.


App Roadmap


Task 1 : CRUD de sistema, relacionamentos entre entidades, encaminhamento de consulta do atendente para médico.

- Back-End:

  • Configuração com banco de dados H2 para testes.
  • Criação das entidades e mapeamento Hibernate/Validation.
  • Criação de todos repositórios.
  • Criação de todos controllers, pelo menos com o método 'find' para testar relacionamentos.
  • Database seeding para testes.
  • Controller com CRUD completo para entidades médico, paciente, atendente, consulta, com testes no h2.
  • //TODO Parte de configurações de usuário com Upload de foto de perfil, salvando no banco de dados.
  • //TODO Criação de relatórios com JasperReport.
  • ** Foi adicionado a entidade Consulta o atributo STATUS(MARCADA, ENCAMINHADA, FINALIZADA, REMARCADA, CANCELADA) para melhor controle dos atendimentos.

- Front-End:

  • Configuração bootstrap.
  • View admin-profile: views de cadastro para novo atendente, médico.
  • View admin-profile: view de lista dinâmica de todos atendentes, médicos com opção para editar e excluir.
  • View atendente profile: view de cadastro para novo paciente.
  • View atendente profile: view de lista dinâmica com todos pacientes, com opção de editar, enviar mensagem via API whattsap.
  • View atendente profile: view com lista das consultas agendadas, com opção de remarcar, cancelar, encaminhar para determinado médico.
  • View atendente profile: view com dados dos médicos para consulta de dados.
  • View médico profile: view com lista de consultas que foram encaminhadas pelo atendente, com opção de finalizar e remarcar.
  • View médico profile: view da consulta em andamento para registro de informações sobre.
  • //TODO View médico profile: view do relatório para solicitar exames ou medicamentos.
  • //TODO View médico profile: ( alteração de telefone, email, foto ).
  • Paginação das listas dinâmicas e busca de pacientes por nome.

Task 2 - Spring security, autenticando o sistema e autorizando páginas de acordo com o perfil.
  • Validação com banco de dados, login/senha.
  • Validação para não acessar nenhuma página do sistema sem estar logado.
  • O usuário 'admin' tem acesso total ao sistema.
  • //TODO View admin-profile: view do log que contém alterações de data da consulta, ou cancelamento de consulta.


UML

uml

Imagens

login
main
config
config


Tecnologias utilizadas

Java, Thymeleaf, Spring Boot, Spring MVC, Spring Security, Spring Data JPA, Spring Validation, HTML, CSS, JS, Bootstrap, PostgreSQL, Maven, Tomcat 9, Git e Github



logo

About

Thymeleaf / Bootstrap / PostgreSQL ...

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published