supports general ledger migration.

This commit is contained in:
Bryce Covert
2019-04-12 23:18:24 -07:00
parent e02cb2f646
commit 2e694a5c75
2 changed files with 31 additions and 2 deletions

View File

@@ -1,9 +1,12 @@
(ns auto-ap.datomic.migrate.add-general-ledger
(:require [datomic.api :as d]
[auto-ap.datomic :refer [remove-nils]]
[auto-ap.datomic.accounts :as accounts]
[auto-ap.expense-accounts :as expense-accounts]
[auto-ap.ledger :as ledger]))
(def add-general-ledger
[[{:db/ident :journal-entry/source
:db/valueType :db.type/string
@@ -158,3 +161,27 @@
:db/valueType :db.type/ref
:db/cardinality :db.cardinality/one
:db/doc "The account will be used when a bill is created."}]])
(defn convert-vendors [conn]
(let [vendors (d/query {:query {:find '[?v ?expense-account-id]
:in '[$]
:where ['[?v :vendor/default-expense-account ?expense-account-id]]}
:args [(d/db conn)]})]
[(mapv
(fn [[v expense-account-id]]
(remove-nils {:db/id v
:vendor/default-account (accounts/get-account-by-numeric-code-and-sets expense-account-id ["default"])}))
vendors)]))
(defn convert-invoices [conn]
(let [invoice-expense-accounts (d/query {:query {:find '[?iea ?expense-account-id]
:in '[$]
:where ['[?iea :invoice-expense-account/expense-account-id ?expense-account-id]]}
:args [(d/db conn)]})]
[(mapv
(fn [[iea expense-account-id]]
(remove-nils {:db/id iea
:invoice-expense-account/account (accounts/get-account-by-numeric-code-and-sets expense-account-id ["default"])}))
invoice-expense-accounts)]))