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
48
49
50
51
52
53
54
use crate::data::{YearFact, months};
/// Официальный производственный календарь на 2008 год.
///
/// На основе Постановления Правительства РФ № 512 от 11.08.2007.
pub(crate) const Y2008: 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], // День народного единства
},
// Автоматические переносы: 5 янв (сб) → 8 янв; 23 фев (сб) → 25 фев; 8 мар (сб) → 10 мар
// Постановление № 512: 4 мая (вс) → 2 мая; 7 июн (сб) → 13 июн; 1 ноя (сб) → 3 ноя
extra_days_off: months! {
Jan: [8],
Feb: [25],
Mar: [10],
May: [2],
Jun: [13],
Nov: [3],
},
// Рабочие дни: 4 мая (вс), 7 июн (сб), 1 ноя (сб) — переносы по Постановлению № 512
working_days: months! {
May: [4],
Jun: [7],
Nov: [1],
},
// Сокращённые дни: 22 фев, 7 мар, 30 апр, 8 мая, 11 июн, 1 ноя, 31 дек
short_days: months! {
Feb: [22], // перед 23 фев
Mar: [7], // перед 8 мар
Apr: [30], // перед 1 мая
May: [8], // перед 9 мая
Jun: [11], // перед 12 июн
Nov: [1], // рабочая сб, короткий день перед 4 ноя
Dec: [31], // перед 1 янв 2009
},
// Источники и цели переносов
transferred_days: months! {
Jan: [5, 8], // источник: 5 янв (сб) + цель 8 янв
Feb: [23, 25], // источник: 23 фев (сб) + цель 25 фев
Mar: [8, 10], // источник: 8 мар (сб) + цель 10 мар
May: [4, 2], // рабочая дата 4 мая + цель 2 мая
Jun: [7, 13], // рабочая сб 7 июн + цель 13 июн
Nov: [1, 3], // рабочая сб 1 ноя + цель 3 ноя
},
};