Merge branch 'master' into add-general-ledger

This commit is contained in:
BC
2019-03-23 12:03:50 -07:00
9 changed files with 260 additions and 117 deletions

View File

@@ -29,7 +29,8 @@
{:payment/type [:db/ident]}]))
(defn raw-graphql [args]
(let [query (cond-> {:query {:find [default-read]
(let [check-number-like (try (Long/parseLong (:check-number-like args)) (catch Exception e nil))
query (cond-> {:query {:find [default-read]
:in ['$]
:where ['[?e :payment/client]]}
:args [(d/db (d/connect uri))]}
@@ -54,7 +55,10 @@
(:amount args) (add-arg '?amount (:amount args)
'[?e :payment/amount ?amount])
(:status args) (add-arg '?status (:status args)
'[?e :payment/status ?status]))]
'[?e :payment/status ?status])
check-number-like (add-arg '?check-number-like check-number-like
'[?e :payment/check-number ?check-number-like]
#_'[(.contains ^String ?check-number ?check-number-like)]))]
(->> (d/query
query)

View File

@@ -35,6 +35,18 @@
:code [[:db/add e a
(-> (d/entity db e) a (+ amount))]] })}]] )
(defn fix-pay-function [conn]
[[{:db/ident :pay
:db/doc "Data function that increments value of attribute a by amount."
:db/fn (d/function '{:lang "clojure"
:params [db e amount]
:code (let [current-outstanding-balance (-> (d/entity db e) :invoice/outstanding-balance)
new-outstanding-balance (- current-outstanding-balance amount)]
[[:db/add e :invoice/outstanding-balance new-outstanding-balance]
[:db/add e :invoice/status (if (< -0.001 new-outstanding-balance 0.001)
:invoice-status/paid
:invoice-status/unpaid)]])})}]] )
(defn -main [& args]
(println "Creating database...")
(d/create-database uri)
@@ -43,6 +55,7 @@
conn (d/connect uri)
norms-map {:auto-ap/base-schema {:txes auto-ap.datomic/base-schema}
:auto-ap/functions {:txes-fn 'auto-ap.datomic.migrate/functions :requires [:auto-ap/base-schema]}
:auto-ap/fx-pay-function-2 {:txes-fn 'auto-ap.datomic.migrate/fix-pay-function :requires [:auto-ap/functions]}
:auto-ap/migrate-vendors {:txes-fn 'auto-ap.datomic/migrate-vendors :requires [:auto-ap/base-schema]}
:auto-ap/migrate-clients {:txes-fn 'auto-ap.datomic/migrate-clients :requires [:auto-ap/migrate-vendors]}
:auto-ap/migrate-users {:txes-fn 'auto-ap.datomic/migrate-users :requires [:auto-ap/migrate-clients]}