should only have one arity with this thing.

This commit is contained in:
2021-12-19 13:37:33 -08:00
parent 27ae8a15b7
commit 13c689221c

View File

@@ -409,69 +409,71 @@
(defn do-import (defn import-yodlee [transactions]
([] (lc/with-context {:source "Import yodlee transactions"}
(do-import (client/get-transactions))) (let [import-id (start-import :import-source/yodlee "Automated Yodlee User")]
([transactions] (lc/with-context {:import-id import-id}
(lc/with-context {:source "Import yodlee transactions"} (try
(let [import-id (start-import :import-source/yodlee "Automated Yodlee User")] (log/info "importing from yodlee")
(lc/with-context {:import-id import-id} (let [account-lookup (->> (d/q '[:find ?ya ?ba
(try :in $
(log/info "importing from yodlee") :where [?ba :bank-account/yodlee-account-id ?ya]]
(let [account-lookup (->> (d/q '[:find ?ya ?ba (d/db conn))
:in $ (into {}))
:where [?ba :bank-account/yodlee-account-id ?ya]] transactions-by-bank-account (group-by
(d/db conn)) #(account-lookup (:accountId %))
(into {})) transactions)
transactions-by-bank-account (group-by result (->> transactions-by-bank-account
#(account-lookup (:accountId %)) (filter (fn [[bank-account]]
transactions) bank-account))
result (->> transactions-by-bank-account (map (fn [[bank-account transactions]]
(filter (fn [[bank-account]] (import-for-bank-account transactions bank-account import-id)))
bank-account)) aggregate-results)]
(map (fn [[bank-account transactions]]
(import-for-bank-account transactions bank-account import-id)))
aggregate-results)] (finish-import (assoc result :db/id import-id)))
(catch Exception e
(log/error e)
(finish-import {:db/id import-id})))))))
(defn do-import []
(import-yodlee (client/get-transactions)))
(finish-import (assoc result :db/id import-id)))
(catch Exception e
(log/error e)
(finish-import {:db/id import-id}))))))))
(def do-import (allow-once do-import)) (def do-import (allow-once do-import))
(defn do-import2 (defn import-yodlee2
([] [transactions]
(log/info "starting import") (lc/with-context {:source "Import yodlee2 transactions"}
(do-import2 (client2/get-transactions "NGGL"))) (let [import-id (start-import :import-source/yodlee "Automated Yodlee User")]
([transactions] (lc/with-context {:import-id import-id}
(lc/with-context {:source "Import yodlee2 transactions"} (try
(let [import-id (start-import :import-source/yodlee "Automated Yodlee User")] (let [account-lookup (->> (d/q '[:find ?ya ?ba
(lc/with-context {:import-id import-id} :in $
(try :where
(let [account-lookup (->> (d/q '[:find ?ya ?ba [?ba :bank-account/yodlee-account ?y]
:in $ [?y :yodlee-account/id ?ya]]
:where (d/db conn))
[?ba :bank-account/yodlee-account ?y] (into {}))
[?y :yodlee-account/id ?ya]] transactions-by-bank-account (group-by
(d/db conn)) #(account-lookup (:accountId %))
(into {})) transactions)
transactions-by-bank-account (group-by result (->> transactions-by-bank-account
#(account-lookup (:accountId %)) (filter (fn [[bank-account]]
transactions) bank-account))
result (->> transactions-by-bank-account (map (fn [[bank-account transactions]]
(filter (fn [[bank-account]] (import-for-bank-account transactions bank-account import-id)))
bank-account)) aggregate-results)]
(map (fn [[bank-account transactions]]
(import-for-bank-account transactions bank-account import-id)))
aggregate-results)]
(finish-import (assoc result :db/id import-id))) (finish-import (assoc result :db/id import-id)))
(catch Exception e (catch Exception e
(log/error e) (log/error e)
(finish-import {:db/id import-id})))))))) (finish-import {:db/id import-id})))))))
(defn do-import2 []
(log/info "starting import")
(import-yodlee2 (client2/get-transactions "NGGL")))
(def do-import2 (allow-once do-import2)) (def do-import2 (allow-once do-import2))