Skip to content

Commit

Permalink
Merge pull request #340 from basedosdados/staging/br_camara_dados_abe…
Browse files Browse the repository at this point in the history
…rtos

[dbt] br_camara_dados_abertos
  • Loading branch information
gabrielle-carv authored Oct 24, 2023
2 parents 4f7df1d + 922c3d3 commit b97053c
Show file tree
Hide file tree
Showing 7 changed files with 277 additions and 0 deletions.
3 changes: 3 additions & 0 deletions dbt_project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,9 @@ models:
br_me_caged:
+materialized: table
+schema: br_me_caged
br_camara_dados_abertos:
+materialized: table
+schema: br_camara_dados_abertos
br_me_cnpj:
+materialized: table
+schema: br_me_cnpj
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{{
config(
alias = 'votacao_microdados',
schema='br_camara_dados_abertos',
materialized='table',
partition_by={
"field": "ano",
"data_type": "int64",
"range": {
"start": 1935,
"end": 2022,
"interval": 1}
},
)
}}

SELECT
SAFE_CAST(ano AS INT64) ano,
SAFE_CAST(id_votacao AS STRING) id_votacao,
SAFE_CAST(data AS DATE) data,
SAFE_CAST(horario AS TIME) horario,
SAFE_CAST(id_orgao AS STRING) id_orgao,
SAFE_CAST(sigla_orgao AS STRING) sigla_orgao,
SAFE_CAST(id_evento AS STRING) id_evento,
SAFE_CAST(aprovacao AS INT64) aprovacao,
SAFE_CAST(voto_sim AS INT64) voto_sim,
SAFE_CAST(voto_nao AS INT64) voto_nao,
SAFE_CAST(voto_outro AS INT64) voto_outro,
SAFE_CAST(descricao AS STRING) descricao,
SAFE_CAST(data_hora_ultima_votacao AS DATETIME) data_hora_ultima_votacao,
SAFE_CAST(descricao_ultima_votacao AS STRING) descricao_ultima_votacao,
SAFE_CAST(data_hora_ultima_proposicao AS DATETIME) data_hora_ultima_proposicao,
SAFE_CAST(descricao_ultima_proposicao AS STRING) descricao_ultima_proposicao,
SAFE_CAST(id_ultima_proposicao AS STRING) id_ultima_proposicao,
FROM basedosdados-dev.br_camara_dados_abertos_staging.votacao_microdados AS t
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{{
config(
alias = 'votacao_objeto',
schema='br_camara_dados_abertos',
materialized='table',
partition_by={
"field": "ano",
"data_type": "int64",
"range": {
"start": 1935,
"end": 2022,
"interval": 1}
},
)
}}
SELECT
SAFE_CAST(ano AS INT64) ano,
SAFE_CAST(id_votacao AS STRING) id_votacao,
SAFE_CAST(data AS DATE) data,
SAFE_CAST(descricao AS STRING) descricao,
SAFE_CAST(id_proposicao AS STRING) id_proposicao,
SAFE_CAST(ano_proposicao AS INT64) ano_proposicao,
SAFE_CAST(ementa AS STRING) ementa,
SAFE_CAST(codigo_tipo AS STRING) codigo_tipo,
SAFE_CAST(sigla_tipo AS STRING) sigla_tipo,
SAFE_CAST(numero AS STRING) numero,
SAFE_CAST(titulo AS STRING) titulo
FROM basedosdados-dev.br_camara_dados_abertos_staging.votacao_objeto AS t
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{{
config(
alias = 'votacao_orientacao_bancada',
schema='br_camara_dados_abertos',
materialized='table',
partition_by={
"field": "ano",
"data_type": "int64",
"range": {
"start": 2003,
"end": 2022,
"interval": 1}
},
)
}}
SELECT
SAFE_CAST(ano AS INT64) ano,
SAFE_CAST(id_votacao AS STRING) id_votacao,
SAFE_CAST(sigla_orgao AS STRING) sigla_orgao,
SAFE_CAST(descricao AS STRING) descricao,
SAFE_CAST(id_proposicao AS STRING) id_proposicao,
SAFE_CAST(orientacao AS STRING) orientacao,
FROM basedosdados-dev.br_camara_dados_abertos_staging.votacao_orientacao_bancada AS t
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{{
config(
alias = 'votacao_proposicao_afetada',
schema='br_camara_dados_abertos',
materialized='table',
partition_by={
"field": "ano",
"data_type": "int64",
"range": {
"start": 2003,
"end": 2022,
"interval": 1}
},
)
}}
SELECT
SAFE_CAST(ano AS INT64) ano,
SAFE_CAST(id_votacao AS STRING) id_votacao,
SAFE_CAST(data AS DATE) data,
SAFE_CAST(descricao AS STRING) descricao,
SAFE_CAST(id_proposicao AS STRING) id_proposicao,
SAFE_CAST(ano_proposicao AS INT64) ano_proposicao,
SAFE_CAST(titulo AS STRING) titulo,
SAFE_CAST(ementa AS STRING) ementa,
SAFE_CAST(codigo_tipo AS STRING) codigo_tipo,
SAFE_CAST(sigla_tipo AS STRING) sigla_tipo,
SAFE_CAST(numero AS STRING) numero,
FROM basedosdados-dev.br_camara_dados_abertos_staging.votacao_proposicao_afetada AS t
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{{
config(
alias = 'voto_parlamentar',
schema='br_camara_dados_abertos',
materialized='table',
partition_by={
"field": "ano",
"data_type": "int64",
"range": {
"start": 2003,
"end": 2022,
"interval": 1}
},
)
}}
SELECT
SAFE_CAST(ano AS INT64) ano,
SAFE_CAST(id_votacao AS STRING) id_votacao,
SAFE_CAST(data_hora AS DATETIME) data_hora,
SAFE_CAST(voto AS STRING) voto,
SAFE_CAST(id_deputado AS STRING) id_deputado,
SAFE_CAST(nome AS STRING) nome,
SAFE_CAST(sigla_partido AS STRING) sigla_partido,
SAFE_CAST(sigla_uf AS STRING) sigla_uf,
SAFE_CAST(id_legislatura AS STRING) id_legislatura,
FROM basedosdados-dev.br_camara_dados_abertos_staging.voto_parlamentar AS t
134 changes: 134 additions & 0 deletions models/br_camara_dados_abertos/schema.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
version: 2

