Apresentação: slides-da-apresentacao-reprograma
Com o novo cenário do avanço do Covid-19 no Brasil, onde a maioria das cidades brasileiras restringem o funcionamento do comércio para conter aglomerações e, consequentemente, diminuir a proliferação do vírus. Nesse contextoa a rotina da população foi alterada por várias mudanças, uma delas foi a forma de consumir produtos e serviços.
Sabemos e vivenciamos a oferta cada vez maior de produtos e serviços através de canais digitais praticamente em todos os segmentos de mercado. E pensando nisso, a finalidade deste projeto é construir o backend de uma futura aplicação que pretende automatizar, simplificar e facilitar o nível de esforço requerido por usuários de farmácias e/ou drogarias do munícipio de Currais Novos-RN na busca por informações básicas, tais como: existe farmácia no meu bairro? qual o endereço e/ou telefone? a farmácia disponibiliza serviço de entrega em domicílio?, a farmácia de plantão? entre outras informações.
Atualmente para ter acesso as informações citadas acima, temos as seguintes opções disponíveis:
- Pesquisa no Google
- Pesquisa em Redes Sociais
- Blog local que disponibiliza um print de uma planilha que contém a relação de todas as farmácias que estão de plantão no mês
- Canal de TV a Cabo local, que vincula diariamente em sua programação as farmácias que estão de plantão no dia
- Rádios locais
A API Qual Farmácia foi pensada para ajudar a população do município de Currais Novos-RN a encontrar informações sobre as farmácias e drogarias locais de forma centralizada e rápida, tornando o processo natural e acessível.
Ferramenta | Descrição |
---|---|
javascript | Linguagem de programação utilizada |
npm | Gerenciador de pacotes |
node.js | Ambiente de execução javascript server-side |
express | Framework para node.js |
dotenv | Dependência que protege os dados sensíveis do projeto |
nodemon | Dependência que observa as atualizações realizadas e executa o servidor automaticamente |
mongoose | Dependência que interage com o MongoDB para a conexão da database, criação do model e collections |
MongoDB | Banco de dados não relacional orientado a objetos |
MongoDB Compass | Interface gráfica para verificar se os dados foram persistidos |
Insomnia | Interface gráfica para realizar os testes de API's REST |
📁 projeto-final-qualFarmacia
├── .env
├── .env.example
├── .gitignore
├── package.json
├── package-lock.json
├── README.md
├── server.js
└── 📁 src
├── app.js
├── 📁 controllers
│ ├── enderecoControllers.js
│ └── farmaciaControllers.js
├── 📁 data
│ └── dbConfig.js
├── 📁 models
│ ├── enderecoSchema.js
│ └── farmaciaSchema.js
└── 📁 routes
├── enderecoRoutes.js
├── farmaciaRoutes.js
└── index.js
# Clonar o repositório:
$ git clone https://github.com/magnoliamedeiros/On11-reprograma-qualFarmacia.git
# Entrar na pasta do projeto:
$ cd On11-reprograma-qualFarmacia
# Instalar as dependências necessárias:
$ npm i
# Verificar o arquivo .env.example:
$ vim .env.example
# Iniciar o servidor em modo desenvolvimento:
$ npm run dev
Depois, para ver o resultado localmente abra o endereço http://localhost:3030 no seu navegador
https://qualfarmacia-backend.herokuapp.com/
Método HTTP | endpoint | Descrição |
---|---|---|
GET | /farmacias | Retorna todas as farmácias cadastradas |
GET | /farmacias/:id | Retorna uma farmácia específica por id |
GET | /farmacias/bairro/nome-do-bairro | Retorna as farmácias que existem no bairro especificado |
POST | /farmacias/cadastrar | Cadastra uma nova farmácia |
PATCH | /farmacias/atualizar/:id | Atualiza uma farmácia especificada pelo id |
DELETE | /farmacias/deletar/:id | Deleta uma farmácia especificada pelo id |
Método HTTP | endpoint | Descrição |
---|---|---|
GET | /endereços | Retorna todos os endereços cadastrados |
GET | /endereços/:id | Retorna a ou as farmácias existentes no endereço informado pelo id |
POST | /endereços/cadastrar | Cadastra um novo endereço |
PATCH | /endereços/atualizar/:id | Atualiza um endereço especificado pelo id |
DELETE | /endereços/deletar/:id | Deleta um endereço especificado pelo id |
- id: autogerado e obrigatório
- nome: texto e obrigatório
- Telefone de contato: texto e obrigatório
- Whatsapp: texto
- Endereco: faz referência a collection 'endereco'
- Número: texto
- Criado em: data e obrigatório
"success": "Farmácias listadas com sucesso!",
"farmacias": [
{
"_id": "60e9dee7138ce87835f8c135",
"nome": "frei damião ii",
"telefoneDeContato": "3431-1356",
"endereco": {
"_id": "60e9de87138ce87835f8c131",
"logradouro": "laurentino bezerra",
"tipoDeLogradouro": "rua",
"bairro": "centro",
"criadoEm": "2021-07-10T17:53:11.575Z",
"__v": 0
},
"numero": "105",
"criadoEm": "2021-07-10T17:54:47.225Z",
"__v": 0
}
- id: autogerado e obrigatório
- Logradouro: texto e obrigatório
- Tipo de Logradouro: texto e obrigatório
- Bairro: texto e obrigatório
- Endereco: faz referência a collection 'endereco'
- Criado em: data e obrigatório
{
"success": "Endereço cadastrado com sucesso!",
"novoEndereco": {
"_id": "60e9e219c1e9be7a22aee37b",
"logradouro": "13 de maio",
"tipoDeLogradouro": "avenida",
"bairro": "paizinho maria",
"criadoEm": "2021-07-10T18:08:25.420Z",
"__v": 0
}
}
- Filtrar farmácias que estão de plantão
- Filtrar farmácias com serviço de entrega
- Exibir horário de funcionamento
- Autenticação de rotas
- Desenvolvimento de interface web