File scoped namespaces

This commit is contained in:
Aleh Khantsevich
2025-02-16 11:35:43 +01:00
committed by GitHub
parent c1336428dc
commit d31d8f574e
617 changed files with 32118 additions and 32737 deletions

View File

@@ -1,42 +1,41 @@
using System;
using System.Linq;
namespace Wino.Core.Domain.Models.Calendar
namespace Wino.Core.Domain.Models.Calendar;
public class DateRange
{
public class DateRange
public DateRange(DateTime startDate, DateTime endDate)
{
public DateRange(DateTime startDate, DateTime endDate)
{
StartDate = startDate;
EndDate = endDate;
}
StartDate = startDate;
EndDate = endDate;
}
public DateTime StartDate { get; }
public DateTime EndDate { get; }
public DateTime StartDate { get; }
public DateTime EndDate { get; }
public int TotalDays => (EndDate - StartDate).Days;
public int TotalDays => (EndDate - StartDate).Days;
public override string ToString() => $"{StartDate.ToString("dd MMMM")} - {EndDate.ToString("dd MMMM")}";
public override string ToString() => $"{StartDate.ToString("dd MMMM")} - {EndDate.ToString("dd MMMM")}";
public bool IsInRange(DateTime date)
{
return date >= StartDate && date <= EndDate;
}
public bool IsInRange(DateTime date)
{
return date >= StartDate && date <= EndDate;
}
/// <summary>
/// Gets the most visible month index in the visible date range.
/// </summary>
public int GetMostVisibleMonthIndex()
{
var dateRange = Enumerable.Range(0, (EndDate - StartDate).Days + 1).Select(offset => StartDate.AddDays(offset));
/// <summary>
/// Gets the most visible month index in the visible date range.
/// </summary>
public int GetMostVisibleMonthIndex()
{
var dateRange = Enumerable.Range(0, (EndDate - StartDate).Days + 1).Select(offset => StartDate.AddDays(offset));
var groupedByMonth = dateRange.GroupBy(date => date.Month)
.Select(g => new { Month = g.Key, DayCount = g.Count() });
var groupedByMonth = dateRange.GroupBy(date => date.Month)
.Select(g => new { Month = g.Key, DayCount = g.Count() });
// Find the month with the maximum count of days
var mostVisibleMonth = groupedByMonth.OrderByDescending(g => g.DayCount).FirstOrDefault();
// Find the month with the maximum count of days
var mostVisibleMonth = groupedByMonth.OrderByDescending(g => g.DayCount).FirstOrDefault();
return mostVisibleMonth?.Month ?? -1;
}
return mostVisibleMonth?.Month ?? -1;
}
}