make import more forgiving.

This commit is contained in:
2024-03-07 21:57:06 -08:00
parent 0a0978cce1
commit 9dc9078a0d
3 changed files with 58 additions and 11 deletions

View File

@@ -339,14 +339,20 @@
:error :import-batch/error
:not-ready :import-batch/not-ready) inc))
(when (= :import action)
(alog/info ::upserting-transaction :transaction [:upsert-transaction (transaction->txs transaction bank-account rule-applying-function)])
(let [result (audit-transact [[:upsert-transaction (transaction->txs transaction bank-account rule-applying-function)]
{:db/id import-id
:import-batch/entry (:db/id transaction)}]
{:user/name user
:user/role ":admin"})]
(doseq [[_ n] (:tempids result)]
(solr/touch-with-ledger n))))))
(try
(let [result (audit-transact [[:upsert-transaction (transaction->txs transaction bank-account rule-applying-function)]
{:db/id import-id
:import-batch/entry (:db/id transaction)}]
{:user/name user
:user/role ":admin"})]
(doseq [[_ n] (:tempids result)]
(solr/touch-with-ledger n)))
(catch Exception e
(swap! stats
#(update % :import-batch/error inc))
(alog/error ::invalid-transaction
:hint "It may be that the same bank account is linked twice"
:error e))))))
(get-stats [_]
@stats)