diff --git a/api/alembic/versions/0028_summary2_cap_smeta_type.py b/api/alembic/versions/0028_summary2_cap_smeta_type.py new file mode 100644 index 0000000..054dcff --- /dev/null +++ b/api/alembic/versions/0028_summary2_cap_smeta_type.py @@ -0,0 +1,15 @@ +from sql_migration import run_sql_file_migration + + +revision = "0028" +down_revision = "0027" +branch_labels = None +depends_on = None + + +def upgrade() -> None: + run_sql_file_migration("0028_summary2_cap_smeta_type.sql") + + +def downgrade() -> None: + pass diff --git a/api/alembic/versions/0029_expense_items_fixes.py b/api/alembic/versions/0029_expense_items_fixes.py new file mode 100644 index 0000000..25e3ed0 --- /dev/null +++ b/api/alembic/versions/0029_expense_items_fixes.py @@ -0,0 +1,15 @@ +from sql_migration import run_sql_file_migration + + +revision = "0029" +down_revision = "0028" +branch_labels = None +depends_on = None + + +def upgrade() -> None: + run_sql_file_migration("0029_expense_items_fixes.sql") + + +def downgrade() -> None: + pass diff --git a/api/alembic/versions/sql/0028_summary2_cap_smeta_type.sql b/api/alembic/versions/sql/0028_summary2_cap_smeta_type.sql new file mode 100644 index 0000000..f0f49f0 --- /dev/null +++ b/api/alembic/versions/sql/0028_summary2_cap_smeta_type.sql @@ -0,0 +1,436 @@ +CREATE OR REPLACE FUNCTION v3.v_svod2_go( + p_year integer, + p_org_unit_ids integer[] DEFAULT NULL, + p_offset integer DEFAULT NULL, + p_limit integer DEFAULT NULL, + p_sort_by varchar DEFAULT 'org_name', + p_sort_direction varchar DEFAULT 'asc' +) +RETURNS TABLE( + source_form varchar, source_id integer, source_org_unit_id integer, + org_name varchar, smeta_type varchar, + source_line_id integer, sort_order bigint, data jsonb +) +LANGUAGE sql STABLE SET search_path TO 'v3', 'pg_catalog' +AS $function$ +WITH empty_sections AS MATERIALIZED ( + SELECT + (to_jsonb(jsonb_populate_record(NULL::v3.plan, '{}'::jsonb)) - 'line_id') + || jsonb_build_object('plan_year', NULL) AS plan, + (to_jsonb(jsonb_populate_record(NULL::v3.sequestration, '{}'::jsonb)) + - 'id' - 'line_id' - 'actor') || jsonb_build_object('adj_year', NULL) AS sequestration, + (to_jsonb(jsonb_populate_record(NULL::v3.reserve, '{}'::jsonb)) - 'line_id') + || jsonb_build_object('amount_year', NULL) AS reserve, + jsonb_build_object( + 'approved_q1', NULL, 'approved_q2', NULL, + 'approved_q3', NULL, 'approved_q4', NULL, + 'approved_year', NULL + ) AS approved, + to_jsonb(jsonb_populate_record(NULL::v3.contract_summary, '{}'::jsonb)) - 'line_id' AS contract_summary, + to_jsonb(jsonb_populate_record(NULL::v3.allocation, '{}'::jsonb)) - 'line_id' AS allocation, + to_jsonb(jsonb_populate_record(NULL::v3.collegial_approval, '{}'::jsonb)) - 'line_id' AS collegial, + to_jsonb(jsonb_populate_record(NULL::v3.ckk, '{}'::jsonb)) - 'line_id' AS ckk, + to_jsonb(jsonb_populate_record(NULL::v3.contract_detail, '{}'::jsonb)) - 'line_id' AS contract_detail, + to_jsonb(jsonb_populate_record(NULL::v3.booking, '{}'::jsonb)) - 'id' - 'line_id' AS booking, + to_jsonb(jsonb_populate_record(NULL::v3.budget_line_quarter, '{}'::jsonb)) + - 'line_id' - 'quarter' AS quarter +), eligible_lines AS ( + SELECT + bl.id AS line_id, + bf.form_type_code, + bf.id AS form_id, + bf.org_unit_id, + ou.title AS org_name, + ei.section_code, + ei.item_id, + CASE ei.sheet WHEN 'AHR' THEN 'АХР' WHEN 'CAP' THEN 'КВ' + WHEN 'OPER' THEN 'Операц' END::varchar AS smeta_type + FROM v3.budget_form bf + JOIN v3.budget_line bl ON bl.budget_form_id = bf.id + JOIN v3.expense_item ei ON ei.id = bl.expense_item_id + JOIN v3.contract_detail cd ON cd.line_id = bl.id + LEFT JOIN v3.org_unit ou ON ou.id = bf.org_unit_id + WHERE bf.year = p_year + AND bf.form_type_code IN ('FORM_1', 'FORM_4') + AND ei.sheet IN ('AHR', 'CAP', 'OPER') + AND (p_org_unit_ids IS NULL OR cardinality(p_org_unit_ids) = 0 + OR bf.org_unit_id = ANY(p_org_unit_ids)) +), numbered_lines AS ( + SELECT el.*, + row_number() OVER ( + ORDER BY + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'asc' + THEN el.org_name END ASC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'desc' + THEN el.org_name END DESC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'asc' + THEN el.item_id END ASC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'desc' + THEN el.item_id END DESC NULLS LAST, + CASE WHEN p_sort_by = 'section_code' AND lower(p_sort_direction) = 'asc' + THEN el.section_code END ASC NULLS LAST, + CASE WHEN p_sort_by = 'section_code' AND lower(p_sort_direction) = 'desc' + THEN el.section_code END DESC NULLS LAST, + el.form_type_code, el.form_id, el.line_id + ) AS sort_order + FROM eligible_lines el +), page AS MATERIALIZED ( + SELECT * FROM numbered_lines + ORDER BY sort_order + LIMIT p_limit OFFSET COALESCE(p_offset, 0) +), booking_data AS ( + SELECT b.line_id, + jsonb_agg(to_jsonb(b) - 'id' - 'line_id' ORDER BY b.quarter, b.source) AS booking + FROM page pg + JOIN v3.booking b ON b.line_id = pg.line_id + GROUP BY b.line_id +) +SELECT + pg.form_type_code, + pg.form_id, + pg.org_unit_id, + pg.org_name, + pg.smeta_type, + pg.line_id, + pg.sort_order, + jsonb_build_object( + 'line_id', bl.id, + 'header', jsonb_build_object( + 'section_code', ei.section_code, 'item_id', ei.item_id, + 'num_group', ei.num_group_id, 'name', COALESCE(bl.name, ei.name), + 'expense_item_id', ei.id, 'justification', bl.justification, + 'internal_order', bl.internal_order, 'vsp_id', bl.vsp_id, + 'project_id', bl.project_id, 'direction', bl.direction, + 'smeta_direction', CASE bl.direction + WHEN 'Support' THEN 'Поддержка' + WHEN 'Development' THEN 'Развитие' + ELSE NULL + END, + 'source_form', pg.form_type_code, 'source_id', pg.form_id, + 'source_org_unit_id', pg.org_unit_id, 'org_name', pg.org_name, + 'smeta_type', pg.smeta_type), + 'plan', COALESCE( + (to_jsonb(pl) - 'line_id') || jsonb_build_object( + 'plan_year', COALESCE(pl.plan_q1, 0) + COALESCE(pl.plan_q2, 0) + + COALESCE(pl.plan_q3, 0) + COALESCE(pl.plan_q4, 0)), + e.plan || jsonb_build_object('plan_year', NULL)), + 'sequestration', jsonb_build_object( + 'DFIP', COALESCE( + (to_jsonb(sd) - 'id' - 'line_id' - 'actor') || jsonb_build_object( + 'adj_year', COALESCE(sd.adj_q1, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(sd.adj_q3, 0) + COALESCE(sd.adj_q4, 0)), + e.sequestration || jsonb_build_object('adj_year', NULL)), + 'SSP_GO', COALESCE( + (to_jsonb(ss) - 'id' - 'line_id' - 'actor') || jsonb_build_object( + 'adj_year', COALESCE(ss.adj_q1, 0) + COALESCE(ss.adj_q2, 0) + + COALESCE(ss.adj_q3, 0) + COALESCE(ss.adj_q4, 0)), + e.sequestration || jsonb_build_object('adj_year', NULL))), + 'reserve', COALESCE( + (to_jsonb(rv) - 'line_id') || jsonb_build_object( + 'amount_year', COALESCE(rv.amount_q1, 0) + COALESCE(rv.amount_q2, 0) + + COALESCE(rv.amount_q3, 0) + COALESCE(rv.amount_q4, 0)), + e.reserve || jsonb_build_object('amount_year', NULL)), + 'approved', CASE WHEN pl.line_id IS NULL AND sd.id IS NULL + AND rv.line_id IS NULL + THEN e.approved + ELSE jsonb_build_object( + 'approved_q1', COALESCE(pl.plan_q1, 0) + COALESCE(sd.adj_q1, 0) + + COALESCE(rv.amount_q1, 0), + 'approved_q2', COALESCE(pl.plan_q2, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(rv.amount_q2, 0), + 'approved_q3', COALESCE(pl.plan_q3, 0) + COALESCE(sd.adj_q3, 0) + + COALESCE(rv.amount_q3, 0), + 'approved_q4', COALESCE(pl.plan_q4, 0) + COALESCE(sd.adj_q4, 0) + + COALESCE(rv.amount_q4, 0), + 'approved_year', COALESCE(pl.plan_q1, 0) + COALESCE(pl.plan_q2, 0) + + COALESCE(pl.plan_q3, 0) + COALESCE(pl.plan_q4, 0) + + COALESCE(sd.adj_q1, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(sd.adj_q3, 0) + COALESCE(sd.adj_q4, 0) + + COALESCE(rv.amount_q1, 0) + COALESCE(rv.amount_q2, 0) + + COALESCE(rv.amount_q3, 0) + COALESCE(rv.amount_q4, 0)) END, + 'contract_summary', COALESCE(to_jsonb(cs) - 'line_id', e.contract_summary), + 'allocation', COALESCE(to_jsonb(al) - 'line_id', e.allocation), + 'collegial', COALESCE(to_jsonb(ca) - 'line_id', e.collegial), + 'ckk', COALESCE(to_jsonb(ck) - 'line_id', e.ckk), + 'contract_detail', COALESCE(to_jsonb(cd) - 'line_id', e.contract_detail), + 'booking', COALESCE(bk.booking, jsonb_build_array(e.booking)), + 'q1', COALESCE(to_jsonb(q1) - 'line_id' - 'quarter', e.quarter), + 'q2', COALESCE(to_jsonb(q2) - 'line_id' - 'quarter', e.quarter), + 'q3', COALESCE(to_jsonb(q3) - 'line_id' - 'quarter', e.quarter), + 'q4', COALESCE(to_jsonb(q4) - 'line_id' - 'quarter', e.quarter) + ) AS data +FROM page pg +JOIN v3.budget_line bl ON bl.id = pg.line_id +JOIN v3.expense_item ei ON ei.id = bl.expense_item_id +JOIN v3.contract_detail cd ON cd.line_id = bl.id +CROSS JOIN empty_sections e +LEFT JOIN v3.plan pl ON pl.line_id = bl.id +LEFT JOIN v3.sequestration sd ON sd.line_id = bl.id AND sd.actor = 'DFIP' +LEFT JOIN v3.sequestration ss ON ss.line_id = bl.id AND ss.actor = 'SSP_GO' +LEFT JOIN v3.reserve rv ON rv.line_id = bl.id +LEFT JOIN v3.contract_summary cs ON cs.line_id = bl.id +LEFT JOIN v3.allocation al ON al.line_id = bl.id +LEFT JOIN v3.collegial_approval ca ON ca.line_id = bl.id +LEFT JOIN v3.ckk ck ON ck.line_id = bl.id +LEFT JOIN booking_data bk ON bk.line_id = bl.id +LEFT JOIN v3.budget_line_quarter q1 ON q1.line_id = bl.id AND q1.quarter = 1 +LEFT JOIN v3.budget_line_quarter q2 ON q2.line_id = bl.id AND q2.quarter = 2 +LEFT JOIN v3.budget_line_quarter q3 ON q3.line_id = bl.id AND q3.quarter = 3 +LEFT JOIN v3.budget_line_quarter q4 ON q4.line_id = bl.id AND q4.quarter = 4 +ORDER BY pg.sort_order; +$function$; + +CREATE OR REPLACE FUNCTION v3.v_svod2_rf( + p_year integer, + p_org_unit_ids integer[] DEFAULT NULL, + p_offset integer DEFAULT NULL, + p_limit integer DEFAULT NULL, + p_sort_by varchar DEFAULT 'org_name', + p_sort_direction varchar DEFAULT 'asc' +) +RETURNS TABLE( + source_form varchar, source_id integer, source_org_unit_id integer, + org_name varchar, smeta_type varchar, + source_line_id integer, sort_order bigint, data jsonb +) +LANGUAGE sql STABLE SET search_path TO 'v3', 'pg_catalog' +AS $function$ +WITH empty_sections AS MATERIALIZED ( + SELECT + (to_jsonb(jsonb_populate_record(NULL::v3.plan, '{}'::jsonb)) - 'line_id') + || jsonb_build_object('plan_year', NULL) AS plan, + (to_jsonb(jsonb_populate_record(NULL::v3.sequestration, '{}'::jsonb)) + - 'id' - 'line_id' - 'actor') || jsonb_build_object('adj_year', NULL) AS sequestration, + (to_jsonb(jsonb_populate_record(NULL::v3.reserve, '{}'::jsonb)) - 'line_id') + || jsonb_build_object('amount_year', NULL) AS reserve, + jsonb_build_object( + 'approved_q1', NULL, 'approved_q2', NULL, + 'approved_q3', NULL, 'approved_q4', NULL, + 'approved_year', NULL + ) AS approved, + to_jsonb(jsonb_populate_record(NULL::v3.contract_summary, '{}'::jsonb)) - 'line_id' AS contract_summary, + to_jsonb(jsonb_populate_record(NULL::v3.allocation, '{}'::jsonb)) - 'line_id' AS allocation, + to_jsonb(jsonb_populate_record(NULL::v3.collegial_approval, '{}'::jsonb)) - 'line_id' AS collegial, + to_jsonb(jsonb_populate_record(NULL::v3.ckk, '{}'::jsonb)) - 'line_id' AS ckk, + to_jsonb(jsonb_populate_record(NULL::v3.contract_detail, '{}'::jsonb)) - 'line_id' AS contract_detail, + to_jsonb(jsonb_populate_record(NULL::v3.booking, '{}'::jsonb)) - 'id' - 'line_id' AS booking, + to_jsonb(jsonb_populate_record(NULL::v3.budget_line_quarter, '{}'::jsonb)) + - 'line_id' - 'quarter' AS budget_quarter, + to_jsonb(jsonb_populate_record(NULL::v3.rf_project_report_quarter, '{}'::jsonb)) + - 'rf_project_report_line_id' - 'quarter' AS report_quarter +), eligible_lines AS ( + SELECT + 'FORM_2'::varchar AS form_type_code, + bl.id AS line_id, + bf.id AS source_id, + bf.org_unit_id, + ou.title AS org_name, + ei.section_code, + ei.item_id, + CASE ei.sheet WHEN 'AHR' THEN 'АХР' WHEN 'CAP' THEN 'КВ' + WHEN 'OPER' THEN 'Операц' END::varchar AS smeta_type + FROM v3.budget_form bf + JOIN v3.budget_line bl ON bl.budget_form_id = bf.id + JOIN v3.expense_item ei ON ei.id = bl.expense_item_id + JOIN v3.contract_detail cd ON cd.line_id = bl.id + LEFT JOIN v3.org_unit ou ON ou.id = bf.org_unit_id + WHERE bf.year = p_year AND bf.form_type_code = 'FORM_2' + AND ei.sheet IN ('AHR', 'CAP', 'OPER') + AND (p_org_unit_ids IS NULL OR cardinality(p_org_unit_ids) = 0 + OR bf.org_unit_id = ANY(p_org_unit_ids)) + UNION ALL + SELECT + 'FORM_3'::varchar, + rrl.id, + rr.id, + p.org_unit_id, + ou.title, + ei.section_code, + ei.item_id, + CASE ei.sheet WHEN 'AHR' THEN 'АХР' WHEN 'CAP' THEN 'КВ' + WHEN 'OPER' THEN 'Операц' END::varchar + FROM v3.rf_project_report rr + JOIN v3.rf_project_year rpy ON rpy.id = rr.rf_project_year_id + JOIN v3.project p ON p.id = rr.project_id + JOIN v3.rf_project_report_line rrl ON rrl.rf_project_report_id = rr.id + JOIN v3.expense_item ei ON ei.id = rrl.expense_item_id + LEFT JOIN v3.org_unit ou ON ou.id = p.org_unit_id + WHERE rpy.year = p_year AND ei.sheet IN ('AHR', 'CAP', 'OPER') + AND (p_org_unit_ids IS NULL OR cardinality(p_org_unit_ids) = 0 + OR p.org_unit_id = ANY(p_org_unit_ids)) +), numbered_lines AS ( + SELECT el.*, + row_number() OVER ( + ORDER BY + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'asc' + THEN el.org_name END ASC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'desc' + THEN el.org_name END DESC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'asc' + THEN el.item_id END ASC NULLS LAST, + CASE WHEN p_sort_by = 'org_name' AND lower(p_sort_direction) = 'desc' + THEN el.item_id END DESC NULLS LAST, + CASE WHEN p_sort_by = 'section_code' AND lower(p_sort_direction) = 'asc' + THEN el.section_code END ASC NULLS LAST, + CASE WHEN p_sort_by = 'section_code' AND lower(p_sort_direction) = 'desc' + THEN el.section_code END DESC NULLS LAST, + el.form_type_code, el.source_id, el.line_id + ) AS sort_order + FROM eligible_lines el +), page AS MATERIALIZED ( + SELECT * FROM numbered_lines + ORDER BY sort_order + LIMIT p_limit OFFSET COALESCE(p_offset, 0) +), booking_data AS ( + SELECT b.line_id, + jsonb_agg(to_jsonb(b) - 'id' - 'line_id' ORDER BY b.quarter, b.source) AS booking + FROM page pg + JOIN v3.booking b ON b.line_id = pg.line_id + WHERE pg.form_type_code = 'FORM_2' + GROUP BY b.line_id +), form2_data AS ( + SELECT + pg.form_type_code AS source_form, pg.source_id, + pg.org_unit_id AS source_org_unit_id, pg.org_name, pg.smeta_type, + pg.line_id AS source_line_id, pg.sort_order, + jsonb_build_object( + 'line_id', bl.id, + 'header', jsonb_build_object( + 'section_code', ei.section_code, 'item_id', ei.item_id, + 'num_group', ei.num_group_id, 'name', COALESCE(bl.name, ei.name), + 'expense_item_id', ei.id, 'justification', bl.justification, + 'internal_order', bl.internal_order, 'vsp_id', bl.vsp_id, + 'project_id', bl.project_id, 'direction', bl.direction, + 'smeta_direction', CASE bl.direction + WHEN 'Support' THEN 'Поддержка' + WHEN 'Development' THEN 'Развитие' + ELSE NULL + END, + 'source_form', pg.form_type_code, 'source_id', pg.source_id, + 'source_org_unit_id', pg.org_unit_id, 'org_name', pg.org_name, + 'smeta_type', pg.smeta_type), + 'plan', COALESCE( + (to_jsonb(pl) - 'line_id') || jsonb_build_object( + 'plan_year', COALESCE(pl.plan_q1, 0) + COALESCE(pl.plan_q2, 0) + + COALESCE(pl.plan_q3, 0) + COALESCE(pl.plan_q4, 0)), + e.plan || jsonb_build_object('plan_year', NULL)), + 'sequestration', jsonb_build_object( + 'DFIP', COALESCE( + (to_jsonb(sd) - 'id' - 'line_id' - 'actor') || jsonb_build_object( + 'adj_year', COALESCE(sd.adj_q1, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(sd.adj_q3, 0) + COALESCE(sd.adj_q4, 0)), + e.sequestration || jsonb_build_object('adj_year', NULL)), + 'SSP_GO', COALESCE( + (to_jsonb(ss) - 'id' - 'line_id' - 'actor') || jsonb_build_object( + 'adj_year', COALESCE(ss.adj_q1, 0) + COALESCE(ss.adj_q2, 0) + + COALESCE(ss.adj_q3, 0) + COALESCE(ss.adj_q4, 0)), + e.sequestration || jsonb_build_object('adj_year', NULL))), + 'reserve', COALESCE( + (to_jsonb(rv) - 'line_id') || jsonb_build_object( + 'amount_year', COALESCE(rv.amount_q1, 0) + COALESCE(rv.amount_q2, 0) + + COALESCE(rv.amount_q3, 0) + COALESCE(rv.amount_q4, 0)), + e.reserve || jsonb_build_object('amount_year', NULL)), + 'approved', CASE WHEN pl.line_id IS NULL AND sd.id IS NULL + AND ss.id IS NULL AND rv.line_id IS NULL + THEN e.approved + ELSE jsonb_build_object( + 'approved_q1', COALESCE(pl.plan_q1, 0) + COALESCE(sd.adj_q1, 0) + + COALESCE(ss.adj_q1, 0) + COALESCE(rv.amount_q1, 0), + 'approved_q2', COALESCE(pl.plan_q2, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(ss.adj_q2, 0) + COALESCE(rv.amount_q2, 0), + 'approved_q3', COALESCE(pl.plan_q3, 0) + COALESCE(sd.adj_q3, 0) + + COALESCE(ss.adj_q3, 0) + COALESCE(rv.amount_q3, 0), + 'approved_q4', COALESCE(pl.plan_q4, 0) + COALESCE(sd.adj_q4, 0) + + COALESCE(ss.adj_q4, 0) + COALESCE(rv.amount_q4, 0), + 'approved_year', COALESCE(pl.plan_q1, 0) + COALESCE(pl.plan_q2, 0) + + COALESCE(pl.plan_q3, 0) + COALESCE(pl.plan_q4, 0) + + COALESCE(sd.adj_q1, 0) + COALESCE(sd.adj_q2, 0) + + COALESCE(sd.adj_q3, 0) + COALESCE(sd.adj_q4, 0) + + COALESCE(ss.adj_q1, 0) + COALESCE(ss.adj_q2, 0) + + COALESCE(ss.adj_q3, 0) + COALESCE(ss.adj_q4, 0) + + COALESCE(rv.amount_q1, 0) + COALESCE(rv.amount_q2, 0) + + COALESCE(rv.amount_q3, 0) + COALESCE(rv.amount_q4, 0)) END, + 'contract_summary', COALESCE(to_jsonb(cs) - 'line_id', e.contract_summary), + 'allocation', COALESCE(to_jsonb(al) - 'line_id', e.allocation), + 'collegial', COALESCE(to_jsonb(ca) - 'line_id', e.collegial), + 'ckk', COALESCE(to_jsonb(ck) - 'line_id', e.ckk), + 'contract_detail', COALESCE(to_jsonb(cd) - 'line_id', e.contract_detail), + 'booking', COALESCE(bk.booking, jsonb_build_array(e.booking)), + 'q1', COALESCE(to_jsonb(q1) - 'line_id' - 'quarter', e.budget_quarter), + 'q2', COALESCE(to_jsonb(q2) - 'line_id' - 'quarter', e.budget_quarter), + 'q3', COALESCE(to_jsonb(q3) - 'line_id' - 'quarter', e.budget_quarter), + 'q4', COALESCE(to_jsonb(q4) - 'line_id' - 'quarter', e.budget_quarter) + ) AS data + FROM page pg + JOIN v3.budget_line bl ON bl.id = pg.line_id + JOIN v3.expense_item ei ON ei.id = bl.expense_item_id + JOIN v3.contract_detail cd ON cd.line_id = bl.id + CROSS JOIN empty_sections e + LEFT JOIN v3.plan pl ON pl.line_id = bl.id + LEFT JOIN v3.sequestration sd ON sd.line_id = bl.id AND sd.actor = 'DFIP' + LEFT JOIN v3.sequestration ss ON ss.line_id = bl.id AND ss.actor = 'SSP_GO' + LEFT JOIN v3.reserve rv ON rv.line_id = bl.id + LEFT JOIN v3.contract_summary cs ON cs.line_id = bl.id + LEFT JOIN v3.allocation al ON al.line_id = bl.id + LEFT JOIN v3.collegial_approval ca ON ca.line_id = bl.id + LEFT JOIN v3.ckk ck ON ck.line_id = bl.id + LEFT JOIN booking_data bk ON bk.line_id = bl.id + LEFT JOIN v3.budget_line_quarter q1 ON q1.line_id = bl.id AND q1.quarter = 1 + LEFT JOIN v3.budget_line_quarter q2 ON q2.line_id = bl.id AND q2.quarter = 2 + LEFT JOIN v3.budget_line_quarter q3 ON q3.line_id = bl.id AND q3.quarter = 3 + LEFT JOIN v3.budget_line_quarter q4 ON q4.line_id = bl.id AND q4.quarter = 4 + WHERE pg.form_type_code = 'FORM_2' +), form3_data AS ( + SELECT + pg.form_type_code AS source_form, pg.source_id, + pg.org_unit_id AS source_org_unit_id, pg.org_name, pg.smeta_type, + pg.line_id AS source_line_id, pg.sort_order, + jsonb_build_object( + 'line_id', rrl.id, + 'header', jsonb_build_object( + 'section_code', ei.section_code, 'item_id', ei.item_id, + 'num_group', ei.num_group_id, 'name', ei.name, + 'expense_item_id', ei.id, 'project_id', rr.project_id, + 'report_type', rr.report_type, + 'smeta_direction', NULL, + 'source_form', pg.form_type_code, 'source_id', pg.source_id, + 'source_org_unit_id', pg.org_unit_id, 'org_name', pg.org_name, + 'smeta_type', pg.smeta_type), + 'plan', e.plan, + 'sequestration', jsonb_build_object( + 'DFIP', e.sequestration, 'SSP_GO', e.sequestration), + 'reserve', e.reserve, 'contract_summary', e.contract_summary, + 'approved', e.approved, + 'allocation', e.allocation, 'collegial', e.collegial, + 'ckk', e.ckk, 'contract_detail', e.contract_detail, + 'booking', jsonb_build_array(e.booking), + 'q1', COALESCE(to_jsonb(q1) - 'rf_project_report_line_id' - 'quarter', e.report_quarter), + 'q2', COALESCE(to_jsonb(q2) - 'rf_project_report_line_id' - 'quarter', e.report_quarter), + 'q3', COALESCE(to_jsonb(q3) - 'rf_project_report_line_id' - 'quarter', e.report_quarter), + 'q4', COALESCE(to_jsonb(q4) - 'rf_project_report_line_id' - 'quarter', e.report_quarter) + ) AS data + FROM page pg + JOIN v3.rf_project_report_line rrl ON rrl.id = pg.line_id + JOIN v3.rf_project_report rr ON rr.id = pg.source_id + AND rr.id = rrl.rf_project_report_id + JOIN v3.expense_item ei ON ei.id = rrl.expense_item_id + CROSS JOIN empty_sections e + LEFT JOIN v3.rf_project_report_quarter q1 + ON q1.rf_project_report_line_id = rrl.id AND q1.quarter = 1 + LEFT JOIN v3.rf_project_report_quarter q2 + ON q2.rf_project_report_line_id = rrl.id AND q2.quarter = 2 + LEFT JOIN v3.rf_project_report_quarter q3 + ON q3.rf_project_report_line_id = rrl.id AND q3.quarter = 3 + LEFT JOIN v3.rf_project_report_quarter q4 + ON q4.rf_project_report_line_id = rrl.id AND q4.quarter = 4 + WHERE pg.form_type_code = 'FORM_3' +), result_rows AS ( + SELECT * FROM form2_data + UNION ALL + SELECT * FROM form3_data +) +SELECT rr.source_form, rr.source_id, rr.source_org_unit_id, rr.org_name, rr.smeta_type, + rr.source_line_id, rr.sort_order, rr.data +FROM result_rows rr +ORDER BY rr.sort_order; +$function$; diff --git a/api/alembic/versions/sql/0029_expense_items_fixes.sql b/api/alembic/versions/sql/0029_expense_items_fixes.sql new file mode 100644 index 0000000..861e546 --- /dev/null +++ b/api/alembic/versions/sql/0029_expense_items_fixes.sql @@ -0,0 +1,128 @@ +-- Исправления справочника статей расходов по файлу +-- "План_исправления_таблиц_статей_расходов.docx". +-- Правки, связанные с ГСМ, намеренно не включены. + +-- Общие переименования. +update v3.expense_item +set name = 'Охр.инкассат перевоз' +where item_id = 'R061063000' + and num_group_id = '211320117'; + +update v3.expense_item +set name = 'Взносы в орг/ассоц' +where item_id = 'R061141000' + and num_group_id = '214920158'; + +update v3.expense_item +set name = 'Бланк ден/чек книжМЦ' +where item_id = 'R064040032' + and num_group_id = '402640197'; + +update v3.expense_item +set name = 'Другие операционные доходы' +where item_id = 'R014040037' + and num_group_id is null; + +-- Перенос двух статей НВНОД в раздел 1.15.6. +update v3.expense_item +set parent_id = 81, + depth = 3 +where (item_id, num_group_id) in ( + ('R061156019', '403540147'), + ('R061159019', '216220174') +); + +-- Раздел 1.14: коды по шаблону, включая добавление 1.14.7 для проектов. +update v3.expense_item set item_id = '1.14.4' where id = 71; +update v3.expense_item set item_id = '1.14.5' where id = 72; +update v3.expense_item set item_id = '1.14.6' where id = 73; +update v3.expense_item set item_id = '1.14.7' where id = 74; + +insert into v3.expense_item_form_type (expense_item_id, form_type_code) +values (74, 'FORM_1'), (74, 'FORM_2') +on conflict (expense_item_id, form_type_code) do nothing; + +-- Исправление ошибочного ID статьи по ПО информационной безопасности. +update v3.expense_item +set item_id = 'R061012024', + direction = coalesce(direction, 'Support') +where item_id = 'R061012025' + and name = 'Внедрение и доработка внешними контрагентами: ПО информационной безопасности'; + +-- Статья "Расходы по выбытию: ПО информационной безопасности" для раздела 1.17.2. +update v3.expense_item +set direction = coalesce(direction, 'Support'), + parent_id = 84, + depth = 3 +where item_id = 'R061172024' + and name = 'Расходы по выбытию: ПО информационной безопасности'; + +insert into v3.expense_item_form_type (expense_item_id, form_type_code) +select id, form_type_code +from v3.expense_item +cross join (values ('FORM_1'), ('FORM_2')) as ft(form_type_code) +where item_id = 'R061172024' + and name = 'Расходы по выбытию: ПО информационной безопасности' +on conflict (expense_item_id, form_type_code) do nothing; + +-- Девять статей Операц уже есть в справочнике. Настраиваем только доступность +-- для Сметы ССП, Сметы РФ и Проектной деятельности. +with source(expense_item_id, form_type_code) as ( + values + (736, 'FORM_4'), (745, 'FORM_2'), (745, 'FORM_4'), + (800, 'FORM_1'), (800, 'FORM_2'), (800, 'FORM_4'), + (801, 'FORM_1'), (801, 'FORM_2'), (801, 'FORM_4'), + (802, 'FORM_1'), (802, 'FORM_2'), (802, 'FORM_4'), + (803, 'FORM_1'), (803, 'FORM_2'), (803, 'FORM_4'), + (804, 'FORM_1'), (804, 'FORM_2'), (804, 'FORM_4'), + (805, 'FORM_1'), (805, 'FORM_2'), (805, 'FORM_4'), + (806, 'FORM_1'), (806, 'FORM_2'), (806, 'FORM_4'), + (807, 'FORM_1'), (807, 'FORM_2'), (807, 'FORM_4'), + (808, 'FORM_1'), (808, 'FORM_2'), (808, 'FORM_4') +) +insert into v3.expense_item_form_type (expense_item_id, form_type_code) +select expense_item_id, form_type_code +from source +on conflict (expense_item_id, form_type_code) do nothing; + +-- Налоговые статьи раздела 5.00.0 для Сметы РФ. +insert into v3.expense_item_form_type (expense_item_id, form_type_code) +select id, 'FORM_2' +from v3.expense_item +where item_id in ( + 'R065010000', 'R065020001', 'R065030012', 'R065040000', + 'R065050005', 'R065070000', 'R065090000', 'R065100000' +) +on conflict (expense_item_id, form_type_code) do nothing; + +-- Проектная деятельность: добавить недостающие статьи АХР в FORM_4, кроме ГСМ. +with form4_ahr(expense_item_id) as ( + values + (777), (778), (779), (347), (780), (781), (782), (783), + (784), (785), (786), (787), (788), (789), (790), (791), + (461), (792), (793), (794), (795), (796), (797), (798), + (477), (478) +) +insert into v3.expense_item_form_type (expense_item_id, form_type_code) +select expense_item_id, 'FORM_4' +from form4_ahr +on conflict (expense_item_id, form_type_code) do nothing; + +-- Проектная деятельность и проектные листы: исключить амортизацию и налоги +-- из FORM_4, не удаляя записи из справочника и не затрагивая FORM_2. +delete from v3.expense_item_form_type +where form_type_code = 'FORM_4' + and ( + expense_item_id in (746, 747, 760, 766) + or expense_item_id between 748 and 759 + or expense_item_id between 761 and 765 + or expense_item_id between 767 and 774 + ); + +-- Проектные таблицы: исключить дубль перевозки валютных ценностей из формы. +delete from v3.expense_item_form_type +where form_type_code = 'FORM_4' + and expense_item_id = 70; + +select setval('v3.expense_item_id_seq', greatest((select max(id) from v3.expense_item), 808)); +refresh materialized view v3.mv_expense_item_tree; diff --git a/api/src/repository/org_unit_repository.py b/api/src/repository/org_unit_repository.py index d3a5c81..eaca59a 100644 --- a/api/src/repository/org_unit_repository.py +++ b/api/src/repository/org_unit_repository.py @@ -5,9 +5,10 @@ from sqlalchemy.ext.asyncio import AsyncSession from src.db.models.org_unit import OrgUnit -from sqlalchemy.orm import joinedload +from sqlalchemy.orm import joinedload, with_loader_criteria +from src.db.models.app_user import AppUser class OrgUnitRepository: @@ -42,7 +43,12 @@ class OrgUnitRepository: query = query.where(*where) if load_users: query = query.options( - joinedload(OrgUnit.users) + joinedload(OrgUnit.users), + with_loader_criteria( + AppUser, + AppUser.is_active.is_(True), + include_aliases=True, + ), ) query = query.order_by(OrgUnit.id) @@ -75,7 +81,12 @@ class OrgUnitRepository: query = select(OrgUnit).where(OrgUnit.id == org_unit_id) if load_users: query = query.options( - joinedload(OrgUnit.users) + joinedload(OrgUnit.users), + with_loader_criteria( + AppUser, + AppUser.is_active.is_(True), + include_aliases=True, + ), ) return (await self.db.execute(query)).scalars().first() diff --git a/api/src/repository/user_repository.py b/api/src/repository/user_repository.py index c956744..5c83f77 100644 --- a/api/src/repository/user_repository.py +++ b/api/src/repository/user_repository.py @@ -111,6 +111,8 @@ class UserRepository: async def logical_delete(self, user_id: int) -> bool: query = update(AppUser).where(AppUser.id == user_id).values(is_active=False) result = await self.db.execute(query) + if result.rowcount > 0: + await self.db.execute(delete(UserOrg).where(UserOrg.user_id == user_id)) await self.db.commit() return result.rowcount > 0 diff --git a/web/src/components/RealtimeTable/constants/FORM_2/CAP.js b/web/src/components/RealtimeTable/constants/FORM_2/CAP.js index bbbd2e4..b567b50 100644 --- a/web/src/components/RealtimeTable/constants/FORM_2/CAP.js +++ b/web/src/components/RealtimeTable/constants/FORM_2/CAP.js @@ -25,9 +25,9 @@ export const config = { color_type: orangeColumn, accessorKey: "data.header.name", }, - "data.header.internal_order": { + "data.header.vsp_id": { color_type: orangeColumn, - accessorKey: "data.header.internal_order", + accessorKey: "data.header.vsp_id", }, "data.plan.q1": { color_type: orangeColumn, @@ -53,41 +53,9 @@ export const config = { color_type: orangeColumn, accessorKey: "data.plan.comment", }, - "data.contract_summary.total": { + "2026_god_field_field": { color_type: whiteColumn, - accessorKey: "data.contract_summary.total", - }, - "data.contract_summary.counterparty": { - color_type: orangeColumn, - accessorKey: "data.contract_summary.counterparty", - }, - "data.contract_summary.deadline": { - color_type: orangeColumn, - accessorKey: "data.contract_summary.deadline", - }, - "data.contract_summary.comment": { - color_type: whiteColumn, - accessorKey: "data.contract_summary.comment", - }, - "data.contract_summary.future_y1": { - color_type: orangeColumn, - accessorKey: "data.contract_summary.future_y1", - }, - "data.contract_summary.future_y2": { - color_type: orangeColumn, - accessorKey: "data.contract_summary.future_y2", - }, - "data.contract_summary.other_ssp": { - color_type: orangeColumn, - accessorKey: "data.contract_summary.other_ssp", - }, - "data.allocation.contract_ref": { - color_type: orangeColumn, - accessorKey: "data.allocation.contract_ref", - }, - "data.allocation.purpose": { - color_type: orangeColumn, - accessorKey: "data.allocation.purpose", + accessorKey: "2026_god_field_field", }, "data.seq_dfip.q1": { color_type: orangeColumn, @@ -157,62 +125,6 @@ export const config = { color_type: orangeColumn, accessorKey: "data.approved.year", }, - "data.collegial.approved": { - color_type: orangeColumn, - accessorKey: "data.collegial.approved", - }, - "data.collegial.protocol": { - color_type: orangeColumn, - accessorKey: "data.collegial.protocol", - }, - field_kollegialnye_organy_field: { - color_type: orangeColumn, - accessorKey: "field_kollegialnye_organy_field", - }, - "data.collegial.note": { - color_type: orangeColumn, - accessorKey: "data.collegial.note", - }, - "data.ckk.ceiling": { - color_type: orangeColumn, - accessorKey: "data.ckk.ceiling", - }, - "data.booking.y2026.q1": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q1", - }, - "data.booking.y2026.q2": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q2", - }, - "data.booking.y2026.q3": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q3", - }, - "data.booking.y2026.q4": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q4", - }, - "data.ckk.rf_schedule": { - color_type: orangeColumn, - accessorKey: "data.ckk.rf_schedule", - }, - "data.ckk.deadline": { - color_type: orangeColumn, - accessorKey: "data.ckk.deadline", - }, - "data.ckk.proc_plan": { - color_type: orangeColumn, - accessorKey: "data.ckk.proc_plan", - }, - "data.ckk.proc_method": { - color_type: orangeColumn, - accessorKey: "data.ckk.proc_method", - }, - "data.ckk.comment": { - color_type: orangeColumn, - accessorKey: "data.ckk.comment", - }, "data.contract.counterparty": { color_type: orangeColumn, accessorKey: "data.contract.counterparty", @@ -221,9 +133,9 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.reference", }, - "data.contract.addenda": { + "data.contract.date": { color_type: orangeColumn, - accessorKey: "data.contract.addenda", + accessorKey: "data.contract.date", }, "data.contract.subject": { color_type: orangeColumn, @@ -237,38 +149,10 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.ceiling", }, - "data.contract.q1": { - color_type: orangeColumn, - accessorKey: "data.contract.q1", - }, - "data.contract.q2": { - color_type: orangeColumn, - accessorKey: "data.contract.q2", - }, - "data.contract.q3": { - color_type: orangeColumn, - accessorKey: "data.contract.q3", - }, - "data.contract.q4": { - color_type: orangeColumn, - accessorKey: "data.contract.q4", - }, - "data.contract.rf_schedule": { - color_type: orangeColumn, - accessorKey: "data.contract.rf_schedule", - }, "data.contract.vat_rate": { color_type: orangeColumn, accessorKey: "data.contract.vat_rate", }, - "data.contract.exchange_rate": { - color_type: orangeColumn, - accessorKey: "data.contract.exchange_rate", - }, - "data.contract.amount_foreign": { - color_type: orangeColumn, - accessorKey: "data.contract.amount_foreign", - }, "data.contract.deadline": { color_type: orangeColumn, accessorKey: "data.contract.deadline", @@ -285,6 +169,38 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.comment", }, + "data.booking.y2026.q1": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q1", + }, + "data.booking.y2026.q2": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q2", + }, + "data.booking.y2026.q3": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q3", + }, + "data.booking.y2026.q4": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q4", + }, + "data.booking.y2027.q1": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q1", + }, + "data.booking.y2027.q2": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q2", + }, + "data.booking.y2027.q3": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q3", + }, + "data.booking.y2027.q4": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q4", + }, "data.q1.adj_current": { color_type: yellowColumn, accessorKey: "data.q1.adj_current", @@ -293,19 +209,10 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q1.adj_ssp", }, - "data.q1.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q1.adj_rf", - }, "data.q1.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q1.adj_reserve", }, - "1_kvartal_2026_perenos_vo_2_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "1_kvartal_2026_perenos_vo_2_kv_26_summa_tys_rub_s_uchetom_ndc", - }, "data.q1.adj_comment": { color_type: yellowColumn, accessorKey: "data.q1.adj_comment", @@ -314,9 +221,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q1.corrected_plan", }, - "1_kvartal_2026_ref_field": { + "1_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "1_kvartal_2026_ref_field", + accessorKey: "1_kvartal_2026_goda_field_field", }, "data.q1.pay_date": { color_type: blueColumn, @@ -326,14 +233,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q1.pay_amount", }, - "data.q1.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q1.pay_ho", - }, - "data.q1.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q1.pay_rf", - }, "data.q1.pay_comment": { color_type: blueColumn, accessorKey: "data.q1.pay_comment", @@ -342,10 +241,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q1.pay_act", }, - "1_kvartal_2026_field_field": { - color_type: whiteColumn, - accessorKey: "1_kvartal_2026_field_field", - }, "data.q1.booking": { color_type: orangeColumn, accessorKey: "data.q1.booking", @@ -378,6 +273,22 @@ export const config = { color_type: redColumn, accessorKey: "data.q1.transfer_q2", }, + "data.q1.transfer_q2_delay_acts": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_delay_acts", + }, + "data.q1.transfer_q2_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_delay_procurement", + }, + "data.q1.transfer_q2_economy_rf": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_economy_rf", + }, + "data.q1.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q1.transfer_next_comment", + }, "data.q1.transfer_q3": { color_type: redColumn, accessorKey: "data.q1.transfer_q3", @@ -386,6 +297,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q1.transfer_q4", }, + "data.q1.transfer_far_comment": { + color_type: redColumn, + accessorKey: "data.q1.transfer_far_comment", + }, "data.q1.transfer_econ": { color_type: redColumn, accessorKey: "data.q1.transfer_econ", @@ -402,6 +317,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q2.base_correction", }, + "data.q2.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q2.base_correction_comment", + }, "data.q2.revision_inc": { color_type: redColumn, accessorKey: "data.q2.revision_inc", @@ -418,9 +337,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q2.new_plan", }, - "2_kvartal_2026_field_field": { + "2_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "2_kvartal_2026_field_field", + accessorKey: "2_kvartal_2026_goda_field_field", }, "data.q2.adj_current": { color_type: yellowColumn, @@ -430,27 +349,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q2.adj_ssp", }, - "data.q2.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q2.adj_rf", - }, "data.q2.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q2.adj_reserve", }, - "2_kvartal_2026_perenos_v_3_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "2_kvartal_2026_perenos_v_3_kv_26_summa_tys_rub_s_uchetom_ndc", + "data.q2.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q2.adj_comment", }, "data.q2.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q2.corrected_plan", }, - "2_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "2_kvartal_2026_ref_field", - }, "data.q2.pay_date": { color_type: blueColumn, accessorKey: "data.q2.pay_date", @@ -459,14 +369,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q2.pay_amount", }, - "data.q2.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q2.pay_ho", - }, - "data.q2.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q2.pay_rf", - }, "data.q2.pay_comment": { color_type: blueColumn, accessorKey: "data.q2.pay_comment", @@ -507,10 +409,30 @@ export const config = { color_type: redColumn, accessorKey: "data.q2.transfer_q3", }, + "data.q2.transfer_q3_delay_acts": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_delay_acts", + }, + "data.q2.transfer_q3_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_delay_procurement", + }, + "data.q2.transfer_q3_economy_rf": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_economy_rf", + }, + "data.q2.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q2.transfer_next_comment", + }, "data.q2.transfer_q4": { color_type: redColumn, accessorKey: "data.q2.transfer_q4", }, + "data.q2.transfer_far_comment": { + color_type: redColumn, + accessorKey: "data.q2.transfer_far_comment", + }, "data.q2.transfer_econ": { color_type: redColumn, accessorKey: "data.q2.transfer_econ", @@ -527,6 +449,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q3.base_correction", }, + "data.q3.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q3.base_correction_comment", + }, "data.q3.revision_inc": { color_type: redColumn, accessorKey: "data.q3.revision_inc", @@ -543,9 +469,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q3.new_plan", }, - "3_kvartal_2026_field_field": { + "3_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "3_kvartal_2026_field_field", + accessorKey: "3_kvartal_2026_goda_field_field", }, "data.q3.adj_current": { color_type: yellowColumn, @@ -555,27 +481,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q3.adj_ssp", }, - "data.q3.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q3.adj_rf", - }, "data.q3.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q3.adj_reserve", }, - "3_kvartal_2026_perenos_v_4_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "3_kvartal_2026_perenos_v_4_kv_26_summa_tys_rub_s_uchetom_ndc", + "data.q3.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q3.adj_comment", }, "data.q3.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q3.corrected_plan", }, - "3_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "3_kvartal_2026_ref_field", - }, "data.q3.pay_date": { color_type: blueColumn, accessorKey: "data.q3.pay_date", @@ -584,14 +501,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q3.pay_amount", }, - "data.q3.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q3.pay_ho", - }, - "data.q3.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q3.pay_rf", - }, "data.q3.pay_comment": { color_type: blueColumn, accessorKey: "data.q3.pay_comment", @@ -632,6 +541,22 @@ export const config = { color_type: redColumn, accessorKey: "data.q3.transfer_q4", }, + "data.q3.transfer_q4_delay_acts": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_delay_acts", + }, + "data.q3.transfer_q4_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_delay_procurement", + }, + "data.q3.transfer_q4_economy_rf": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_economy_rf", + }, + "data.q3.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q3.transfer_next_comment", + }, "data.q3.transfer_econ": { color_type: redColumn, accessorKey: "data.q3.transfer_econ", @@ -648,6 +573,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q4.base_correction", }, + "data.q4.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q4.base_correction_comment", + }, "data.q4.revision_inc": { color_type: redColumn, accessorKey: "data.q4.revision_inc", @@ -660,17 +589,13 @@ export const config = { color_type: redColumn, accessorKey: "data.q4.revision_comment", }, - "data.q4.adj_comment": { - color_type: yellowColumn, - accessorKey: "data.q4.adj_comment", - }, "data.q4.new_plan": { color_type: yellowColumn, accessorKey: "data.q4.new_plan", }, - "4_kvartal_2026_field_field": { + "4_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "4_kvartal_2026_field_field", + accessorKey: "4_kvartal_2026_goda_field_field", }, "data.q4.adj_current": { color_type: yellowColumn, @@ -680,22 +605,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q4.adj_ssp", }, - "data.q4.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q4.adj_rf", - }, "data.q4.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q4.adj_reserve", }, + "data.q4.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q4.adj_comment", + }, "data.q4.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q4.corrected_plan", }, - "4_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "4_kvartal_2026_ref_field", - }, "data.q4.pay_date": { color_type: blueColumn, accessorKey: "data.q4.pay_date", @@ -704,14 +625,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q4.pay_amount", }, - "data.q4.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q4.pay_ho", - }, - "data.q4.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q4.pay_rf", - }, "data.q4.pay_comment": { color_type: blueColumn, accessorKey: "data.q4.pay_comment", @@ -736,14 +649,14 @@ export const config = { color_type: greenColumn, accessorKey: "data.q4.actual_m3", }, - "data.q4.actual_quarter": { - color_type: greenColumn, - accessorKey: "data.q4.actual_quarter", - }, "data.q4.actual_spod": { color_type: whiteColumn, accessorKey: "data.q4.actual_spod", }, + "data.q4.actual_quarter": { + color_type: greenColumn, + accessorKey: "data.q4.actual_quarter", + }, "data.q4.residual_after_booking": { color_type: orangeColumn, accessorKey: "data.q4.residual_after_booking", @@ -752,30 +665,22 @@ export const config = { color_type: greenColumn, accessorKey: "data.q4.residual_after_actual", }, - "4_kvartal_2026_zakrytie_4_go_kvartala_field": { - color_type: redColumn, - accessorKey: "4_kvartal_2026_zakrytie_4_go_kvartala_field", - }, "data.q4.transfer_econ": { color_type: redColumn, accessorKey: "data.q4.transfer_econ", }, - "data.q4.total": { - color_type: redColumn, - accessorKey: "data.q4.total", - }, "data.totals.fact_year": { color_type: greenColumn, accessorKey: "data.totals.fact_year", }, + "2026_god_field_field_5": { + color_type: whiteColumn, + accessorKey: "2026_god_field_field_5", + }, "data.totals.pay_year": { color_type: blueColumn, accessorKey: "data.totals.pay_year", }, - "data.header.vsp_id": { - color_type: orangeColumn, - accessorKey: "data.header.vsp_id", - }, "data.header.vsp_address": { color_type: orangeColumn, accessorKey: "data.header.vsp_address", @@ -783,101 +688,64 @@ export const config = { }, columns: [ { - header: "", + header: " ", accessorKey: "field", columns: [ { - header: "Код раздела", - accessorKey: "field_kod_razdela", + header: " ", + accessorKey: "field_field", columns: [ { - header: "", + header: "Код раздела", accessorKey: "data.header.section_code", - columnLetter: "C", + columnLetter: "A", size: 150, filterFn: "contains", }, - ], - }, - { - header: "ID Статьи", - accessorKey: "field_id_stati", - columns: [ { - header: "", + header: "ID Статьи", accessorKey: "data.header.item_id", - columnLetter: "D", + columnLetter: "B", size: 150, filterFn: "contains", }, - ], - }, - { - header: "ID Группы номенклатуры", - accessorKey: "field_id_gruppy_nomenklatury", - columns: [ { - header: "", + header: "ID Группы номенклатуры", accessorKey: "data.header.num_group", - columnLetter: "E", - size: 150, + columnLetter: "C", + size: 220, filterFn: "contains", }, - ], - }, - { - header: "Наименование", - accessorKey: "field_naimenovanie", - columns: [ { - header: "", + header: "Наименование", accessorKey: "data.header.name", - columnLetter: "F", + columnLetter: "D", size: 400, filterFn: "contains", }, - ], - }, - - { - header: "ВСП РФ", - accessorKey: "field_vsp_rf", - columns: [ { - header: "", + header: "ВСП РФ", accessorKey: "data.header.vsp_id", - columnLetter: "G", + columnLetter: "E", size: 150, filterFn: "contains", editType: "vsp_dropdown", }, - ], - }, - { - header: "Адрес ВСП", - accessorKey: "field_adres_vsp", - columns: [ { - header: "", + header: "Адрес ВСП", accessorKey: "data.header.vsp_address", - columnLetter: "G1", + columnLetter: "E1", size: 220, filterFn: "contains", + editType: "vsp_dropdown", }, ], - }, - { - header: "Внутренний заказ", - accessorKey: "field_vnutrenniy_zakaz", - columns: [ - { - header: "", - accessorKey: "data.header.internal_order", - columnLetter: "G", - size: 150, - filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", }, - ], + }, }, ], muiTableHeadCellProps: { @@ -888,17 +756,42 @@ export const config = { }, }, { - header: "Планируемые показатели сметы расходов ССП", - accessorKey: "planiruemye_ssp_pokazateli_smety_raskhodov", + header: "{year} год", + accessorKey: "2026_god", columns: [ { - header: "План {year} (тыс. руб.) с учётом НДС", - accessorKey: - "planiruemye_ssp_pokazateli_smety_raskhodov_plan_2026tys_rub_s_uchetom_nds", + header: "Планирование годовых показателей", + accessorKey: "2026_god_planirovanie_godovykh_pokazateley", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.plan.q1", + columnLetter: "F", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "2 квартал", + accessorKey: "data.plan.q2", + columnLetter: "G", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "3 квартал", + accessorKey: "data.plan.q3", columnLetter: "H", size: 150, filterFn: "contains", @@ -910,35 +803,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", - accessorKey: "data.plan.q2", - columnLetter: "I", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "3 Кв. {year:short}", - accessorKey: "data.plan.q3", - columnLetter: "J", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.plan.q4", - columnLetter: "K", + columnLetter: "I", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -951,7 +818,7 @@ export const config = { { header: "Год", accessorKey: "data.plan.year", - columnLetter: "L", + columnLetter: "J", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -964,7 +831,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.plan.comment", - columnLetter: "M", + columnLetter: "K", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -977,18 +844,31 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Договоры", - accessorKey: "planiruemye_ssp_pokazateli_smety_raskhodov_dogovory", + header: "Секвестирование ДФиП", + accessorKey: "2026_god_sekvestirovanie_dfip", columns: [ { - header: "Сумма", - accessorKey: "data.contract_summary.total", + header: "1 квартал", + accessorKey: "data.seq_dfip.q1", + columnLetter: "M", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "2 квартал", + accessorKey: "data.seq_dfip.q2", columnLetter: "N", size: 150, filterFn: "contains", @@ -1000,8 +880,8 @@ export const config = { }, }, { - header: "Контрагент", - accessorKey: "data.contract_summary.counterparty", + header: "3 квартал", + accessorKey: "data.seq_dfip.q3", columnLetter: "O", size: 150, filterFn: "contains", @@ -1013,176 +893,9 @@ export const config = { }, }, { - header: "Срок", - accessorKey: "data.contract_summary.deadline", - columnLetter: "P", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Комментарии", - accessorKey: "data.contract_summary.comment", - columnLetter: "Q", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Платежи в {year+1} году", - accessorKey: "data.contract_summary.future_y1", - columnLetter: "R", - size: 190, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Платежи в {year+2} году", - accessorKey: "data.contract_summary.future_y2", - columnLetter: "S", - size: 190, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Сумма в других ССП", - accessorKey: "data.contract_summary.other_ssp", - columnLetter: "T", - size: 180, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Аллокация расходов", - accessorKey: "allokatsiya_raskhodov", - columns: [ - { - header: "ID Договора", - accessorKey: "allokatsiya_raskhodov_id_dogovora", - columns: [ - { - header: "", - accessorKey: "data.allocation.contract_ref", - columnLetter: "V", - size: 150, - filterFn: "contains", - }, - ], - }, - { - header: "Назначение расхода фактической аллокации", - accessorKey: - "allokatsiya_raskhodov_naznachenie_raskhoda_fakticheskoy_allokatsii", - columns: [ - { - header: "", - accessorKey: "data.allocation.purpose", - columnLetter: "W", - size: 150, - filterFn: "contains", - }, - ], - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Секвестирование ДФиП", - accessorKey: "sekvestirovanie_dfip", - columns: [ - { - header: "Корректировка сметы расходов", - accessorKey: "sekvestirovanie_dfip_korrektirovka_smety_raskhodov", - columns: [ - { - header: "1 Кв. {year:short}", - accessorKey: "data.seq_dfip.q1", - columnLetter: "Y", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "2 Кв. {year:short}", - accessorKey: "data.seq_dfip.q2", - columnLetter: "Z", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "3 Кв. {year:short}", - accessorKey: "data.seq_dfip.q3", - columnLetter: "AA", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.seq_dfip.q4", - columnLetter: "AB", + columnLetter: "P", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1195,7 +908,7 @@ export const config = { { header: "Год", accessorKey: "data.seq_dfip.year", - columnLetter: "AC", + columnLetter: "Q", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1205,53 +918,35 @@ export const config = { }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Обоснование", - accessorKey: "sekvestirovanie_dfip_obosnovanie", - columns: [ { - header: "", + header: "Обоснование", accessorKey: "data.seq_dfip.justification", - columnLetter: "AD", + columnLetter: "R", size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Отнесение в резерв", - accessorKey: "otnesenie_v_rezerv", - columns: [ { - header: "Резерв финансового комитета", - accessorKey: "otnesenie_v_rezerv_rezerv_finansovogo_komiteta", + header: "Секвестирование ССП ГО", + accessorKey: "2026_god_sekvestirovanie_ssp_go", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.seq_ssp.q1", - columnLetter: "AF", + columnLetter: "T", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1262,9 +957,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", + header: "2 квартал", accessorKey: "data.seq_ssp.q2", - columnLetter: "AG", + columnLetter: "U", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1275,9 +970,9 @@ export const config = { }, }, { - header: "3 Кв. {year:short}", + header: "3 квартал", accessorKey: "data.seq_ssp.q3", - columnLetter: "AH", + columnLetter: "V", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1288,9 +983,9 @@ export const config = { }, }, { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.seq_ssp.q4", - columnLetter: "AI", + columnLetter: "W", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1303,7 +998,7 @@ export const config = { { header: "Год", accessorKey: "data.seq_ssp.year", - columnLetter: "AJ", + columnLetter: "X", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1313,53 +1008,35 @@ export const config = { }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Обоснование", - accessorKey: "otnesenie_v_rezerv_obosnovanie", - columns: [ { - header: "", + header: "Обоснование", accessorKey: "data.seq_ssp.justification", - columnLetter: "AK", + columnLetter: "Y", size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Итоговая смета расходов", - accessorKey: "itogovaya_smeta_raskhodov", - columns: [ { - header: "План {year}", - accessorKey: "itogovaya_smeta_raskhodov_plan_2026", + header: "Утвержденная смета расходов", + accessorKey: "2026_god_utverzhdennaya_smeta_raskhodov", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.approved.q1", - columnLetter: "AM", + columnLetter: "AA", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1370,9 +1047,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", + header: "2 квартал", accessorKey: "data.approved.q2", - columnLetter: "AN", + columnLetter: "AB", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1383,9 +1060,9 @@ export const config = { }, }, { - header: "3 Кв. {year:short}", + header: "3 квартал", accessorKey: "data.approved.q3", - columnLetter: "AO", + columnLetter: "AC", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1396,9 +1073,9 @@ export const config = { }, }, { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.approved.q4", - columnLetter: "AP", + columnLetter: "AD", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1411,7 +1088,7 @@ export const config = { { header: "Год", accessorKey: "data.approved.year", - columnLetter: "AQ", + columnLetter: "AE", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1424,249 +1101,19 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_6", - columns: [ { - header: "Коллегиальные органы", - accessorKey: "field_kollegialnye_organy", - columns: [ - { - header: "Сумма (с учётом НДС)", - accessorKey: "data.collegial.approved", - columnLetter: "AS", - size: 200, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Реквизиты протокола (дата, номер)", - accessorKey: "data.collegial.protocol", - columnLetter: "AT", - size: 330, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - - { - header: "Примечание", - accessorKey: "data.collegial.note", - columnLetter: "AV", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_10", - columns: [ - { - header: "ЦКК", - accessorKey: "field_tskk", - columns: [ - { - header: "Предельная стоимость, тыс. руб. (с учётом НДС)", - accessorKey: "data.ckk.ceiling", - columnLetter: "AX", - size: 420, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Расходы 1 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q1", - columnLetter: "AY", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 2 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q2", - columnLetter: "AZ", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 3 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q3", - columnLetter: "BA", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 4 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q4", - columnLetter: "BB", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "По сметам РФ (1 кв., 2 кв., 3 кв., 4 кв.)", - accessorKey: "data.ckk.rf_schedule", - columnLetter: "BC", - size: 370, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Срок поставки", - accessorKey: "data.ckk.deadline", - columnLetter: "BD", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "План закупок", - accessorKey: "data.ckk.proc_plan", - columnLetter: "BE", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Способ закупки", - accessorKey: "data.ckk.proc_method", - columnLetter: "BF", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "data.ckk.comment", - columnLetter: "BG", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_20", - columns: [ - { - header: "Договор", - accessorKey: "field_dogovor", + header: "Параметры заключенного хозяйственного договора", + accessorKey: "2026_god_parametry_zaklyuchennogo_khozyaystvennogo_dogovora", columns: [ { header: "Контрагент", accessorKey: "data.contract.counterparty", - columnLetter: "BI", + columnLetter: "AG", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1677,10 +1124,10 @@ export const config = { }, }, { - header: "Договор (реквизиты)", + header: "Номер", accessorKey: "data.contract.reference", - columnLetter: "BJ", - size: 190, + columnLetter: "AH", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1690,10 +1137,10 @@ export const config = { }, }, { - header: "Дополнительные соглашения, спецификации и пр. (реквизиты)", - accessorKey: "data.contract.addenda", - columnLetter: "BK", - size: 460, + header: "Дата", + accessorKey: "data.contract.date", + columnLetter: "AI", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1705,7 +1152,7 @@ export const config = { { header: "Предмет", accessorKey: "data.contract.subject", - columnLetter: "BL", + columnLetter: "AJ", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1716,9 +1163,9 @@ export const config = { }, }, { - header: "Валюта договора", + header: "Валюта", accessorKey: "data.contract.currency", - columnLetter: "BM", + columnLetter: "AK", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1729,75 +1176,10 @@ export const config = { }, }, { - header: "Предельная стоимость, тыс. руб. (с учётом НДС)", + header: "Предельная стоимость", accessorKey: "data.contract.ceiling", - columnLetter: "BN", - size: 420, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Расходы 1 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q1", - columnLetter: "BO", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 2 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q2", - columnLetter: "BP", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 3 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q3", - columnLetter: "BQ", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 4 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q4", - columnLetter: "BR", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "По сметам РФ (1 кв., 2 кв., 3 кв., 4 кв.)", - accessorKey: "data.contract.rf_schedule", - columnLetter: "BS", - size: 370, + columnLetter: "AL", + size: 200, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1809,7 +1191,7 @@ export const config = { { header: "Ставка НДС (%)", accessorKey: "data.contract.vat_rate", - columnLetter: "BT", + columnLetter: "AM", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1819,36 +1201,10 @@ export const config = { }, }, }, - { - header: "Курс пересчёта", - accessorKey: "data.contract.exchange_rate", - columnLetter: "BU", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Сумма (с учётом НДС), вал (с учётом НДС)", - accessorKey: "data.contract.amount_foreign", - columnLetter: "BV", - size: 400, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, { header: "Срок", accessorKey: "data.contract.deadline", - columnLetter: "BW", + columnLetter: "AN", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1861,7 +1217,7 @@ export const config = { { header: "Схема платежа", accessorKey: "data.contract.scheme", - columnLetter: "BX", + columnLetter: "AO", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1874,7 +1230,7 @@ export const config = { { header: "АКТ", accessorKey: "data.contract.act", - columnLetter: "BY", + columnLetter: "AP", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1887,7 +1243,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.contract.comment", - columnLetter: "BZ", + columnLetter: "AQ", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1897,10 +1253,62 @@ export const config = { }, }, }, + { + header: "Бронь средств в 1 квартале", + accessorKey: "data.booking.y2026.q1", + columnLetter: "AR", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств во 2 квартале", + accessorKey: "data.booking.y2026.q2", + columnLetter: "AS", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 3 квартале", + accessorKey: "data.booking.y2026.q3", + columnLetter: "AT", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 4 квартале", + accessorKey: "data.booking.y2026.q4", + columnLetter: "AU", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, @@ -1914,22 +1322,61 @@ export const config = { }, }, { - header: "1 квартал {year}", - accessorKey: "1_kvartal_2026", + header: "{year+1} год", + accessorKey: "2027_god", columns: [ { - header: "Текущие корректировки (= 0)", - accessorKey: "1_kvartal_2026_tekuschie_korrektirovki_0", + header: "", + accessorKey: "2027_god_field", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.adj_current", - columnLetter: "CB", - size: 310, + header: "Бронь средств в 1 квартале", + accessorKey: "data.booking.y2027.q1", + columnLetter: "AV", + size: 260, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств во 2 квартале", + accessorKey: "data.booking.y2027.q2", + columnLetter: "AW", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 3 квартале", + accessorKey: "data.booking.y2027.q3", + columnLetter: "AX", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 4 квартале", + accessorKey: "data.booking.y2027.q4", + columnLetter: "AY", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", color: "#000000", }, }, @@ -1937,116 +1384,108 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, + ], + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "1 квартал {year} года", + accessorKey: "1_kvartal_2026_goda", + columns: [ { - header: "Корректировки с ССП / сметой развития", - accessorKey: "1_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "1_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q1.adj_current", + columnLetter: "BA", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q1.adj_ssp", - columnLetter: "CC", - size: 310, + columnLetter: "BB", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "1_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.adj_rf", - columnLetter: "CD", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "1_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q1.adj_reserve", - columnLetter: "CE", - size: 310, + columnLetter: "BC", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Комментарий", - accessorKey: "1_kvartal_2026_kommentariy", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Комментарий", accessorKey: "data.q1.adj_comment", - columnLetter: "CG", - size: 310, + columnLetter: "BD", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Скорректированный план 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_skorr_plan_1_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Базовый план с учётом корректировок", accessorKey: "data.q1.corrected_plan", - columnLetter: "CH", - size: 310, + columnLetter: "BE", + size: 350, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "1_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "1_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q1.pay_date", - columnLetter: "CJ", + columnLetter: "BG", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2057,36 +1496,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q1.pay_amount", - columnLetter: "CK", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q1.pay_ho", - columnLetter: "CL", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q1.pay_rf", - columnLetter: "CM", - size: 300, + columnLetter: "BH", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2098,7 +1511,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q1.pay_comment", - columnLetter: "CN", + columnLetter: "BI", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2109,10 +1522,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q1.pay_act", - columnLetter: "CO", - size: 390, + columnLetter: "BJ", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2124,25 +1537,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Бронь 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_bron_1_kv_26", + header: "Фактические расходы", + accessorKey: "1_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q1.booking", - columnLetter: "CQ", - size: 310, + columnLetter: "BL", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт январь", + accessorKey: "data.q1.actual_m1", + columnLetter: "BM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт февраль", + accessorKey: "data.q1.actual_m2", + columnLetter: "BN", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт март", + accessorKey: "data.q1.actual_m3", + columnLetter: "BO", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q1.actual_quarter", + columnLetter: "BP", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 1 квартала", + accessorKey: "data.q1.residual_after_booking", + columnLetter: "BQ", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 1 квартала", + accessorKey: "data.q1.residual_after_actual", + columnLetter: "BR", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -2150,134 +1640,20 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за январь {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_yanvar_26", + header: "Корректировка остатка в последующие кварталы", + accessorKey: "1_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschie_kvartaly", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m1", - columnLetter: "CR", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за февраль {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_fevral_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m2", - columnLetter: "CS", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за март {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_mart_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m3", - columnLetter: "CT", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_quarter", - columnLetter: "CU", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_ostatok_posle_broni_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.residual_after_booking", - columnLetter: "CV", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_ostatok_posle_fakta_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.residual_after_actual", - columnLetter: "CW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 1-го квартала", - accessorKey: "1_kvartal_2026_zakrytie_1_go_kvartala", - columns: [ - { - header: "Перенос во 2 кв. {year:short}", + header: "Перенос во 2 квартал", accessorKey: "data.q1.transfer_q2", - columnLetter: "CY", - size: 180, + columnLetter: "BT", + size: 200, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2287,10 +1663,62 @@ export const config = { }, }, { - header: "Перенос в 3 кв. {year:short}", + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q1.transfer_q2_delay_acts", + columnLetter: "BU", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q1.transfer_q2_delay_procurement", + columnLetter: "BV", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q1.transfer_q2_economy_rf", + columnLetter: "BW", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса во 2 квартал", + accessorKey: "data.q1.transfer_next_comment", + columnLetter: "BX", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Перенос в 3 квартал", accessorKey: "data.q1.transfer_q3", - columnLetter: "CZ", - size: 170, + columnLetter: "BY", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2300,10 +1728,23 @@ export const config = { }, }, { - header: "Перенос в 4 кв. {year:short}", + header: "Перенос в 4 квартал", accessorKey: "data.q1.transfer_q4", - columnLetter: "DA", - size: 170, + columnLetter: "BZ", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 3 и 4 кварталах", + accessorKey: "data.q1.transfer_far_comment", + columnLetter: "CA", + size: 360, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2315,7 +1756,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q1.transfer_econ", - columnLetter: "DB", + columnLetter: "CB", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -2328,7 +1769,7 @@ export const config = { { header: "Всего", accessorKey: "data.q1.total", - columnLetter: "DC", + columnLetter: "CC", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2341,8 +1782,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -2355,144 +1796,100 @@ export const config = { }, }, { - header: "2 квартал {year}", - accessorKey: "2_kvartal_2026", + header: "2 квартал {year} года", + accessorKey: "2_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "2_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "2_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q2.target_change", - columnLetter: "DE", - size: 310, + columnLetter: "CE", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "2_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q2.base_correction", - columnLetter: "DF", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "2_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_inc", - columnLetter: "DG", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "2_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_seq", - columnLetter: "DH", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "2_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_comment", - columnLetter: "DI", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_novyy_plan_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.new_plan", - columnLetter: "DJ", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "2_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.adj_current", - columnLetter: "DL", - size: 310, + columnLetter: "CF", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q2.base_correction_comment", + columnLetter: "CG", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q2.revision_inc", + columnLetter: "CH", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q2.revision_seq", + columnLetter: "CI", + size: 250, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q2.revision_comment", + columnLetter: "CJ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q2.new_plan", + columnLetter: "CK", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, @@ -2500,97 +1897,96 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Корректировки с ССП / сметой развития", - accessorKey: "2_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "2_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q2.adj_current", + columnLetter: "CM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q2.adj_ssp", - columnLetter: "DM", - size: 310, + columnLetter: "CN", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "2_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.adj_rf", - columnLetter: "DN", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "2_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q2.adj_reserve", - columnLetter: "DO", - size: 310, + columnLetter: "CO", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Скорректированный план 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_skorr_plan_2_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.corrected_plan", - columnLetter: "DR", - size: 310, + header: "Комментарий", + accessorKey: "data.q2.adj_comment", + columnLetter: "CP", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q2.corrected_plan", + columnLetter: "CQ", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "2_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "2_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q2.pay_date", - columnLetter: "DT", + columnLetter: "CS", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2601,36 +1997,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q2.pay_amount", - columnLetter: "DU", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q2.pay_ho", - columnLetter: "DV", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q2.pay_rf", - columnLetter: "DW", - size: 300, + columnLetter: "CT", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2642,7 +2012,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q2.pay_comment", - columnLetter: "DX", + columnLetter: "CU", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2653,10 +2023,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q2.pay_act", - columnLetter: "DY", - size: 390, + columnLetter: "CV", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2668,24 +2038,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_bron_2_kv_26", + header: "Фактические расходы", + accessorKey: "2_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q2.booking", - columnLetter: "EA", - size: 310, + columnLetter: "CX", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт апрель", + accessorKey: "data.q2.actual_m1", + columnLetter: "CY", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт май", + accessorKey: "data.q2.actual_m2", + columnLetter: "CZ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт июнь", + accessorKey: "data.q2.actual_m3", + columnLetter: "DA", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q2.actual_quarter", + columnLetter: "DB", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 2 квартала", + accessorKey: "data.q2.residual_after_booking", + columnLetter: "DC", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 2 квартала", + accessorKey: "data.q2.residual_after_actual", + columnLetter: "DD", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -2693,134 +2141,20 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за апрель {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_aprel_26", + header: "Корректировка остатка в последующие кварталы", + accessorKey: "2_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschie_kvartaly", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m1", - columnLetter: "EB", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за май {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_may_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m2", - columnLetter: "EC", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за июнь {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_iyun_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m3", - columnLetter: "ED", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_quarter", - columnLetter: "EE", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_ostatok_posle_broni_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.residual_after_booking", - columnLetter: "EF", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_ostatok_posle_fakta_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.residual_after_actual", - columnLetter: "EG", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 2-го квартала", - accessorKey: "2_kvartal_2026_zakrytie_2_go_kvartala", - columns: [ - { - header: "Перенос в 3 кв. {year:short}", + header: "Перенос в 3 квартал", accessorKey: "data.q2.transfer_q3", - columnLetter: "EI", - size: 170, + columnLetter: "DF", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2830,10 +2164,75 @@ export const config = { }, }, { - header: "Перенос в 4 кв. {year:short}", + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q2.transfer_q3_delay_acts", + columnLetter: "DG", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q2.transfer_q3_delay_procurement", + columnLetter: "DH", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q2.transfer_q3_economy_rf", + columnLetter: "DI", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 3 квартал", + accessorKey: "data.q2.transfer_next_comment", + columnLetter: "DJ", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Перенос в 4 квартал", accessorKey: "data.q2.transfer_q4", - columnLetter: "EJ", - size: 170, + columnLetter: "DK", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 4 квартал", + accessorKey: "data.q2.transfer_far_comment", + columnLetter: "DL", + size: 320, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2845,7 +2244,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q2.transfer_econ", - columnLetter: "EK", + columnLetter: "DM", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -2858,7 +2257,7 @@ export const config = { { header: "Всего", accessorKey: "data.q2.total", - columnLetter: "EL", + columnLetter: "DN", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2871,8 +2270,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -2885,144 +2284,100 @@ export const config = { }, }, { - header: "3 квартал {year}", - accessorKey: "3_kvartal_2026", + header: "3 квартал {year} года", + accessorKey: "3_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "3_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "3_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q3.target_change", - columnLetter: "EN", - size: 310, + columnLetter: "DP", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "3_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q3.base_correction", - columnLetter: "EO", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "3_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_inc", - columnLetter: "EP", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "3_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_seq", - columnLetter: "EQ", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "3_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_comment", - columnLetter: "ER", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_novyy_plan_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.new_plan", - columnLetter: "ES", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "3_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.adj_current", - columnLetter: "EU", - size: 310, + columnLetter: "DQ", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q3.base_correction_comment", + columnLetter: "DR", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q3.revision_inc", + columnLetter: "DS", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q3.revision_seq", + columnLetter: "DT", + size: 250, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q3.revision_comment", + columnLetter: "DU", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q3.new_plan", + columnLetter: "DV", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, @@ -3030,97 +2385,96 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Корректировки с ССП / сметой развития", - accessorKey: "3_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "3_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q3.adj_current", + columnLetter: "DX", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q3.adj_ssp", - columnLetter: "EV", - size: 310, + columnLetter: "DY", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "3_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.adj_rf", - columnLetter: "EW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "3_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q3.adj_reserve", - columnLetter: "EX", - size: 310, + columnLetter: "DZ", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Скорректированный план 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_skorr_plan_3_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.corrected_plan", - columnLetter: "FA", - size: 310, + header: "Комментарий", + accessorKey: "data.q3.adj_comment", + columnLetter: "EA", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q3.corrected_plan", + columnLetter: "EB", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "3_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "3_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q3.pay_date", - columnLetter: "FC", + columnLetter: "ED", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3131,36 +2485,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q3.pay_amount", - columnLetter: "FD", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q3.pay_ho", - columnLetter: "FE", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q3.pay_rf", - columnLetter: "FF", - size: 300, + columnLetter: "EE", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3172,7 +2500,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q3.pay_comment", - columnLetter: "FG", + columnLetter: "EF", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3183,10 +2511,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q3.pay_act", - columnLetter: "FH", - size: 390, + columnLetter: "EG", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3198,24 +2526,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_bron_3_kv_26", + header: "Фактические расходы", + accessorKey: "3_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q3.booking", - columnLetter: "FJ", - size: 310, + columnLetter: "EI", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт июль", + accessorKey: "data.q3.actual_m1", + columnLetter: "EJ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт август", + accessorKey: "data.q3.actual_m2", + columnLetter: "EK", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт сентябрь", + accessorKey: "data.q3.actual_m3", + columnLetter: "EL", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q3.actual_quarter", + columnLetter: "EM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 3 квартала", + accessorKey: "data.q3.residual_after_booking", + columnLetter: "EN", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 3 квартала", + accessorKey: "data.q3.residual_after_actual", + columnLetter: "EO", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -3223,134 +2629,72 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за июль {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_iyul_26", + header: "Корректировка остатка в последующий квартал", + accessorKey: "3_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschiy_kvartal", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m1", - columnLetter: "FK", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за август {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_avgust_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m2", - columnLetter: "FL", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за сентябрь {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_sentyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m3", - columnLetter: "FM", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_quarter", - columnLetter: "FN", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_ostatok_posle_broni_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.residual_after_booking", - columnLetter: "FO", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_ostatok_posle_fakta_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.residual_after_actual", - columnLetter: "FP", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 3-го квартала", - accessorKey: "3_kvartal_2026_zakrytie_3_go_kvartala", - columns: [ - { - header: "Перенос в 4 кв. {year:short}", + header: "Перенос в 4 квартал", accessorKey: "data.q3.transfer_q4", - columnLetter: "FR", - size: 170, + columnLetter: "EQ", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q3.transfer_q4_delay_acts", + columnLetter: "ER", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q3.transfer_q4_delay_procurement", + columnLetter: "ES", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q3.transfer_q4_economy_rf", + columnLetter: "ET", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 4 квартал", + accessorKey: "data.q3.transfer_next_comment", + columnLetter: "EU", + size: 320, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3362,7 +2706,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q3.transfer_econ", - columnLetter: "FS", + columnLetter: "EV", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -3375,7 +2719,7 @@ export const config = { { header: "Всего", accessorKey: "data.q3.total", - columnLetter: "FT", + columnLetter: "EW", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3388,8 +2732,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -3402,266 +2746,197 @@ export const config = { }, }, { - header: "4 квартал {year}", - accessorKey: "4_kvartal_2026", + header: "4 квартал {year} года", + accessorKey: "4_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "4_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "4_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q4.target_change", - columnLetter: "FV", - size: 310, + columnLetter: "EY", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "4_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q4.base_correction", - columnLetter: "FW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "4_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_inc", - columnLetter: "FX", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "4_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_seq", - columnLetter: "FY", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "4_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_comment", - columnLetter: "FZ", - size: 310, - filterFn: "contains", - }, - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_comment", - columnLetter: "GG", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_novyy_plan_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.new_plan", - columnLetter: "GA", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "4_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_current", - columnLetter: "GC", - size: 300, + columnLetter: "EZ", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q4.base_correction_comment", + columnLetter: "FA", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q4.revision_inc", + columnLetter: "FB", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с ССП / сметой развития", - accessorKey: "4_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_ssp", - columnLetter: "GD", - size: 300, + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q4.revision_seq", + columnLetter: "FC", + size: 250, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "4_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_rf", - columnLetter: "GE", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "4_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_reserve", - columnLetter: "GF", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Скорректированный план 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_skorr_plan_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.corrected_plan", - columnLetter: "GH", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: " ", - accessorKey: "4_kvartal_2026_ref", - columns: [ - { - header: "", - accessorKey: "4_kvartal_2026_ref_field", - columnLetter: "GI", + header: "Комментарий", + accessorKey: "data.q4.revision_comment", + columnLetter: "FD", size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q4.new_plan", + columnLetter: "FE", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Платёж и предоставление акта", - accessorKey: "4_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Корректировки плановых значений", + accessorKey: "4_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", + columns: [ + { + header: "Текущие корректировки (= 0)", + accessorKey: "data.q4.adj_current", + columnLetter: "FG", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", + accessorKey: "data.q4.adj_ssp", + columnLetter: "FH", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из резерва", + accessorKey: "data.q4.adj_reserve", + columnLetter: "FI", + size: 180, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q4.adj_comment", + columnLetter: "FJ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q4.corrected_plan", + columnLetter: "FK", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + ], + muiTableHeadCellProps: { + sx: { + backgroundColor: "#B2A1C7", + color: "#000000", + }, + }, + }, + { + header: "Согласование платежей", + accessorKey: "4_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q4.pay_date", - columnLetter: "GJ", + columnLetter: "FM", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3672,36 +2947,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q4.pay_amount", - columnLetter: "GK", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q4.pay_ho", - columnLetter: "GL", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q4.pay_rf", - columnLetter: "GM", - size: 300, + columnLetter: "FN", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3713,7 +2962,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q4.pay_comment", - columnLetter: "GN", + columnLetter: "FO", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3724,10 +2973,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q4.pay_act", - columnLetter: "GO", - size: 390, + columnLetter: "FP", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3739,24 +2988,115 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_bron_4_kv_26", + header: "Фактические расходы", + accessorKey: "4_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q4.booking", - columnLetter: "GQ", - size: 310, + columnLetter: "FR", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт октябрь", + accessorKey: "data.q4.actual_m1", + columnLetter: "FS", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт ноябрь", + accessorKey: "data.q4.actual_m2", + columnLetter: "FT", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт декабрь", + accessorKey: "data.q4.actual_m3", + columnLetter: "FU", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "СПОД (январь)", + accessorKey: "data.q4.actual_spod", + columnLetter: "FV", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал (с учётом СПОД)", + accessorKey: "data.q4.actual_quarter", + columnLetter: "FW", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 4 квартала (с учётом СПОД)", + accessorKey: "data.q4.residual_after_booking", + columnLetter: "FX", + size: 420, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 4 квартала (с учётом СПОД)", + accessorKey: "data.q4.residual_after_actual", + columnLetter: "FY", + size: 420, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -3764,152 +3104,19 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за октябрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_oktyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m1", - columnLetter: "GR", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за ноябрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_noyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m2", - columnLetter: "GS", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за декабрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_dekabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m3", - columnLetter: "GT", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_quarter", - columnLetter: "GU", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт СПОД", - accessorKey: "4_kvartal_2026_fakt_spod", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_spod", - columnLetter: "GV", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_ostatok_posle_broni_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.residual_after_booking", - columnLetter: "GW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_ostatok_posle_fakta_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.residual_after_actual", - columnLetter: "GX", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 4-го квартала", - accessorKey: "4_kvartal_2026_zakrytie_4_go_kvartala", + header: "Экономия", + accessorKey: "4_kvartal_2026_goda_ekonomiya", columns: [ { header: "Перенос в фонд экономии", accessorKey: "data.q4.transfer_econ", - columnLetter: "HA", + columnLetter: "GA", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -3919,54 +3126,10 @@ export const config = { }, }, }, - { - header: "Всего", - accessorKey: "data.q4.total", - columnLetter: "HB", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_38", - columns: [ - { - header: "Факт {year:short}", - accessorKey: "field_fakt_26", - columns: [ - { - header: "", - accessorKey: "data.totals.fact_year", - columnLetter: "HE", - size: 150, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", + backgroundColor: "#B2A1C7", color: "#000000", }, }, @@ -3980,24 +3143,43 @@ export const config = { }, }, { - header: ".", - accessorKey: "field_39", + header: "{year} год", + accessorKey: "2026_god_43", columns: [ { - header: "Сумма оплаты", - accessorKey: "field_summa_oplaty", + header: "", + accessorKey: "2026_god_field_5", columns: [ { - header: "", - accessorKey: "data.totals.pay_year", - columnLetter: "HG", - size: 150, + header: "Сумма фактических расходов за год", + accessorKey: "data.totals.fact_year", + columnLetter: "GC", + size: 330, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Сумма оплаты за год", + accessorKey: "data.totals.pay_year", + columnLetter: "GE", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#95B3D7", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, diff --git a/web/src/components/RealtimeTable/constants/FORM_2/OPER.js b/web/src/components/RealtimeTable/constants/FORM_2/OPER.js index 8d916bf..30f57e2 100644 --- a/web/src/components/RealtimeTable/constants/FORM_2/OPER.js +++ b/web/src/components/RealtimeTable/constants/FORM_2/OPER.js @@ -9,14 +9,6 @@ import { export const config = { config: { colors: { - "data.header.vsp_id": { - color_type: blueColumn, - accessorKey: "data.header.vsp_id", - }, - "data.header.vsp_address": { - color_type: blueColumn, - accessorKey: "data.header.vsp_address", - }, "data.header.section_code": { color_type: blueColumn, accessorKey: "data.header.section_code", @@ -33,9 +25,9 @@ export const config = { color_type: blueColumn, accessorKey: "data.header.name", }, - "data.header.internal_order": { + "data.header.vsp_id": { color_type: blueColumn, - accessorKey: "data.header.internal_order", + accessorKey: "data.header.vsp_id", }, "data.plan.q1": { color_type: blueColumn, @@ -61,41 +53,9 @@ export const config = { color_type: blueColumn, accessorKey: "data.plan.comment", }, - "data.contract_summary.total": { - color_type: blueColumn, - accessorKey: "data.contract_summary.total", - }, - "data.contract_summary.counterparty": { - color_type: blueColumn, - accessorKey: "data.contract_summary.counterparty", - }, - "data.contract_summary.deadline": { + "2026_god_field_field": { color_type: whiteColumn, - accessorKey: "data.contract_summary.deadline", - }, - "data.contract_summary.comment": { - color_type: blueColumn, - accessorKey: "data.contract_summary.comment", - }, - "data.contract_summary.future_y1": { - color_type: blueColumn, - accessorKey: "data.contract_summary.future_y1", - }, - "data.contract_summary.future_y2": { - color_type: blueColumn, - accessorKey: "data.contract_summary.future_y2", - }, - "data.contract_summary.other_ssp": { - color_type: blueColumn, - accessorKey: "data.contract_summary.other_ssp", - }, - "data.allocation.contract_ref": { - color_type: blueColumn, - accessorKey: "data.allocation.contract_ref", - }, - "data.allocation.purpose": { - color_type: blueColumn, - accessorKey: "data.allocation.purpose", + accessorKey: "2026_god_field_field", }, "data.seq_dfip.q1": { color_type: blueColumn, @@ -165,62 +125,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.approved.year", }, - "data.collegial.approved": { - color_type: orangeColumn, - accessorKey: "data.collegial.approved", - }, - "data.collegial.protocol": { - color_type: orangeColumn, - accessorKey: "data.collegial.protocol", - }, - field_kollegialnye_organy_field: { - color_type: orangeColumn, - accessorKey: "field_kollegialnye_organy_field", - }, - "data.collegial.note": { - color_type: orangeColumn, - accessorKey: "data.collegial.note", - }, - "data.ckk.ceiling": { - color_type: orangeColumn, - accessorKey: "data.ckk.ceiling", - }, - "data.booking.y2026.q1": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q1", - }, - "data.booking.y2026.q2": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q2", - }, - "data.booking.y2026.q3": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q3", - }, - "data.booking.y2026.q4": { - color_type: orangeColumn, - accessorKey: "data.booking.y2026.q4", - }, - "data.ckk.rf_schedule": { - color_type: orangeColumn, - accessorKey: "data.ckk.rf_schedule", - }, - "data.ckk.deadline": { - color_type: orangeColumn, - accessorKey: "data.ckk.deadline", - }, - "data.ckk.proc_plan": { - color_type: orangeColumn, - accessorKey: "data.ckk.proc_plan", - }, - "data.ckk.proc_method": { - color_type: orangeColumn, - accessorKey: "data.ckk.proc_method", - }, - "data.ckk.comment": { - color_type: orangeColumn, - accessorKey: "data.ckk.comment", - }, "data.contract.counterparty": { color_type: orangeColumn, accessorKey: "data.contract.counterparty", @@ -229,9 +133,9 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.reference", }, - "data.contract.addenda": { + "data.contract.date": { color_type: orangeColumn, - accessorKey: "data.contract.addenda", + accessorKey: "data.contract.date", }, "data.contract.subject": { color_type: orangeColumn, @@ -245,38 +149,10 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.ceiling", }, - "data.contract.q1": { - color_type: orangeColumn, - accessorKey: "data.contract.q1", - }, - "data.contract.q2": { - color_type: orangeColumn, - accessorKey: "data.contract.q2", - }, - "data.contract.q3": { - color_type: orangeColumn, - accessorKey: "data.contract.q3", - }, - "data.contract.q4": { - color_type: orangeColumn, - accessorKey: "data.contract.q4", - }, - "data.contract.rf_schedule": { - color_type: orangeColumn, - accessorKey: "data.contract.rf_schedule", - }, "data.contract.vat_rate": { color_type: orangeColumn, accessorKey: "data.contract.vat_rate", }, - "data.contract.exchange_rate": { - color_type: orangeColumn, - accessorKey: "data.contract.exchange_rate", - }, - "data.contract.amount_foreign": { - color_type: orangeColumn, - accessorKey: "data.contract.amount_foreign", - }, "data.contract.deadline": { color_type: orangeColumn, accessorKey: "data.contract.deadline", @@ -293,6 +169,38 @@ export const config = { color_type: orangeColumn, accessorKey: "data.contract.comment", }, + "data.booking.y2026.q1": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q1", + }, + "data.booking.y2026.q2": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q2", + }, + "data.booking.y2026.q3": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q3", + }, + "data.booking.y2026.q4": { + color_type: orangeColumn, + accessorKey: "data.booking.y2026.q4", + }, + "data.booking.y2027.q1": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q1", + }, + "data.booking.y2027.q2": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q2", + }, + "data.booking.y2027.q3": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q3", + }, + "data.booking.y2027.q4": { + color_type: orangeColumn, + accessorKey: "data.booking.y2027.q4", + }, "data.q1.adj_current": { color_type: yellowColumn, accessorKey: "data.q1.adj_current", @@ -301,19 +209,10 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q1.adj_ssp", }, - "data.q1.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q1.adj_rf", - }, "data.q1.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q1.adj_reserve", }, - "1_kvartal_2026_perenos_vo_2_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "1_kvartal_2026_perenos_vo_2_kv_26_summa_tys_rub_s_uchetom_ndc", - }, "data.q1.adj_comment": { color_type: yellowColumn, accessorKey: "data.q1.adj_comment", @@ -322,9 +221,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q1.corrected_plan", }, - "1_kvartal_2026_ref_field": { + "1_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "1_kvartal_2026_ref_field", + accessorKey: "1_kvartal_2026_goda_field_field", }, "data.q1.pay_date": { color_type: blueColumn, @@ -334,14 +233,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q1.pay_amount", }, - "data.q1.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q1.pay_ho", - }, - "data.q1.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q1.pay_rf", - }, "data.q1.pay_comment": { color_type: blueColumn, accessorKey: "data.q1.pay_comment", @@ -350,10 +241,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q1.pay_act", }, - "1_kvartal_2026_field_field": { - color_type: whiteColumn, - accessorKey: "1_kvartal_2026_field_field", - }, "data.q1.booking": { color_type: orangeColumn, accessorKey: "data.q1.booking", @@ -386,6 +273,22 @@ export const config = { color_type: redColumn, accessorKey: "data.q1.transfer_q2", }, + "data.q1.transfer_q2_delay_acts": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_delay_acts", + }, + "data.q1.transfer_q2_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_delay_procurement", + }, + "data.q1.transfer_q2_economy_rf": { + color_type: redColumn, + accessorKey: "data.q1.transfer_q2_economy_rf", + }, + "data.q1.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q1.transfer_next_comment", + }, "data.q1.transfer_q3": { color_type: redColumn, accessorKey: "data.q1.transfer_q3", @@ -394,6 +297,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q1.transfer_q4", }, + "data.q1.transfer_far_comment": { + color_type: redColumn, + accessorKey: "data.q1.transfer_far_comment", + }, "data.q1.transfer_econ": { color_type: redColumn, accessorKey: "data.q1.transfer_econ", @@ -410,6 +317,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q2.base_correction", }, + "data.q2.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q2.base_correction_comment", + }, "data.q2.revision_inc": { color_type: redColumn, accessorKey: "data.q2.revision_inc", @@ -426,9 +337,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q2.new_plan", }, - "2_kvartal_2026_field_field": { + "2_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "2_kvartal_2026_field_field", + accessorKey: "2_kvartal_2026_goda_field_field", }, "data.q2.adj_current": { color_type: yellowColumn, @@ -438,27 +349,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q2.adj_ssp", }, - "data.q2.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q2.adj_rf", - }, "data.q2.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q2.adj_reserve", }, - "2_kvartal_2026_perenos_v_3_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "2_kvartal_2026_perenos_v_3_kv_26_summa_tys_rub_s_uchetom_ndc", + "data.q2.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q2.adj_comment", }, "data.q2.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q2.corrected_plan", }, - "2_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "2_kvartal_2026_ref_field", - }, "data.q2.pay_date": { color_type: blueColumn, accessorKey: "data.q2.pay_date", @@ -467,14 +369,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q2.pay_amount", }, - "data.q2.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q2.pay_ho", - }, - "data.q2.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q2.pay_rf", - }, "data.q2.pay_comment": { color_type: blueColumn, accessorKey: "data.q2.pay_comment", @@ -515,10 +409,30 @@ export const config = { color_type: redColumn, accessorKey: "data.q2.transfer_q3", }, + "data.q2.transfer_q3_delay_acts": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_delay_acts", + }, + "data.q2.transfer_q3_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_delay_procurement", + }, + "data.q2.transfer_q3_economy_rf": { + color_type: redColumn, + accessorKey: "data.q2.transfer_q3_economy_rf", + }, + "data.q2.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q2.transfer_next_comment", + }, "data.q2.transfer_q4": { color_type: redColumn, accessorKey: "data.q2.transfer_q4", }, + "data.q2.transfer_far_comment": { + color_type: redColumn, + accessorKey: "data.q2.transfer_far_comment", + }, "data.q2.transfer_econ": { color_type: redColumn, accessorKey: "data.q2.transfer_econ", @@ -535,6 +449,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q3.base_correction", }, + "data.q3.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q3.base_correction_comment", + }, "data.q3.revision_inc": { color_type: redColumn, accessorKey: "data.q3.revision_inc", @@ -551,9 +469,9 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q3.new_plan", }, - "3_kvartal_2026_field_field": { + "3_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "3_kvartal_2026_field_field", + accessorKey: "3_kvartal_2026_goda_field_field", }, "data.q3.adj_current": { color_type: yellowColumn, @@ -563,27 +481,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q3.adj_ssp", }, - "data.q3.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q3.adj_rf", - }, "data.q3.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q3.adj_reserve", }, - "3_kvartal_2026_perenos_v_4_kv_26_summa_tys_rub_s_uchetom_ndc": { - color_type: redColumn, - accessorKey: - "3_kvartal_2026_perenos_v_4_kv_26_summa_tys_rub_s_uchetom_ndc", + "data.q3.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q3.adj_comment", }, "data.q3.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q3.corrected_plan", }, - "3_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "3_kvartal_2026_ref_field", - }, "data.q3.pay_date": { color_type: blueColumn, accessorKey: "data.q3.pay_date", @@ -592,14 +501,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q3.pay_amount", }, - "data.q3.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q3.pay_ho", - }, - "data.q3.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q3.pay_rf", - }, "data.q3.pay_comment": { color_type: blueColumn, accessorKey: "data.q3.pay_comment", @@ -640,6 +541,22 @@ export const config = { color_type: redColumn, accessorKey: "data.q3.transfer_q4", }, + "data.q3.transfer_q4_delay_acts": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_delay_acts", + }, + "data.q3.transfer_q4_delay_procurement": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_delay_procurement", + }, + "data.q3.transfer_q4_economy_rf": { + color_type: redColumn, + accessorKey: "data.q3.transfer_q4_economy_rf", + }, + "data.q3.transfer_next_comment": { + color_type: redColumn, + accessorKey: "data.q3.transfer_next_comment", + }, "data.q3.transfer_econ": { color_type: redColumn, accessorKey: "data.q3.transfer_econ", @@ -656,6 +573,10 @@ export const config = { color_type: redColumn, accessorKey: "data.q4.base_correction", }, + "data.q4.base_correction_comment": { + color_type: redColumn, + accessorKey: "data.q4.base_correction_comment", + }, "data.q4.revision_inc": { color_type: redColumn, accessorKey: "data.q4.revision_inc", @@ -668,17 +589,13 @@ export const config = { color_type: redColumn, accessorKey: "data.q4.revision_comment", }, - "data.q4.adj_comment": { - color_type: yellowColumn, - accessorKey: "data.q4.adj_comment", - }, "data.q4.new_plan": { color_type: yellowColumn, accessorKey: "data.q4.new_plan", }, - "4_kvartal_2026_field_field": { + "4_kvartal_2026_goda_field_field": { color_type: whiteColumn, - accessorKey: "4_kvartal_2026_field_field", + accessorKey: "4_kvartal_2026_goda_field_field", }, "data.q4.adj_current": { color_type: yellowColumn, @@ -688,22 +605,18 @@ export const config = { color_type: yellowColumn, accessorKey: "data.q4.adj_ssp", }, - "data.q4.adj_rf": { - color_type: yellowColumn, - accessorKey: "data.q4.adj_rf", - }, "data.q4.adj_reserve": { color_type: yellowColumn, accessorKey: "data.q4.adj_reserve", }, + "data.q4.adj_comment": { + color_type: yellowColumn, + accessorKey: "data.q4.adj_comment", + }, "data.q4.corrected_plan": { color_type: yellowColumn, accessorKey: "data.q4.corrected_plan", }, - "4_kvartal_2026_ref_field": { - color_type: whiteColumn, - accessorKey: "4_kvartal_2026_ref_field", - }, "data.q4.pay_date": { color_type: blueColumn, accessorKey: "data.q4.pay_date", @@ -712,14 +625,6 @@ export const config = { color_type: blueColumn, accessorKey: "data.q4.pay_amount", }, - "data.q4.pay_ho": { - color_type: blueColumn, - accessorKey: "data.q4.pay_ho", - }, - "data.q4.pay_rf": { - color_type: blueColumn, - accessorKey: "data.q4.pay_rf", - }, "data.q4.pay_comment": { color_type: blueColumn, accessorKey: "data.q4.pay_comment", @@ -744,14 +649,14 @@ export const config = { color_type: greenColumn, accessorKey: "data.q4.actual_m3", }, - "data.q4.actual_quarter": { - color_type: greenColumn, - accessorKey: "data.q4.actual_quarter", - }, "data.q4.actual_spod": { color_type: greenColumn, accessorKey: "data.q4.actual_spod", }, + "data.q4.actual_quarter": { + color_type: greenColumn, + accessorKey: "data.q4.actual_quarter", + }, "data.q4.residual_after_booking": { color_type: orangeColumn, accessorKey: "data.q4.residual_after_booking", @@ -760,124 +665,87 @@ export const config = { color_type: greenColumn, accessorKey: "data.q4.residual_after_actual", }, - "4_kvartal_2026_zakrytie_4_go_kvartala_field": { - color_type: redColumn, - accessorKey: "4_kvartal_2026_zakrytie_4_go_kvartala_field", - }, "data.q4.transfer_econ": { color_type: redColumn, accessorKey: "data.q4.transfer_econ", }, - "data.q4.total": { - color_type: redColumn, - accessorKey: "data.q4.total", - }, "data.totals.fact_year": { color_type: greenColumn, accessorKey: "data.totals.fact_year", }, + "2026_god_field_field_5": { + color_type: whiteColumn, + accessorKey: "2026_god_field_field_5", + }, "data.totals.pay_year": { color_type: blueColumn, accessorKey: "data.totals.pay_year", }, + "data.header.vsp_address": { + color_type: blueColumn, + accessorKey: "data.header.vsp_address", + }, }, columns: [ { - header: "", + header: " ", accessorKey: "field", columns: [ { - header: "Код раздела", - accessorKey: "field_kod_razdela", + header: " ", + accessorKey: "field_field", columns: [ { - header: "", + header: "Код раздела", accessorKey: "data.header.section_code", - columnLetter: "C", + columnLetter: "A", size: 150, filterFn: "contains", }, - ], - }, - { - header: "ID Статьи", - accessorKey: "field_id_stati", - columns: [ { - header: "", + header: "ID Статьи", accessorKey: "data.header.item_id", - columnLetter: "D", + columnLetter: "B", size: 150, filterFn: "contains", }, - ], - }, - { - header: "ID Группы номенклатуры", - accessorKey: "field_id_gruppy_nomenklatury", - columns: [ { - header: "", + header: "ID Группы номенклатуры", accessorKey: "data.header.num_group", - columnLetter: "E", - size: 150, + columnLetter: "C", + size: 220, filterFn: "contains", }, - ], - }, - { - header: "Наименование", - accessorKey: "field_naimenovanie", - columns: [ { - header: "", + header: "Наименование", accessorKey: "data.header.name", - columnLetter: "F", + columnLetter: "D", size: 400, filterFn: "contains", }, - ], - }, - - { - header: "ВСП РФ", - accessorKey: "field_vsp_rf", - columns: [ { - header: "", + header: "ВСП РФ", accessorKey: "data.header.vsp_id", - columnLetter: "G", + columnLetter: "E", size: 150, filterFn: "contains", editType: "vsp_dropdown", }, - ], - }, - { - header: "Адрес ВСП", - accessorKey: "field_adres_vsp", - columns: [ { - header: "", + header: "Адрес ВСП", accessorKey: "data.header.vsp_address", - columnLetter: "G1", + columnLetter: "E1", size: 220, filterFn: "contains", + editType: "vsp_dropdown", }, ], - }, - { - header: "Внутренний заказ", - accessorKey: "field_vnutrenniy_zakaz", - columns: [ - { - header: "", - accessorKey: "data.header.internal_order", - columnLetter: "G", - size: 150, - filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", }, - ], + }, }, ], muiTableHeadCellProps: { @@ -888,17 +756,42 @@ export const config = { }, }, { - header: "Планируемые показатели сметы расходов ССП", - accessorKey: "planiruemye_ssp_pokazateli_smety_raskhodov", + header: "{year} год", + accessorKey: "2026_god", columns: [ { - header: "План {year} (тыс. руб.) с учётом складского НДС", - accessorKey: - "planiruemye_ssp_pokazateli_smety_raskhodov_plan_2026tys_rub_s_uchetom_skladskogo_nds", + header: "Планирование годовых показателей", + accessorKey: "2026_god_planirovanie_godovykh_pokazateley", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.plan.q1", + columnLetter: "F", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "2 квартал", + accessorKey: "data.plan.q2", + columnLetter: "G", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "3 квартал", + accessorKey: "data.plan.q3", columnLetter: "H", size: 150, filterFn: "contains", @@ -910,35 +803,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", - accessorKey: "data.plan.q2", - columnLetter: "I", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "3 Кв. {year:short}", - accessorKey: "data.plan.q3", - columnLetter: "J", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.plan.q4", - columnLetter: "K", + columnLetter: "I", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -951,7 +818,7 @@ export const config = { { header: "Год", accessorKey: "data.plan.year", - columnLetter: "L", + columnLetter: "J", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -964,7 +831,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.plan.comment", - columnLetter: "M", + columnLetter: "K", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -977,18 +844,31 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Договоры", - accessorKey: "planiruemye_ssp_pokazateli_smety_raskhodov_dogovory", + header: "Секвестирование ДФиП", + accessorKey: "2026_god_sekvestirovanie_dfip", columns: [ { - header: "Сумма", - accessorKey: "data.contract_summary.total", + header: "1 квартал", + accessorKey: "data.seq_dfip.q1", + columnLetter: "M", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "2 квартал", + accessorKey: "data.seq_dfip.q2", columnLetter: "N", size: 150, filterFn: "contains", @@ -1000,8 +880,8 @@ export const config = { }, }, { - header: "Контрагент", - accessorKey: "data.contract_summary.counterparty", + header: "3 квартал", + accessorKey: "data.seq_dfip.q3", columnLetter: "O", size: 150, filterFn: "contains", @@ -1013,176 +893,9 @@ export const config = { }, }, { - header: "Срок", - accessorKey: "data.contract_summary.deadline", - columnLetter: "P", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Комментарии", - accessorKey: "data.contract_summary.comment", - columnLetter: "Q", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Платежи в {year+1} году", - accessorKey: "data.contract_summary.future_y1", - columnLetter: "R", - size: 190, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Платежи в {year+2} году", - accessorKey: "data.contract_summary.future_y2", - columnLetter: "S", - size: 190, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Сумма в других ССП", - accessorKey: "data.contract_summary.other_ssp", - columnLetter: "T", - size: 180, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Аллокация расходов", - accessorKey: "allokatsiya_raskhodov", - columns: [ - { - header: "ID Договора", - accessorKey: "allokatsiya_raskhodov_id_dogovora", - columns: [ - { - header: "", - accessorKey: "data.allocation.contract_ref", - columnLetter: "V", - size: 150, - filterFn: "contains", - }, - ], - }, - { - header: "Назначение расхода фактической аллокации", - accessorKey: - "allokatsiya_raskhodov_naznachenie_raskhoda_fakticheskoy_allokatsii", - columns: [ - { - header: "", - accessorKey: "data.allocation.purpose", - columnLetter: "W", - size: 150, - filterFn: "contains", - }, - ], - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Секвестирование ДФиП", - accessorKey: "sekvestirovanie_dfip", - columns: [ - { - header: "Корректировка сметы расходов", - accessorKey: "sekvestirovanie_dfip_korrektirovka_smety_raskhodov", - columns: [ - { - header: "1 Кв. {year:short}", - accessorKey: "data.seq_dfip.q1", - columnLetter: "Y", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "2 Кв. {year:short}", - accessorKey: "data.seq_dfip.q2", - columnLetter: "Z", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "3 Кв. {year:short}", - accessorKey: "data.seq_dfip.q3", - columnLetter: "AA", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.seq_dfip.q4", - columnLetter: "AB", + columnLetter: "P", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1195,7 +908,7 @@ export const config = { { header: "Год", accessorKey: "data.seq_dfip.year", - columnLetter: "AC", + columnLetter: "Q", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1205,53 +918,35 @@ export const config = { }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Обоснование", - accessorKey: "sekvestirovanie_dfip_obosnovanie", - columns: [ { - header: "", + header: "Обоснование", accessorKey: "data.seq_dfip.justification", - columnLetter: "AD", + columnLetter: "R", size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Отнесение в резерв", - accessorKey: "otnesenie_v_rezerv", - columns: [ { - header: "Резерв финансового комитета", - accessorKey: "otnesenie_v_rezerv_rezerv_finansovogo_komiteta", + header: "Секвестирование ССП ГО", + accessorKey: "2026_god_sekvestirovanie_ssp_go", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.seq_ssp.q1", - columnLetter: "AF", + columnLetter: "T", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1262,9 +957,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", + header: "2 квартал", accessorKey: "data.seq_ssp.q2", - columnLetter: "AG", + columnLetter: "U", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1275,9 +970,9 @@ export const config = { }, }, { - header: "3 Кв. {year:short}", + header: "3 квартал", accessorKey: "data.seq_ssp.q3", - columnLetter: "AH", + columnLetter: "V", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1288,9 +983,9 @@ export const config = { }, }, { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.seq_ssp.q4", - columnLetter: "AI", + columnLetter: "W", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1303,7 +998,7 @@ export const config = { { header: "Год", accessorKey: "data.seq_ssp.year", - columnLetter: "AJ", + columnLetter: "X", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1313,53 +1008,35 @@ export const config = { }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Обоснование", - accessorKey: "otnesenie_v_rezerv_obosnovanie", - columns: [ { - header: "", + header: "Обоснование", accessorKey: "data.seq_ssp.justification", - columnLetter: "AK", + columnLetter: "Y", size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "Итоговая смета расходов", - accessorKey: "itogovaya_smeta_raskhodov", - columns: [ { - header: "План {year}", - accessorKey: "itogovaya_smeta_raskhodov_plan_2026", + header: "Утвержденная смета расходов", + accessorKey: "2026_god_utverzhdennaya_smeta_raskhodov", columns: [ { - header: "1 Кв. {year:short}", + header: "1 квартал", accessorKey: "data.approved.q1", - columnLetter: "AM", + columnLetter: "AA", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1370,9 +1047,9 @@ export const config = { }, }, { - header: "2 Кв. {year:short}", + header: "2 квартал", accessorKey: "data.approved.q2", - columnLetter: "AN", + columnLetter: "AB", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1383,9 +1060,9 @@ export const config = { }, }, { - header: "3 Кв. {year:short}", + header: "3 квартал", accessorKey: "data.approved.q3", - columnLetter: "AO", + columnLetter: "AC", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1396,9 +1073,9 @@ export const config = { }, }, { - header: "4 Кв. {year:short}", + header: "4 квартал", accessorKey: "data.approved.q4", - columnLetter: "AP", + columnLetter: "AD", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1411,7 +1088,7 @@ export const config = { { header: "Год", accessorKey: "data.approved.year", - columnLetter: "AQ", + columnLetter: "AE", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1424,249 +1101,19 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#BFBFBF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_6", - columns: [ { - header: "Коллегиальные органы", - accessorKey: "field_kollegialnye_organy", - columns: [ - { - header: "Сумма (с учётом НДС)", - accessorKey: "data.collegial.approved", - columnLetter: "AS", - size: 200, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Реквизиты протокола (дата, номер)", - accessorKey: "data.collegial.protocol", - columnLetter: "AT", - size: 330, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - - { - header: "Примечание", - accessorKey: "data.collegial.note", - columnLetter: "AV", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_10", - columns: [ - { - header: "ЦКК", - accessorKey: "field_tskk", - columns: [ - { - header: "Предельная стоимость, тыс. руб. (с учётом НДС)", - accessorKey: "data.ckk.ceiling", - columnLetter: "AX", - size: 420, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Расходы 1 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q1", - columnLetter: "AY", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 2 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q2", - columnLetter: "AZ", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 3 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q3", - columnLetter: "BA", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 4 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.booking.y2026.q4", - columnLetter: "BB", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "По сметам РФ (1 кв., 2 кв., 3 кв., 4 кв.)", - accessorKey: "data.ckk.rf_schedule", - columnLetter: "BC", - size: 370, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Срок поставки", - accessorKey: "data.ckk.deadline", - columnLetter: "BD", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "План закупок", - accessorKey: "data.ckk.proc_plan", - columnLetter: "BE", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Способ закупки", - accessorKey: "data.ckk.proc_method", - columnLetter: "BF", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "data.ckk.comment", - columnLetter: "BG", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_20", - columns: [ - { - header: "Договор", - accessorKey: "field_dogovor", + header: "Параметры заключенного хозяйственного договора", + accessorKey: "2026_god_parametry_zaklyuchennogo_khozyaystvennogo_dogovora", columns: [ { header: "Контрагент", accessorKey: "data.contract.counterparty", - columnLetter: "BI", + columnLetter: "AG", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1677,10 +1124,10 @@ export const config = { }, }, { - header: "Договор (реквизиты)", + header: "Номер", accessorKey: "data.contract.reference", - columnLetter: "BJ", - size: 190, + columnLetter: "AH", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1690,10 +1137,10 @@ export const config = { }, }, { - header: "Дополнительные соглашения, спецификации и пр. (реквизиты)", - accessorKey: "data.contract.addenda", - columnLetter: "BK", - size: 460, + header: "Дата", + accessorKey: "data.contract.date", + columnLetter: "AI", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1705,7 +1152,7 @@ export const config = { { header: "Предмет", accessorKey: "data.contract.subject", - columnLetter: "BL", + columnLetter: "AJ", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1716,9 +1163,9 @@ export const config = { }, }, { - header: "Валюта договора", + header: "Валюта", accessorKey: "data.contract.currency", - columnLetter: "BM", + columnLetter: "AK", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1729,75 +1176,10 @@ export const config = { }, }, { - header: "Предельная стоимость, тыс. руб. (с учётом НДС)", + header: "Предельная стоимость", accessorKey: "data.contract.ceiling", - columnLetter: "BN", - size: 420, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Расходы 1 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q1", - columnLetter: "BO", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 2 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q2", - columnLetter: "BP", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 3 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q3", - columnLetter: "BQ", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "Расходы 4 кв. {year} г., тыс. руб. (с учётом НДС)", - accessorKey: "data.contract.q4", - columnLetter: "BR", - size: 470, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#748C42", - color: "#000000", - }, - }, - }, - { - header: "По сметам РФ (1 кв., 2 кв., 3 кв., 4 кв.)", - accessorKey: "data.contract.rf_schedule", - columnLetter: "BS", - size: 370, + columnLetter: "AL", + size: 200, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -1809,7 +1191,7 @@ export const config = { { header: "Ставка НДС (%)", accessorKey: "data.contract.vat_rate", - columnLetter: "BT", + columnLetter: "AM", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1819,36 +1201,10 @@ export const config = { }, }, }, - { - header: "Курс пересчёта", - accessorKey: "data.contract.exchange_rate", - columnLetter: "BU", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "Сумма (с учётом НДС), вал (с учётом НДС)", - accessorKey: "data.contract.amount_foreign", - columnLetter: "BV", - size: 400, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, { header: "Срок", accessorKey: "data.contract.deadline", - columnLetter: "BW", + columnLetter: "AN", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1861,7 +1217,7 @@ export const config = { { header: "Схема платежа", accessorKey: "data.contract.scheme", - columnLetter: "BX", + columnLetter: "AO", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1874,7 +1230,7 @@ export const config = { { header: "АКТ", accessorKey: "data.contract.act", - columnLetter: "BY", + columnLetter: "AP", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1887,7 +1243,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.contract.comment", - columnLetter: "BZ", + columnLetter: "AQ", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -1897,10 +1253,62 @@ export const config = { }, }, }, + { + header: "Бронь средств в 1 квартале", + accessorKey: "data.booking.y2026.q1", + columnLetter: "AR", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств во 2 квартале", + accessorKey: "data.booking.y2026.q2", + columnLetter: "AS", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 3 квартале", + accessorKey: "data.booking.y2026.q3", + columnLetter: "AT", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 4 квартале", + accessorKey: "data.booking.y2026.q4", + columnLetter: "AU", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, @@ -1914,22 +1322,61 @@ export const config = { }, }, { - header: "1 квартал {year}", - accessorKey: "1_kvartal_2026", + header: "{year+1} год", + accessorKey: "2027_god", columns: [ { - header: "Текущие корректировки (= 0)", - accessorKey: "1_kvartal_2026_tekuschie_korrektirovki_0", + header: "", + accessorKey: "2027_god_field", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.adj_current", - columnLetter: "CB", - size: 310, + header: "Бронь средств в 1 квартале", + accessorKey: "data.booking.y2027.q1", + columnLetter: "AV", + size: 260, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств во 2 квартале", + accessorKey: "data.booking.y2027.q2", + columnLetter: "AW", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 3 квартале", + accessorKey: "data.booking.y2027.q3", + columnLetter: "AX", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Бронь средств в 4 квартале", + accessorKey: "data.booking.y2027.q4", + columnLetter: "AY", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", color: "#000000", }, }, @@ -1937,116 +1384,108 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, + ], + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFFFF", + color: "#000000", + }, + }, + }, + { + header: "1 квартал {year} года", + accessorKey: "1_kvartal_2026_goda", + columns: [ { - header: "Корректировки с ССП / сметой развития", - accessorKey: "1_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "1_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q1.adj_current", + columnLetter: "BA", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q1.adj_ssp", - columnLetter: "CC", - size: 310, + columnLetter: "BB", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "1_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.adj_rf", - columnLetter: "CD", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "1_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q1.adj_reserve", - columnLetter: "CE", - size: 310, + columnLetter: "BC", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Комментарий", - accessorKey: "1_kvartal_2026_kommentariy", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Комментарий", accessorKey: "data.q1.adj_comment", - columnLetter: "CG", - size: 310, + columnLetter: "BD", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Скорректированный план 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_skorr_plan_1_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Базовый план с учётом корректировок", accessorKey: "data.q1.corrected_plan", - columnLetter: "CH", - size: 310, + columnLetter: "BE", + size: 350, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "1_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "1_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q1.pay_date", - columnLetter: "CJ", + columnLetter: "BG", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2057,36 +1496,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q1.pay_amount", - columnLetter: "CK", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q1.pay_ho", - columnLetter: "CL", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q1.pay_rf", - columnLetter: "CM", - size: 300, + columnLetter: "BH", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2098,7 +1511,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q1.pay_comment", - columnLetter: "CN", + columnLetter: "BI", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2109,10 +1522,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q1.pay_act", - columnLetter: "CO", - size: 390, + columnLetter: "BJ", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2124,25 +1537,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Бронь 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_bron_1_kv_26", + header: "Фактические расходы", + accessorKey: "1_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q1.booking", - columnLetter: "CQ", - size: 310, + columnLetter: "BL", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт январь", + accessorKey: "data.q1.actual_m1", + columnLetter: "BM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт февраль", + accessorKey: "data.q1.actual_m2", + columnLetter: "BN", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт март", + accessorKey: "data.q1.actual_m3", + columnLetter: "BO", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q1.actual_quarter", + columnLetter: "BP", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 1 квартала", + accessorKey: "data.q1.residual_after_booking", + columnLetter: "BQ", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 1 квартала", + accessorKey: "data.q1.residual_after_actual", + columnLetter: "BR", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -2150,134 +1640,20 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за январь {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_yanvar_26", + header: "Корректировка остатка в последующие кварталы", + accessorKey: "1_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschie_kvartaly", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m1", - columnLetter: "CR", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за февраль {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_fevral_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m2", - columnLetter: "CS", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за март {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_mart_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_m3", - columnLetter: "CT", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_fakt_rsbu_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.actual_quarter", - columnLetter: "CU", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_ostatok_posle_broni_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.residual_after_booking", - columnLetter: "CV", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 1 кв. {year:short}", - accessorKey: "1_kvartal_2026_ostatok_posle_fakta_1_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q1.residual_after_actual", - columnLetter: "CW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 1-го квартала", - accessorKey: "1_kvartal_2026_zakrytie_1_go_kvartala", - columns: [ - { - header: "Перенос во 2 кв. {year:short}", + header: "Перенос во 2 квартал", accessorKey: "data.q1.transfer_q2", - columnLetter: "CY", - size: 180, + columnLetter: "BT", + size: 200, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2287,10 +1663,62 @@ export const config = { }, }, { - header: "Перенос в 3 кв. {year:short}", + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q1.transfer_q2_delay_acts", + columnLetter: "BU", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q1.transfer_q2_delay_procurement", + columnLetter: "BV", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q1.transfer_q2_economy_rf", + columnLetter: "BW", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса во 2 квартал", + accessorKey: "data.q1.transfer_next_comment", + columnLetter: "BX", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Перенос в 3 квартал", accessorKey: "data.q1.transfer_q3", - columnLetter: "CZ", - size: 170, + columnLetter: "BY", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2300,10 +1728,23 @@ export const config = { }, }, { - header: "Перенос в 4 кв. {year:short}", + header: "Перенос в 4 квартал", accessorKey: "data.q1.transfer_q4", - columnLetter: "DA", - size: 170, + columnLetter: "BZ", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 3 и 4 кварталах", + accessorKey: "data.q1.transfer_far_comment", + columnLetter: "CA", + size: 360, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2315,7 +1756,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q1.transfer_econ", - columnLetter: "DB", + columnLetter: "CB", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -2328,7 +1769,7 @@ export const config = { { header: "Всего", accessorKey: "data.q1.total", - columnLetter: "DC", + columnLetter: "CC", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2341,8 +1782,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -2355,144 +1796,100 @@ export const config = { }, }, { - header: "2 квартал {year}", - accessorKey: "2_kvartal_2026", + header: "2 квартал {year} года", + accessorKey: "2_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "2_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "2_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q2.target_change", - columnLetter: "DE", - size: 310, + columnLetter: "CE", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "2_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q2.base_correction", - columnLetter: "DF", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "2_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_inc", - columnLetter: "DG", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "2_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_seq", - columnLetter: "DH", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "2_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.revision_comment", - columnLetter: "DI", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_novyy_plan_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.new_plan", - columnLetter: "DJ", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "2_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.adj_current", - columnLetter: "DL", - size: 310, + columnLetter: "CF", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q2.base_correction_comment", + columnLetter: "CG", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q2.revision_inc", + columnLetter: "CH", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q2.revision_seq", + columnLetter: "CI", + size: 250, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q2.revision_comment", + columnLetter: "CJ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q2.new_plan", + columnLetter: "CK", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, @@ -2500,97 +1897,96 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Корректировки с ССП / сметой развития", - accessorKey: "2_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "2_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q2.adj_current", + columnLetter: "CM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q2.adj_ssp", - columnLetter: "DM", - size: 310, + columnLetter: "CN", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "2_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.adj_rf", - columnLetter: "DN", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "2_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q2.adj_reserve", - columnLetter: "DO", - size: 310, + columnLetter: "CO", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Скорректированный план 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_skorr_plan_2_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.corrected_plan", - columnLetter: "DR", - size: 310, + header: "Комментарий", + accessorKey: "data.q2.adj_comment", + columnLetter: "CP", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q2.corrected_plan", + columnLetter: "CQ", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "2_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "2_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q2.pay_date", - columnLetter: "DT", + columnLetter: "CS", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2601,36 +1997,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q2.pay_amount", - columnLetter: "DU", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q2.pay_ho", - columnLetter: "DV", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q2.pay_rf", - columnLetter: "DW", - size: 300, + columnLetter: "CT", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2642,7 +2012,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q2.pay_comment", - columnLetter: "DX", + columnLetter: "CU", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2653,10 +2023,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q2.pay_act", - columnLetter: "DY", - size: 390, + columnLetter: "CV", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2668,24 +2038,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_bron_2_kv_26", + header: "Фактические расходы", + accessorKey: "2_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q2.booking", - columnLetter: "EA", - size: 310, + columnLetter: "CX", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт апрель", + accessorKey: "data.q2.actual_m1", + columnLetter: "CY", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт май", + accessorKey: "data.q2.actual_m2", + columnLetter: "CZ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт июнь", + accessorKey: "data.q2.actual_m3", + columnLetter: "DA", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q2.actual_quarter", + columnLetter: "DB", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 2 квартала", + accessorKey: "data.q2.residual_after_booking", + columnLetter: "DC", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 2 квартала", + accessorKey: "data.q2.residual_after_actual", + columnLetter: "DD", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -2693,134 +2141,20 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за апрель {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_aprel_26", + header: "Корректировка остатка в последующие кварталы", + accessorKey: "2_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschie_kvartaly", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m1", - columnLetter: "EB", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за май {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_may_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m2", - columnLetter: "EC", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за июнь {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_iyun_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_m3", - columnLetter: "ED", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_fakt_rsbu_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.actual_quarter", - columnLetter: "EE", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_ostatok_posle_broni_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.residual_after_booking", - columnLetter: "EF", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 2 кв. {year:short}", - accessorKey: "2_kvartal_2026_ostatok_posle_fakta_2_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q2.residual_after_actual", - columnLetter: "EG", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 2-го квартала", - accessorKey: "2_kvartal_2026_zakrytie_2_go_kvartala", - columns: [ - { - header: "Перенос в 3 кв. {year:short}", + header: "Перенос в 3 квартал", accessorKey: "data.q2.transfer_q3", - columnLetter: "EI", - size: 170, + columnLetter: "DF", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2830,10 +2164,75 @@ export const config = { }, }, { - header: "Перенос в 4 кв. {year:short}", + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q2.transfer_q3_delay_acts", + columnLetter: "DG", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q2.transfer_q3_delay_procurement", + columnLetter: "DH", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q2.transfer_q3_economy_rf", + columnLetter: "DI", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 3 квартал", + accessorKey: "data.q2.transfer_next_comment", + columnLetter: "DJ", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Перенос в 4 квартал", accessorKey: "data.q2.transfer_q4", - columnLetter: "EJ", - size: 170, + columnLetter: "DK", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 4 квартал", + accessorKey: "data.q2.transfer_far_comment", + columnLetter: "DL", + size: 320, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -2845,7 +2244,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q2.transfer_econ", - columnLetter: "EK", + columnLetter: "DM", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -2858,7 +2257,7 @@ export const config = { { header: "Всего", accessorKey: "data.q2.total", - columnLetter: "EL", + columnLetter: "DN", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -2871,8 +2270,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -2885,144 +2284,100 @@ export const config = { }, }, { - header: "3 квартал {year}", - accessorKey: "3_kvartal_2026", + header: "3 квартал {year} года", + accessorKey: "3_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "3_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "3_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q3.target_change", - columnLetter: "EN", - size: 310, + columnLetter: "DP", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "3_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q3.base_correction", - columnLetter: "EO", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "3_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_inc", - columnLetter: "EP", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "3_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_seq", - columnLetter: "EQ", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "3_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.revision_comment", - columnLetter: "ER", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_novyy_plan_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.new_plan", - columnLetter: "ES", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "3_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.adj_current", - columnLetter: "EU", - size: 310, + columnLetter: "DQ", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q3.base_correction_comment", + columnLetter: "DR", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q3.revision_inc", + columnLetter: "DS", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q3.revision_seq", + columnLetter: "DT", + size: 250, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q3.revision_comment", + columnLetter: "DU", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q3.new_plan", + columnLetter: "DV", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, @@ -3030,97 +2385,96 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Корректировки с ССП / сметой развития", - accessorKey: "3_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "3_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q3.adj_current", + columnLetter: "DX", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q3.adj_ssp", - columnLetter: "EV", - size: 310, + columnLetter: "DY", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "3_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.adj_rf", - columnLetter: "EW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "3_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q3.adj_reserve", - columnLetter: "EX", - size: 310, + columnLetter: "DZ", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Скорректированный план 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_skorr_plan_3_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.corrected_plan", - columnLetter: "FA", - size: 310, + header: "Комментарий", + accessorKey: "data.q3.adj_comment", + columnLetter: "EA", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q3.corrected_plan", + columnLetter: "EB", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "3_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "3_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q3.pay_date", - columnLetter: "FC", + columnLetter: "ED", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3131,36 +2485,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q3.pay_amount", - columnLetter: "FD", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q3.pay_ho", - columnLetter: "FE", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q3.pay_rf", - columnLetter: "FF", - size: 300, + columnLetter: "EE", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3172,7 +2500,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q3.pay_comment", - columnLetter: "FG", + columnLetter: "EF", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3183,10 +2511,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q3.pay_act", - columnLetter: "FH", - size: 390, + columnLetter: "EG", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3198,24 +2526,102 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_bron_3_kv_26", + header: "Фактические расходы", + accessorKey: "3_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q3.booking", - columnLetter: "FJ", - size: 310, + columnLetter: "EI", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт июль", + accessorKey: "data.q3.actual_m1", + columnLetter: "EJ", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт август", + accessorKey: "data.q3.actual_m2", + columnLetter: "EK", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт сентябрь", + accessorKey: "data.q3.actual_m3", + columnLetter: "EL", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал", + accessorKey: "data.q3.actual_quarter", + columnLetter: "EM", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 3 квартала", + accessorKey: "data.q3.residual_after_booking", + columnLetter: "EN", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 3 квартала", + accessorKey: "data.q3.residual_after_actual", + columnLetter: "EO", + size: 300, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -3223,134 +2629,72 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за июль {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_iyul_26", + header: "Корректировка остатка в последующий квартал", + accessorKey: "3_kvartal_2026_goda_korrektirovka_ostatka_v_posleduyuschiy_kvartal", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m1", - columnLetter: "FK", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за август {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_avgust_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m2", - columnLetter: "FL", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за сентябрь {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_sentyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_m3", - columnLetter: "FM", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_fakt_rsbu_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.actual_quarter", - columnLetter: "FN", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_ostatok_posle_broni_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.residual_after_booking", - columnLetter: "FO", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 3 кв. {year:short}", - accessorKey: "3_kvartal_2026_ostatok_posle_fakta_3_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q3.residual_after_actual", - columnLetter: "FP", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 3-го квартала", - accessorKey: "3_kvartal_2026_zakrytie_3_go_kvartala", - columns: [ - { - header: "Перенос в 4 кв. {year:short}", + header: "Перенос в 4 квартал", accessorKey: "data.q3.transfer_q4", - columnLetter: "FR", - size: 170, + columnLetter: "EQ", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка списания расходов / предоставления актов", + accessorKey: "data.q3.transfer_q4_delay_acts", + columnLetter: "ER", + size: 490, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Задержка закупочных процедур", + accessorKey: "data.q3.transfer_q4_delay_procurement", + columnLetter: "ES", + size: 280, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Экономия (будет использована РФ)", + accessorKey: "data.q3.transfer_q4_economy_rf", + columnLetter: "ET", + size: 320, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий переноса в 4 квартал", + accessorKey: "data.q3.transfer_next_comment", + columnLetter: "EU", + size: 320, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3362,7 +2706,7 @@ export const config = { { header: "Перенос в фонд экономии", accessorKey: "data.q3.transfer_econ", - columnLetter: "FS", + columnLetter: "EV", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -3375,7 +2719,7 @@ export const config = { { header: "Всего", accessorKey: "data.q3.total", - columnLetter: "FT", + columnLetter: "EW", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3388,8 +2732,8 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", + backgroundColor: "#B2A1C7", + color: "#000000", }, }, }, @@ -3402,151 +2746,100 @@ export const config = { }, }, { - header: "4 квартал {year}", - accessorKey: "4_kvartal_2026", + header: "4 квартал {year} года", + accessorKey: "4_kvartal_2026_goda", columns: [ { - header: "Изменение целевого назначения перенесённой экономии (= 0)", - accessorKey: - "4_kvartal_2026_izmenenie_tselevogo_naznacheniya_perenesennoy_ekonomii_0", + header: "Корректировка базового плана", + accessorKey: "4_kvartal_2026_goda_korrektirovka_bazovogo_plana", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Изменение целевого назначения перенесённой экономии (= 0)", accessorKey: "data.q4.target_change", - columnLetter: "FV", - size: 310, + columnLetter: "EY", + size: 250, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", - color: "#000000", + backgroundColor: "#903C39", + color: "#FFFFFF", }, }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Корректировка статей базового плана (= 0)", - accessorKey: "4_kvartal_2026_korrektirovka_statey_bazovogo_plana_0", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка статей базового плана (= 0)", accessorKey: "data.q4.base_correction", - columnLetter: "FW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Увеличение базового плана (> 0)", - accessorKey: "4_kvartal_2026_uvelichenie_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_inc", - columnLetter: "FX", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Секвестр базового плана (< 0)", - accessorKey: "4_kvartal_2026_cekvestr_bazovogo_plana_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_seq", - columnLetter: "FY", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Комментарий", - accessorKey: "4_kvartal_2026_kommentariy", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.revision_comment", - columnLetter: "FZ", - size: 310, - filterFn: "contains", - }, - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_comment", - columnLetter: "GG", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - { - header: "Новый план 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_novyy_plan_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.new_plan", - columnLetter: "GA", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - - { - header: "Текущие корректировки (= 0)", - accessorKey: "4_kvartal_2026_tekuschie_korrektirovki_0", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_current", - columnLetter: "GC", - size: 300, + columnLetter: "EZ", + size: 410, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "Комментарий изменения базового плана", + accessorKey: "data.q4.base_correction_comment", + columnLetter: "FA", + size: 360, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#903C39", + color: "#FFFFFF", + }, + }, + }, + { + header: "ДФиП: увеличение плана (> 0)", + accessorKey: "data.q4.revision_inc", + columnLetter: "FB", + size: 270, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "ДФиП: секвестр плана (< 0)", + accessorKey: "data.q4.revision_seq", + columnLetter: "FC", + size: 250, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Комментарий", + accessorKey: "data.q4.revision_comment", + columnLetter: "FD", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план на подпись", + accessorKey: "data.q4.new_plan", + columnLetter: "FE", + size: 330, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", color: "#000000", }, }, @@ -3554,96 +2847,96 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Корректировки с ССП / сметой развития", - accessorKey: "4_kvartal_2026_korrektirovki_s_ssp_smetoy_razvitiya", + header: "Корректировки плановых значений", + accessorKey: "4_kvartal_2026_goda_korrektirovki_planovykh_znacheniy", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Текущие корректировки (= 0)", + accessorKey: "data.q4.adj_current", + columnLetter: "FG", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Корректировка из сметы ГО", accessorKey: "data.q4.adj_ssp", - columnLetter: "GD", - size: 300, + columnLetter: "FH", + size: 190, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки с РФ", - accessorKey: "4_kvartal_2026_korrektirovki_s_rf", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.adj_rf", - columnLetter: "GE", - size: 300, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Корректировки из резерва", - accessorKey: "4_kvartal_2026_korrektirovki_iz_rezerva", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Корректировка из резерва", accessorKey: "data.q4.adj_reserve", - columnLetter: "GF", - size: 300, + columnLetter: "FI", + size: 180, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFF66", - color: "#000000", - }, - }, - }, - { - header: "Скорректированный план 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_skorr_plan_4_kv_26", - columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.corrected_plan", - columnLetter: "GH", - size: 300, + header: "Комментарий", + accessorKey: "data.q4.adj_comment", + columnLetter: "FJ", + size: 150, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, + }, + { + header: "Скорректированный план с учётом корректировок", + accessorKey: "data.q4.corrected_plan", + columnLetter: "FK", + size: 450, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FFFF66", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFF66", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, - { - header: "Платёж и предоставление акта", - accessorKey: "4_kvartal_2026_platezh_i_predostavlenie_akta", + header: "Согласование платежей", + accessorKey: "4_kvartal_2026_goda_soglasovanie_platezhey", columns: [ { header: "Дата платежа", accessorKey: "data.q4.pay_date", - columnLetter: "GJ", + columnLetter: "FM", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3654,36 +2947,10 @@ export const config = { }, }, { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Сумма платежа", accessorKey: "data.q4.pay_amount", - columnLetter: "GK", - size: 310, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) ГО", - accessorKey: "data.q4.pay_ho", - columnLetter: "GL", - size: 300, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#95B3D7", - color: "#000000", - }, - }, - }, - { - header: "В т. ч. сумма (с учётом НДС) РФ", - accessorKey: "data.q4.pay_rf", - columnLetter: "GM", - size: 300, + columnLetter: "FN", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3695,7 +2962,7 @@ export const config = { { header: "Комментарий", accessorKey: "data.q4.pay_comment", - columnLetter: "GN", + columnLetter: "FO", size: 150, filterFn: "contains", muiTableHeadCellProps: { @@ -3706,10 +2973,10 @@ export const config = { }, }, { - header: "Предоставление акта (другого подтверждения)", + header: "Предоставление акта", accessorKey: "data.q4.pay_act", - columnLetter: "GO", - size: 390, + columnLetter: "FP", + size: 190, filterFn: "contains", muiTableHeadCellProps: { sx: { @@ -3721,24 +2988,115 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Бронь 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_bron_4_kv_26", + header: "Фактические расходы", + accessorKey: "4_kvartal_2026_goda_fakticheskie_raskhody", columns: [ { - header: "Сумма, тыс. руб. (с учётом НДС)", + header: "Бронь квартал", accessorKey: "data.q4.booking", - columnLetter: "GQ", - size: 310, + columnLetter: "FR", + size: 150, filterFn: "contains", muiTableHeadCellProps: { sx: { - backgroundColor: "#FFFFFF", + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Факт октябрь", + accessorKey: "data.q4.actual_m1", + columnLetter: "FS", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт ноябрь", + accessorKey: "data.q4.actual_m2", + columnLetter: "FT", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт декабрь", + accessorKey: "data.q4.actual_m3", + columnLetter: "FU", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "СПОД (январь)", + accessorKey: "data.q4.actual_spod", + columnLetter: "FV", + size: 150, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Факт квартал (с учётом СПОД)", + accessorKey: "data.q4.actual_quarter", + columnLetter: "FW", + size: 260, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Остаток после брони 4 квартала (с учётом СПОД)", + accessorKey: "data.q4.residual_after_booking", + columnLetter: "FX", + size: 420, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#FABF8F", + color: "#000000", + }, + }, + }, + { + header: "Остаток после факта 4 квартала (с учётом СПОД)", + accessorKey: "data.q4.residual_after_actual", + columnLetter: "FY", + size: 420, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", color: "#000000", }, }, @@ -3746,152 +3104,19 @@ export const config = { ], muiTableHeadCellProps: { sx: { - backgroundColor: "#FABF8F", + backgroundColor: "#B2A1C7", color: "#000000", }, }, }, { - header: "Факт РСБУ за октябрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_oktyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m1", - columnLetter: "GR", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за ноябрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_noyabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m2", - columnLetter: "GS", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ за декабрь {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_dekabr_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_m3", - columnLetter: "GT", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт РСБУ 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_fakt_rsbu_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_quarter", - columnLetter: "GU", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Факт СПОД", - accessorKey: "4_kvartal_2026_fakt_spod", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.actual_spod", - columnLetter: "GV", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Остаток после брони 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_ostatok_posle_broni_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.residual_after_booking", - columnLetter: "GW", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FABF8F", - color: "#000000", - }, - }, - }, - { - header: "Остаток после факта 4 кв. {year:short}", - accessorKey: "4_kvartal_2026_ostatok_posle_fakta_4_kv_26", - columns: [ - { - header: "Сумма, тыс. руб. (с учётом НДС)", - accessorKey: "data.q4.residual_after_actual", - columnLetter: "GX", - size: 310, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", - color: "#000000", - }, - }, - }, - { - header: "Закрытие 4-го квартала", - accessorKey: "4_kvartal_2026_zakrytie_4_go_kvartala", + header: "Экономия", + accessorKey: "4_kvartal_2026_goda_ekonomiya", columns: [ { header: "Перенос в фонд экономии", accessorKey: "data.q4.transfer_econ", - columnLetter: "HA", + columnLetter: "GA", size: 230, filterFn: "contains", muiTableHeadCellProps: { @@ -3901,54 +3126,10 @@ export const config = { }, }, }, - { - header: "Всего", - accessorKey: "data.q4.total", - columnLetter: "HB", - size: 150, - filterFn: "contains", - muiTableHeadCellProps: { - sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#903C39", - color: "#FFFFFF", - }, - }, - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#FFFFFF", - color: "#000000", - }, - }, - }, - { - header: "", - accessorKey: "field_38", - columns: [ - { - header: "Факт {year:short}", - accessorKey: "field_fakt_26", - columns: [ - { - header: "", - accessorKey: "data.totals.fact_year", - columnLetter: "HE", - size: 150, - filterFn: "contains", - }, - ], - muiTableHeadCellProps: { - sx: { - backgroundColor: "#C2D69B", + backgroundColor: "#B2A1C7", color: "#000000", }, }, @@ -3962,24 +3143,43 @@ export const config = { }, }, { - header: "", - accessorKey: "field_39", + header: "{year} год", + accessorKey: "2026_god_43", columns: [ { - header: "Сумма оплаты", - accessorKey: "field_summa_oplaty", + header: "", + accessorKey: "2026_god_field_5", columns: [ { - header: "", - accessorKey: "data.totals.pay_year", - columnLetter: "HG", - size: 150, + header: "Сумма фактических расходов за год", + accessorKey: "data.totals.fact_year", + columnLetter: "GC", + size: 330, filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#C2D69B", + color: "#000000", + }, + }, + }, + { + header: "Сумма оплаты за год", + accessorKey: "data.totals.pay_year", + columnLetter: "GE", + size: 190, + filterFn: "contains", + muiTableHeadCellProps: { + sx: { + backgroundColor: "#95B3D7", + color: "#000000", + }, + }, }, ], muiTableHeadCellProps: { sx: { - backgroundColor: "#95B3D7", + backgroundColor: "#B2A1C7", color: "#000000", }, },