bitel.billing.common

## Class TimeUtils

- java.lang.Object
- - bitel.billing.common.TimeUtils

-     public class TimeUtils
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `DATE_FORMAT_PATTERN_DDMMYYYY`
    `static java.lang.String` | `DATE_FORMAT_PATTERN_DDMMYYYY_HHMM`
    `static java.lang.String` | `DATE_FORMAT_PATTERN_DDMMYYYY_HHMMSS`
    `static java.lang.String` | `DATE_FORMAT_PATTERN_YYYY_MM_DD`
    `static java.lang.String` | `DATE_FORMAT_PATTERN_YYYY_MM_DD_HHMMSS`
    `static java.lang.String[]` | `monthNames`
    `static java.lang.String[]` | `monthNamesRod`
    `static java.lang.String[]` | `weekDayName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TimeUtils()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `checkDateIntervalsIntersection(java.util.Date date1, java.util.Date date2, java.util.Date dateFrom, java.util.Date dateTo)` Проверка пересечения двух интервалов дат.
    `static boolean` | `checkMasks(java.util.Calendar date, int hourOfDay, int dayOfWeek, int monthOfYear, int dayOfMonth)` Проверка соответствует ли указанная дата, всем заданным маскам (если маска равна 0, в проверке не участвует)
    `static boolean` | `checkMasks(java.util.Calendar date, int hourOfDay, int dayOfWeek, int monthOfYear, int dayOfMonth, long minute)`
    `static boolean` | `checkMonthAndYearDates(java.util.Date date1, java.util.Date date2)` Проверяет принадлежат ли обе даты одному месяцу и году
    `static java.util.Calendar` | `clear_HOUR_MIN_MIL_SEC(java.util.Calendar time)` Сброс времени на начало дня
    `static java.util.Date` | `clear_HOUR_MIN_MIL_SEC(java.util.Date time)` Сброс времени на начало дня
    `static java.util.Date` | `clear_MILLISECOND(java.util.Date time)` Округление времени до секунд
    `static java.util.Calendar` | `clear_MIN_MIL_SEC(java.util.Calendar time)` Устанавливает минуты, секунды и миллисекунды в ноль
    `static void` | `clearCalendarHour(java.util.Calendar cal)`
    `static long` | `clearToBeginDay(java.util.Calendar date)` Получает дату-календарь, возвращает временную точку (в таймштампе), которая является началом указанного дня.
    `static int` | `compare(java.util.Calendar value, java.util.Calendar compare, int field)`
    `static java.util.Date` | `convertCalendarToDate(java.util.Calendar calendar)` Преобразование объекта Calendar в java.util.Date
    `static java.lang.String` | `convertCalendarToDateString(java.util.Calendar calendar)` Преобразование объекта Calendar в строку вида "yyyy-mm-dd"
    `static java.lang.String` | `convertCalendarToDateTimeString(java.util.Calendar calendar)` Преобразование объекта Calendar в строку вида "yyyy-mm-dd hh:00:00"
    `static java.sql.Date` | `convertCalendarToSqlDate(java.util.Calendar calendar)` Преобразование объекта Calendar в java.sql.Date
    `static java.sql.Timestamp` | `convertCalendarToTimestamp(java.util.Calendar calendar)` Преобразование объекта java.util.Calendar в java.sql.Timestamp
    `static java.util.Calendar` | `convertDateToCalendar(java.util.Date date)` Преобразование java.util.Date в java.util.Calendar
    `static long` | `convertDateToMillisFrom(java.util.Calendar utilCalendar, java.util.Date dateFrom)` Конвертирует дату в миллисекунды начала (подневного) периода
    `static long` | `convertDateToMillisTo(java.util.Calendar utilCalendar, java.util.Date dateTo)` Конвертирует дату в миллисекунды конца (подневного) периода
    `static java.sql.Date` | `convertDateToSqlDate(java.util.Date date)` Преобразование объекта java.util.Date в java.sql.Date
    `static java.sql.Timestamp` | `convertDateToTimestamp(java.util.Date date)` Преобразование объекта java.util.Date в java.sql.Timestamp
    `static java.sql.Timestamp` | `convertDateToTimestampSeconds(java.util.Date date)` Преобразование объекта java.util.Date в java.sql.Timestamp, миллисекунды отбрасываются.
    `static java.util.Calendar` | `convertFullStringToCalendar(java.lang.String param)` Преобразование строки вида "dd.MM.yyyy HH':00:00'" в объект Calendar
    `static java.sql.Timestamp` | `convertLongToTimestamp(long millis)` Преобразование long в java.sql.Timestamp
    `static java.sql.Timestamp` | `convertLongToTimestamp(java.lang.Long millis)` Преобразование java.lang.Long в java.sql.Timestamp
    `static java.util.Calendar` | `convertMillisToCalendar(long millis)` Преобразует дату в миллисекундах в `Calendar`. 0 преобразуется в NULL.
    `static java.util.Date` | `convertMillisToDate(long millis)` Преобразует дату в миллисекундах в `Date`. 0 преобразуется в NULL.
    `static java.sql.Date` | `convertSQLDate(java.lang.String inDate)` Преобразование строки вида "dd.MM.yyyy" в объект java.sql.Date
    `static java.util.Calendar` | `convertSqlDateToCalendar(java.sql.Date date)` Превращает SQL-дату в календарь
    `static java.util.Date` | `convertSqlDateToDate(java.sql.Date date)` Преобразование объекта java.sql.Date в java.util.Date
    `static java.util.Calendar` | `convertStringToCalendar(java.lang.String param)` Преобразование строки вида "dd.mm.yyyy" в объект Calendar
    `static java.util.Calendar` | `convertStringToCalendar(java.lang.String param, java.lang.String pattern)` Преобразование строки в объект Calendar
    `static java.util.Date` | `convertStringToDate(java.lang.String param)` Преобразование строки вида "dd.mm.yyyy" или "yyyy-MM-dd" в объект Date
    `static java.util.Date` | `convertStringToDate(java.lang.String param, java.lang.String pattern)` Преобразование строки в объект Date
    `static java.util.Calendar` | `convertTimestampToCalendar(java.sql.Timestamp time)` Преобразование java.sql.Timestamp в java.util.Calendar
    `static java.util.Date` | `convertTimestampToDate(java.sql.Timestamp time)` Преобразует java.sql.TimeStamp в java.util.Date
    `static boolean` | `dateBefore(java.util.Calendar date1, java.util.Calendar date2)` Проверка date1 < date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!).
    `static boolean` | `dateBefore(java.util.Date date1, java.util.Date date2)` Проверка date1 < date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
    `static boolean` | `dateBeforeOrEq(java.util.Calendar date1, java.util.Calendar date2)` Проверка date1 <= date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
    `static boolean` | `dateBeforeOrEq(java.util.Date date1, java.util.Date date2)` Проверка date1 <= date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
    `static boolean` | `dateEqual(java.util.Calendar date1, java.util.Calendar date2)` Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
    `static boolean` | `dateEqual(java.util.Date date1, java.util.Date date2)` Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
    `static boolean` | `dateHourEqual(java.util.Calendar dtime1, java.util.Calendar dtime2)` Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ЧАСА ДНЯ!!!)
    `static boolean` | `dateInPeriod(java.util.Date checking, Period period)`
    `static boolean` | `dateInRange(java.util.Calendar checking, java.util.Calendar date1, java.util.Calendar date2)` <<<<<<< 6.2 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!!
    `static boolean` | `dateInRange(java.util.Date checking, java.util.Date date1, java.util.Date date2)` <<<<<<< 6.2 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!!
    `static boolean` | `dateInRangeWithTime(java.util.Date checking, java.util.Date date1, java.util.Date date2)` Проверка входит ли проверяемая дата в заданный период с учетом времени суток Внимание: рассматривается период, где null обозначает бесконечную границу периода.
    `static int` | `daysDelta(java.util.Calendar dayFrom, java.util.Calendar dayTo)` Возвращает разницу в днях
    `static int` | `daysDelta(java.util.Date dateFrom, java.util.Date dateTo)` Возвращает разницу в днях
    `static void` | `floor(java.util.Calendar calendar, int field)` Округление в меньшую сторону до указанного поля.
    `static java.lang.String` | `format(java.util.Calendar date, java.text.DateFormat format)`
    `static java.lang.String` | `format(java.util.Calendar date, java.lang.String pattern)`
    `static java.lang.String` | `format(java.util.Date date, java.text.DateFormat format)`
    `static java.lang.String` | `format(java.util.Date date, java.lang.String pattern)` Формирует строку с датой по заданному шаблону
    `static java.lang.String` | `format(java.util.Date date, java.lang.String pattern, java.util.TimeZone zone)`
    `static java.lang.String` | `formatCount(int field, int count)`
    `static java.lang.String` | `formatDate(java.util.Calendar date)` Форматируем дату по шаблону "dd.MM.yyyy"
    `static java.lang.String` | `formatDate(java.util.Date date)` Форматируем дату по шаблону "dd.MM.yyyy"
    `static java.lang.String` | `formatDeltaTime(long delta)` Форматирует разницу во времени
    `static java.lang.String` | `formatFullDate(java.util.Date inDate)` Фоорматирует дату по шаблону dd.MM.yyy HH:mm:ss
    `static java.lang.String` | `formatPeriod(java.util.Calendar date1, java.util.Calendar date2)` Формирует строку период
    `static java.lang.String` | `formatPeriod(java.util.Date date1, java.util.Date date2)` Формирует строку период
    `static java.lang.String` | `formatPeriod(Period period)`
    `static java.lang.String` | `formatPeriodWithTime(java.util.Date date1, java.util.Date date2)`
    `static java.lang.String` | `formatPeriodWithTime(Period period)`
    `static java.lang.String` | `formatSecondsToDayHourMinute(long seconds)`
    `static java.lang.String` | `formatSQLDate(java.util.Calendar date)` Форматрирование даты по шаблону yyyy-MM-dd
    `static java.lang.String` | `formatSQLDate(java.util.Date date)` Форматрирование даты по шаблону yyyy-MM-dd
    `static java.lang.String` | `formatTimestamp(java.sql.Timestamp time, java.lang.String format)`
    `static java.text.DateFormat` | `getDateFormat(java.lang.String pattern)` Преобразует входную строку в DateFormat.
    `static java.text.DateFormat` | `getDateFormat(java.lang.String pattern, java.util.TimeZone zone)` Преобразует входную строку в DateFormat с установленной указанной таймзоной.
    `static int` | `getDayOfMonthMask(java.util.Calendar date)` Битовая маска дня месяца
    `static int` | `getDayOfWeekMask(java.util.Calendar date)` Битовая маска дня недели
    `static java.util.Calendar` | `getEndDay(java.util.Calendar date)` Сброс времени на конец дня c точностью до сукунды (23:59:59.0)
    `static java.util.Date` | `getEndDay(java.util.Date date)` Сброс времени на конец дня c точностью до сукунды (23:59:59.0)
    `static java.util.Calendar` | `getEndMonth(java.util.Calendar date)` Возвращает дату конца месяца, соответствующего входной дате
    `static java.util.Date` | `getEndMonth(java.util.Date date)` Возвращает дату конца месяца, соответствующего входной дате
    `static int` | `getHourOfDayMask(java.util.Calendar date)` Битовая маска часа суток
    `static long` | `getMinuteMask(java.util.Calendar date)` Битовая маска минут
    `static int` | `getMonthOfYearMask(java.util.Calendar date)` Битовая маска месяца года
    `static java.util.Calendar` | `getNextDay(java.util.Calendar date)` Возвращает дату следующего дня входной даты
    `static java.util.Date` | `getNextDay(java.util.Date date)` Следующий от даты день
    `static java.util.Calendar` | `getNextMonth(java.util.Calendar date)` Возвращает дату следующего месяца входной даты
    `static java.util.Date` | `getNextMonth(java.util.Date date)`
    `static float` | `getPart(java.util.Calendar fromDate, java.util.Calendar toDate, java.util.Calendar periodFrom, java.util.Calendar periodTo)`
    `static float` | `getPart(long fromDate, long toDate, long periodFrom, long periodTo)`
    `static java.util.Calendar` | `getPrevDay(java.util.Calendar date)` Предыдущий от даты день
    `static java.util.Date` | `getPrevDay(java.util.Date date)` Предыдущий от даты день
    `static java.util.Calendar` | `getStartMonth(java.util.Calendar date)` Возвращает дату начала месяца, соответствующего входной дате
    `static java.util.Date` | `getStartMonth(java.util.Date date)` Возвращает дату начала месяца, соответствующего входной дате
    `static int` | `hourDelta(java.util.Calendar hourFrom, java.util.Calendar hourTo)` Возвращает длительность периода между hourFrom и hourTo в часах
    `static long` | `hourToMillis(long millis)` Возвращает количество милисекунд на границе часа.
    `static int` | `monthsDelta(java.util.Calendar dateFrom, java.util.Calendar dateTo)` Возвращает длительность периода между dateFrom и dateTo в месяцах
    `static int` | `monthsDelta(java.util.Date dateFrom, java.util.Date dateTo)` Возвращает длительность периода между dateFrom и dateTo в месяцах
    `static void` | `moveToEndOfMonth(java.util.Calendar date)` Устанавливает дату на последний день месяца
    `static void` | `moveToStartNextDay(java.util.Calendar date)` Увеличивает date на 1 день и сбрасывает время в 00:00:00.0
    `static java.util.Date` | `nowPlusPeriod(int period, int value)` прибавление к текущему времени нужного промежутка
    `static java.util.Calendar` | `parseCalendar(java.lang.String str, java.text.DateFormat format)` Преобразует входную строку в Calendar по определенному формату
    `static java.util.Calendar` | `parseCalendar(java.lang.String str, java.lang.String format)` Преобразует входную строку в Calendar по определенному формату
    `static java.util.Date` | `parseDate(java.lang.String str, java.text.DateFormat format)` Возвращает дату, преобразованную из строки по определенному формату
    `static java.util.Date` | `parseDate(java.lang.String str, java.lang.String format)` Возвращает дату, преобразованную из строки по определенному формату
    `static java.util.Date` | `parseDate(java.lang.String str, java.lang.String format, java.util.TimeZone zone)` Возвращает дату, преобразованную из строки по определенному формату в указанной таймзоне (например, для naive представления даты)
    `static boolean` | `periodInRange(java.util.Calendar checkingDate1, java.util.Calendar checkingDate2, java.util.Calendar date1, java.util.Calendar date2)` Проверка входит ли проверяемый период в заданный
    `static boolean` | `periodInRange(java.util.Date checkingDate1, java.util.Date checkingDate2, java.util.Date date1, java.util.Date date2)` Проверка входит ли проверяемый период в заданный.
    `static java.util.Calendar` | `plusPeriod(java.util.Calendar date, int period, int value)` Прибавление к заданному значению календаря какое-то значение.
    `static java.util.Date` | `plusPeriod(java.util.Date date, int period, int value)`
    `static long` | `rountToSeconds(long millis)`
    `static java.util.Date` | `subtractHoursFromNow(int hours)` Вычетает заданое количество часов из текущего времени
    `static boolean` | `timeInRange(java.util.Date checking, java.util.Date date1, java.util.Date date2)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### monthNames

          public static final java.lang.String[] monthNames

    - #### monthNamesRod

          public static final java.lang.String[] monthNamesRod

    - #### weekDayName

          public static final java.lang.String[] weekDayName

    - #### DATE_FORMAT_PATTERN_YYYY_MM_DD

          public static final java.lang.String DATE_FORMAT_PATTERN_YYYY_MM_DD

      See Also:
        Constant Field Values

    - #### DATE_FORMAT_PATTERN_YYYY_MM_DD_HHMMSS

          public static final java.lang.String DATE_FORMAT_PATTERN_YYYY_MM_DD_HHMMSS

      See Also:
        Constant Field Values

    - #### DATE_FORMAT_PATTERN_DDMMYYYY

          public static final java.lang.String DATE_FORMAT_PATTERN_DDMMYYYY

      See Also:
        Constant Field Values

    - #### DATE_FORMAT_PATTERN_DDMMYYYY_HHMMSS

          public static final java.lang.String DATE_FORMAT_PATTERN_DDMMYYYY_HHMMSS

      See Also:
        Constant Field Values

    - #### DATE_FORMAT_PATTERN_DDMMYYYY_HHMM

          public static final java.lang.String DATE_FORMAT_PATTERN_DDMMYYYY_HHMM

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### TimeUtils

          public TimeUtils()

  - ### Method Detail

    - #### getDayOfWeekMask

          public static final int getDayOfWeekMask(java.util.Calendar date)

      Битовая маска дня недели
      Parameters:
        `date` - дата
      Returns:
        1(понедельник), 2(вторник), ... 64(воскресенье)

    - #### getDayOfMonthMask

          public static final int getDayOfMonthMask(java.util.Calendar date)

      Битовая маска дня месяца
      Parameters:
        `date` - дата
      Returns:
        1(01), 2(02), 4(03), 8(04), ... 2147483648(31)

    - #### getHourOfDayMask

          public static final int getHourOfDayMask(java.util.Calendar date)

      Битовая маска часа суток
      Parameters:
        `date` -
      Returns:
        1(00), 2(01), 4(02), ... 8388608(23)

    - #### getMonthOfYearMask

          public static final int getMonthOfYearMask(java.util.Calendar date)

      Битовая маска месяца года
      Parameters:
        `date` -
      Returns:
        1(январь), 2(февраль), ... 2048(декабрь)

    - #### getMinuteMask

          public static final long getMinuteMask(java.util.Calendar date)

      Битовая маска минут
      Parameters:
        `date` -
      Returns:

    - #### checkMasks

          public static final boolean checkMasks(java.util.Calendar date,
                                                 int hourOfDay,
                                                 int dayOfWeek,
                                                 int monthOfYear,
                                                 int dayOfMonth)

      Проверка соответствует ли указанная дата, всем заданным маскам (если маска равна 0, в проверке не участвует)
      Parameters:
        `date` - проверяемая дата
        `hourOfDay` - маска часа
        `dayOfWeek` - маска дня неделе
        `monthOfYear` - маска месяца года
        `dayOfMonth` - маска дня месяца
      Returns:
        true - соотвествует или false - если нет

    - #### checkMasks

          public static final boolean checkMasks(java.util.Calendar date,
                                                 int hourOfDay,
                                                 int dayOfWeek,
                                                 int monthOfYear,
                                                 int dayOfMonth,
                                                 long minute)

    - #### convertCalendarToDateString

          public static final java.lang.String convertCalendarToDateString(java.util.Calendar calendar)

      Преобразование объекта Calendar в строку вида "yyyy-mm-dd"
      Parameters:
        `calendar` - исходный объект
      Returns:
        строка в виде "yyyy-mm-dd", если calendar != null, иначе "0000-00-00"

    - #### convertCalendarToDateTimeString

          public static final java.lang.String convertCalendarToDateTimeString(java.util.Calendar calendar)

      Преобразование объекта Calendar в строку вида "yyyy-mm-dd hh:00:00"
      Parameters:
        `calendar` - исходный объект
      Returns:
        строка в виде "yyyy-mm-dd hh:00:00", если calendar != null, иначе "0000-00-00 00:00:00"

    - #### format

          public static final java.lang.String format(java.util.Date date,
                                                      java.lang.String pattern)

      Формирует строку с датой по заданному шаблону
      Parameters:
        `date` - исходная дата
        `pattern` - шаблон даты
      Returns:
        строка если исходная дата != null и шаблон задан корректно иначе null

    - #### format

          public static final java.lang.String format(java.util.Date date,
                                                      java.lang.String pattern,
                                                      java.util.TimeZone zone)

    - #### format

          public static final java.lang.String format(java.util.Date date,
                                                      java.text.DateFormat format)

    - #### format

          public static final java.lang.String format(java.util.Calendar date,
                                                      java.lang.String pattern)

    - #### format

          public static final java.lang.String format(java.util.Calendar date,
                                                      java.text.DateFormat format)

    - #### formatTimestamp

          public static final java.lang.String formatTimestamp(java.sql.Timestamp time,
                                                               java.lang.String format)

    - #### formatDate

          public static final java.lang.String formatDate(java.util.Calendar date)

      Форматируем дату по шаблону "dd.MM.yyyy"
      Parameters:
        `date` - исходная дата
      Returns:
        строка в формате "dd.MM.yyyy", или пустая строка если исходная дата null

    - #### formatDate

          public static final java.lang.String formatDate(java.util.Date date)

      Форматируем дату по шаблону "dd.MM.yyyy"
      Parameters:
        `date` - исходная дата
      Returns:
        строка в формате "dd.MM.yyyy", или пустая строка если исходная дата null

    - #### formatSQLDate

          public static final java.lang.String formatSQLDate(java.util.Date date)

      Форматрирование даты по шаблону yyyy-MM-dd
      Parameters:
        `date` -
      Returns:

    - #### formatSQLDate

          public static final java.lang.String formatSQLDate(java.util.Calendar date)

      Форматрирование даты по шаблону yyyy-MM-dd
      Parameters:
        `date` -
      Returns:

    - #### formatPeriod

          public static final java.lang.String formatPeriod(java.util.Calendar date1,
                                                            java.util.Calendar date2)

      Формирует строку период
      Parameters:
        `date1` - начала периода
        `date2` - конец периода
      Returns:
        строка "dd.MM.yyyy-dd.MM.yyyy", если один из параметров равен null, вместо соответствующей даты выводится пустая строка, например "-dd.MM.yyyy", "dd.MM.yyyy-", "-"

    - #### formatPeriod

          public static final java.lang.String formatPeriod(java.util.Date date1,
                                                            java.util.Date date2)

      Формирует строку период
      Parameters:
        `date1` - начала периода
        `date2` - конец периода
      Returns:
        строка "dd.MM.yyyy-dd.MM.yyyy", если один из параметров равен null, вместо соответствующей даты выводится пустая строка, например "-dd.MM.yyyy", "dd.MM.yyyy-", "-"

    - #### formatPeriod

          public static final java.lang.String formatPeriod(Period period)

    - #### formatPeriodWithTime

          public static final java.lang.String formatPeriodWithTime(java.util.Date date1,
                                                                    java.util.Date date2)

    - #### formatPeriodWithTime

          public static final java.lang.String formatPeriodWithTime(Period period)

    - #### formatFullDate

          public static java.lang.String formatFullDate(java.util.Date inDate)

      Фоорматирует дату по шаблону dd.MM.yyy HH:mm:ss
      Parameters:
        `inDate` - дата (sql-таймштамп)
      Returns:

    - #### formatDeltaTime

          public static final java.lang.String formatDeltaTime(long delta)

      Форматирует разницу во времени
      Parameters:
        `delta` - разница во времени в секундах(внимание делить на 1000 надо)
      Returns:

    - #### convertCalendarToDate

          public static final java.util.Date convertCalendarToDate(java.util.Calendar calendar)

      Преобразование объекта Calendar в java.util.Date
      Parameters:
        `calendar` - исходный объект Calendar
      Returns:
        объект типа java.util.Date или null если исходный объект null

    - #### convertSqlDateToDate

          public static final java.util.Date convertSqlDateToDate(java.sql.Date date)

      Преобразование объекта java.sql.Date в java.util.Date
      Parameters:
        `date` - исходный объект
      Returns:
        объект типа java.util.Date или null если исходный объект null
      Since:
        ver. 4.5

    - #### parseDate

          public static java.util.Date parseDate(java.lang.String str,
                                                 java.lang.String format)

      Возвращает дату, преобразованную из строки по определенному формату
      Parameters:
        `str` - строка
        `format` - формат
      Returns:

    - #### parseDate

          public static java.util.Date parseDate(java.lang.String str,
                                                 java.lang.String format,
                                                 java.util.TimeZone zone)

      Возвращает дату, преобразованную из строки по определенному формату в указанной таймзоне (например, для naive представления даты)
      Parameters:
        `str` - строка
        `format` - формат
      Returns:

    - #### parseDate

          public static java.util.Date parseDate(java.lang.String str,
                                                 java.text.DateFormat format)

      Возвращает дату, преобразованную из строки по определенному формату
      Parameters:
        `str` - строка
        `format` - формат
      Returns:

    - #### convertDateToCalendar

          public static final java.util.Calendar convertDateToCalendar(java.util.Date date)

      Преобразование java.util.Date в java.util.Calendar
      Parameters:
        `date` - исходный объект
      Returns:
        java.sql.Calendar, если date != null, иначе null

    - #### convertStringToCalendar

          public static final java.util.Calendar convertStringToCalendar(java.lang.String param)

      Преобразование строки вида "dd.mm.yyyy" в объект Calendar
      Parameters:
        `param` - входная строка
      Returns:
        java.util.Calendar если строка правильная, иначе null

    - #### convertStringToDate

          public static final java.util.Date convertStringToDate(java.lang.String param)

      Преобразование строки вида "dd.mm.yyyy" или "yyyy-MM-dd" в объект Date
      Parameters:
        `param` - входная строка
      Returns:
        java.util.Date если строка правильная, иначе null

    - #### convertStringToCalendar

          public static final java.util.Calendar convertStringToCalendar(java.lang.String param,
                                                                         java.lang.String pattern)

      Преобразование строки в объект Calendar
      Parameters:
        `param` - входная строка
        `pattern` - шаблон строки, пример шаблона "yyyy-MM-dd", дополнительную информацию о шаблонах см. в описании класса java.text.SimpleDateFormat
      Returns:
        java.util.Calendar или null

    - #### convertStringToDate

          public static final java.util.Date convertStringToDate(java.lang.String param,
                                                                 java.lang.String pattern)

      Преобразование строки в объект Date
      Parameters:
        `param` - входная строка
        `pattern` - шаблон строки, пример шаблона "yyyy-MM-dd", дополнительную информацию о шаблонах см. в описании класса java.text.SimpleDateFormat
      Returns:
        java.util.Date или null

    - #### convertFullStringToCalendar

          public static final java.util.Calendar convertFullStringToCalendar(java.lang.String param)

      Преобразование строки вида "dd.MM.yyyy HH':00:00'" в объект Calendar
      Parameters:
        `param` - входная строка
      Returns:
        java.util.Calendar или null

    - #### convertTimestampToCalendar

          public static final java.util.Calendar convertTimestampToCalendar(java.sql.Timestamp time)

      Преобразование java.sql.Timestamp в java.util.Calendar
      Parameters:
        `time` - исходный объект
      Returns:
        java.sql.Calendar, если time != null, иначе null

    - #### convertTimestampToDate

          public static final java.util.Date convertTimestampToDate(java.sql.Timestamp time)

      Преобразует java.sql.TimeStamp в java.util.Date
      Parameters:
        `time` - преобразуемый объект
      Returns:
        null - если аргумент null

    - #### parseCalendar

          public static java.util.Calendar parseCalendar(java.lang.String str,
                                                         java.lang.String format)

      Преобразует входную строку в Calendar по определенному формату
      Parameters:
        `str` - входная строка
        `format` - формат
      Returns:
        null - если неверная входная строка

    - #### parseCalendar

          public static java.util.Calendar parseCalendar(java.lang.String str,
                                                         java.text.DateFormat format)

      Преобразует входную строку в Calendar по определенному формату
      Parameters:
        `str` - входная строка
        `format` - формат
      Returns:
        null - если неверная входная строка

    - #### clear_MIN_MIL_SEC

          public static final java.util.Calendar clear_MIN_MIL_SEC(java.util.Calendar time)

      Устанавливает минуты, секунды и миллисекунды в ноль
      Parameters:
        `time` - исходный объект
      Returns:

    - #### clear_HOUR_MIN_MIL_SEC

          public static final java.util.Calendar clear_HOUR_MIN_MIL_SEC(java.util.Calendar time)

      Сброс времени на начало дня
      Parameters:
        `time` - исходная дата
      Returns:
        сброшенная дата (часы=минуты=секунды=мсек=0)

    - #### clear_HOUR_MIN_MIL_SEC

          public static final java.util.Date clear_HOUR_MIN_MIL_SEC(java.util.Date time)

      Сброс времени на начало дня
      Parameters:
        `time` - исходная дата
      Returns:
        сброшенная дата (часы=минуты=секунды=мсек=0)

    - #### clear_MILLISECOND

          public static final java.util.Date clear_MILLISECOND(java.util.Date time)

      Округление времени до секунд
      Parameters:
        `time` - исходная дата
      Returns:
        сброшенное время (мсек=0)

    - #### getEndDay

          public static final java.util.Calendar getEndDay(java.util.Calendar date)

      Сброс времени на конец дня c точностью до сукунды (23:59:59.0)

    - #### getEndDay

          public static final java.util.Date getEndDay(java.util.Date date)

      Сброс времени на конец дня c точностью до сукунды (23:59:59.0)

    - #### getStartMonth

          public static final java.util.Calendar getStartMonth(java.util.Calendar date)

      Возвращает дату начала месяца, соответствующего входной дате
      Parameters:
        `date` - дата
      Returns:

    - #### getStartMonth

          public static final java.util.Date getStartMonth(java.util.Date date)

      Возвращает дату начала месяца, соответствующего входной дате
      Parameters:
        `date` - дата
      Returns:

    - #### getEndMonth

          public static final java.util.Date getEndMonth(java.util.Date date)

      Возвращает дату конца месяца, соответствующего входной дате
      Parameters:
        `date` - дата
      Returns:

    - #### getEndMonth

          public static final java.util.Calendar getEndMonth(java.util.Calendar date)

      Возвращает дату конца месяца, соответствующего входной дате
      Parameters:
        `date` - дата
      Returns:

    - #### convertSqlDateToCalendar

          public static final java.util.Calendar convertSqlDateToCalendar(java.sql.Date date)

      Превращает SQL-дату в календарь
      Parameters:
        `date` - - java.sql.Date
      Returns:
        - java.util.Calendar

    - #### getNextDay

          public static final java.util.Calendar getNextDay(java.util.Calendar date)

      Возвращает дату следующего дня входной даты
      Parameters:
        `date` - дата
      Returns:

    - #### getNextMonth

          public static final java.util.Calendar getNextMonth(java.util.Calendar date)

      Возвращает дату следующего месяца входной даты
      Parameters:
        `date` - дата
      Returns:

    - #### getNextMonth

          public static final java.util.Date getNextMonth(java.util.Date date)

    - #### getPrevDay

          public static final java.util.Calendar getPrevDay(java.util.Calendar date)

      Предыдущий от даты день
      Parameters:
        `date` -
      Returns:

    - #### getPrevDay

          public static final java.util.Date getPrevDay(java.util.Date date)

      Предыдущий от даты день
      Parameters:
        `date` - какой-то день
      Returns:
        на день раньше от какого-то дня

    - #### getNextDay

          public static final java.util.Date getNextDay(java.util.Date date)

      Следующий от даты день
      Parameters:
        `date` - какой-то день
      Returns:
        на день позже какого-то дня

    - #### convertCalendarToSqlDate

          public static final java.sql.Date convertCalendarToSqlDate(java.util.Calendar calendar)

      Преобразование объекта Calendar в java.sql.Date
      Parameters:
        `calendar` - исходный объект
      Returns:
        java.sql.Date, если calendar != null, иначе null

    - #### convertDateToSqlDate

          public static final java.sql.Date convertDateToSqlDate(java.util.Date date)

      Преобразование объекта java.util.Date в java.sql.Date
      Parameters:
        `date` - исходный объект
      Returns:
        java.sql.Date, если date != null, иначе null

    - #### convertSQLDate

          public static final java.sql.Date convertSQLDate(java.lang.String inDate)

      Преобразование строки вида "dd.MM.yyyy" в объект java.sql.Date
      Parameters:
        `inDate` - входная строка
      Returns:
        java.sql.Date или null

    - #### convertCalendarToTimestamp

          public static final java.sql.Timestamp convertCalendarToTimestamp(java.util.Calendar calendar)

      Преобразование объекта java.util.Calendar в java.sql.Timestamp
      Parameters:
        `calendar` - исходный объект
      Returns:
        java.sql.Timestamp, если calendar != null, иначе null

    - #### convertDateToTimestamp

          public static final java.sql.Timestamp convertDateToTimestamp(java.util.Date date)

      Преобразование объекта java.util.Date в java.sql.Timestamp
      Parameters:
        `date` - исходный объект
      Returns:
        java.sql.Timestamp, если date != null, иначе null

    - #### convertDateToTimestampSeconds

          public static final java.sql.Timestamp convertDateToTimestampSeconds(java.util.Date date)

      Преобразование объекта java.util.Date в java.sql.Timestamp, миллисекунды отбрасываются.
      Parameters:
        `date` - исходный объект
      Returns:
        java.sql.Timestamp, если date != null, иначе null

    - #### convertLongToTimestamp

          public static final java.sql.Timestamp convertLongToTimestamp(long millis)

      Преобразование long в java.sql.Timestamp
      Parameters:
        `calendar` - исходный объект
      Returns:
        java.sql.Timestamp

    - #### convertLongToTimestamp

          public static final java.sql.Timestamp convertLongToTimestamp(java.lang.Long millis)

      Преобразование java.lang.Long в java.sql.Timestamp
      Parameters:
        `millis` - исходный объект
      Returns:
        java.sql.Timestamp, если millis != null, иначе null

    - #### getDateFormat

          public static final java.text.DateFormat getDateFormat(java.lang.String pattern,
                                                                 java.util.TimeZone zone)

      Преобразует входную строку в DateFormat с установленной указанной таймзоной.
      Parameters:
        `pattern` -
      Returns:
        null - если входная строка некорректна

    - #### getDateFormat

          public static final java.text.DateFormat getDateFormat(java.lang.String pattern)

      Преобразует входную строку в DateFormat.
      Parameters:
        `pattern` -
      Returns:
        null - если входная строка некорректна

    - #### daysDelta

          public static final int daysDelta(java.util.Calendar dayFrom,
                                            java.util.Calendar dayTo)

      Возвращает разницу в днях
      Parameters:
        `dayFrom` -
        `dayTo` -
      Returns:

    - #### daysDelta

          public static final int daysDelta(java.util.Date dateFrom,
                                            java.util.Date dateTo)

      Возвращает разницу в днях
      Parameters:
        `dayFrom` -
        `dayTo` -
      Returns:

    - #### hourDelta

          public static final int hourDelta(java.util.Calendar hourFrom,
                                            java.util.Calendar hourTo)

      Возвращает длительность периода между hourFrom и hourTo в часах
      Parameters:
        `hourFrom` - дата начала периода
        `hourTo` - дата окончания периода
      Returns:
        длительность периода в часах

    - #### monthsDelta

          public static final int monthsDelta(java.util.Date dateFrom,
                                              java.util.Date dateTo)

      Возвращает длительность периода между dateFrom и dateTo в месяцах
      Parameters:
        `dateFrom` - дата начала периода
        `dateTo` - дате окончания периода
      Returns:
        длительность периода в месяецах

    - #### monthsDelta

          public static final int monthsDelta(java.util.Calendar dateFrom,
                                              java.util.Calendar dateTo)

      Возвращает длительность периода между dateFrom и dateTo в месяцах
      Parameters:
        `dateFrom` - дата начала периода
        `dateTo` - дате окончания периода
      Returns:
        длительность периода в месяцах

    - #### getPart

          public static final float getPart(long fromDate,
                                            long toDate,
                                            long periodFrom,
                                            long periodTo)

    - #### getPart

          public static final float getPart(java.util.Calendar fromDate,
                                            java.util.Calendar toDate,
                                            java.util.Calendar periodFrom,
                                            java.util.Calendar periodTo)

    - #### dateBefore

          public static boolean dateBefore(java.util.Calendar date1,
                                           java.util.Calendar date2)

      Проверка date1 < date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!).
      Внимание: если хоть одна дата null — будет false, так что null не является "бесконечностью".
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 < date2, иначе false

    - #### dateBefore

          public static boolean dateBefore(java.util.Date date1,
                                           java.util.Date date2)

      Проверка date1 < date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
      Внимание: если хоть одна дата null — будет false, так что null не является "бесконечностью".
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 < date2, иначе false

    - #### dateEqual

          public static boolean dateEqual(java.util.Calendar date1,
                                          java.util.Calendar date2)

      Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 == date2, иначе false

    - #### dateEqual

          public static boolean dateEqual(java.util.Date date1,
                                          java.util.Date date2)

      Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 == date2, иначе false

    - #### dateHourEqual

          public static boolean dateHourEqual(java.util.Calendar dtime1,
                                              java.util.Calendar dtime2)

      Проверка date1 == date2 (С ТОЧНОСТЬЮ ДО ЧАСА ДНЯ!!!)
      Parameters:
        `dtime1` - первая дата + время
        `dtime2` - вторая дата + время
      Returns:
        true - date1 == date2, иначе false

    - #### dateBeforeOrEq

          public static boolean dateBeforeOrEq(java.util.Calendar date1,
                                               java.util.Calendar date2)

      Проверка date1 <= date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 <= date2, иначе false

    - #### dateBeforeOrEq

          public static boolean dateBeforeOrEq(java.util.Date date1,
                                               java.util.Date date2)

      Проверка date1 <= date2 (С ТОЧНОСТЬЮ ДО ДНЯ!!!)
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - date1 <= date2, иначе false

    - #### dateInRange

          public static final boolean dateInRange(java.util.Calendar checking,
                                                  java.util.Calendar date1,
                                                  java.util.Calendar date2)

      <<<<<<< 6.2 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!! ).
      ======= <<<<<<< 6.1 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!! ).
      ======= Проверка входит ли проверяемая дата в заданный период (С ТОЧНОСТЬЮ ДО ДНЯ!!!).
      >>>>>>> 5450950 F: Subscription: Вызов TimeUtils.dateInRange(...) заменен на TimeUtils.dateInRangeWithTime(...) >>>>>>> dec3d6b F: Subscription: Вызов TimeUtils.dateInRange(...) заменен на TimeUtils.dateInRangeWithTime(...) Внимание: рассматривается период, где null обозначает бесконечную границу периода. Если checking - null, то результат всегда false.
      Parameters:
        `checking` - проверяемая дата
        `date1` - начало заданого периода
        `date2` - конец заданого периода
      Returns:
        true - входит, false - нет

    - #### dateInRange

          public static final boolean dateInRange(java.util.Date checking,
                                                  java.util.Date date1,
                                                  java.util.Date date2)

      <<<<<<< 6.2 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!! ) .
      ======= <<<<<<< 6.1 Проверка входит ли проверяемая дата в заданный период( С ТОЧНОСТЬЮ ДО ДНЯ!!! ) .
      ======= Проверка входит ли проверяемая дата в заданный период (С ТОЧНОСТЬЮ ДО ДНЯ!!!).
      >>>>>>> 5450950 F: Subscription: Вызов TimeUtils.dateInRange(...) заменен на TimeUtils.dateInRangeWithTime(...) >>>>>>> dec3d6b F: Subscription: Вызов TimeUtils.dateInRange(...) заменен на TimeUtils.dateInRangeWithTime(...) Внимание: рассматривается период, где null обозначает бесконечную границу периода. Если checking - null, то результат всегда false.
      Parameters:
        `checking` - проверяемая дата
        `date1` - начало заданого периода
        `date2` - конец заданого периода
      Returns:
        true - входит, false - нет

    - #### dateInRangeWithTime

          public static final boolean dateInRangeWithTime(java.util.Date checking,
                                                          java.util.Date date1,
                                                          java.util.Date date2)

      Проверка входит ли проверяемая дата в заданный период с учетом времени суток
      Внимание: рассматривается период, где null обозначает бесконечную границу периода. Если checking - null, то результат всегда false.
      Parameters:
        `checking` - проверяемая дата
        `date1` - начало заданого периода
        `date2` - конец заданого периода
      Returns:
        true - входит, false - нет

    - #### dateInPeriod

          public static final boolean dateInPeriod(java.util.Date checking,
                                                   Period period)

    - #### periodInRange

          public static final boolean periodInRange(java.util.Calendar checkingDate1,
                                                    java.util.Calendar checkingDate2,
                                                    java.util.Calendar date1,
                                                    java.util.Calendar date2)

      Проверка входит ли проверяемый период в заданный
      Parameters:
        `checkingDate1` - начала проверяемого период
        `checkingDate2` - конец проверяемого периода
        `date1` - начало заданого периода
        `date2` - конец заданого периода
      Returns:
        true - входит, false - нет

    - #### periodInRange

          public static final boolean periodInRange(java.util.Date checkingDate1,
                                                    java.util.Date checkingDate2,
                                                    java.util.Date date1,
                                                    java.util.Date date2)

      Проверка входит ли проверяемый период в заданный.
      Parameters:
        `checkingDate1` - начала проверяемого период
        `checkingDate2` - конец проверяемого периода
        `date1` - начало заданого периода
        `date2` - конец заданого периода
      Returns:
        true - входит, false - нет

    - #### moveToEndOfMonth

          public static final void moveToEndOfMonth(java.util.Calendar date)

      Устанавливает дату на последний день месяца
      Parameters:
        `date` - исходная дата

    - #### moveToStartNextDay

          public static final void moveToStartNextDay(java.util.Calendar date)

      Увеличивает date на 1 день и сбрасывает время в 00:00:00.0
      Parameters:
        `date` - исходная дата

    - #### clearCalendarHour

          public static void clearCalendarHour(java.util.Calendar cal)

    - #### nowPlusPeriod

          public static java.util.Date nowPlusPeriod(int period,
                                                     int value)

      прибавление к текущему времени нужного промежутка
      Parameters:
        `period` - в виде Calendar.FIELD
        `value` - значение поля
      Returns:
        дата полученная

    - #### plusPeriod

          public static java.util.Calendar plusPeriod(java.util.Calendar date,
                                                      int period,
                                                      int value)

      Прибавление к заданному значению календаря какое-то значение.
      Parameters:
        `date` - начальный календарь
        `period` - флаг из Calendar
        `value` - значение, на которое сдвинуть
      Returns:
        клон календаря, изменённый на нужный интервал

    - #### plusPeriod

          public static java.util.Date plusPeriod(java.util.Date date,
                                                  int period,
                                                  int value)

    - #### checkDateIntervalsIntersection

          public static boolean checkDateIntervalsIntersection(java.util.Date date1,
                                                               java.util.Date date2,
                                                               java.util.Date dateFrom,
                                                               java.util.Date dateTo)

      Проверка пересечения двух интервалов дат. Специфика метода заключается в том, что отсутствие одной из границ интервала (т.е. равенство null) трактуется в пользу пересечения. Т.е. все методы TimeUtils, в частности dateInRange, при равенстве одного из аргумента null сразу же возвращают false, что нехорошо. Здесь же равенство null означает бесконечность (с плюсом либо с минусом). Например, на входных интервалах (01.01.2006, null) и (01.06.2007, 01.08.2007) метод вернет значение TRUE.
      Parameters:
        `date1` - левая граница первого интервала
        `date2` - правая граница первого интервала
        `dateFrom` - левая граница второго интервала
        `dateTo` - правай граница второго интервала
      Returns:

    - #### compare

          public static int compare(java.util.Calendar value,
                                    java.util.Calendar compare,
                                    int field)

    - #### clearToBeginDay

          public static long clearToBeginDay(java.util.Calendar date)

      Получает дату-календарь, возвращает временную точку (в таймштампе), которая является началом указанного дня.
      Parameters:
        `date` - дата какая-то (Calendar)
      Returns:
        время(миллисекунды)

    - #### floor

          public static void floor(java.util.Calendar calendar,
                                   int field)

      Округление в меньшую сторону до указанного поля.
      floor( calendar, Calendar.DATE ) аналогична `clear_HOUR_MIN_MIL_SEC(Calendar)`.
      Parameters:
        `calendar` -
        `field` -

    - #### formatCount

          public static java.lang.String formatCount(int field,
                                                     int count)

    - #### subtractHoursFromNow

          public static java.util.Date subtractHoursFromNow(int hours)

      Вычетает заданое количество часов из текущего времени
      Parameters:
        `hours` -
      Returns:

    - #### timeInRange

          public static final boolean timeInRange(java.util.Date checking,
                                                  java.util.Date date1,
                                                  java.util.Date date2)

    - #### rountToSeconds

          public static long rountToSeconds(long millis)

    - #### convertDateToMillisFrom

          public static final long convertDateToMillisFrom(java.util.Calendar utilCalendar,
                                                           java.util.Date dateFrom)

      Конвертирует дату в миллисекунды начала (подневного) периода
      Parameters:
        `utilCalendar` -
        `dateFrom` -
      Returns:

    - #### convertDateToMillisTo

          public static final long convertDateToMillisTo(java.util.Calendar utilCalendar,
                                                         java.util.Date dateTo)

      Конвертирует дату в миллисекунды конца (подневного) периода
      Parameters:
        `utilCalendar` -
        `dateTo` -
      Returns:

    - #### convertMillisToDate

          public static final java.util.Date convertMillisToDate(long millis)

      Преобразует дату в миллисекундах в `Date`. 0 преобразуется в NULL.
      Parameters:
        `millis` -
      Returns:

    - #### convertMillisToCalendar

          public static final java.util.Calendar convertMillisToCalendar(long millis)

      Преобразует дату в миллисекундах в `Calendar`. 0 преобразуется в NULL.
      Parameters:
        `millis` -
      Returns:

    - #### hourToMillis

          public static long hourToMillis(long millis)

      Возвращает количество милисекунд на границе часа.
      Parameters:
        `millis` -
      Returns:

    - #### formatSecondsToDayHourMinute

          public static java.lang.String formatSecondsToDayHourMinute(long seconds)

    - #### checkMonthAndYearDates

          public static boolean checkMonthAndYearDates(java.util.Date date1,
                                                       java.util.Date date2)

      Проверяет принадлежат ли обе даты одному месяцу и году
      Parameters:
        `date1` - первая дата
        `date2` - вторая дата
      Returns:
        true - принадлежат; false - иначе