fix(reports): use persian month buckets in chart data
This commit is contained in:
@@ -357,6 +357,9 @@ def _entry_payload(entry: TimeEntry) -> dict:
|
|||||||
def _bucket_label(filters: ReportFilters, bucket_date: date) -> str:
|
def _bucket_label(filters: ReportFilters, bucket_date: date) -> str:
|
||||||
if filters.period in {PERIOD_THIS_WEEK, PERIOD_THIS_MONTH, PERIOD_CUSTOM}:
|
if filters.period in {PERIOD_THIS_WEEK, PERIOD_THIS_MONTH, PERIOD_CUSTOM}:
|
||||||
return bucket_date.isoformat()
|
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")
|
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}:
|
if filters.period in {PERIOD_THIS_WEEK, PERIOD_THIS_MONTH, PERIOD_CUSTOM}:
|
||||||
bucket_date = local_dt.date()
|
bucket_date = local_dt.date()
|
||||||
return bucket_date.isoformat(), bucket_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)
|
bucket_date = date(local_dt.year, local_dt.month, 1)
|
||||||
return bucket_date.strftime("%Y-%m"), bucket_date
|
return bucket_date.strftime("%Y-%m"), bucket_date
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user