fix: update week calculation to use Saturday as the start of the week
All checks were successful
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 2m12s

This commit is contained in:
masoodafar-web
2025-12-12 04:37:34 +03:30
parent af3a29ed27
commit aba534e07c
2 changed files with 11 additions and 6 deletions

View File

@@ -279,10 +279,13 @@ public class CalculateWeeklyBalancesCommandHandler : IRequestHandler<CalculateWe
var year = int.Parse(parts[0]);
var week = int.Parse(parts[1].Replace("W", ""));
// محاسبه اولین روز هفته (شنبه)
// محاسبه اولین شنبه سال
var jan1 = new DateTime(year, 1, 1);
var daysOffset = DayOfWeek.Saturday - jan1.DayOfWeek;
var firstSaturday = jan1.AddDays(daysOffset);
var jan1DayOfWeek = (int)jan1.DayOfWeek;
// اگر 1 ژانویه شنبه باشد: offset=0، اگر یکشنبه: offset=6، دوشنبه: offset=5، ...
var daysToFirstSaturday = jan1DayOfWeek == 6 ? 0 : (6 - jan1DayOfWeek + 7) % 7;
var firstSaturday = jan1.AddDays(daysToFirstSaturday);
var weekStart = firstSaturday.AddDays((week - 1) * 7);
var weekEnd = weekStart.AddDays(6).AddHours(23).AddMinutes(59).AddSeconds(59);