using System; namespace AsbCloudApp.Data; /// /// временная зона /// public class SimpleTimezoneDto { /// /// смещение в часах относительно UTC /// public double Hours { get; set; } /// /// идентификатор часовой зоны /// public string? TimezoneId { get; set; } /// /// запрет на переопределение /// public bool IsOverride { get; set; } /// /// Смещение часового пояса /// public TimeSpan Offset => TimeSpan.FromHours(Hours); /// public override bool Equals(object? obj) { if (obj is SimpleTimezoneDto tTimeZone && tTimeZone.Hours == Hours && tTimeZone.TimezoneId == TimezoneId && tTimeZone.IsOverride == IsOverride) return true; return false; } /// public override int GetHashCode() => Hours.GetHashCode() | TimezoneId?.GetHashCode()??-1 | IsOverride.GetHashCode(); /// public override string ToString() => $"{TimezoneId} (UTC+{Hours:00.##})"; }