IsLunchTime – проверить, выпадают ли дата и время на обеденный перерыв
<< Click to Display Table of Contents >> Объектная модель > Основные механизмы > Calendar – дата и время IsLunchTime – проверить, выпадают ли дата и время на обеденный перерыв |
Метод проверяет, попадают ли дата и время на обеденный перерыв по календарю рабочего времени. Воспользуйтесь методом при разработке типа задач с небольшим сроком. Например, 4 часа. Для таких задач важно учитывать, чтобы срок выполнения не выпадал на обеденный перерыв.
ПРИМЕЧАНИЕ. Для программной работы с календарем рабочего времени используется репозиторий WorkingTime.
Перегрузки
IsLunchTime(DateTime dateTime, IRecipient recipient) |
Проверить, выпадают ли дата и время на обед по календарю рабочего времени для пользователя или группы пользователей |
IsLunchTime(DateTime dateTime, IRecipient recipient, TimePeriodOptions timePeriodOptions) |
Проверить, выпадают ли дата и время на обед по календарю рабочего времени для пользователя или группы пользователей с учетом границ (начала и окончания) обеденного времени. Например, время обеда с 11.00 до 12.00, и мы проверяем, попадает ли 12.00 на обеденный перерыв. Тогда: •если используется параметр Calendar.TimePeriodOptions.ExcludeEndLunch, который исключает время окончания обеда из обеденного перерыва, то проверка вернет False; •если параметр Calendar.TimePeriodOptions.ExcludeEndLunch не используется, то проверка вернет True |
Синтаксис
C# |
public static bool IsLunchTime(DateTime dateTime, IRecipient recipient, TimePeriodOptions timePeriodOptions); |
Параметры
dateTime – дата и время, которые нужно проверить;
recipient – пользователь или группа пользователей;
timePeriodOptions – границы обеда, которые не нужно включать в обеденное время. Возможные значения:
•ExcludeBeginLunch – исключение времени начала обеда из периода;
•ExcludeEndLunch – исключение времени окончания обеда из периода;
•None – границы не заданы.
Возвращаемое значение
True, если время попадает на обеденный перерыв, иначе – false.
Пример
/// Определить, что срок по задаче попадает на обеденный перерыв.
/// </summary>
/// <param name="deadline">Срок.</param>
/// <param name="performer">Исполнитель.</param>
/// <returns>True, если срок попадает на обеденный перерыв, иначе – False.</returns>
public static bool IsDeadlineLunchBreak(DateTime deadline, IRecipient performer)
{
return Calendar.IsLunchTime(deadline, performer, Calendar.TimePeriodOptions.ExcludeBeginLunch);
}
© Компания Directum, 2024 |