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

Ok 602 pub kerroksen korjauksia #108

Merged
merged 7 commits into from
Feb 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 7 additions & 0 deletions dbt/models/dw/_dw.yml
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,9 @@ models:
data_type: text
- name: dw_ataru_hakemus
description: ""
config:
pre_hook: set work_mem='6GB'
post_hook: set work_mem='256MB'
columns:
- name: oid
description: ""
Expand Down Expand Up @@ -1071,3 +1074,7 @@ models:
data_type: integer
- name: dw_metadata_dw_stored_at
data_type: timestamp with time zone
- name: dw_ataru_lomake
config:
pre_hook: set work_mem='6GB'
post_hook: set work_mem='256MB'
68 changes: 37 additions & 31 deletions dbt/models/int/int_haku.sql
Original file line number Diff line number Diff line change
Expand Up @@ -23,62 +23,68 @@ koulutuksen_alkamiskausi_rivit as (
when koulutuksenalkamiskausi ->> 'alkamiskausityyppi' = 'alkamiskausi ja -vuosi'
then (koulutuksenalkamiskausi ->> 'koulutuksenAlkamisvuosi')::int
when koulutuksenalkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then date_part('year',(koulutuksenalkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int
then date_part('year', (koulutuksenalkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int
else -1
end as alkamisvuosi,
case
when koulutuksenalkamiskausi ->> 'alkamiskausityyppi' = 'alkamiskausi ja -vuosi'
then koulutuksenalkamiskausi ->> 'koulutuksenAlkamiskausiKoodiUri'
when koulutuksenalkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then
case
when date_part('month',(koulutuksenalkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int < 8
then 'kausi_k#1'
else 'kausi_s#1'
end
when koulutuksenalkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then
case
when
date_part(
'month', (koulutuksenalkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz
)::int < 8
then 'kausi_k#1'
else 'kausi_s#1'
end
end as kausi
from hakukohde
where koulutuksenalkamiskausi is not null

union all
select
select
haku_oid,
case
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'alkamiskausi ja -vuosi'
then (koulutuksen_alkamiskausi ->> 'koulutuksenAlkamisvuosi')::int
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then date_part('year',(koulutuksen_alkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int
then date_part('year', (koulutuksen_alkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int
else -1
end as alkamisvuosi,
case
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'alkamiskausi ja -vuosi'
then koulutuksen_alkamiskausi ->> 'koulutuksenAlkamiskausiKoodiUri'
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then
case
when date_part('month',(koulutuksen_alkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz)::int < 8
then 'kausi_k#1'
else 'kausi_s#1'
end
case
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'alkamiskausi ja -vuosi'
then koulutuksen_alkamiskausi ->> 'koulutuksenAlkamiskausiKoodiUri'
when koulutuksen_alkamiskausi ->> 'alkamiskausityyppi' = 'tarkka alkamisajankohta'
then
case
when
date_part(
'month', (koulutuksen_alkamiskausi ->> 'koulutuksenAlkamispaivamaara')::timestamptz
)::int < 8
then 'kausi_k#1'
else 'kausi_s#1'
end
end as kausi
from haku
where koulutuksen_alkamiskausi is not null
),

koulutuksen_alkamiskausi_koodit as (
select distinct
haku_oid,
case
when alkamisvuosi=-1 then jsonb_build_object(
'type','henkkoht'
)
when alkamisvuosi is null then '{}'
else jsonb_build_object(
'type','kausivuosi',
'koulutuksenAlkamisvuosi',alkamisvuosi,
'koulutuksenAlkamiskausiKoodiUri',kausi
haku_oid,
case
when alkamisvuosi = -1
then jsonb_build_object('type', 'henkkoht')
when alkamisvuosi is null
then '{}'
else jsonb_build_object(
'type', 'kausivuosi',
'koulutuksenAlkamisvuosi', alkamisvuosi,
'koulutuksenAlkamiskausiKoodiUri', kausi
)
end as koulutuksen_alkamiskausi
end as koulutuksen_alkamiskausi
from koulutuksen_alkamiskausi_rivit
),

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ relaatio as (
final as (
select
rela.ylakoodiuri || '#' || rela.ylakoodiversio as versioitu_koodiuri,
kal1.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso1
kal1.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso1,
kal1.koodinimi as kansallinenkoulutusluokitus2016koulutusalataso1_nimi
from
kal1
inner join relaatio as rela on
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ relaatio as (
final as (
select
rela.ylakoodiuri || '#' || rela.ylakoodiversio as versioitu_koodiuri,
kal2.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso2
kal2.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso2,
kal2.koodinimi as kansallinenkoulutusluokitus2016koulutusalataso2_nimi
from kal2
inner join relaatio as rela on
kal2.koodiuri = rela.alakoodiuri
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ relaatio as (
final as (
select
rela.ylakoodiuri || '#' || rela.ylakoodiversio as versioitu_koodiuri,
kal3.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso3
kal3.koodiarvo as kansallinenkoulutusluokitus2016koulutusalataso3,
kal3.koodinimi as kansallinenkoulutusluokitus2016koulutusalataso3_nimi
from kal3
inner join relaatio as rela on
kal3.koodiuri = rela.alakoodiuri
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ relaatio as (
final as (
select
rela.ylakoodiuri || '#' || rela.ylakoodiversio as versioitu_koodiuri,
kas1.koodiarvo as kansallinenkoulutusluokitus2016koulutusastetaso1
kas1.koodiarvo as kansallinenkoulutusluokitus2016koulutusastetaso1,
kas1.koodinimi as kansallinenkoulutusluokitus2016koulutusastetaso1_nimi
from kas1
inner join relaatio as rela on
kas1.koodiuri = rela.alakoodiuri
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ relaatio as (
final as (
select
rela.ylakoodiuri || '#' || rela.ylakoodiversio as versioitu_koodiuri,
kas2.koodiarvo as kansallinenkoulutusluokitus2016koulutusastetaso2
kas2.koodiarvo as kansallinenkoulutusluokitus2016koulutusastetaso2,
kas2.koodinimi as kansallinenkoulutusluokitus2016koulutusastetaso2_nimi
from kas2
inner join relaatio as rela on
kas2.koodiuri = rela.alakoodiuri
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,15 @@ final as (
kood.koodiuri,
kood.koodiarvo,
kas1.kansallinenkoulutusluokitus2016koulutusastetaso1,
kas1.kansallinenkoulutusluokitus2016koulutusastetaso1_nimi,
kas2.kansallinenkoulutusluokitus2016koulutusastetaso2,
kas2.kansallinenkoulutusluokitus2016koulutusastetaso2_nimi,
kal1.kansallinenkoulutusluokitus2016koulutusalataso1,
kal1.kansallinenkoulutusluokitus2016koulutusalataso1_nimi,
kal2.kansallinenkoulutusluokitus2016koulutusalataso2,
kal2.kansallinenkoulutusluokitus2016koulutusalataso2_nimi,
kal3.kansallinenkoulutusluokitus2016koulutusalataso3,
kal3.kansallinenkoulutusluokitus2016koulutusalataso3_nimi,
case when left(kood.koodiarvo, 1) = '6' then 1::int else 0::int end as alempi_kk_aste,
case when left(kood.koodiarvo, 1) = '7' then 1::int else 0::int end as ylempi_kk_aste,
case when left(kood.koodiarvo, 1) = '8' then 1::bool else 0::bool end as jatkotutkinto,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{%- set koodisto = 'oppilaitoksenopetuskieli' -%}

{{ generate_koodisto_table(koodisto,False) }}
3 changes: 2 additions & 1 deletion dbt/models/int/int_kouta/int_kouta_haku.sql
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ final as (
'fi', inta.nimi_fi_new
) as haku_nimi,
koulutuksenalkamiskausi as koulutuksen_alkamiskausi,
{{ dbt_utils.star(from=ref('dw_kouta_haku'), except=['oid','nimi_fi','nimi_sv','nimi_en','koulutuksenalkamiskausi']) }},
{{ dbt_utils.star(from=ref('dw_kouta_haku'),
except=['oid','nimi_fi','nimi_sv','nimi_en','koulutuksenalkamiskausi']) }},
kojo.haun_tyyppi
from int as inta
left join kohdejoukot as kojo on inta.kohdejoukko = kojo.haunkohdejoukko
Expand Down
16 changes: 10 additions & 6 deletions dbt/models/int/int_valinta.sql
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,12 @@ rivit as (
jsonb_build_object(
'valintatapajono_oid', vatu.valintatapajono_oid,
'valinnan_tila', case
when vatu.valinnan_tila in ('HYVAKSYTTY', 'HYVAKSYTTY_VARASIJALTA') and josi.hyvaksytty_harkinnanvaraisesti
then 'HYVAKSYTTY_HARKINNANVARAISESTI' else vatu.valinnan_tila end,
when
vatu.valinnan_tila in ('HYVAKSYTTY', 'HYVAKSYTTY_VARASIJALTA')
and josi.hyvaksytty_harkinnanvaraisesti
then 'HYVAKSYTTY_HARKINNANVARAISESTI'
else vatu.valinnan_tila
end,
'ehdollisesti_hyvaksyttavissa', vatu.ehdollisesti_hyvaksyttavissa,
'ehdollisen_hyvaksymisen_ehto', vatu.ehdollisen_hyvaksymisen_ehto,
'valinnantilan_kuvauksen_teksti', vatu.valinnantilan_kuvauksen_teksti,
Expand All @@ -39,8 +43,8 @@ rivit as (
left join jonosijat as josi on vatu.hakemus_hakukohde_valintatapa_id = josi.hakemus_hakukohde_valintatapa_id
)

select
hakutoive_id,
select
hakutoive_id,
jsonb_agg(valintatapajonot) as valintatapajonot
from rivit
group by 1
from rivit
group by 1
4 changes: 2 additions & 2 deletions dbt/models/int/int_valintarekisteri_jonosija.sql
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ final as (
select
{{ hakutoive_id() }},
{{ dbt_utils.generate_surrogate_key(['hakemus_oid','hakukohde_oid','valintatapajono_oid']) }}
as hakemus_hakukohde_valintatapa_id,
as hakemus_hakukohde_valintatapa_id,
id,
hakemus_oid,
hakukohde_oid,
Expand All @@ -31,7 +31,7 @@ final as (
siirtynyt_toisesta_valintatapajonosta,
sijoitteluajo_id
from raw
where rownr=1
where rownr = 1
)

select * from final
2 changes: 1 addition & 1 deletion dbt/models/int/int_valintarekisteri_valinnantulos.sql
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ final as (
valinnantulos_id,
{{ hakutoive_id() }},
{{ dbt_utils.generate_surrogate_key(['hakemus_oid','hakukohde_oid','valintatapajono_oid']) }}
as hakemus_hakukohde_valintatapa_id,
as hakemus_hakukohde_valintatapa_id,
hakukohde_oid,
valintatapajono_oid,
hakemus_oid,
Expand Down
4 changes: 3 additions & 1 deletion dbt/models/pub/_pub.yml
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ models:
data_type: text
- name: koulutuksen_alkamisvuosi
data_type: double precision
- name: henkilokohtaisen_sunnitelman_lisatiedot
- name: henkilokohtaisen_suunnitelman_lisatiedot
data_type: text
- name: toinen_aste_onko_kaksoistutkinto
data_type: boolean
Expand Down Expand Up @@ -249,6 +249,8 @@ models:
data_type: text
- name: koulutuksen_alkamiskausi
data_type: jsonb
- name: oppilaitoksen_opetuskieli
data_type: jsonb
- name: suunniteltukestovuodet
description: Koulutuksen suunniteltu kesto vuosissa
data_type: integer
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{{ generate_koodisto_pub_view(ref(model.name | replace("pub_dim", "int"))) }}
4 changes: 2 additions & 2 deletions dbt/models/pub/pub_dim_hakukohde.sql
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ step2 as (
koulutuksen_alkamiskausi ->> 'koulutuksenAlkamiskausiKoodiUri' as koulutuksen_alkamiskausi_koodiuri,
(koulutuksen_alkamiskausi ->> 'koulutuksenAlkamisvuosi')::int as koulutuksen_alkamisvuosi,
(koulutuksen_alkamiskausi ->> 'koulutuksenAlkamispaivamaara')::date as koulutuksen_alkamispaivamaara,
koulutuksen_alkamiskausi ->> 'henkilokohtaisenSuunnitelmanLisatiedot' as henkilokohtaisen_sunnitelman_lisatiedot
koulutuksen_alkamiskausi ->> 'henkilokohtaisenSuunnitelmanLisatiedot' as henkilokohtaisen_suunnitelman_lisatiedot
from int
),

Expand Down Expand Up @@ -112,7 +112,7 @@ final as (
koulutuksen_alkamiskausi_tyyppi = 'tarkka alkamisajankohta'
then date_part('year', koulutuksen_alkamispaivamaara)
end as koulutuksen_alkamisvuosi,
henkilokohtaisen_sunnitelman_lisatiedot,
henkilokohtaisen_suunnitelman_lisatiedot,
toinen_aste_onko_kaksoistutkinto,
jarjestaa_urheilijan_ammkoulutusta
from step2
Expand Down
2 changes: 2 additions & 0 deletions dbt/models/pub/pub_dim_toteutus.sql
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ int as (
koulutuksenalkamiskausi as koulutuksen_alkamiskausi,
suunniteltukestovuodet,
suunniteltukestokuukaudet,
opetuskielikoodiurit as oppilaitoksen_opetuskieli,
koulutuksenalkamiskausi ->> 'alkamiskausityyppi' as koulutuksenalkamiskausityyppi,
koulutuksenalkamiskausi ->> 'koulutuksenAlkamiskausiKoodiUri' as koulutuksenalkamiskausikoodiuri,
(koulutuksenalkamiskausi ->> 'koulutuksenAlkamisvuosi')::int as koulutuksenalkamisvuosi,
Expand Down Expand Up @@ -64,6 +65,7 @@ final as (
organisaatio_oid,
koulutus_oid,
koulutuksen_alkamiskausi,
oppilaitoksen_opetuskieli,
suunniteltukestovuodet,
suunniteltukestokuukaudet,
koulutuksenalkamiskausityyppi as koulutuksen_alkamiskausi_tyyppi,
Expand Down
6 changes: 6 additions & 0 deletions dbt/models/stg/_stg_ataru.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
models:
- name: stg_ataru_hakemus
description: ""
config:
pre_hook: set work_mem='6GB'
post_hook: set work_mem='256MB'
columns:
- name: oid
description: ""
Expand Down Expand Up @@ -124,6 +127,9 @@ models:
data_type: integer
- name: stg_ataru_lomake
description: ""
config:
pre_hook: set work_mem='6GB'
post_hook: set work_mem='256MB'
columns:
- name: id
description: ""
Expand Down
3 changes: 1 addition & 2 deletions dbt/models/stg/stg_ataru_lomake.sql
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ final as (
data ->> 'organization-oid'::varchar as organisaatio_oid,
(data ->> 'created-time')::timestamptz as muokattu,
data ->> 'created-by'::varchar as luoja,
(data -> 'content')::jsonb as content, --noqa: RF04
(data -> 'Flat-content')::jsonb as flat_content,
(data -> 'flat-content')::jsonb as content, --noqa: RF04
{{ metadata_columns() }}
from source
)
Expand Down
9 changes: 9 additions & 0 deletions dbt/models/stg/stg_valintarekisteri_jonosija.sql
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
with source as (
select * from {{ source('ovara', 'valintarekisteri_jonosija') }}

{% if is_incremental() %}

where dw_metadata_dbt_copied_at > (
select coalesce(max(dw_metadata_dbt_copied_at), '1899-12-31') from {{ this }}
)

{% endif %}

),

final as (
Expand Down
Loading