Fixing minor bugs.

This commit is contained in:
Bryce Covert
2020-08-13 18:09:13 -07:00
parent 54d5de6d33
commit 0c87309c34
7 changed files with 134 additions and 80 deletions

View File

@@ -10,7 +10,8 @@
[auto-ap.datomic.transactions :as d-transactions]
[auto-ap.datomic.clients :as d-clients]
[auto-ap.time :as time]
[auto-ap.datomic.transaction-rules :as tr]))
[auto-ap.datomic.transaction-rules :as tr]
[clojure.tools.logging :as log]))
(defn rule-applies? [transaction {:keys [:transaction-rule/description
:transaction-rule/dom-gte :transaction-rule/dom-lte
@@ -82,16 +83,19 @@
(recur rules)))
[])))
(defn ->pattern [x]
(. java.util.regex.Pattern (compile x java.util.regex.Pattern/CASE_INSENSITIVE)))
(defn group-rules-by-priority [rules]
(->> rules
(map (fn [r] (update r :transaction-rule/description #(some-> % re-pattern))))
(map (fn [r] (update r :transaction-rule/description #(some-> % ->pattern))))
(group-by rule-priority)
(sort-by first)
(map second)))
(defn get-matching-rules [transaction all-rules]
(->> all-rules
(map (fn [r] (update r :transaction-rule/description #(some-> % re-pattern))))
(map (fn [r] (update r :transaction-rule/description #(some-> % ->pattern))))
(filter #(rule-applies? transaction %))))
(defn apply-rule [transaction rule valid-locations]