summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Peter <dev@marius-peter.com>2025-11-30 13:53:46 +0100
committerMarius Peter <dev@marius-peter.com>2025-11-30 13:53:46 +0100
commit0e0de4a45c10fb2f1ea628f2514cf3f2742db310 (patch)
tree52516a1737c3c150196f30b4c6f0da97a016bdc3
parente082bbe3d61f1186c5758b2be61f793c75dd2439 (diff)
Insist on grouped-row naming convention.
-rw-r--r--models/crop-requirement.rkt9
-rw-r--r--models/fertilizer-product.rkt9
-rw-r--r--models/nutrient-measurement.rkt13
-rw-r--r--models/nutrient-target.rkt9
4 files changed, 18 insertions, 22 deletions
diff --git a/models/crop-requirement.rkt b/models/crop-requirement.rkt
index fd11b06..5ac3f45 100644
--- a/models/crop-requirement.rkt
+++ b/models/crop-requirement.rkt
@@ -74,8 +74,8 @@
(as nutrients n)
#:on (= n.id nv.nutrient_id))))
-(define (grouped-row->crop-requirement row)
- (match-define (vector cr-id profile crop-id residuals) row)
+(define (grouped-row->crop-requirement grouped-row)
+ (match-define (vector cr-id profile crop-id residuals) grouped-row)
(crop-requirement cr-id profile crop-id (residuals->nutrient-value-hash residuals)))
(define (get-crop-requirements)
@@ -93,8 +93,7 @@
#:order-by cr.id
#:asc)
#:group '#(0 1 2)))
- (for/list ([row grouped-rows])
- (grouped-row->crop-requirement row)))
+ (map grouped-row->crop-requirement grouped-rows))
(define (get-crop-requirement #:id [cr-id #f] #:profile [profile #f] #:crop-id [crop-id #f])
(define where
@@ -120,7 +119,7 @@
#:group '#(0 1 2)))
(match grouped-rows
['() #f]
- [(list row) (grouped-row->crop-requirement row)]
+ [(list grouped-row) (grouped-row->crop-requirement grouped-row)]
[many (error 'get-crop-requirement "expected 1 crop requirement, got ~a" (length many))]))
(define (get-crop-requirement-values cr-or-id)
diff --git a/models/fertilizer-product.rkt b/models/fertilizer-product.rkt
index 1ada2cd..9427844 100644
--- a/models/fertilizer-product.rkt
+++ b/models/fertilizer-product.rkt
@@ -91,8 +91,8 @@
(as nutrients n)
#:on (= n.id nv.nutrient_id))))
-(define (grouped-row->fertilizer-product row)
- (match-define (vector fp-id canonical-name brand-name residuals) row)
+(define (grouped-row->fertilizer-product grouped-row)
+ (match-define (vector fp-id canonical-name brand-name residuals) grouped-row)
(fertilizer-product fp-id canonical-name (residuals->nutrient-value-hash residuals) brand-name))
(define (get-fertilizer-products)
@@ -110,8 +110,7 @@
#:order-by fp.canonical_name
#:asc)
#:group '#(0 1 2)))
- (for/list ([row grouped-rows])
- (grouped-row->fertilizer-product row)))
+ (map grouped-row->fertilizer-product grouped-rows))
(define (get-fertilizer-product #:id [fp-id #f] #:canonical-name [canonical-name #f])
(define where
@@ -138,7 +137,7 @@
#:group '#(0 1 2)))
(match grouped-rows
['() #f]
- [(list row) (grouped-row->fertilizer-product row)]
+ [(list grouped-row) (grouped-row->fertilizer-product grouped-row)]
[many (error 'get-fertilizer-product "expected 1 fertilizer product, got ~a" (length many))]))
(define (get-fertilizer-product-values fp-or-id)
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)))
diff --git a/models/nutrient-target.rkt b/models/nutrient-target.rkt
index f850d65..bb89273 100644
--- a/models/nutrient-target.rkt
+++ b/models/nutrient-target.rkt
@@ -74,8 +74,8 @@
(as nutrients n)
#:on (= n.id nv.nutrient_id))))
-(define (grouped-row->nutrient-target row)
- (match-define (vector nt-id target-date residuals) row)
+(define (grouped-row->nutrient-target grouped-row)
+ (match-define (vector nt-id target-date residuals) grouped-row)
(nutrient-target nt-id target-date (residuals->nutrient-value-hash residuals)))
(define (get-nutrient-targets)
@@ -92,8 +92,7 @@
#:order-by nt.target_date
#:desc)
#:group '#(0 1)))
- (for/list ([row grouped-rows])
- (grouped-row->nutrient-target row)))
+ (map grouped-row->nutrient-target grouped-rows))
(define (get-nutrient-target #:id [nt-id #f] #:date [target-date #f])
(define where
@@ -119,7 +118,7 @@
#:group '#(0 1)))
(match grouped-rows
['() #f]
- [(list row) (grouped-row->nutrient-target row)]
+ [(list grouped-row) (grouped-row->nutrient-target grouped-row)]
[many (error 'get-nutrient-target "expected 1 nutrient target, got ~a" (length many))]))
(define (get-nutrient-target-values nt-or-id)
Copyright 2019--2026 Marius PETER