Class DateTimeUtils
Содержит методы по работе с Date
- Inheritance
-
Date
Time Utils
- Inherited Members
Fields
MiddleDayHour
Середина дня.
Field Value
MiddleMonthDay
Середина месяца.
Field Value
Methods
AsUtc(DateTime)
Возвращает дату и время с типом, установленным в UTC.
Parameters
dt
DateTime
Returns
CalculateConsumptionDateTime(DeviceDataType, DateTime)
Расчет даты потребления по дате второго интегратора.
public static DateTime CalculateConsumptionDateTime(DeviceDataType dataType, DateTime secondTotalsDate)
Parameters
dataType
DeviceData Type Тип данных.
secondTotalsDate
DateTime Дата и время второго интеграторов.
Returns
- Date
Time Дата потребления.
CalculateTotalsStartEndDataDate(DeviceDataType, DateTime, byte, byte, ReportingHourMode)
Расчет дат показаний интеграторов обрамляющих заданную дату потребления. Используется для точек учета, у которых задан расчетный день или час.
public static (DateTime StartDataDate, DateTime EndDataDate) CalculateTotalsStartEndDataDate(DeviceDataType dataType, DateTime consumptionDateTime, byte reportingDay, byte reportingHour, ReportingHourMode reportingHourMode)
Parameters
dataType
DeviceData Type Тип данных.
consumptionDateTime
DateTime Дата потребления, для которой надо получить даты обрамляющих ее интеграторов.
reportingDay
byteРасчетный день.
reportingHour
byteРасчетный час.
reportingHourMode
ReportingHour Mode Вариант группировки часовых записей по расчетному часу.
Returns
- (Date
Time StartData , DateDate Time EndData )Date Массив из двух дат, первая - для показаний на начало метки времени, вторая - для показаний на конец метки времени.
CanIncrement(DeviceDataType)
Вернёт true если к указанному типу данных можно добавить интервал.
Parameters
dataType
DeviceData Type
Returns
CheckDateTimeValue(DateTime, DeviceDataType)
Проверяет, что значение метки времени соответствует типу данных (суточная метка не содержит часов и т.п.).
Parameters
dateTime
DateTime Метка времени.
dataType
DeviceData Type Тип данных (только месячные, суточные, часовые или текущие).
FormatTimeMark(DateTime, DeviceDataType)
Преобразует дату и время в формат, подходящий для типа данных.
Parameters
dt
DateTime dataType
DeviceData Type
Returns
GetDay(DateTime, int, ReportingHourMode)
Возвращает день, к которому относится часовая метка времени, учитывая расчетный час.
Parameters
dateTime
DateTime Часовая метка времени.
reportingHour
intРасчетный час.
mode
ReportingHour Mode Вариант группировки часовых записей по расчетному часу.
Returns
- Date
Time День, к которому относится часовая метка времени.
Exceptions
- Argument
Out OfRange Exception Значение параметра reportingHour меньше 0 или больше 23.
GetDifference(DeviceDataType, DateTime, DateTime)
Возвращает количество интервалов, которые расположены между двумя датами.
Parameters
dataType
DeviceData Type first
DateTime second
DateTime
Returns
GetExcelDateTimeFormatString(DeviceDataType)
Parameters
dataType
DeviceData Type
Returns
GetFirstTimeMarkForDay(DateTime, int, ReportingHourMode)
Возвращает первую метку времени суток, учитывая расчетный час.
public static DateTime GetFirstTimeMarkForDay(DateTime dateTime, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Суточная метка времени.
reportingHour
intРасчетный час.
mode
ReportingHour Mode Вариант группировки часовых записей по расчетному часу.
Returns
- Date
Time Дата и время в формате d HH:00:00.000, которое представляет собой метку времени начала указанных суток.
GetFirstTimeMarkForMonth(DateTime, int, int, ReportingHourMode)
Возвращает первую метку времени месяца, учитывая расчетный день.
public static DateTime GetFirstTimeMarkForMonth(DateTime dateTime, int reportingDay, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Месячная метка времени.
reportingDay
intРасчетный день.
reportingHour
intОтчётный час.
mode
ReportingHour Mode Режим группировку отчётного часа.
Returns
- Date
Time Дата, которая представляет собой метку времени начала указанного месяца.
GetLastTimeMarkForDay(DateTime, int, ReportingHourMode)
Возвращает последнюю метку времени суток, учитывая расчетный час.
public static DateTime GetLastTimeMarkForDay(DateTime dateTime, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Суточная метка времени.
reportingHour
intРасчетный час.
mode
ReportingHour Mode Вариант группировки часовых записей по расчетному часу.
Returns
- Date
Time Дата и время в формате d HH:00:00.000, которое представляет собой метку времени окончания указанных суток.
GetLastTimeMarkForMonth(DateTime, int, int, ReportingHourMode)
Возвращает последнюю метку времени месяца, учитывая расчетный день.
public static DateTime GetLastTimeMarkForMonth(DateTime dateTime, int reportingDay, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Месячная метка времени.
reportingDay
intРасчетный день.
reportingHour
intОтчётный час.
mode
ReportingHour Mode Режим группировку отчётного часа.
Returns
- Date
Time Дата, которая представляет собой метку времени начала указанного месяца.
GetMinutesSinceMidnight(DateTime)
Возвращает количество минут, прошедших с начала суток.
Parameters
dateTime
DateTime
Returns
GetMonth(DateTime, int, int, ReportingHourMode)
Возвращает месяц, к которому относится суточная метка времени, учитывая расчетный день.
public static DateTime GetMonth(DateTime dateTime, int reportingDay, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Суточная метка времени.
reportingDay
intРасчетный день.
reportingHour
intРасчетный час.
mode
ReportingHour Mode Вариант группировки часовых записей по расчетному часу.
Returns
- Date
Time Месяц, к которому относится суточная метка времени.
Exceptions
- Argument
Out OfRange Exception Значение параметра reportingDay меньше 1 или больше 28.
GetParentRecordDate(DateTime, DeviceDataType, int, int, ReportingHourMode)
Возвращает время родительской записи. Применяется для расчёта времени родительской записи при группировке данных потребления и интеграторов.
public static DateTime GetParentRecordDate(DateTime dateTime, DeviceDataType parentDataType, int reportingDay, int reportingHour, ReportingHourMode mode)
Parameters
dateTime
DateTime Время записи.
parentDataType
DeviceData Type Тип родительской записи.
reportingDay
intОтчётный день.
reportingHour
intОтчётный час.
mode
ReportingHour Mode Вариант группировки отчетного часа.
Returns
- Date
Time Время родительской записи.
Increment(DateTime, DeviceDataType, int)
Прибавляет к указанной дате и времени приращение заданного типа данных.
Parameters
value
DateTime Дата и время.
dataType
DeviceData Type Тип данных.
increment
intПриращение.
Returns
- Date
Time Результат приращения.
Max(DateTime, DateTime)
Возвращает большее значение даты и времени.
Parameters
Returns
- Date
Time Большее из значений.
Min(DateTime, DateTime)
Возвращает меньшее значение даты и времени.
Parameters
Returns
- Date
Time Меньшее из значений.
Normalize(DateTime, DeviceDataType)
Приводит дату и время к указанному типу данных.
Parameters
value
DateTime Дата и время.
dataType
DeviceData Type Тип данных.
Returns
- Date
Time Дата и время приведенное к указанному типу данных.
RoundToSeconds(DateTime)
Округляет дату до ближайшей секунды.
Parameters
date
DateTime
Returns
Sanitize(DateTime)
Нормализует дату и время, отбрасывая всё, что мельче секунд.
Parameters
value
DateTime Дата и время.
Returns
- Date
Time Возвращает значение даты и времени с точностью до секунды.
TrimMicroSeconds(DateTime)
Обрезает микросекунды даты.
Parameters
date
DateTime Дата.
Returns
- Date
Time Дата с обрезанными микросекундами.
TrimMilliSeconds(DateTime)
Удаляет из даты и времени миллисекунды.
Parameters
date
DateTime Дата.
Returns
- Date
Time Дата с удаленными миллисекундами.
TrimSeconds(DateTime)
Обрезает секунды даты.
Parameters
date
DateTime Дата.
Returns
- Date
Time Дата с обрезанными секундами.
TryNormalize(DateTime, DeviceDataType)
Приводит дату и время к указанному типу данных.
Parameters
value
DateTime Дата и время.
dataType
DeviceData Type Тип данных.
Returns
- Date
Time Дата и время приведенное к указанному типу данных.
Remarks
В отличие от Normalize(Date