summaryrefslogtreecommitdiff
path: root/models/nutrient-measurement.rkt
diff options
context:
space:
mode:
authorMarius Peter <dev@marius-peter.com>2025-12-06 17:55:58 +0100
committerMarius Peter <dev@marius-peter.com>2025-12-06 17:55:58 +0100
commitc3557a7d5f54d7a9cb7fb2ece9487332c264236e (patch)
tree1a87077374fba18f4ef38fb1ae084f6884e3cd5b /models/nutrient-measurement.rkt
parentc7ec194f4a6c3dc879c24d8075bfe05a7687f976 (diff)
Update model contracts.
Great use of my new modules to factor out common model contract logic!
Diffstat (limited to 'models/nutrient-measurement.rkt')
-rw-r--r--models/nutrient-measurement.rkt11
1 files changed, 6 insertions, 5 deletions
diff --git a/models/nutrient-measurement.rkt b/models/nutrient-measurement.rkt
index bc7a463..88177da 100644
--- a/models/nutrient-measurement.rkt
+++ b/models/nutrient-measurement.rkt
@@ -9,7 +9,7 @@
[create-nutrient-measurement! (-> string? nutrient-value-hash/c nutrient-measurement?)]
[get-nutrient-measurements (-> (listof nutrient-measurement?))]
[get-nutrient-measurement
- (->* () (#:id exact-nonnegative-integer? #:date string?) (or/c nutrient-measurement? #f))]
+ (->* () (#:id db-id? #:date string?) (or/c nutrient-measurement? #f))]
[get-nutrient-measurement-values (-> nutrient-measurement-or-id/c nutrient-value-hash/c)]
[get-nutrient-measurement-value
(-> nutrient-measurement-or-id/c nutrient? maybe-nutrient-value?)]
@@ -22,7 +22,9 @@
db
sql
"../db/conn.rkt"
- "nutrient.rkt")
+ "nutrient.rkt"
+ "nutrient-value.rkt"
+ "utils.rkt")
(struct nutrient-measurement (id measurement-date nutrient-values)
#:transparent
@@ -38,12 +40,11 @@
(~a (nutrient-canonical-name n) #:min-width 14)
(~a v #:max-width 6 #:align 'right)))))
-(define nutrient-measurement-id? exact-nonnegative-integer?)
-(define nutrient-measurement-or-id/c (or/c nutrient-measurement? nutrient-measurement-id?))
+(define nutrient-measurement-or-id/c (or/c nutrient-measurement? db-id?))
(define (->nm-id nm-or-id)
(match nm-or-id
- [(? nutrient-measurement-id? id) id]
+ [(? db-id? id) id]
[(nutrient-measurement id _ _) id]))
;; CREATE
Copyright 2019--2026 Marius PETER