From 4e2c6bce0dda2263806810456e6c8e2f72f51022 Mon Sep 17 00:00:00 2001 From: Mike Willbanks Date: Wed, 7 Dec 2016 15:59:01 -0600 Subject: [PATCH] Metrics: Calculation set to average always sums This commit is two part: 1. getActiveValueAttribute should always return the active attribute without providing an average since the active is the current value. 2. The query to create the average was incorrect and was taking the count value * the value which we are really looking for the average of the value. --- app/Models/MetricPoint.php | 2 -- app/Repositories/Metric/AbstractMetricRepository.php | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/app/Models/MetricPoint.php b/app/Models/MetricPoint.php index db0daf37..89d53101 100644 --- a/app/Models/MetricPoint.php +++ b/app/Models/MetricPoint.php @@ -83,8 +83,6 @@ class MetricPoint extends Model implements HasPresenter { if ($this->metric->calc_type === Metric::CALC_SUM) { return round((float) $value * $this->counter, $this->metric->places); - } elseif ($this->metric->calc_type === Metric::CALC_AVG) { - return round((float) $value * $this->counter, $this->metric->places); } return round((float) $value, $this->metric->places); diff --git a/app/Repositories/Metric/AbstractMetricRepository.php b/app/Repositories/Metric/AbstractMetricRepository.php index f63f3e0f..4c14cc6b 100644 --- a/app/Repositories/Metric/AbstractMetricRepository.php +++ b/app/Repositories/Metric/AbstractMetricRepository.php @@ -85,7 +85,7 @@ abstract class AbstractMetricRepository if (!isset($metric->calc_type) || $metric->calc_type == Metric::CALC_SUM) { return "sum({$this->getMetricPointsTable()}.value * {$this->getMetricPointsTable()}.counter) AS value"; } elseif ($metric->calc_type == Metric::CALC_AVG) { - return "avg({$this->getMetricPointsTable()}.value * {$this->getMetricPointsTable()}.counter) AS value"; + return "avg({$this->getMetricPointsTable()}.value) AS value"; } else { return "sum({$this->getMetricPointsTable()}.value * {$this->getMetricPointsTable()}.counter) AS value"; }