show next 5 months if few moods recorded

This commit is contained in:
Christophe Robillard 2026-02-18 10:52:54 +01:00
parent 86f8b877d8
commit 56fd287b0f

View file

@ -6,15 +6,20 @@ class MoodCalendarService
.pluck(:mode, :recorded_at)
.map { |mode, recorded_at| { mode: mode, recorded_at: recorded_at } }
return [] if data.empty?
# Définir start_date par défaut comme le recorded_at du premier mood
if data.empty?
start_date = Date.current
else
start_date ||= data.first[:recorded_at].to_date
end
if end_date < (start_date + 5.months)
end_date = start_date + 5.months
end
# Convertir en Date si ce sont des DateTime ou Time
start_date = start_date.to_date
end_date = end_date.to_date
end
end_date = end_date&.to_date
# Grouper par jour et garder le plus récent pour chaque jour
data_by_date = data.group_by { |d| d[:recorded_at].to_date }