Skip to content

Commit

Permalink
adiciona nova classificação de transação
Browse files Browse the repository at this point in the history
  • Loading branch information
pixuimpou committed Jan 10, 2025
1 parent 9a1992f commit f77ed04
Show file tree
Hide file tree
Showing 11 changed files with 248 additions and 421 deletions.
Original file line number Diff line number Diff line change
@@ -1,25 +1,21 @@
{{
config(
materialized='incremental',
partition_by={
"field":"data",
"data_type": "date",
"granularity":"day"
},
incremental_strategy="insert_overwrite"
)
config(
materialized="incremental",
partition_by={"field": "data", "data_type": "date", "granularity": "day"},
incremental_strategy="insert_overwrite",
)
}}

/*
consulta as partições a serem atualizadas com base nas transações capturadas entre date_range_start e date_range_end
e as integrações capturadas entre date_range_start e date_range_end
*/
{% set transacao_table = ref('transacao') %}
{% set transacao_riocard_table = ref('transacao_riocard') %}
{% set transacao_table = ref("transacao") %}
{% set transacao_riocard_table = ref("transacao_riocard") %}
{% if execute %}
{% if is_incremental() %}
-- Transações Jaé
{% set partitions_query %}
{% if is_incremental() %}
-- Transações Jaé
{% set partitions_query %}
SELECT
CONCAT("'", PARSE_DATE("%Y%m%d", partition_id), "'") AS data
FROM
Expand All @@ -42,40 +38,24 @@ e as integrações capturadas entre date_range_start e date_range_end
AND partition_id != "__NULL__"
AND DATETIME(last_modified_time, "America/Sao_Paulo") BETWEEN DATETIME("{{var('date_range_start')}}") AND DATETIME("{{var('date_range_end')}}")

{% endset %}
{% endset %}

{% set partitions = run_query(partitions_query) %}
{% set partitions = run_query(partitions_query) %}

{% set partition_list = partitions.columns[0].values() %}
{% endif %}
{% set partition_list = partitions.columns[0].values() %}
{% endif %}
{% endif %}

SELECT
* EXCEPT(id_transacao, geo_point_transacao),
COUNT(id_transacao) AS quantidade_passageiros,
'{{ var("version") }}' AS versao
FROM
{{ ref("aux_passageiros_hora") }}
WHERE
{% if is_incremental() %}
{% if partition_list|length > 0 %}
data IN ({{ partition_list|join(', ') }})
{% else %}
data = "2000-01-01"
{% endif %}
{% else %}
data >= "2023-07-19"
{% endif %}
GROUP BY
data,
hora,
modo,
consorcio,
id_servico_jae,
servico_jae,
descricao_servico_jae,
sentido,
tipo_transacao_smtr,
tipo_transacao_detalhe_smtr,
tipo_gratuidade,
tipo_pagamento
select
* except (id_transacao, geo_point_transacao),
count(id_transacao) as quantidade_passageiros,
'{{ var("version") }}' as versao
from {{ ref("aux_passageiros_hora") }}
where
{% if is_incremental() %}
{% if partition_list | length > 0 %} data in ({{ partition_list | join(", ") }})
{% else %} data = "2000-01-01"
{% endif %}
{% else %} data >= "2023-07-19"
{% endif %}
group by all
Original file line number Diff line number Diff line change
@@ -1,25 +1,21 @@
{{
config(
materialized='incremental',
partition_by={
"field":"data",
"data_type": "date",
"granularity":"day"
},
incremental_strategy="insert_overwrite"
)
config(
materialized="incremental",
partition_by={"field": "data", "data_type": "date", "granularity": "day"},
incremental_strategy="insert_overwrite",
)
}}

