From adc8d473311a2485594b1742928286ea8489c007 Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Tue, 5 Nov 2024 11:36:43 -0300 Subject: [PATCH 1/9] add DATA_SUBSIDIO_V10_INICIO --- queries/dbt_project.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/queries/dbt_project.yml b/queries/dbt_project.yml index bd594b10..1958b0c7 100644 --- a/queries/dbt_project.yml +++ b/queries/dbt_project.yml @@ -123,6 +123,8 @@ vars: DATA_SUBSIDIO_V8_INICIO: "2024-07-20" # Feature Apuração por faixa horária DATA_SUBSIDIO_V9_INICIO: "2024-08-16" + # Feature Apuração por novas faixas horárias (RESOLUÇÃO SMTR 3777/2024) + DATA_SUBSIDIO_V10_INICIO: "2024-11-01" # valor_subsidio: "`rj-smtr-dev.projeto_subsidio_sppo.valor_subsidio`" # Recursos # From 969c003c50def50c8e6edd964daf1ac1baf6d73f Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Tue, 5 Nov 2024 11:37:26 -0300 Subject: [PATCH 2/9] add regras resolucao 3777/2024 --- .../viagens_remuneradas.sql | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql index ac6ec8d2..43ade7ba 100644 --- a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql +++ b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql @@ -162,6 +162,23 @@ WITH SELECT v.* EXCEPT(rn, datetime_partida, viagens_planejadas, viagens_planejadas_ida_volta, km_planejada, tipo_dia, consorcio, faixa_horaria_inicio, faixa_horaria_fim), CASE + WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") + AND v.tipo_dia = "Dia Útil" + AND viagens_planejadas > 5 + AND pof > 110 + AND rn > viagens_planejadas_ida_volta*1.1 + THEN FALSE + WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") + AND v.tipo_dia = "Dia Útil" + AND viagens_planejadas <= 5 + AND pof > 200 + AND rn > viagens_planejadas_ida_volta*2 + THEN FALSE + WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") + AND v.tipo_dia != "Dia Útil" + AND pof > 120 + AND rn > viagens_planejadas_ida_volta*1.2 + THEN FALSE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V3A_INICIO") }}") AND v.tipo_dia = "Dia Útil" AND viagens_planejadas > 10 From ba380954a80929b94041ff403c42b73cf0576034 Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Tue, 5 Nov 2024 11:40:37 -0300 Subject: [PATCH 3/9] registra flow --- pipelines/migration/projeto_subsidio_sppo/flows.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipelines/migration/projeto_subsidio_sppo/flows.py b/pipelines/migration/projeto_subsidio_sppo/flows.py index a6139c66..7b07ca57 100644 --- a/pipelines/migration/projeto_subsidio_sppo/flows.py +++ b/pipelines/migration/projeto_subsidio_sppo/flows.py @@ -3,7 +3,7 @@ """ Flows for projeto_subsidio_sppo -DBT: 2024-10-24 +DBT: 2024-11-05 """ from prefect import Parameter, case, task From 8393f7ee65bb3e6f00d4f6371043ad470c88ad5c Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Tue, 5 Nov 2024 11:40:58 -0300 Subject: [PATCH 4/9] add changelog --- queries/models/dashboard_subsidio_sppo/CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md index 8ed584ab..0cbdeaa0 100644 --- a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md +++ b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog - dashboard_subsidio_sppo +## [7.0.6] - 2024-11-05 + +### Alterado + +- Altera regras do modelo `viagens_remuneradas` conforme Resolução N° 3777/2024 (https://github.com/prefeitura-rio/pipelines_rj_smtr/pull/300) + ## [7.0.5] - 2024-10-16 ### Corrigido From 8426414e7b998421063b2bbd3376e2018a2f893b Mon Sep 17 00:00:00 2001 From: Rodrigo Cunha <66736583+eng-rodrigocunha@users.noreply.github.com> Date: Tue, 5 Nov 2024 14:18:01 -0300 Subject: [PATCH 5/9] Update queries/models/dashboard_subsidio_sppo/CHANGELOG.md --- queries/models/dashboard_subsidio_sppo/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md index 0cbdeaa0..0abd3061 100644 --- a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md +++ b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md @@ -4,7 +4,7 @@ ### Alterado -- Altera regras do modelo `viagens_remuneradas` conforme Resolução N° 3777/2024 (https://github.com/prefeitura-rio/pipelines_rj_smtr/pull/300) +- Altera regras do modelo `viagens_remuneradas` conforme Resolução SMTR N° 3777/2024 (https://github.com/prefeitura-rio/pipelines_rj_smtr/pull/300) ## [7.0.5] - 2024-10-16 From b8310521d2c63857a2b0b8cfd1ae0889efed9cf0 Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Mon, 25 Nov 2024 10:51:41 -0300 Subject: [PATCH 6/9] ajuste nas regras --- queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql | 2 ++ 1 file changed, 2 insertions(+) diff --git a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql index 43ade7ba..cdbcfe13 100644 --- a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql +++ b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql @@ -165,6 +165,7 @@ SELECT WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia = "Dia Útil" AND viagens_planejadas > 5 + AND viagens_planejadas < 10 AND pof > 110 AND rn > viagens_planejadas_ida_volta*1.1 THEN FALSE @@ -176,6 +177,7 @@ SELECT THEN FALSE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia != "Dia Útil" + AND viagens_planejadas < 5 AND pof > 120 AND rn > viagens_planejadas_ida_volta*1.2 THEN FALSE From 22204a9f7dcb12d765f46d3b308e9f6fe95285bd Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Mon, 25 Nov 2024 17:46:36 -0300 Subject: [PATCH 7/9] corrige regras, add indicador_circular, versao e datetime_ultima_atualizacao --- .../viagens_remuneradas.sql | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql index cdbcfe13..fd1e6864 100644 --- a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql +++ b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql @@ -26,6 +26,7 @@ WITH faixa_horaria_fim, partidas_total_planejada, distancia_total_planejada AS km_planejada, + IF(sentido = "C", TRUE, FALSE) AS indicador_circular FROM {{ ref("viagem_planejada") }} -- rj-smtr.projeto_subsidio_sppo.viagem_planejada @@ -75,7 +76,8 @@ WITH p.faixa_horaria_fim, v.viagens_planejadas, p.km_planejada, - IF(p.data >= DATE("{{ var("DATA_SUBSIDIO_V9_INICIO") }}"), p.partidas_total_planejada, v.partidas_ida + v.partidas_volta) AS viagens_planejadas_ida_volta + IF(p.data >= DATE("{{ var("DATA_SUBSIDIO_V9_INICIO") }}"), p.partidas_total_planejada, v.partidas_ida + v.partidas_volta) AS viagens_planejadas_ida_volta, + p.indicador_circular FROM planejado AS p LEFT JOIN @@ -164,8 +166,14 @@ SELECT CASE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia = "Dia Útil" - AND viagens_planejadas > 5 AND viagens_planejadas < 10 + AND viagens_planejadas > 5 + AND pof > 100 + AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 2, 1)) + THEN FALSE + WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") + AND v.tipo_dia = "Dia Útil" + AND viagens_planejadas >= 10 AND pof > 110 AND rn > viagens_planejadas_ida_volta*1.1 THEN FALSE @@ -178,6 +186,12 @@ SELECT WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia != "Dia Útil" AND viagens_planejadas < 5 + AND pof > 100 + AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 2, 1)) + THEN FALSE + WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") + AND v.tipo_dia != "Dia Útil" + AND viagens_planejadas >= 5 AND pof > 120 AND rn > viagens_planejadas_ida_volta*1.2 THEN FALSE @@ -203,7 +217,9 @@ SELECT THEN NULL ELSE TRUE - END AS indicador_viagem_dentro_limite + END AS indicador_viagem_dentro_limite, + '{{ var("version") }}' AS versao, + CURRENT_DATETIME("America/Sao_Paulo") as datetime_ultima_atualizacao FROM ( SELECT v.*, From fabad291f36c591c69b7731b918510ff2afe46b2 Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Mon, 25 Nov 2024 18:04:10 -0300 Subject: [PATCH 8/9] altera changelog e corrige logica circular --- queries/models/dashboard_subsidio_sppo/CHANGELOG.md | 2 +- .../models/dashboard_subsidio_sppo/viagens_remuneradas.sql | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md index 0abd3061..3a279bd9 100644 --- a/queries/models/dashboard_subsidio_sppo/CHANGELOG.md +++ b/queries/models/dashboard_subsidio_sppo/CHANGELOG.md @@ -4,7 +4,7 @@ ### Alterado -- Altera regras do modelo `viagens_remuneradas` conforme Resolução SMTR N° 3777/2024 (https://github.com/prefeitura-rio/pipelines_rj_smtr/pull/300) +- Altera regras do modelo `viagens_remuneradas` conforme Resolução SMTR N° 3777/2024 e MTR-MEM-2024/02465 (https://github.com/prefeitura-rio/pipelines_rj_smtr/pull/300) ## [7.0.5] - 2024-10-16 diff --git a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql index fd1e6864..80057f92 100644 --- a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql +++ b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql @@ -169,7 +169,7 @@ SELECT AND viagens_planejadas < 10 AND viagens_planejadas > 5 AND pof > 100 - AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 2, 1)) + AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 1, 2)) THEN FALSE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia = "Dia Útil" @@ -187,7 +187,7 @@ SELECT AND v.tipo_dia != "Dia Útil" AND viagens_planejadas < 5 AND pof > 100 - AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 2, 1)) + AND rn > (viagens_planejadas_ida_volta + IF(indicador_circular, 1, 2)) THEN FALSE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia != "Dia Útil" From 1352f9f83b0b96a166152a5cd790be967b8ad41f Mon Sep 17 00:00:00 2001 From: Guilherme Botelho Date: Tue, 26 Nov 2024 11:05:19 -0300 Subject: [PATCH 9/9] remove coluna indicador_circular --- queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql index 80057f92..5e7c5597 100644 --- a/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql +++ b/queries/models/dashboard_subsidio_sppo/viagens_remuneradas.sql @@ -162,7 +162,7 @@ WITH ) -- 6. Flag de viagens que serão consideradas ou não para fins de remuneração (apuração de valor de subsídio) - RESOLUÇÃO SMTR Nº 3645/2023 SELECT - v.* EXCEPT(rn, datetime_partida, viagens_planejadas, viagens_planejadas_ida_volta, km_planejada, tipo_dia, consorcio, faixa_horaria_inicio, faixa_horaria_fim), + v.* EXCEPT(rn, datetime_partida, viagens_planejadas, viagens_planejadas_ida_volta, km_planejada, tipo_dia, consorcio, faixa_horaria_inicio, faixa_horaria_fim, indicador_circular), CASE WHEN v.data >= DATE("{{ var("DATA_SUBSIDIO_V10_INICIO") }}") AND v.tipo_dia = "Dia Útil"