fixes plaid issues.

This commit is contained in:
2022-06-10 15:49:47 -07:00
parent a8fb649dd6
commit ed8b343e75

View File

@@ -2,7 +2,7 @@
(:require
[auto-ap.datomic :refer [conn]]
[auto-ap.plaid.core :as p]
[auto-ap.utils :refer [allow-once]]
[auto-ap.utils :refer [allow-once by]]
[auto-ap.import.transactions :as t]
[clj-time.core :as time]
[clojure.tools.logging :as log]
@@ -29,8 +29,10 @@
#:transaction {:description-original (:name t)
:raw-id (:transaction_id t)
:id (digest/sha-256 (:transaction_id t))
:amount (double (:amount t))
:date (coerce/to-date (auto-ap.time/parse (:date t) auto-ap.time/iso-date))
:amount (if (= "credit" (:type (:account t)))
(- (double (:amount t)))
(double (:amount t)))
:date (coerce/to-date (auto-ap.time/parse (:authorized_date t) auto-ap.time/iso-date))
:status "POSTED"})
@@ -41,9 +43,13 @@
start (time/plus end (time/days -30))]
(try
(doseq [[bank-account-id client-id external-id access-token] (get-plaid-accounts (d/db conn))
transaction (:transactions (p/get-transactions access-token external-id start end))]
:let [transaction-result (p/get-transactions access-token external-id start end)]
transaction (:transactions transaction-result)
accounts-by-id (by (:accounts transaction-result) :account_id)]
(when (not (:pending transaction))
(t/import-transaction! import-batch (assoc (plaid->transaction transaction)
(t/import-transaction! import-batch (assoc (plaid->transaction (assoc transaction
:account
(accounts-by-id (:account_id transaction))))
:transaction/bank-account bank-account-id
:transaction/client client-id))))
(t/finish! import-batch)