ПП-127 п.6: остановка расчёта по остальным показателям при присвоении I категории (в автогенерации шаблона категорирования — «расчёт не проводится»)
This commit is contained in:
+19
-1
@@ -676,6 +676,7 @@ def _build_categorization_indicators(company, is_list):
|
|||||||
isys = is_list[0] if is_list else None
|
isys = is_list[0] if is_list else None
|
||||||
|
|
||||||
rows = []
|
rows = []
|
||||||
|
first_cat_num = None # номер показателя, по которому объект отнесён к I категории (п. 6 ПП-127)
|
||||||
for grp in criteria:
|
for grp in criteria:
|
||||||
section = grp.get('criteria', '')
|
section = grp.get('criteria', '')
|
||||||
for ind in grp.get('indicators', []):
|
for ind in grp.get('indicators', []):
|
||||||
@@ -688,7 +689,20 @@ def _build_categorization_indicators(company, is_list):
|
|||||||
value = '—'
|
value = '—'
|
||||||
justification = '—'
|
justification = '—'
|
||||||
category = '—'
|
category = '—'
|
||||||
if not applicable:
|
if first_cat_num is not None:
|
||||||
|
# Остановка расчёта: объект уже отнесён к I категории по одному из показателей
|
||||||
|
# (п. 6 Правил, утв. ПП РФ № 127: «расчет по остальным показателям не проводится»).
|
||||||
|
if applicable:
|
||||||
|
value = '—'
|
||||||
|
justification = (f"Расчёт по данному показателю не проводится: объект отнесён к "
|
||||||
|
f"I категории значимости по показателю {first_cat_num} "
|
||||||
|
f"(п. 6 Правил категорирования, утв. ПП РФ № 127).")
|
||||||
|
category = '—'
|
||||||
|
else:
|
||||||
|
value = 'Показатель не применим.'
|
||||||
|
justification = (just.get(num) or just.get(grp_num)
|
||||||
|
or f"Показатель не применим к объекту КИИ организации сферы «{sphere or '—'}».")
|
||||||
|
elif not applicable:
|
||||||
value = 'Показатель не применим.'
|
value = 'Показатель не применим.'
|
||||||
justification = (just.get(num) or just.get(grp_num)
|
justification = (just.get(num) or just.get(grp_num)
|
||||||
or f"Показатель не применим к объекту КИИ организации сферы «{sphere or '—'}».")
|
or f"Показатель не применим к объекту КИИ организации сферы «{sphere or '—'}».")
|
||||||
@@ -714,6 +728,10 @@ def _build_categorization_indicators(company, is_list):
|
|||||||
justification = (just.get(num) or just.get(grp_num)
|
justification = (just.get(num) or just.get(grp_num)
|
||||||
or 'Показатель применим к объекту КИИ; значение определяется по данным объекта.')
|
or 'Показатель применим к объекту КИИ; значение определяется по данным объекта.')
|
||||||
|
|
||||||
|
# Если по показателю присвоена I категория — фиксируем для остановки расчёта
|
||||||
|
if first_cat_num is None and category.startswith('I'):
|
||||||
|
first_cat_num = num
|
||||||
|
|
||||||
rows.append({
|
rows.append({
|
||||||
'section': section,
|
'section': section,
|
||||||
'name': name,
|
'name': name,
|
||||||
|
|||||||
Reference in New Issue
Block a user