add citizen flags

This commit is contained in:
AlexSave 2025-04-25 13:23:38 +03:00
parent 8c916dc637
commit cc58c51c7f
9 changed files with 1043 additions and 12 deletions

View file

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>children_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:09:28.624</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:09:28.624</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>children_flags</from>
<to>Update_children_flags</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_children_flags</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_dead_child</name>
<rename>has_dead_child</rename>
</value>
<value>
<name>has_minor_child</name>
<rename>has_minor_child</rename>
</value>
<value>
<name>minors_count</name>
<rename>minors</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>512</xloc>
<yloc>128</yloc>
</GUI>
</transform>
<transform>
<name>children_flags</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>WITH age_threshold AS (
SELECT current_date - interval '18 years' AS cutoff
)
select
recruit_id,
COUNT(*) FILTER (WHERE birth_date > cutoff) AS minors,
bool_or(death_date is not null) as has_dead_child,
bool_or(birth_date > cutoff) as has_minor_child
from citizen_child, age_threshold
group by recruit_id;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>336</xloc>
<yloc>128</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>citizenship_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:12:27.341</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:12:27.341</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>citizenship_flag_output</from>
<to>Update_citizenship_flag</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_citizenship_flag</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_russian_citizenship</name>
<rename>has_russian_citizenship</rename>
</value>
<value>
<name>has_foreign_citizenship</name>
<rename>has_foreign_citizenship</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>citizenship_flag_output</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>with foreign_citizenship as (
select recruit_id, true as has_foreign_citizenship
from citizenship_foreign
)
select
citizenship.recruit_id,
true as has_russian_citizenship,
coalesce(has_foreign_citizenship, false) as has_foreign_citizenship
from citizenship
left join foreign_citizenship
on foreign_citizenship.recruit_id = citizenship.recruit_id
where renunciation_number is null;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>544</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<workflow> <workflow>
<name>copy_prosec_and_deferment_once</name> <name>copy_punishment_and_deferment_once</name>
<name_sync_with_filename>Y</name_sync_with_filename> <name_sync_with_filename>Y</name_sync_with_filename>
<description/> <description/>
<extended_description/> <extended_description/>
@ -356,7 +356,17 @@ delete from ervu_dashboard.citizen_deferment;
<attributes_hac/> <attributes_hac/>
</action> </action>
<action> <action>
<name>citizen_flags.hpl</name> <name>Success sitizen_flags</name>
<description/>
<type>SUCCESS</type>
<attributes/>
<parallel>N</parallel>
<xloc>1888</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>children_flags.hpl</name>
<description/> <description/>
<type>PIPELINE</type> <type>PIPELINE</type>
<attributes/> <attributes/>
@ -366,7 +376,7 @@ delete from ervu_dashboard.citizen_deferment;
<clear_rows>N</clear_rows> <clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder> <create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row> <exec_per_row>N</exec_per_row>
<filename>${PROJECT_HOME}/jobs_once_a_day/citizen_flags.hpl</filename> <filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\children_flags.hpl</filename>
<loglevel>Basic</loglevel> <loglevel>Basic</loglevel>
<parameters> <parameters>
<pass_all_parameters>Y</pass_all_parameters> <pass_all_parameters>Y</pass_all_parameters>
@ -378,17 +388,189 @@ delete from ervu_dashboard.citizen_deferment;
<wait_until_finished>Y</wait_until_finished> <wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel> <parallel>N</parallel>
<xloc>640</xloc> <xloc>640</xloc>
<yloc>1280</yloc> <yloc>1296</yloc>
<attributes_hac/> <attributes_hac/>
</action> </action>
<action> <action>
<name>Success sitizen_flags</name> <name>opekun_flags.hpl</name>
<description/> <description/>
<type>SUCCESS</type> <type>PIPELINE</type>
<attributes/> <attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\opekun_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel> <parallel>N</parallel>
<xloc>832</xloc> <xloc>784</xloc>
<yloc>1280</yloc> <yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>driver_licenses_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\driver_licenses_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>928</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>citizenship_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\citizenship_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>1088</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>property_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\property_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>1232</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>deputy_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\deputy_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>1360</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>criminal_prosecution_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\criminal_prosecution_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>1520</xloc>
<yloc>1296</yloc>
<attributes_hac/>
</action>
<action>
<name>criminal_record_flags.hpl</name>
<description/>
<type>PIPELINE</type>
<attributes/>
<add_date>N</add_date>
<add_time>N</add_time>
<clear_files>N</clear_files>
<clear_rows>N</clear_rows>
<create_parent_folder>N</create_parent_folder>
<exec_per_row>N</exec_per_row>
<filename>C:\WORK\ervu-dashboard-etl-RT\v1_apache-hop dash mapping\jobs_once_a_day\criminal_record_flags.hpl</filename>
<loglevel>Basic</loglevel>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<params_from_previous>N</params_from_previous>
<run_configuration>local</run_configuration>
<set_append_logfile>N</set_append_logfile>
<set_logfile>N</set_logfile>
<wait_until_finished>Y</wait_until_finished>
<parallel>N</parallel>
<xloc>1712</xloc>
<yloc>1296</yloc>
<attributes_hac/> <attributes_hac/>
</action> </action>
</actions> </actions>
@ -513,15 +695,64 @@ delete from ervu_dashboard.citizen_deferment;
<unconditional>Y</unconditional> <unconditional>Y</unconditional>
</hop> </hop>
<hop> <hop>
<from>citizen_flags.hpl</from> <from>children_flags.hpl</from>
<to>opekun_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>opekun_flags.hpl</from>
<to>driver_licenses_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>driver_licenses_flags.hpl</from>
<to>citizenship_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>citizenship_flags.hpl</from>
<to>property_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>property_flags.hpl</from>
<to>deputy_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>deputy_flags.hpl</from>
<to>criminal_prosecution_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>criminal_prosecution_flags.hpl</from>
<to>criminal_record_flags.hpl</to>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>criminal_record_flags.hpl</from>
<to>Success sitizen_flags</to> <to>Success sitizen_flags</to>
<enabled>Y</enabled> <enabled>Y</enabled>
<evaluation>Y</evaluation> <evaluation>N</evaluation>
<unconditional>N</unconditional> <unconditional>Y</unconditional>
</hop> </hop>
<hop> <hop>
<from>Start</from> <from>Start</from>
<to>citizen_flags.hpl</to> <to>children_flags.hpl</to>
<enabled>N</enabled> <enabled>N</enabled>
<evaluation>Y</evaluation> <evaluation>Y</evaluation>
<unconditional>Y</unconditional> <unconditional>Y</unconditional>

