diff --git a/src/clj/auto_ap/datomic.clj b/src/clj/auto_ap/datomic.clj index c48c288a..da7d70cf 100644 --- a/src/clj/auto_ap/datomic.clj +++ b/src/clj/auto_ap/datomic.clj @@ -617,7 +617,6 @@ :count (count results)}) (defn audit-transact-batch [txes id] - (println "transacting batch") (let [batch-id (.toString (java.util.UUID/randomUUID))] (reduce (fn [full-tx batch] @@ -637,8 +636,7 @@ true (update :tempids merge (:tempids tx-result))))) {} - (partition-all 200 txes))) - (println "done")) + (partition-all 200 txes)))) (defn audit-transact [txes id] (dc/transact conn {:tx-data (conj txes {:db/id "datomic.tx" diff --git a/src/clj/auto_ap/graphql/accounts.clj b/src/clj/auto_ap/graphql/accounts.clj index 89b42766..a420e50c 100644 --- a/src/clj/auto_ap/graphql/accounts.clj +++ b/src/clj/auto_ap/graphql/accounts.clj @@ -2,6 +2,7 @@ (:require [auto-ap.datomic :refer [audit-transact conn]] [auto-ap.datomic.accounts :as d-accounts] + [iol-ion.tx :refer [upsert-entity]] [auto-ap.graphql.utils :refer [->graphql <-graphql @@ -46,26 +47,27 @@ (throw (ex-info (str "Account set " account-set " already has an account for code " numeric-code) {} )))) (let [result (audit-transact [`(upsert-entity - ~{:db/id (or id "new-account") - :account/name name - :account/search-terms name - :account/type (keyword "account-type" (clojure.core/name type)) - :account/applicability (or (enum->keyword applicability "account-applicability") - :account-applicability/global) - :account/invoice-allowance (some-> invoice-allowance (enum->keyword "allowance")) - :account/vendor-allowance (some-> vendor-allowance (enum->keyword "allowance")) - :account/default-allowance :allowance/allowed - :account/account-set account-set - :account/location location - :account/numeric-code numeric-code - :account/code (str numeric-code) - :account/client-overrides (mapv - (fn [client-override] - {:db/id (:id client-override) - :account-client-override/client (:client-id client-override) - :account-client-override/name (:name client-override) - :account-client-override/search-terms (:name client-override)}) - client-overrides)})] + ~(cond-> {:db/id (or id "new-account") + :account/name name + :account/search-terms name + :account/type (keyword "account-type" (clojure.core/name type)) + :account/applicability (or (enum->keyword applicability "account-applicability") + :account-applicability/global) + :account/invoice-allowance (some-> invoice-allowance (enum->keyword "allowance")) + :account/vendor-allowance (some-> vendor-allowance (enum->keyword "allowance")) + :account/default-allowance :allowance/allowed + :account/account-set account-set + :account/location location + :account/numeric-code numeric-code + :account/code (str numeric-code) + :account/client-overrides (mapv + (fn [client-override] + {:db/id (:id client-override) + :account-client-override/client (:client-id client-override) + :account-client-override/name (:name client-override) + :account-client-override/search-terms (:name client-override)}) + client-overrides)} + id (dissoc :account/numeric-code :account/code)))] (:id context))] (->graphql (d-accounts/get-by-id (or id (get-in result [:tempids "new-account"]))))))) diff --git a/test/clj/auto_ap/integration/graphql/accounts.clj b/test/clj/auto_ap/integration/graphql/accounts.clj index e6b9b522..3e062261 100644 --- a/test/clj/auto_ap/integration/graphql/accounts.clj +++ b/test/clj/auto_ap/integration/graphql/accounts.clj @@ -146,11 +146,12 @@ (deftest get-graphql (testing "should retrieve a single account" - (d/transact conn [{:account/numeric-code 1 - :account/default-allowance :allowance/allowed - :account/type :account-type/asset - :account/location "A" - :account/name "Test"}]) + (dc/transact conn {:tx-data [{:account/numeric-code 1 + :account/default-allowance :allowance/allowed + :account/type :account-type/asset + :account/location "A" + :account/name "Test"}]}) + (is (= {:name "Test", :invoice_allowance nil, :numeric_code 1, diff --git a/things-to-search-for.txt b/things-to-search-for.txt index bbba9a05..f17f5fda 100644 --- a/things-to-search-for.txt +++ b/things-to-search-for.txt @@ -35,4 +35,5 @@ Sanity checks later: Future improvements: Make reports just be based on running-balances - +get rid of account-groups +move to solr