[Racket] Ferti hydroponic nutrient solver, redux.
Use match-define where sensible.
Changed files
models/crop-requirement.rkt
@@ -35,35 +35,31 @@
35
35
;; CREATE
36
36
37
37
(define (create-crop-requirement! profile nutrient-values [crop #f])
38
Removed:
(define existing-crop-requirement (get-crop-requirement #:profile profile))
39
Removed:
(define (new-crop-requirement)
40
Removed:
(with-tx
41
Removed:
(query-exec (current-conn)
42
Removed:
(if crop
43
Removed:
(insert #:into crop_requirements
44
Removed:
#:set [crop_id ,(crop-id crop)] [profile ,profile])
45
Removed:
(insert #:into crop_requirements
46
Removed:
#:set [profile ,profile])))
47
Removed:
(define cr-id (crop-requirement-id (get-crop-requirement #:profile profile)))
48
Removed:
(query-exec (current-conn)
49
Removed:
(insert #:into nutrient_value_sets
50
Removed:
#:set [crop_requirement_id ,cr-id]))
51
Removed:
(define nvs-id (query-value (current-conn)
52
Removed:
(select id
53
Removed:
#:from nutrient_value_sets
54
Removed:
#:where (= crop_requirement_id ,cr-id))))
55
Removed:
(for ([nv nutrient-values])
56
Removed:
(match nv
57
Removed:
[(cons n v)
58
Removed:
(query-exec (current-conn)
59
Removed:
(insert #:into nutrient_values
60
Removed:
#:set
61
Removed:
[value_set_id ,nvs-id]
62
Removed:
[nutrient_id ,(nutrient-id n)]
63
Removed:
[value_ppm ,v]))])))
64
Removed:
(get-crop-requirement #:profile profile))
65
Removed:
(or existing-crop-requirement
66
Removed:
(new-crop-requirement)))
38
Added:
(or (get-crop-requirement #:profile profile)
39
Added:
(with-tx
40
Added:
(query-exec (current-conn)
41
Added:
(if crop
42
Added:
(insert #:into crop_requirements
43
Added:
#:set [crop_id ,(crop-id crop)] [profile ,profile])
44
Added:
(insert #:into crop_requirements
45
Added:
#:set [profile ,profile])))
46
Added:
(define cr-id (crop-requirement-id (get-crop-requirement #:profile profile)))
47
Added:
(query-exec (current-conn)
48
Added:
(insert #:into nutrient_value_sets
49
Added:
#:set [crop_requirement_id ,cr-id]))
50
Added:
(define nvs-id (query-value (current-conn)
51
Added:
(select id
52
Added:
#:from nutrient_value_sets
53
Added:
#:where (= crop_requirement_id ,cr-id))))
54
Added:
(for ([nv nutrient-values])
55
Added:
(match-define (cons n v) nv)
56
Added:
(query-exec (current-conn)
57
Added:
(insert #:into nutrient_values
58
Added:
#:set
59
Added:
[value_set_id ,nvs-id]
60
Added:
[nutrient_id ,(nutrient-id n)]
61
Added:
[value_ppm ,v])))
62
Added:
(get-crop-requirement #:profile profile))))
67
63
68
64
69
65
;; READ
models/fertilizer-product.rkt
@@ -53,15 +53,14 @@
53
53
#:from nutrient_value_sets
54
54
#:where (= fertilizer_product_id ,fp-id))))
55
55
(for ([nv nutrient-values])
56
Removed:
(match nv
57
Removed:
[(cons n v)
58
Removed:
(query-exec (current-conn)
59
Removed:
(insert #:into nutrient_values
60
Removed:
#:set
61
Removed:
[value_set_id ,nvs-id]
62
Removed:
[nutrient_id ,(nutrient-id n)]
63
Removed:
[value_ppm ,v]))])))
64
Removed:
(get-fertilizer-product #:canonical-name canonical-name)))
56
Added:
(match-define (cons n v) nv)
57
Added:
(query-exec (current-conn)
58
Added:
(insert #:into nutrient_values
59
Added:
#:set
60
Added:
[value_set_id ,nvs-id]
61
Added:
[nutrient_id ,(nutrient-id n)]
62
Added:
[value_ppm ,v])))
63
Added:
(get-fertilizer-product #:canonical-name canonical-name))))
65
64
66
65
67
66
;; READ
models/nutrient-measurement.rkt
@@ -54,14 +54,13 @@
54
54
#:from nutrient_value_sets
55
55
#:where (= nutrient_measurement_id ,nm-id))))
56
56
(for ([nv nutrient-values])
57
Removed:
(match nv
58
Removed:
[(cons n v)
59
Removed:
(query-exec (current-conn)
60
Removed:
(insert #:into nutrient_values
61
Removed:
#:set
62
Removed:
[value_set_id ,nvs-id]
63
Removed:
[nutrient_id ,(nutrient-id n)]
64
Removed:
[value_ppm ,v]))]))
57
Added:
(match-define (cons n v) nv)
58
Added:
(query-exec (current-conn)
59
Added:
(insert #:into nutrient_values
60
Added:
#:set
61
Added:
[value_set_id ,nvs-id]
62
Added:
[nutrient_id ,(nutrient-id n)]
63
Added:
[value_ppm ,v])))
65
64
(get-nutrient-measurement #:measured-on measured-on))))
66
65
67
66
models/nutrient-target.rkt
@@ -54,14 +54,13 @@
54
54
#:from nutrient_value_sets
55
55
#:where (= nutrient_target_id ,nt-id))))
56
56
(for ([nv nutrient-values])
57
Removed:
(match nv
58
Removed:
[(cons n v)
59
Removed:
(query-exec (current-conn)
60
Removed:
(insert #:into nutrient_values
61
Removed:
#:set
62
Removed:
[value_set_id ,nvs-id]
63
Removed:
[nutrient_id ,(nutrient-id n)]
64
Removed:
[value_ppm ,v]))]))
57
Added:
(match-define (cons n v) nv)
58
Added:
(query-exec (current-conn)
59
Added:
(insert #:into nutrient_values
60
Added:
#:set
61
Added:
[value_set_id ,nvs-id]
62
Added:
[nutrient_id ,(nutrient-id n)]
63
Added:
[value_ppm ,v])))
65
64
(get-nutrient-target #:effective-on effective-on))))
66
65
67
66