View file

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>criminal_prosecution_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:19:11.456</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:19:11.456</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>has_criminal_prosecution</from>
<to>Update_has_criminal_prosecution</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_has_criminal_prosecution</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_criminal_prosecution</name>
<rename>has_criminal_prosecution</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>592</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>has_criminal_prosecution</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>
SELECT
distinct
recruit_id,
true as has_criminal_prosecution
FROM prosecution
where close_date is null;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>368</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>criminal_record_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:20:20.487</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:20:20.487</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>criminal_record</from>
<to>Update_criminal_record</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_criminal_record</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>serving_sentence</name>
<rename>serving_sentence</rename>
</value>
<value>
<name>has_sentence</name>
<rename>has_sentence</rename>
</value>
<value>
<name>has_criminal_record</name>
<rename>has_criminal_record</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>816</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>criminal_record</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>SELECT
recruit_id,
bool_or(start_date &lt; current_date and (release_date isnull or release_date > current_date)) as serving_sentence,
true as has_sentence,
true as has_criminal_record
FROM ervu_dashboard.punishment
group by recruit_id;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>592</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>deputy_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:15:05.259</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:15:05.259</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>deputy_input</from>
<to>Update_deputy_flag</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_deputy_flag</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>is_deputy</name>
<rename>is_deputy</rename>
</value>
<value>
<name>is_deputy_candidate</name>
<rename>is_deputy_candidate</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>560</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
<name>deputy_input</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>
SELECT
recruit_id,
COALESCE(deputy.deputy, false) AS is_deputy,
NOT COALESCE(deputy.deputy, false) AS is_deputy_candidate
FROM deputy;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>384</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>driver_licenses_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:11:28.008</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:11:28.008</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>driver_licence_output</from>
<to>Update_driver_licence_flag</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_driver_licence_flag</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>tractor_license</name>
<rename>has_tractor_licence</rename>
</value>
<value>
<name>has_driver_license</name>
<rename>has_driver_license</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>464</xloc>
<yloc>320</yloc>
</GUI>
</transform>
<transform>
<name>driver_licence_output</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>select
recruit_id,
bool_or(not tractor_driver) as has_driver_license,
bool_or(tractor_driver) as has_tractor_licence
from drivers_licence
group by recruit_id;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>288</xloc>
<yloc>320</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,92 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>opekun_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:10:21.355</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:10:21.355</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>opekun_flag</from>
<to>Update_opekun_flag</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_opekun_flag</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>is_guardian</name>
<rename>is_guardian</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>688</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>opekun_flag</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>select distinct
recruit_id,
true as is_guardian
from citizen_guardianship;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>512</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="UTF-8"?>
<pipeline>
<info>
<name>property_flags</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2025/04/25 13:13:44.087</created_date>
<modified_user>-</modified_user>
<modified_date>2025/04/25 13:13:44.087</modified_date>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>citizenship_flag_output</from>
<to>Update_citizenship_flag</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Update_citizenship_flag</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>1000</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_russian_citizenship</name>
<rename>has_russian_citizenship</rename>
</value>
<value>
<name>has_foreign_citizenship</name>
<rename>has_foreign_citizenship</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>704</xloc>
<yloc>176</yloc>
</GUI>
</transform>
<transform>
<name>citizenship_flag_output</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<execute_each_row>N</execute_each_row>
<limit>0</limit>
<sql>with foreign_citizenship as (
select recruit_id, true as has_foreign_citizenship
from citizenship_foreign
)
select
citizenship.recruit_id,
true as has_russian_citizenship,
coalesce(has_foreign_citizenship, false) as has_foreign_citizenship
from citizenship
left join foreign_citizenship
on foreign_citizenship.recruit_id = citizenship.recruit_id
where renunciation_number is null;</sql>
<variables_active>N</variables_active>
<attributes/>
<GUI>
<xloc>528</xloc>
<yloc>176</yloc>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>