models:
- name: br_camara_dados_abertos__votacao_microdados
description: Identificadores e informações sobre as votações das comissões e do Plenário da Câmara, por ano em que tenham ocorrido.
columns:
- name: ano
description: Ano
- name: id_votacao
description: ID da votação
- name: data
description: Data
- name: horario
description: Horário
- name: id_orgao
description: ID do órgão
- name: sigla_orgao
description: Sigla do órgão
- name: id_evento
description: ID do evento
- name: aprovacao
description: Indicador se ocorreu a aprovação
- name: voto_sim
description: Quantidade de votos - Sim
- name: voto_nao
description: Quantidade de votos - Não
- name: voto_outro
description: Quantidade de votos - Outros
- name: descricao
description: Descrição sobre a votação
- name: data_hora_ultima_votacao
description: Data e hora da última abertura da votação
- name: descricao_ultima_votacao
description: Descrição da última abertura da votação
- name: data_hora_ultima_proposicao
description: Data e hora da última apresentação da proposição
- name: descricao_ultima_proposicao
description: Descrição da última apresentação da proposição
- name: id_ultima_proposicao
description: ID da última proposição apresentada

models:
- name: br_camara_dados_abertos__votacao_objeto
description: Cada votação é uma decisão sobre uma e somente uma Proposição, que no Dados Abertos é o chamado objeto da votação. Muitas vezes, porém, a proposição que realmente é votada não é identificada, e em alguns casos não é nem mesmo cadastrada.
columns:
- name: ano
description: Ano
- name: id_votacao
description: ID da votação
- name: data
description: Data
- name: descricao
description: Descrição sobre a votação
- name: id_proposicao
description: ID proposição
- name: ano_proposicao
description: Ano da proposição
- name: ementa
description: Ementa da proposição
- name: codigo_tipo
description: Código do tipo da proposição
- name: sigla_tipo
description: Sigla do tipo da proposição
- name: numero
description: Número da proposição
- name: titulo
description: Título da proposição

models:
- name: br_camara_dados_abertos__voto_parlamentar
description: Separados por ano de ocorrência das votações, estes arquivos têm, em cada linha/registro, identificadores de uma votação, os identificadores básicos de cada Deputado, o voto (ou posicionamento de obstrução) registrado pelo parlamentar e o horário de registro do voto.
columns:
- name: ano
description: Ano
- name: id_votacao
description: ID da votação
- name: data_hora
description: Data e hora
- name: voto
description: Voto
- name: id_deputado
description: ID do deputado
- name: nome
description: Nome do deputado
- name: sigla_partido
description: Sigla do partido
- name: sigla_uf
description: Sigla da Unidade da Federação
- name: id_legislatura
description: ID da legislatura

models:
- name: br_camara_dados_abertos__votacao_orientacao_bancada
description: Para votações de qualquer tipo, os Partidos e Blocos, bem como as lideranças de Governo, Minoria, Maioria e Oposição, podem recomendar a seus Deputados que votem de um jeito ou de outro, ou podem "liberar a bancada".
columns:
- name: ano
description: Ano
- name: id_votacao
description: ID da votação
- name: sigla_orgao
description: Sigla do órgão
- name: descricao
description: Descrição sobre a votação
- name: id_proposicao
description: ID proposição
- name: orientacao
description: Orientação da bancada

models:
- name: br_camara_dados_abertos__votacao_proposicao_afetada
description: Quando alguém fala algo como "a votação do PL 1234", o significado no Dados Abertos é "as várias votações de proposições relacionadas ao PL 1234". O tal PL 1234 é, portanto, a proposição afetada por essas votações.
columns:
- name: ano
description: Ano
- name: id_votacao
description: ID da votação
- name: data
description: Data
- name: descricao
description: Descrição sobre a votação
- name: id_proposicao
description: ID proposição
- name: ano_proposicao
description: Ano da proposição
- name: titulo
description: Título da proposição
- name: ementa
description: Ementa da proposição
- name: codigo_tipo
description: Código do tipo da proposição
- name: sigla_tipo
description: Sigla do tipo da proposição
- name: numero
description: Número da proposição

0 comments on commit b97053c

Please sign in to comment.