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

Refatora código e adiciona renderizador TSV #23

Merged
merged 47 commits into from
Jan 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
1d47251
Altera nome de variável de ambiente de MARIADB_ para STR_CONNECTION
rafaelpezzuto Jan 24, 2022
ce0c0d2
Adiciona arquivos em gitignore
rafaelpezzuto Jan 24, 2022
db629d1
Renomeia models para models.sql_automap
rafaelpezzuto Jan 24, 2022
0c258aa
Renomeia sql_declarative para models.sql_declarative
rafaelpezzuto Jan 24, 2022
2288d32
Move conteúdo de db_calls para values (e renomeia variáveis)
rafaelpezzuto Jan 24, 2022
d32c7c4
Cria módulo libs.db com conteúdo de antigo módulo database
rafaelpezzuto Jan 24, 2022
8ce6a85
Remove comparador de relatórios legado
rafaelpezzuto Jan 24, 2022
5059844
Adiciona arquivos __init__ em módulos lib e models
rafaelpezzuto Jan 24, 2022
9b38bb0
Remove método de teste não utilizado
rafaelpezzuto Jan 24, 2022
7be3c6a
Adiciona método para chamar procedure
rafaelpezzuto Jan 24, 2022
6f6a75a
Adiciona método para obter status
rafaelpezzuto Jan 24, 2022
c7d5a32
Adiciona método para obter alertas
rafaelpezzuto Jan 24, 2022
f7e66c5
Adiciona método para obter lista de tipos de relatórios disponíveis
rafaelpezzuto Jan 24, 2022
473875b
Adiciona método para obter membros
rafaelpezzuto Jan 24, 2022
d478683
Adiciona método para obter relatório principal com base em valor de r…
rafaelpezzuto Jan 24, 2022
1caed0a
Corrige definição de procedures
rafaelpezzuto Jan 24, 2022
1462396
Renomeia dicionário que mapeia acrônimo a nome de coleção
rafaelpezzuto Jan 24, 2022
d7685bb
Adiciona valores básicos requeridos e optativos em módulo values
rafaelpezzuto Jan 24, 2022
6118c4d
Adiciona expressões regulares para detecção de ISSN e data
rafaelpezzuto Jan 24, 2022
a367333
Cria módulo cleaner que corrige parâmetros de URL
rafaelpezzuto Jan 24, 2022
14fa7a0
Cria método que limpa parâmetro api
rafaelpezzuto Jan 24, 2022
de2c0f1
Cria método que limpa parâmetro collection_acronym
rafaelpezzuto Jan 24, 2022
d8d3780
Cria método que limpa parâmetro collection_name
rafaelpezzuto Jan 24, 2022
23bb55b
Cria método que limpa parâmetro granularity
rafaelpezzuto Jan 24, 2022
9fe06fe
Cria método geral para limpeza de todos os parâmetros
rafaelpezzuto Jan 24, 2022
1c2d4cf
Move para módulo cleaner o método que lida com datas
rafaelpezzuto Jan 24, 2022
509435a
Cria módulo validator que verifica se campos informados são válidos
rafaelpezzuto Jan 24, 2022
4dbf9d8
Adiciona método que verifica se ISSN é válido
rafaelpezzuto Jan 24, 2022
2476560
Adiciona método que verifica se data é válida
rafaelpezzuto Jan 24, 2022
249987c
Adiciona método que verifica se PID é válido
rafaelpezzuto Jan 24, 2022
fdd2077
Adiciona método que verifica se formato de data é válido
rafaelpezzuto Jan 24, 2022
88cc74f
Adiciona método geral para validar todos os parâmetros
rafaelpezzuto Jan 24, 2022
11e686a
Adiciona retorno de erro de formulário inválido
rafaelpezzuto Jan 24, 2022
14d3b9a
Adiciona retorno de erro de parâmetro fora de contexto
rafaelpezzuto Jan 24, 2022
096ddce
Refatora módulo utilitário (move alguns métodos para outros módulos e…
rafaelpezzuto Jan 24, 2022
bd7d47f
Adiciona renderizador TSV
rafaelpezzuto Jan 24, 2022
f2cead0
Adiciona em values campos básicos de renderizador TSV
rafaelpezzuto Jan 24, 2022
8954daa
Refatora adaptador JSON e cria método para decidir qual renderizador …
rafaelpezzuto Jan 24, 2022
a040e30
Cria método que decide qual relatório será renderizado em formato TSV
rafaelpezzuto Jan 24, 2022
1c4b51e
Cria método geral para criar cabeçalho de arquivo TSV
rafaelpezzuto Jan 24, 2022
650f74a
Cria método para gerar relatório cr_j1 em formato TSV
rafaelpezzuto Jan 24, 2022
b60deff
Cria método para gerar relatório ir_a1 em formato TSV
rafaelpezzuto Jan 24, 2022
2d409eb
Cria método para gerar relatório tr_j1 em formato TSV
rafaelpezzuto Jan 24, 2022
428936f
Refatora módulo views.py (remove, move e melhora código)
rafaelpezzuto Jan 24, 2022
d6f63a4
Adiciona adaptador para gerar relatório tr_j4 (api v1)
rafaelpezzuto Jan 24, 2022
206a36b
Flexibiliza exigência de campo "customer"
rafaelpezzuto Jan 24, 2022
23d67d4
Atualiza setup.py
rafaelpezzuto Jan 24, 2022
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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,5 @@ build
dist
*.egg-info
Pipfile
*.pyc
launch.json
13 changes: 10 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,19 @@ _Run_
docker run -d \
-p 6543:6543 \
--name scielo-sushi-api \
--env MARIADB_STRING_CONNECTION="mysql://user:pass@localhost:port/database" \
--env STR_CONNECTION="mysql://user:pass@localhost:port/database" \
--env APPLICATION_URL="http://127.0.0.1:6543" \
scieloorg/scielo-sushi-api \
pserve /app/config.ini
```

_Environment variables_
| Variable | Description |
|-------- | ----------- |
| `APPLICATION_URL` | Application address |
| `STR_CONNECTION` | Database string connection |


## Routes

URL | Description |
Expand All @@ -32,9 +39,9 @@ URL | Description |


### Parameters (for `tr` reports only)
| Name | Description |
| Name | Description |
|------|-------------|
| `begin_date` | Usage start date in the form o YYYY-MM or YYYY-MM-DD. |
| `end_date` | Usage end date in the form o YYYY-MM or YYYY-MM-DD. |
| `granularity` | Optional Report Attribute. Include this parameter to allow usage to be retrieved with a granularity of 'month' (default if omitted) or 'totals'. |
| `issn` | ISSN of a Journal. |
| `issn` | ISSN of a Journal. |
6 changes: 4 additions & 2 deletions api/__init__.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
from pyramid.config import Configurator
from sqlalchemy import engine_from_config
from os import environ
from .models import DBSession, Base
from api.models.sql_automap import DBSession, Base


def main(global_config, **settings):
sqlalchemy_url_value = environ.get('MARIADB_STRING_CONNECTION', 'mysql://root:[email protected]:3306/matomo')
sqlalchemy_url_value = environ.get('STR_CONNECTION', 'mysql://root:[email protected]:3306/matomo')
settings.update({'sqlalchemy.url': sqlalchemy_url_value})

application_url_value = environ.get('APPLICATION_URL', 'http://127.0.0.1:6543')
Expand All @@ -17,6 +17,8 @@ def main(global_config, **settings):
DBSession.configure(bind=engine)
Base.metadata.bind = engine

config.add_renderer('tsv', 'api.renderers.TSVRenderer')

config.add_route('home', '/')
config.add_route('status', '/status')
config.add_route('members', '/members')
Expand Down
Loading