Improve the ratings stats

Make sure that for each data point, we have do not
have any partial data (e.g. a week that hasn’t
finished yet)
This commit is contained in:
gregoirenovel 2018-09-09 23:04:00 +02:00
parent 02a8693f7b
commit 26e0ada3d4

View file

@ -129,12 +129,16 @@ class StatsController < ApplicationController
Feedback.ratings.fetch(:neutral) => "Neutres",
Feedback.ratings.fetch(:unhappy) => "Mécontents"
}
interval = 6.weeks.ago.beginning_of_week..1.week.ago.beginning_of_week
totals = Feedback.where(created_at: 5.weeks.ago..Time.now).group_by_week(:created_at).count
totals = Feedback
.where(created_at: interval)
.group_by_week(:created_at)
.count
Feedback.ratings.values.map do |rating|
data = Feedback
.where(created_at: 5.weeks.ago..Time.now, rating: rating)
.where(created_at: interval, rating: rating)
.group_by_week(:created_at)
.count
.map do |week, count|