[Racket] Ferti hydroponic nutrient solver, redux.
Tidy up model modules.
Changed files
models/crop-requirement.rkt
@@ -31,7 +31,6 @@
31
31
(values id profile (if (sql-null? crop-id) #f crop-id) nutrient-values)))
32
32
33
33
(define crop-requirement-id? exact-nonnegative-integer?)
34
Removed:
35
34
(define crop-requirement-or-id/c (or/c crop-requirement? crop-requirement-id?))
36
35
37
36
(define (->cr-id cr-or-id)
models/fertilizer-product.rkt
@@ -11,7 +11,7 @@
11
11
[get-fertilizer-products (-> (listof fertilizer-product?))]
12
12
[get-fertilizer-product
13
13
(->* ()
14
Removed:
(#:id (or/c #f exact-nonnegative-integer?) #:canonical-name (or/c #f string?))
14
Added:
(#:id exact-nonnegative-integer? #:canonical-name string?)
15
15
(or/c fertilizer-product? #f))]
16
16
[get-fertilizer-product-values (-> fertilizer-product-or-id/c nutrient-value-hash/c)]
17
17
[get-fertilizer-product-value
@@ -47,7 +47,6 @@
47
47
(~a v #:max-width 6 #:align 'right)))))
48
48
49
49
(define fertilizer-product-id? exact-nonnegative-integer?)
50
Removed:
51
50
(define fertilizer-product-or-id/c (or/c fertilizer-product? fertilizer-product-id?))
52
51
53
52
(define (->fp-id fp-or-id)
models/nutrient-measurement.rkt
@@ -9,9 +9,7 @@
9
9
[create-nutrient-measurement! (-> string? nutrient-value-hash/c nutrient-measurement?)]
10
10
[get-nutrient-measurements (-> (listof nutrient-measurement?))]
11
11
[get-nutrient-measurement
12
Removed:
(->* ()
13
Removed:
(#:id exact-nonnegative-integer? #:date string?)
14
Removed:
(or/c nutrient-measurement? #f))]
12
Added:
(->* () (#:id exact-nonnegative-integer? #:date string?) (or/c nutrient-measurement? #f))]
15
13
[get-nutrient-measurement-values (-> nutrient-measurement-or-id/c nutrient-value-hash/c)]
16
14
[get-nutrient-measurement-value
17
15
(-> nutrient-measurement-or-id/c nutrient? maybe-nutrient-value?)]
@@ -40,7 +38,6 @@
40
38
(~a v #:max-width 6 #:align 'right)))))
41
39
42
40
(define nutrient-measurement-id? exact-nonnegative-integer?)
43
Removed:
44
41
(define nutrient-measurement-or-id/c (or/c nutrient-measurement? nutrient-measurement-id?))
45
42
46
43
(define (->nm-id nm-or-id)
@@ -54,10 +51,12 @@
54
51
(or
55
52
(get-nutrient-measurement #:date measurement-date)
56
53
(with-tx
57
Removed:
(query-exec (current-conn) (insert #:into nutrient_measurements #:set [measurement_date ,measurement-date]))
54
Added:
(query-exec (current-conn)
55
Added:
(insert #:into nutrient_measurements #:set [measurement_date ,measurement-date]))
58
56
(define nm-id
59
Removed:
(query-value (current-conn)
60
Removed:
(select id #:from nutrient_measurements #:where (= measurement_date ,measurement-date))))
57
Added:
(query-value
58
Added:
(current-conn)
59
Added:
(select id #:from nutrient_measurements #:where (= measurement_date ,measurement-date))))
61
60
(query-exec (current-conn)
62
61
(insert #:into nutrient_value_sets #:set [nutrient_measurement_id ,nm-id]))
63
62
(define nvs-id
models/nutrient-target.rkt
@@ -9,9 +9,7 @@
9
9
[create-nutrient-target! (-> string? nutrient-value-hash/c nutrient-target?)]
10
10
[get-nutrient-targets (-> (listof nutrient-target?))]
11
11
[get-nutrient-target
12
Removed:
(->* ()
13
Removed:
(#:id (or/c #f exact-nonnegative-integer?) #:date (or/c #f string?))
14
Removed:
(or/c nutrient-target? #f))]
12
Added:
(->* () (#:id exact-nonnegative-integer? #:date string?) (or/c nutrient-target? #f))]
15
13
[get-nutrient-target-values (-> nutrient-target-or-id/c nutrient-value-hash/c)]
16
14
[get-nutrient-target-value (-> nutrient-target-or-id/c nutrient? maybe-nutrient-value?)]
17
15
[get-latest-nutrient-target-value (-> nutrient? maybe-nutrient-value?)]
@@ -36,7 +34,6 @@
36
34
(~a v #:max-width 6 #:align 'right)))))
37
35
38
36
(define nutrient-target-id? exact-nonnegative-integer?)
39
Removed:
40
37
(define nutrient-target-or-id/c (or/c nutrient-target? nutrient-target-id?))
41
38
42
39
(define (->nt-id nt-or-id)