Производственный календарь РФ
Выполняем в терминале:
gem install russian_workdays
и подгружаем:
require "russian_workdays"
Инициализатор принимает массив или интервал дат.
collection = RussianWorkdays::Collection.new((Date.new(2014, 2, 10)..Date.new(2014, 3, 10)))
# Получить массив с выходными днями c 10 февраля 2014 по 10 марта 2014:
collection.holidays
# Получить массив с предпраздничными днями:
collection.preholidays
# Получить массив с рабочими днями:
collection.works
# Получить количество рабочих часов:
collection.work_hours_count
# В качестве аргумента метод work_hours_count принимает количество рабочих часов в неделю, по умолчанию это 40 часов. Получить количество рабочих часов при 36-часовой рабочей неделе:
collection.work_hours_count(36)
Инициализатор принимает в качестве параметра год. Имеет те же методы что и RussianWorkdays::Collection.
collection = RussianWorkdays::Year.new(2014)
# Получить массив с выходными днями в 2014 году:
collection.holidays
Инициализатор принимает первым параметром год, вторым - номер месяца. Имеет те же методы что и RussianWorkdays::Collection.
collection = RussianWorkdays::Month.new(2014, 2)
# Получить массив с выходными днями в феврале 2014 года:
collection.holidays
Предназначен для работы с одной датой. В качестве параметра принимает объект класса Date.
date = RussianWorkdays::Day.new(Date.new(2014, 10, 5))
# Является ли дата выходным днем?
date.holiday?
# Является ли дата предпраздничным днем?
date.preholiday?
# Является ли дата рабочим днем?
date.work?
- Fork it ( https://github.com/[my-github-username]/russian_workdays/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request