/*
consulta as partições a serem atualizadas com base nas transações capturadas entre date_range_start e date_range_end
e as integrações capturadas entre date_range_start e date_range_end
*/
{% set transacao_table = ref('transacao') %}
{% set transacao_riocard_table = ref('transacao_riocard') %}
{% set transacao_table = ref("transacao") %}
{% set transacao_riocard_table = ref("transacao_riocard") %}
{% if execute %}
{% if is_incremental() %}
-- Transações Jaé
{% set partitions_query %}
{% if is_incremental() %}
-- Transações Jaé
{% set partitions_query %}
SELECT
CONCAT("'", PARSE_DATE("%Y%m%d", partition_id), "'") AS data
FROM
Expand All @@ -42,46 +38,26 @@ e as integrações capturadas entre date_range_start e date_range_end
AND partition_id != "__NULL__"
AND DATETIME(last_modified_time, "America/Sao_Paulo") BETWEEN DATETIME("{{var('date_range_start')}}") AND DATETIME("{{var('date_range_end')}}")

{% endset %}
{% endset %}

{% set partitions = run_query(partitions_query) %}
{% set partitions = run_query(partitions_query) %}

{% set partition_list = partitions.columns[0].values() %}
{% endif %}
{% set partition_list = partitions.columns[0].values() %}
{% endif %}
{% endif %}

SELECT
p.* EXCEPT(id_transacao, geo_point_transacao),
geo.tile_id,
COUNT(id_transacao) AS quantidade_passageiros,
'{{ var("version") }}' AS versao
FROM
{{ ref("aux_passageiros_hora") }} p
JOIN
{{ ref("aux_h3_res9") }} geo
ON
ST_CONTAINS(geo.geometry, geo_point_transacao)
WHERE
{% if is_incremental() %}
{% if partition_list|length > 0 %}
data IN ({{ partition_list|join(', ') }})
{% else %}
data = "2000-01-01"
{% endif %}
{% else %}
data >= "2023-07-19"
{% endif %}
GROUP BY
data,
hora,
modo,
consorcio,
id_servico_jae,
servico_jae,
descricao_servico_jae,
sentido,
tipo_transacao_smtr,
tipo_transacao_detalhe_smtr,
tipo_gratuidade,
tipo_pagamento,
tile_id
select
p.* except (id_transacao, geo_point_transacao),
geo.tile_id,
count(id_transacao) as quantidade_passageiros,
'{{ var("version") }}' as versao
from {{ ref("aux_passageiros_hora") }} p
join {{ ref("aux_h3_res9") }} geo on st_contains(geo.geometry, geo_point_transacao)
where
{% if is_incremental() %}
{% if partition_list | length > 0 %} data in ({{ partition_list | join(", ") }})
{% else %} data = "2000-01-01"
{% endif %}
{% else %} data >= "2023-07-19"
{% endif %}
group by all
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,11 @@ select
descricao_servico_jae,
sentido,
id_transacao,
tipo_transacao_smtr,
ifnull(
case
when tipo_transacao_smtr = "Gratuidade"
then tipo_gratuidade
when tipo_transacao_smtr = "Integração"
then "Integração"
when tipo_transacao_smtr = "Transferência"
then "Transferência"
else tipo_pagamento
end,
"Não Identificado"
) as tipo_transacao_detalhe_smtr,
tipo_gratuidade,
tipo_pagamento,
cadastro_cliente,
produto,
tipo_transacao,
tipo_usuario,
meio_pagamento,
geo_point_transacao
from {{ ref("transacao") }}
where
Expand All @@ -51,12 +41,14 @@ select
descricao_servico_jae,
sentido,
id_transacao,
"RioCard" as tipo_transacao_smtr,
"RioCard" as tipo_transacao_detalhe_smtr,
null as tipo_gratuidade,
"RioCard" as tipo_pagamento,
"Não Cadastrado" as cadastro_cliente,
"RioCard" as produto,
"RioCard" as tipo_transacao,
"RioCard" as tipo_usuario,
"RioCard" as meio_pagamento,
st_geogpoint(longitude, latitude) as geo_point_transacao
from {{ ref("transacao_riocard") }}
{# from {{ ref("transacao_riocard") }} #}
from `rj-smtr.br_rj_riodejaneiro_bilhetagem.transacao_riocard`
where
(id_servico_jae not in ("140", "142") or id_servico_jae is null)
and (id_operadora != "2" or id_operadora is null)
Expand Down
Loading

0 comments on commit f77ed04

Please sign in to comment.