1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
use crate::data::{YearFact, months};
/// Официальный производственный календарь на 2005 год.
///
/// На основе Федерального закона № 201-ФЗ от 29.12.2004,
/// Постановлений Правительства РФ № 845 от 27.12.2004 и № 262 от 28.04.2005.
pub(crate) const Y2005: YearFact = YearFact {
holidays: months! {
Jan: [1, 2, 3, 4, 5, 7], // Новогодние каникулы (1–5) + Рождество Христово (7)
Feb: [23], // День защитника Отечества
Mar: [8], // Международный женский день
May: [1, 9], // Праздник Весны и Труда (1), День Победы (9)
Jun: [12], // День России
Nov: [4], // День народного единства
},
// Автоматические переносы: 1,2 янв (сб,вс) → 6,10 янв; 1 мая (вс) → 2 мая; 12 июн (вс) → 13 июн
// Постановление № 845: 5 мар (сб) → 7 мар (пн)
// Постановление № 262: 14 мая (сб) → 10 мая (вт)
extra_days_off: months! {
Jan: [6, 10],
Mar: [7],
May: [2, 10],
Jun: [13],
},
// Рабочие субботы: 5 мар (№ 845), 14 мая (№ 262)
working_days: months! {
Mar: [5],
May: [14],
},
// Сокращённые дни: 22 фев, 5 мар (рабочая сб), 3 ноя
short_days: months! {
Feb: [22], // перед 23 фев
Mar: [5], // рабочая суббота, короткий день
Nov: [3], // перед 4 ноя
},
// Источники и цели переносов
transferred_days: months! {
Jan: [1, 2, 6, 10], // источники: 1 янв (сб), 2 янв (вс) + цели 6,10 янв
Mar: [5, 7], // рабочая сб + цель переноса
May: [1, 2, 10, 14], // источник 1 мая (вс), цель 2 мая, цель 10 мая, рабочая сб 14 мая
Jun: [12, 13], // источник: 12 июн (вс) + цель 13 июн
},
};