diff --git a/v1_apache-hop dash mapping/mil_com/main_dashboard.total_registered(m_c).hpl b/v1_apache-hop dash mapping/mil_com/main_dashboard.total_registered(m_c).hpl
index ad2f1b4..3da82c5 100644
--- a/v1_apache-hop dash mapping/mil_com/main_dashboard.total_registered(m_c).hpl
+++ b/v1_apache-hop dash mapping/mil_com/main_dashboard.total_registered(m_c).hpl
@@ -252,9 +252,9 @@ registered as (
rh.id as recruit_history_id
from recruits_history rh
join last_status ls on rh.recruit_id=ls. recruit_id and rh.date_time=ls.max_date_time
- where rh.status not in ('1', '1.3', '12', '12.1', '12.2', '12.3', '12.4', '12.5', '13')
+ where rh.status not in ('1', '1.3', '12', '12.1', '12.2', '12.3', '12.4', '12.5', '13') -- критерии от 03.06.2025
--and rh.source is not null
- ) ,
+ ),
vse AS (
SELECT
distinct
@@ -268,6 +268,16 @@ vse AS (
r.gender,
r.birth_date,
r.conscription,
+ CASE
+ WHEN jsonb_typeof(ri.info->'svedFL'->'svedPND'->'svedUchetDisp'->'svedUchet') = 'array' THEN
+ EXISTS (
+ SELECT 1
+ FROM jsonb_array_elements(ri.info->'svedFL'->'svedPND'->'svedUchetDisp'->'svedUchet') AS uchet_pnd
+ WHERE uchet_pnd->>'dataSnyatUchet' <= current_date::text
+ )
+ ELSE
+ false
+ END AS uchet_pnd,
ri.info
FROM public.recruits AS r
JOIN public.recruits_info AS ri
@@ -309,22 +319,25 @@ recruit_data AS (
COUNT(*) FILTER (WHERE gender = 'MALE') AS male_count,
COUNT(*) FILTER (WHERE gender = 'FEMALE') AS female_count,
COUNT(*) FILTER (
- WHERE (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 70 AND gender = 'MALE')
- OR (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 45 AND gender = 'FEMALE')
- AND (conscription IS NULL OR conscription = false)
+ WHERE (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 30 AND 50 AND gender = 'MALE') -- мужчины от 30 до 50 лет
+ OR (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 30 AND 45 AND gender = 'FEMALE') -- женщины от 30 до 45 лет
AND COALESCE(cc.children_under_16, 0) < 5
- ) AS mobilization_criterion,
+ ) AS mobilization_criterion, -- критерии от 03.06.2025
+
COUNT(*) FILTER (
WHERE EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 30
AND gender = 'MALE'
- AND (conscription IS NULL OR conscription = false)
- ) AS volunteer_criterion,
+ AND (conscription IS NULL OR conscription = false) -- нет отсрочки и нет освобождения от службы
+ ) AS volunteer_criterion, -- критерии от 03.06.2025
+
COUNT(*) FILTER (
WHERE EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 50
AND gender = 'MALE'
- AND (conscription IS NULL OR conscription = false)
- AND ri.info->'svedSudim'->>'prOtsSvedSudim' = '1'
- ) AS contract_criterion
+ AND (ri.info->'svedFL'->'svedPND'->>'prOtsSvedPND' = '1'
+ OR uchet_pnd is false)
+ AND ri.info->'svedFL'->'svedUchetVICH'->>'prOtsSvedUchetVICH' = '1' -- признак отсутствия сведений о заболевании ВИЧ
+ --AND ri.info->'svedSudim'->>'prOtsSvedSudim' = '1'
+ ) AS contract_criterion -- критерии от 03.06.2025
FROM vse AS ri
LEFT JOIN children_count AS cc ON ri.recruit_id = cc.recruit_id
GROUP BY ri.r_current_recruitment_id, ri.convicts
diff --git a/v1_apache-hop dash mapping/mil_com/main_dashboard.waiting_registration(m_c).hpl b/v1_apache-hop dash mapping/mil_com/main_dashboard.waiting_registration(m_c).hpl
index e2eb3e5..d27c176 100644
--- a/v1_apache-hop dash mapping/mil_com/main_dashboard.waiting_registration(m_c).hpl
+++ b/v1_apache-hop dash mapping/mil_com/main_dashboard.waiting_registration(m_c).hpl
@@ -268,6 +268,16 @@ vse AS (
r.gender,
r.birth_date,
r.conscription,
+ CASE
+ WHEN jsonb_typeof(ri.info->'svedFL'->'svedPND'->'svedUchetDisp'->'svedUchet') = 'array' THEN
+ EXISTS (
+ SELECT 1
+ FROM jsonb_array_elements(ri.info->'svedFL'->'svedPND'->'svedUchetDisp'->'svedUchet') AS uchet_pnd
+ WHERE uchet_pnd->>'dataSnyatUchet' <= current_date::text
+ )
+ ELSE
+ false
+ END AS uchet_pnd,
ri.info
FROM public.recruits AS r
JOIN public.recruits_info AS ri
@@ -309,22 +319,25 @@ recruit_data AS (
COUNT(*) FILTER (WHERE gender = 'MALE') AS male_count,
COUNT(*) FILTER (WHERE gender = 'FEMALE') AS female_count,
COUNT(*) FILTER (
- WHERE (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 70 AND gender = 'MALE')
- OR (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 45 AND gender = 'FEMALE')
- AND (conscription IS NULL OR conscription = false)
- AND COALESCE(cc.children_under_16, 0) < 5
- ) AS mobilization_criterion,
+ WHERE (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 30 AND 50 AND gender = 'MALE') -- мужчины от 30 до 50 лет
+ OR (EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 30 AND 45 AND gender = 'FEMALE') -- женщины от 30 до 45 лет
+ AND COALESCE(cc.children_under_16, 0) < 5
+ ) AS mobilization_criterion, -- критерии от 03.06.2025
+
COUNT(*) FILTER (
WHERE EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 30
AND gender = 'MALE'
- AND (conscription IS NULL OR conscription = false)
- ) AS volunteer_criterion,
+ AND (conscription IS NULL OR conscription = false) -- нет отсрочки и нет освобождения от службы
+ ) AS volunteer_criterion, -- критерии от 03.06.2025
+
COUNT(*) FILTER (
WHERE EXTRACT(YEAR FROM AGE(NOW(), birth_date)) BETWEEN 18 AND 50
AND gender = 'MALE'
- AND (conscription IS NULL OR conscription = false)
- AND ri.info->'svedSudim'->>'prOtsSvedSudim' = '1'
- ) AS contract_criterion
+ AND (ri.info->'svedFL'->'svedPND'->>'prOtsSvedPND' = '1'
+ OR uchet_pnd is false)
+ AND ri.info->'svedFL'->'svedUchetVICH'->>'prOtsSvedUchetVICH' = '1' -- признак отсутствия сведений о заболевании ВИЧ
+ --AND ri.info->'svedSudim'->>'prOtsSvedSudim' = '1'
+ ) AS contract_criterion -- критерии от 03.06.2025
FROM vse AS ri
LEFT JOIN children_count AS cc ON ri.recruit_id = cc.recruit_id
GROUP BY ri.r_target_recruitment_id
diff --git a/v1_apache-hop dash mapping/mil_com/total_registered.age(m_c).hpl b/v1_apache-hop dash mapping/mil_com/total_registered.age(m_c).hpl
index b3640fa..d0d776c 100644
--- a/v1_apache-hop dash mapping/mil_com/total_registered.age(m_c).hpl
+++ b/v1_apache-hop dash mapping/mil_com/total_registered.age(m_c).hpl
@@ -318,9 +318,9 @@ registered as (
--and rh.source is not null
),
last_status_n as (select recruit_id,
- max(date_time) filter (where status in ('1', '1.1', '12.2', '12.10')) max_date_time
+ max(date_time) filter (where status in ('1', '12.7', '8.2', '8.3')) max_date_time
from recruits_history
- where status in ('1', '1.1', '12.2', '12.10')
+ where status in ('1', '12.7', '8.2', '8.3')
group by recruit_id
),
notregistered as (
@@ -329,7 +329,7 @@ notregistered as (
rh.id as recruit_history_id
from recruits_history rh
join last_status_n ls on rh.recruit_id=ls. recruit_id and rh.date_time=ls.max_date_time
- where rh.status in ('1', '1.1', '12.2', '12.10')
+ where rh.status in ('1', '12.7', '8.2', '8.3')
--and rh.source is not null
),
recruit_data AS (
@@ -373,6 +373,7 @@ recruit_data AS (
r.id in (SELECT recruit_id FROM notregistered) and
rh.id in (SELECT recruit_history_id FROM notregistered)
and coalesce(r.target_recruitment_id,rh.target_recruitment_id) ::uuid IN (SELECT recruitment_id FROM ids)
+ AND r.current_recruitment_id is null
),
total_count AS (
SELECT
diff --git a/v1_apache-hop dash mapping/mil_com/total_registered.busyness(m_c).hpl b/v1_apache-hop dash mapping/mil_com/total_registered.busyness(m_c).hpl
index a18a69a..de62e24 100644
--- a/v1_apache-hop dash mapping/mil_com/total_registered.busyness(m_c).hpl
+++ b/v1_apache-hop dash mapping/mil_com/total_registered.busyness(m_c).hpl
@@ -268,9 +268,9 @@ registered as (
--and rh.source is not null
),
last_status_n as (select recruit_id,
- max(date_time) filter (where status in ('1', '1.1', '12.2', '12.10')) max_date_time
+ max(date_time) filter (where status in ('1', '12.7', '8.2', '8.3')) max_date_time
from recruits_history
- where status in ('1', '1.1', '12.2', '12.10')
+ where status in ('1', '12.7', '8.2', '8.3')
group by recruit_id
),
notregistered as (
@@ -279,7 +279,7 @@ notregistered as (
rh.id as recruit_history_id
from recruits_history rh
join last_status_n ls on rh.recruit_id=ls. recruit_id and rh.date_time=ls.max_date_time
- where rh.status in ('1', '1.1', '12.2', '12.10')
+ where rh.status in ('1', '12.7', '8.2', '8.3')
--and rh.source is not null
),
status_info AS (
@@ -412,6 +412,7 @@ status_info AS (
AND rh.id in (SELECT recruit_history_id FROM notregistered)
--and r.vu_current_info->>'recruitmentCommercialInfo' = 'true'
AND coalesce(r.target_recruitment_id,rh.target_recruitment_id) ::uuid IN (SELECT recruitment_id FROM ids)
+ AND r.current_recruitment_id is null
),
summary AS (
SELECT
diff --git a/v1_apache-hop dash mapping/ratings/ratings.appear_subpoena.hpl b/v1_apache-hop dash mapping/ratings/ratings.appear_subpoena.hpl
index 15b1525..6de0ac2 100644
--- a/v1_apache-hop dash mapping/ratings/ratings.appear_subpoena.hpl
+++ b/v1_apache-hop dash mapping/ratings/ratings.appear_subpoena.hpl
@@ -80,7 +80,6 @@