everything is audited.
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
(ns auto-ap.graphql.ledger
|
||||
(:require [auto-ap.datomic :refer [uri remove-nils]]
|
||||
(:require [auto-ap.datomic :refer [audit-transact-batch remove-nils uri]]
|
||||
[auto-ap.datomic.accounts :as a]
|
||||
[auto-ap.datomic.clients :as d-clients]
|
||||
[auto-ap.datomic.ledger :as l]
|
||||
[auto-ap.datomic.vendors :as d-vendors]
|
||||
[auto-ap.datomic.accounts :as a]
|
||||
[auto-ap.utils :refer [by dollars=]]
|
||||
[auto-ap.time :refer [parse iso-date]]
|
||||
[auto-ap.graphql.utils :refer [->graphql <-graphql limited-clients assert-admin result->page assert-can-see-client]]
|
||||
[clj-time.coerce :as coerce]
|
||||
[clojure.string :as str]
|
||||
[clj-time.core :as time]
|
||||
[auto-ap.graphql.utils
|
||||
:refer
|
||||
[->graphql <-graphql assert-admin assert-can-see-client result->page]]
|
||||
[auto-ap.parse.util :as parse]
|
||||
[datomic.api :as d]
|
||||
[auto-ap.parse.templates :as t]
|
||||
[auto-ap.datomic.clients :as d-clients]
|
||||
[auto-ap.utils :refer [by dollars=]]
|
||||
[clj-time.coerce :as coerce]
|
||||
[clj-time.core :as time]
|
||||
[clojure.string :as str]
|
||||
[clojure.tools.logging :as log]
|
||||
[datomic.api :as d]
|
||||
[unilog.context :as lc]))
|
||||
|
||||
(defn get-ledger-page [context args value]
|
||||
@@ -217,7 +217,8 @@
|
||||
:db/id vendor_name})))
|
||||
{}
|
||||
(:entries args))
|
||||
all-vendors (into all-vendors new-hidden-vendors)
|
||||
_ (audit-transact-batch (vec (vals new-hidden-vendors)) (:id context))
|
||||
all-vendors (by :vendor/name (d-vendors/get-graphql {}))
|
||||
all-accounts (transduce (map (comp str :account/numeric-code)) conj #{} (a/get-accounts))
|
||||
transaction (doall (map
|
||||
(assoc-error (fn [entry]
|
||||
@@ -250,7 +251,8 @@
|
||||
:journal-entry/client [:client/code (:client_code entry)]
|
||||
:journal-entry/date (coerce/to-date (parse/parse-value :clj-time "MM/dd/yyyy" (:date entry)))
|
||||
:journal-entry/external-id (:external_id entry)
|
||||
:journal-entry/vendor (:db/id (all-vendors (:vendor_name entry)))
|
||||
:journal-entry/vendor (:db/id (doto (all-vendors (:vendor_name entry))
|
||||
println))
|
||||
:journal-entry/amount (:amount entry)
|
||||
:journal-entry/note (:note entry)
|
||||
:journal-entry/cleared-against (:cleared_against entry)
|
||||
@@ -286,12 +288,11 @@
|
||||
retraction (mapv (fn [x] [:db/retractEntity [:journal-entry/external-id (:journal-entry/external-id x)]])
|
||||
success)]
|
||||
(log/info "manual ledger import has " (count success) " new rows")
|
||||
(run! (fn [batch]
|
||||
(log/info "transacting retraction batch" (first batch))
|
||||
@(d/transact (d/connect uri) batch)) (partition-all 100 retraction))
|
||||
(run! (fn [batch]
|
||||
(log/info "transacting success batch" (first batch))
|
||||
@(d/transact (d/connect uri) batch)) (partition-all 100 success))
|
||||
|
||||
|
||||
(audit-transact-batch retraction (:id context))
|
||||
(audit-transact-batch success (:id context))
|
||||
|
||||
{:successful (map (fn [x] {:external_id (:journal-entry/external-id x)}) success)
|
||||
:existing []
|
||||
:errors (map (fn [x] {:external_id (:external_id x)
|
||||
|
||||
Reference in New Issue
Block a user