Skip to content

Commit

Permalink
Merge pull request #140 from unb-mds/developer
Browse files Browse the repository at this point in the history
Toques Finais: Integração da Developer para Main - Última Entrega do Projeto
  • Loading branch information
devMarcosVM authored Sep 2, 2024
2 parents 817c083 + b26652e commit 9593f5d
Show file tree
Hide file tree
Showing 41 changed files with 7,656 additions and 1,531 deletions.
44 changes: 43 additions & 1 deletion .github/workflows/jest_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ on:
- developer

jobs:
test_frontend:
frontend-tests:
name: Frontend Tests
runs-on: ubuntu-22.04

steps:
Expand All @@ -19,6 +20,14 @@ jobs:
with:
node-version: '20.12.2'

- name: Cache Node.js modules
uses: actions/cache@v3
with:
path: ./front/node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/front/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
working-directory: ./front
run: npm install
Expand All @@ -29,4 +38,37 @@ jobs:

- name: Run tests
working-directory: ./front
run: npm test

backend-tests:
name: Backend Tests
runs-on: ubuntu-22.04

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20.12.2'

- name: Cache Node.js modules
uses: actions/cache@v3
with:
path: ./backend/node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/backend/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
working-directory: ./backend
run: npm install

- name: Run Lint
working-directory: ./backend
run: npm run lint

- name: Run tests
working-directory: ./backend
run: npm test
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Run Scraper Monthly

on:
schedule:
- cron: "59 2 2 * *"
- cron: "0 0 1 * *"

jobs:
run-scraper:
Expand Down
37 changes: 37 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,43 @@ Através desta aplicação, buscamos oferecer uma maneira mais transparente e ac

## 🚀 Getting Started

### Pré-requisito

- [Docker compose](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository)

### Clonar o repositório

```bash
git clone https://github.com/unb-mds/2024-1-MinasDeCultura.git
```

### Acessar o repositório

```bash
cd 2024-1-MinasDeCultura
```

### Configurar o arquivo .env

O projeto depende de algumas variáveis de ambiente que precisam ser configuradas antes de iniciar os containers. No diretório backend do projeto , crie um arquivo .env com as seguintes variáveis, no caso do nosso projeto estamos usando um banco de dados no SUPABASE:

```bash
SUPABASE_URL=
SUPABASE_KEY=
```

Iniciar os containers

Após configurar o .env, você pode iniciar o projeto executando o comando abaixo. Este comando irá construir as imagens Docker necessárias e iniciar todos os serviços definidos no docker-compose.yml:

```bash

docker compose up
```
### Acessar o projeto

Depois que os containers estiverem em execução, você poderá acessar o projeto em http://localhost:3000.

## ⚙️ Funcionalidades Previstas

- **Coleta de Dados:** Implementação de um raspadores utilizando as ferramentas scrapy e selenium.
Expand Down
35 changes: 13 additions & 22 deletions backend/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,41 +8,32 @@ Esta API permite consultar informações relacionadas a licitações culturais d

A API está localizada no diretório `backend/src/`, e é composta por três endpoints principais:

1. **/units**
2. **/cities**
3. **/tenders**
1. **/tenders**
2. **/tenders/year**

### **Endpoints**

#### **1. Listar Unidades Administrativas: `/units`**
#### **1. Consultar Licitações Mensais: `/tenders`**

- **Descrição:** Retorna uma lista de todas as unidades administrativas de Minas Gerais relacionadas à cultura.
- **URL:** `http://localhost:5000/units`
- **Descrição:** Retorna uma lista de licitações baseadas nos parâmetros de data inicial e final.
- **URL:** `http://localhost:5000/tenders?start=201501&end=201502`
- **Método:** `GET`
- **Parâmetros:** Nenhum

#### **2. Listar Cidades Disponíveis: `/cities`**

- **Descrição:** Retorna uma lista das cidades de Minas Gerais que estão disponíveis para consulta no banco de dados.
- **URL:** `http://localhost:5000/cities`
- **Método:** `GET`
- **Parâmetros:** Nenhum
- **Parâmetros:**
- `start`: Representa o início do período de consulta no formato `AAAAMM` (ano/mês). Por exemplo, `201501` corresponde a janeiro de 2015.
- `end`: Representa o fim do período de consulta no formato `AAAAMM`.

#### **3. Consultar Licitações: `/tenders`**
#### **2. Consultar Licitações Anuais: `/tenders/year`**

- **Descrição:** Retorna uma lista de licitações baseadas nos parâmetros de data e cidade.
- **URL:** `http://localhost:5000/tenders?start=2401&end=2402&city=1`
- **Descrição:** Retorna os valores totais empenhados, liquidados e pagos no ano informado no parâmetro "year".
- **URL:** `http://localhost:5000/tenders/year?year=2024`
- **Método:** `GET`
- **Parâmetros:**
- `start`: Representa o início do período de consulta no formato `AAMM` (ano/mês). Por exemplo, `2401` corresponde a janeiro de 2024.
- `end`: Representa o fim do período de consulta no formato `AAMM`.
- `city`: ID da cidade conforme cadastrado na tabela de cidades. Por exemplo, `city=1` corresponde a Juiz de Fora e `city=2` a Montes Claros.
- `year`: Representa o ano de consulta no formato `AAAA` (ano). Por exemplo, `year=2024` retornará o total de licitações empenhadas, liquidadas e pagas no ano de 2024.


### **Considerações Importantes**

- **Formato de Data:** No banco de dados, os anos são representados pelos dois últimos dígitos. Por exemplo, o ano 2024 é armazenado como `24`.
- **Porta:** A API está configurada para rodar na porta `5000`.

---

Siga este guia para consultar e explorar as licitações culturais de Minas Gerais. Caso tenha dúvidas ou precise de suporte adicional, entre em contato com o time de desenvolvimento.
19 changes: 19 additions & 0 deletions backend/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import globals from 'globals';

export default [
{
files: ["**/*.{js,jsx,ts,tsx}"],
languageOptions: {
ecmaVersion: 2021,
sourceType: "module",
globals: {
...globals.node,
...globals.es2021,
},
},
rules: {
"no-unused-vars": "warn",
"no-console": "off"
}
}
];
Loading

0 comments on commit 9593f5d

Please sign in to comment.