diff options
Diffstat (limited to 'models/nutrient-measurement.rkt')
| -rw-r--r-- | models/nutrient-measurement.rkt | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/models/nutrient-measurement.rkt b/models/nutrient-measurement.rkt index 343db33..8c963b6 100644 --- a/models/nutrient-measurement.rkt +++ b/models/nutrient-measurement.rkt @@ -81,8 +81,8 @@ (as nutrients n) #:on (= n.id nv.nutrient_id)))) -(define (grouped-row->nutrient-measurement row) - (match-define (vector nm-id measurement-date residuals) row) +(define (grouped-row->nutrient-measurement grouped-row) + (match-define (vector nm-id measurement-date residuals) grouped-row) (nutrient-measurement nm-id measurement-date (residuals->nutrient-value-hash residuals))) (define (get-nutrient-measurements) @@ -99,8 +99,7 @@ #:order-by nm.measurement_date #:desc) #:group '#(0 1))) - (for/list ([row grouped-rows]) - (grouped-row->nutrient-measurement row))) + (map grouped-row->nutrient-measurement grouped-rows)) (define (get-nutrient-measurement #:id [nm-id #f] #:date [measurement-date #f]) (define where @@ -126,7 +125,7 @@ #:group '#(0 1))) (match grouped-rows ['() #f] - [(list row) (grouped-row->nutrient-measurement row)] + [(list grouped-row) (grouped-row->nutrient-measurement grouped-row)] [many (error 'get-nutrient-measurement "expected 1 nutrient measurement, got ~a" (length many))])) (define (get-nutrient-measurement-values nm-or-id) @@ -170,8 +169,8 @@ #:order-by nm.measurement_date #:desc) #:group '(#(0 1 2 3)))) - (for/hash ([row grouped-rows]) - (match-define (vector n-id n-canonical-name n-french-name n-formula residual-rows) row) + (for/hash ([grouped-row grouped-rows]) + (match-define (vector n-id n-canonical-name n-french-name n-formula residual-rows) grouped-row) ;; residual-rows is a non-empty list of vectors: #(measurement_date value_ppm) (match-define (vector _ value-ppm) (first residual-rows)) (values (nutrient n-id n-canonical-name n-french-name n-formula) value-ppm))) |