Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Toques Finais: Integração da Developer para Main - Última Entrega do Projeto #140

Merged
merged 72 commits into from
Sep 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
32f5c47
doc: adicionando o novo getting started na HOME, adaptado ao docker
Gxaite Aug 21, 2024
d0532d4
chore: novo raspador para busca mensal
manuvaladares Aug 22, 2024
bee0a5a
fix: erro para selecionar o primeiro dia do mês
manuvaladares Aug 23, 2024
e4f72bf
fix: erro para selecionar a secretaria depois do primeiro loop
manuvaladares Aug 24, 2024
f0e732f
fix: função para selecionar mês corretamente
manuvaladares Aug 24, 2024
0d19bf5
fix: local e nome da pasta com os json correto
manuvaladares Aug 24, 2024
3c70738
chore: criação do dicionário para relacionar o nome do mês com o núme…
manuvaladares Aug 24, 2024
29a3f3f
chore: ultimas alterações para reparar erros, json pronto do raspador…
manuvaladares Aug 25, 2024
8fb1aa1
feat: Adicionando endpoints de licitações anuais e mensais
isaacbatista26 Aug 27, 2024
f1d2d0d
feat: Adicionando controlador de licitações mensais
isaacbatista26 Aug 27, 2024
b140701
feat: Adicionando controlador de licitações anuais
isaacbatista26 Aug 27, 2024
23ce928
feat: Adicionando rota de licitações mensais
isaacbatista26 Aug 27, 2024
7ee97c2
feat: Adicionando rota de licitações anuais
isaacbatista26 Aug 27, 2024
bf986bb
feat: Adicionando serviço de licitações mensais
isaacbatista26 Aug 27, 2024
b285746
feat: Adicionando serviço de licitações anuais
isaacbatista26 Aug 27, 2024
b59cb7f
feat: Adicionando script que insere licitações mensais no banco de dados
isaacbatista26 Aug 27, 2024
2caa06e
feat: Adicionando script que insere licitações anuais no banco de dados
isaacbatista26 Aug 27, 2024
12deb4d
fix: Removendo console.log utilizados no momento de debug
isaacbatista26 Aug 27, 2024
312ecfa
docs: Adicionando documentação referente aos novos endpoints da api
isaacbatista26 Aug 27, 2024
5a91da9
feat: adicionando componente Mensagem para a Home
devMarcosVM Aug 27, 2024
11d17b4
Merge pull request #133 from unb-mds/apiEstadual
Gxaite Aug 28, 2024
6fc367d
feat: adiciona raspador para buscar mês específico
manuvaladares Aug 29, 2024
ea86d3a
Merge branch 'developer' of github.com:unb-mds/2024-1-MinasDeCultura …
manuvaladares Aug 29, 2024
fd99d0e
feat: Adicionando o novo modelo de grafico
Mateushqms Aug 29, 2024
cf877ad
feat: adicionando requisição à API para obter despesas anuais
devMarcosVM Aug 29, 2024
051747e
chore: Adicionando acessibilidade ao componente mensagem e diminuindo…
devMarcosVM Aug 29, 2024
75f0343
feat: adicionando gráfico de linha para despesas de 2002 a 2023 com d…
devMarcosVM Aug 29, 2024
dfba35e
fix: arrumando o formato em reais dos números do gráfico, erro de ren…
devMarcosVM Aug 29, 2024
cd4b140
chore: responsividade do gráfico e adicionando legenda explicativa
devMarcosVM Aug 30, 2024
f5184be
fix: arrumando a cor do gráfico para corresponder com a legenda
devMarcosVM Aug 30, 2024
d4f96a7
chore: deixando a guia home acessível e atualizando os seus componentes
devMarcosVM Aug 30, 2024
dc3f821
style: alterando o background e text-color de uma guia da header
devMarcosVM Aug 30, 2024
2079cad
fix: arrumado bug que não renderizava a guia corretamente com a ferra…
devMarcosVM Aug 30, 2024
81aa56a
style: responsividade dos componentes da Home
devMarcosVM Aug 30, 2024
c93e301
build: automacao dos testes do backend
WillxBernardo Aug 30, 2024
382d85e
fix: Arrumando o script python para buscar informações específicas no…
Gxaite Aug 30, 2024
d8b48d5
bugfix: Adicionando o lint nas dependencias do backend
WillxBernardo Aug 30, 2024
877b9ed
fix: Corrigindo deleção acidental de arquivo selenium_portal_transpar…
Gxaite Aug 30, 2024
d47d0fc
build: Adicionando o lint nas devdependencies no backend
WillxBernardo Aug 30, 2024
3f25106
fix: Ajuste na logica do backend que fazia com que nao pegasse todos …
Mateushqms Aug 31, 2024
dae0ab8
fix: Ajustando o Dashboard para puxar os dados da API pelo arquivo da…
Mateushqms Sep 1, 2024
61f5cd8
delete: exclundo os exports da api antiga
Mateushqms Sep 1, 2024
015e071
refactor: Substituicao do componente Dashboard para o componente Filtro
Mateushqms Sep 1, 2024
bc46ce7
test: Ajuste nos testes do componente Filtro
Mateushqms Sep 1, 2024
ca10707
delete: Remocao do componente Dashboard
Mateushqms Sep 1, 2024
73e5d52
ci: Criacao do workflow para preenchimento do banco de dados da API
WillxBernardo Sep 1, 2024
a6f2ff9
ci: Adicionando instalacao do node e dependencias no workflow para ba…
WillxBernardo Sep 1, 2024
dd70e03
chore: mudando texto do guia sobre e trabalhando responsividade
devMarcosVM Sep 1, 2024
cc61b8e
fix: atualizando endereço da requisição do gráfico de anos
devMarcosVM Sep 1, 2024
a3eabe2
Merge remote-tracking branch 'refs/remotes/origin/mudancaHome' into m…
devMarcosVM Sep 1, 2024
f6998b7
remove: função fetch YearlyTender
devMarcosVM Sep 1, 2024
a85f2f3
ci: Atualizando workflow para execucao as 19 hrs
WillxBernardo Sep 1, 2024
c41eb37
feat: adicionando opções de acessibilidade no Filtro e refatorando gr…
devMarcosVM Sep 1, 2024
6df7fcc
test: Ajuste nos testes do Filtro
Mateushqms Sep 1, 2024
e0c6470
test: Ajuste no teste do componente informacoes
Mateushqms Sep 1, 2024
fc64f2a
test: Ajuste no teste do componente Pilares
Mateushqms Sep 1, 2024
644e4fc
ci: testando funcionamento do workflow do backend
WillxBernardo Sep 2, 2024
ba15b53
style: arrumando a sensibilidade do componente busca
devMarcosVM Sep 2, 2024
66ffbb0
ci: testando funcionamento do workflow do backend
WillxBernardo Sep 2, 2024
400cae4
ci: Configurando workflow para todo dia primeiro
WillxBernardo Sep 2, 2024
a2e8c4e
feat: adicionando HelpCircle explicativo
devMarcosVM Sep 2, 2024
4e188e9
fix: arrumando link do componente Integrantes
devMarcosVM Sep 2, 2024
8d15cc7
chore: adicionando link ao site da UnB
devMarcosVM Sep 2, 2024
6e5edaa
docs: atualizando a documentação do teste Filtro
devMarcosVM Sep 2, 2024
1814e10
Merge pull request #139 from unb-mds/automatizaTesteBackend
Gxaite Sep 2, 2024
5f551fe
Merge branch 'main' into developer
Gxaite Sep 2, 2024
b8573d1
fix: arrumando as depencencias e configurações básicas do lint
Gxaite Sep 2, 2024
92cd293
fix: arrumando o package.json para o eslint funcionar corretamente
Gxaite Sep 2, 2024
bc6ecea
fix: resolvendo o problema da automação do worflow no eslint.config
Gxaite Sep 2, 2024
2f64579
bugfix: Acessando API do backend para gerar graficos
WillxBernardo Sep 2, 2024
2cd3af4
fix: resolução do lint, agora ele está rodando corretamente e gerando…
Gxaite Sep 2, 2024
b26652e
Merge pull request #141 from unb-mds/mudancaHome
Gxaite Sep 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading