added payment status and made checks sort correctly.

This commit is contained in:
2022-02-11 08:34:18 -08:00
parent 5d0d7afd99
commit 286c300dd0
5 changed files with 63 additions and 19 deletions

View File

@@ -1,8 +1,7 @@
(ns auto-ap.datomic.checks
(:require [datomic.api :as d]
[auto-ap.datomic :refer [uri merge-query apply-sort-3 apply-pagination add-sorter-fields conn]]
[auto-ap.datomic :refer [merge-query apply-sort-3 apply-pagination add-sorter-fields conn]]
[auto-ap.graphql.utils :refer [limited-clients]]
[auto-ap.utils :refer [dollars=]]
[clojure.set :refer [rename-keys]]
[clj-time.coerce :as c]
[clojure.tools.logging :as log]))
@@ -29,22 +28,22 @@
{:transaction/_payment [:db/id :transaction/date]}])
(defn raw-graphql-ids [db args]
(let [check-number-like (try (Long/parseLong (:check-number-like args)) (catch Exception e nil))
(let [check-number-like (try (Long/parseLong (:check-number-like args)) (catch Exception _ nil))
query (cond-> {:query {:find []
:in ['$]
:where []}
:args [db]}
(:sort args) (add-sorter-fields {"client" ['[?e :payment/client ?c]
'[?c :client/name ?sort-client]]
"vendor" ['[?e :payment/vendor ?v]
'[?v :vendor/name ?sort-vendor]]
"bank-account" ['[?e :payment/bank-account ?ba]
'[?ba :bank-account/name ?sort-bank-account]]
"check-number" ['[?e :payment/check-number ?sort-check-number]]
"date" ['[?e :payment/date ?sort-date]]
"amount" ['[?e :payment/amount ?sort-amount]]
"status" ['[?e :payment/status ?sort-status]]}
args)
(:sort args) (add-sorter-fields {"client" ['[?e :payment/client ?c]
'[?c :client/name ?sort-client]]
"vendor" ['[?e :payment/vendor ?v]
'[?v :vendor/name ?sort-vendor]]
"bank-account" ['[?e :payment/bank-account ?ba]
'[?ba :bank-account/name ?sort-bank-account]]
"check-number" ['[(get-else $ ?e :payment/check-number 0) ?sort-check-number]]
"date" ['[?e :payment/date ?sort-date]]
"amount" ['[?e :payment/amount ?sort-amount]]
"status" ['[?e :payment/status ?sort-status]]}
args)
(:exact-match-id args)
(merge-query {:query {:in ['?e]
:where []}
@@ -151,7 +150,7 @@
true (apply-sort-3 args)
true (apply-pagination args))))
(defn graphql-results [ids db args]
(defn graphql-results [ids db _]
(let [results (->> (d/pull-many db default-read ids)
(group-by :db/id))
payments (->> ids
@@ -161,7 +160,7 @@
payments))
(defn get-graphql [args]
(let [db (d/db (d/connect uri))
(let [db (d/db conn)
{ids-to-retrieve :ids matching-count :count} (raw-graphql-ids db args)]
[(->> (graphql-results ids-to-retrieve db args))
@@ -169,5 +168,5 @@
(defn get-by-id [id]
(->>
(d/pull (d/db (d/connect uri)) default-read id)
(d/pull (d/db conn) default-read id)
(<-datomic)))