switching to use real dates.
This commit is contained in:
@@ -3,9 +3,23 @@
|
||||
[auto-ap.parse.templates :as t]
|
||||
[clj-fuzzy.metrics :as m]
|
||||
[clojure.java.shell :as sh]
|
||||
[clojure.string :as str]))
|
||||
[clojure.string :as str]
|
||||
[clj-time.format :as f]
|
||||
[clj-time.core :as time]))
|
||||
|
||||
|
||||
(defmulti parse-value (fn [method _ _]
|
||||
method))
|
||||
|
||||
(defmethod parse-value :clj-time
|
||||
[_ format value]
|
||||
(time/from-time-zone (f/parse (f/formatter format) value)
|
||||
(time/time-zone-for-id "America/Los_Angeles")))
|
||||
|
||||
(defmethod parse-value nil
|
||||
[_ _ value]
|
||||
value)
|
||||
|
||||
|
||||
(defn template-applies? [text {:keys [keywords]}]
|
||||
(every? #(re-find % text) keywords))
|
||||
@@ -20,8 +34,10 @@
|
||||
:extract
|
||||
(reduce-kv
|
||||
(fn [result k v]
|
||||
(assoc result k (some-> (first (map second (re-seq v text)))
|
||||
str/trim )))
|
||||
(let [value (some-> (first (map second (re-seq v text)))
|
||||
str/trim )
|
||||
[value-parser parser-params] (-> template :parser k)]
|
||||
(assoc result k (parse-value value-parser parser-params value))))
|
||||
{:vendor-code (:vendor template)}))]))
|
||||
|
||||
(defn parse [text]
|
||||
|
||||
Reference in New Issue
Block a user