From fab2e604814d4cdbf322f89ae5b5edd251639d44 Mon Sep 17 00:00:00 2001 From: AlexSave Date: Thu, 24 Apr 2025 16:21:06 +0300 Subject: [PATCH] temp_fix_punishment_info_ --- mappings/jobs_once_a_day/punishment_once.hpl | 89 +++++++++++--------- 1 file changed, 47 insertions(+), 42 deletions(-) diff --git a/mappings/jobs_once_a_day/punishment_once.hpl b/mappings/jobs_once_a_day/punishment_once.hpl index 5b741dd..cff4a1f 100644 --- a/mappings/jobs_once_a_day/punishment_once.hpl +++ b/mappings/jobs_once_a_day/punishment_once.hpl @@ -21,52 +21,11 @@ - Table input + Table input 2 Table output Y - - Table input - TableInput - - Y - - 1 - - none - - - ervu_person_registry - N - 0 - with ugol as -(select jsonb_array_elements(ri.info->'svedFL'->'svedSudim'->'sudim'->'osuzhdenie') u, - ri.recruit_id -from public.recruits_info ri -where jsonb_typeof(ri.info->'svedFL'->'svedSudim'->'sudim'->'osuzhdenie') = 'array') -select - r.id recruit_id, - u->>'naimSuda' authority_name, - u->>'srokNakaz' sentence, - u->>'adresNakaz' sentence_place, - u->>'kodVidNakaz' punishment_code, - u->>'izmSrokNakaz' sentence_changed, - u->>'naimVidNakaz' punishment_type, - to_date(u->>'dataNachSrok', 'YYYY-MM-DD') start_date, - to_date(u->>'dataOsvobozhd', 'YYYY-MM-DD') release_date, - to_date(u->>'dataOsuzhd', 'YYYY-MM-DD') sentense_date, - u->>'ugolovZakon' law_point, - u->>'osnovOsvobozhd' release_reason -from public.recruits r -join ugol on r.id = ugol.recruit_id; - N - - - 528 - 304 - - Table output TableOutput @@ -101,6 +60,52 @@ join ugol on r.id = ugol.recruit_id; 304 + + Table input 2 + TableInput + + Y + + 1 + + none + + + ervu_person_registry + N + 0 + WITH ugol AS (SELECT ri.recruit_id, + jsonb_array_elements(ri.info -> 'svedFL' -> 'svedNakaz' -> 'nakaz') AS nakaz + FROM public.recruits_info ri + WHERE ri.info -> 'svedFL' -> 'svedNakaz' ->> 'nakaz' != 'null') +SELECT recruit_id, + nakaz ->> 'naimSud' AS authority_name, + nakaz ->> 'srokNakaz' AS sentence, + nakaz ->> 'adresOrg' AS sentence_place, +-- nakaz->>'vidNakaz' AS punishment_code, + nakaz ->> 'naimIzmSrokNakaz' AS sentence_changed, + nakaz ->> 'vidNakaz' AS punishment_type, + TO_DATE(nakaz ->> 'dataNachSrok', 'YYYY-MM-DD') AS start_date, + TO_DATE(nakaz ->> 'dataOsvob', 'YYYY-MM-DD') AS release_date, + TO_DATE(nakaz ->> 'dataOsuzhd', 'YYYY-MM-DD') AS sentense_date, + nakaz ->> 'ugolovZakon' AS law_point, + nakaz ->> 'osnovOsvobozhd' AS release_reason, + string_agg(statiuk_elem::text, ', ') AS law_point, + nakaz ->> 'osnOsvob' release_reason +FROM ugol + LEFT JOIN LATERAL jsonb_path_query(nakaz, '$.statiUK[*]') AS statiuk_elem ON true + join public.recruits r ON r.id = ugol.recruit_id AND + (r.target_recruitment_id = '${RCRT_C}' or + r.current_recruitment_id = '${RCRT_C}') +GROUP BY recruit_id, nakaz; + + Y + + + 464 + 304 + +