diff --git a/apps/reports/services/aggregation.py b/apps/reports/services/aggregation.py index 662c691..a92ceba 100644 --- a/apps/reports/services/aggregation.py +++ b/apps/reports/services/aggregation.py @@ -357,6 +357,9 @@ def _entry_payload(entry: TimeEntry) -> dict: def _bucket_label(filters: ReportFilters, bucket_date: date) -> str: if filters.period in {PERIOD_THIS_WEEK, PERIOD_THIS_MONTH, PERIOD_CUSTOM}: return bucket_date.isoformat() + if filters.language == "fa": + persian_date = jdatetime.date.fromgregorian(date=bucket_date) + return f"{persian_date.year:04d}-{persian_date.month:02d}" return bucket_date.strftime("%Y-%m") @@ -364,6 +367,9 @@ def _bucket_key(filters: ReportFilters, local_dt: datetime) -> tuple[str, date]: if filters.period in {PERIOD_THIS_WEEK, PERIOD_THIS_MONTH, PERIOD_CUSTOM}: bucket_date = local_dt.date() return bucket_date.isoformat(), bucket_date + if filters.language == "fa": + persian_date = jdatetime.date.fromgregorian(date=local_dt.date()) + return f"{persian_date.year:04d}-{persian_date.month:02d}", local_dt.date() bucket_date = date(local_dt.year, local_dt.month, 1) return bucket_date.strftime("%Y-%m"), bucket_date