Skip to content

haruoSugano/app-doctor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

116 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

App Doctor

Logo app-doctor


Resumo

O APP Doctor é uma aplicação web desenvolvida para auxiliar os médicos na criação de receituários e prontuários. Aos pacientes serão enviadas informações de cadastro, para visualização de suas consultas agendadas, e de seus receituários.


Objetivo

Desenvolvimento de uma solução útil para clínicas médicas.

Requisitos:

  • Utilizar arquitetura de microsserviços, com NodeJS;
  • Dois microsserviços, com barramento de eventos e comunicação assíncrona;
  • O Front End deverá ser uma aplicação Angular;
  • O Front End deverá dar acesso gráfico às funcionalidades providas pelo Back End;
  • A comunicação entre Back End e Front End deve ser feita via requisições HTTP.

Video/Slide de apresentação

Video: Youtube

Slide: Docs


Integrantes do grupo

Alice Lucia da Silva RA: 821157071

Giovanne Henrique Vieira da Silva RA: 821149648

Hélio Haruo Takamori Sugano RA: 821137022

José Carlos Ferreira Silva Neto RA: 822159018

Kassio Mateus de Amorim RA: 82011745

Nathalia Julia Pereira RA: 820277511

Vinicius de Souza Alves RA: 820272024


Requerimentos

Obrigatório:

  • NodeJS >= 14.0.0
  • AngularJS 14
  • PostgreSQL
  • MongoDB
  • RabbitMQ

Opcional:

  • Docker
  • Docker Compose

Documentação

Algumas bibliotecas que são utilizadas pelo gerenciador de pacote NPM.

frontend

login

sistema

barramento


Configuração do Ambiente

Faça uma cópia do projeto

$ git clone https://github.com/haruoSugano/app-doctor.git

ou (SSH)

$ git clone [email protected]:haruoSugano/app-doctor.git


Docker (Opcional)

Utilizar o RabbitMQ de forma local é necessário descomentar o seguinte trecho do arquivo docker-compose.yml:

  rabbitmq:
    image: rabbitmq:3.8-management-alpine
    container_name: 'rabbitmq'
    ports:
      - 5672:5672
      - 15672:15672
    volumes:
      - ~/.docker/rabbitmq/data/:/var/lib/rabbitmq/
      - ~/.docker/rabbitmq/log/:/var/log/rabbitmq
    networks:
      - rabbitmq_go_net
    environment:
      - RABBITMQ_DEFAULT_USER=admin
      - RABBITMQ_DEFAULT_PASS=admin
    restart: always
networks:
  rabbitmq_go_net:
    driver: bridge

Na pasta princiapl app-doctor inicie o docker-compose

$ docker-compose up


Configurando as varáveis de ambiente

Na pasta app-doctor, entre no diretório e renomeie o arquivo .env.dist para .env após isso, configure as varáveis.

Exemplo

login

MONGODB_URL=mongodb://<USER>:<PASSWORD>@localhost:27017/?authMechanism=DEFAULT 
PORT=<PORT>
SECRET=<HASH>
EMAIL=
# URI=<amqp://> rabbitmq local
CLOUD_AMQP=<amqps://> #rabbitmq cloud

sistema

DB_HOST=<LOCALHOST-URL>
POSTGRES_USER=<USER>
POSTGRES_PASSWORD=<PASSWORD>
PGDATA=<NAME_DATABASE>
DB_PORT=<PORT_DATABASE>
PORT=<PORT_LOCALHOST>
# URI=<amqp://> rabbitmq local
CLOUD_AMQP=<amqps://> #rabbitmq cloud

barramento

EMAIL=<Seu email>
PORT_EMAIL=<ex: 465>
SMTP=<smtp.email.com>
PORT=<porta_local> #porta local
# URI=<amqp://> rabbitmq
CLOUD_AMQP=<amqps://> #rabbitmq

Configurando Gmail API

Acessar a pasta barramento

Renomear o arquivo credentials.json.dis removendo o .dist.

Como configurar


Baixe/Atualize as dependências e configure o DB


Abrir o primeiro terminal

Navegue até a pasta frontend

$ cd frontend

Digite o comando:

$ npm install


Abrir o segundo terminal

Navegue até a pasta login

$ cd backend/api/login

Digite o comando:

$ npm install


Abrir o terceiro terminal

Navegue até a pasta sistema

$ cd backend/api/sistema

Digite o comando:

$ npm install

Configurando o banco de dados PostgreSQL

$ npx sequelize db:create

$ npx sequelize db:migrate


Abrir o quarto terminal

Navegue até a pasta barramento

$ cd backend/api/barramento

Digite o comando:

$ npm install


Execução

frontend

$ npm start

login

$ npm start

sistema

$ npm start

barramento

$ npm start


Observação

No sistema operacional Windows é necessário fazer algumas mudanças:

atestadaMail e receituarioMail

let arquivo_pdf = pdf.split("/");

Troque a barra para

let arquivo_pdf = pdf.split("\\");

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •