fixes null reference exception.

This commit is contained in:
2023-01-21 22:49:15 -08:00
parent d26f1514d0
commit 6636117cf9

View File

@@ -18,75 +18,109 @@
(defn get-1099-companies [user session]
(let [clients (->> (d/q '[:find ?c
:in $ ?user ?c
:in $ ?user
:where [?c :client/code]
[(auto-ap.graphql.utils/can-see-client? ?user ?c)]]
(d/db conn) user (some-> session :client :db/id))
(d/db conn) user)
(map first)
set)]
(->> (if (is-admin? user)
(d/q '[:find
(pull ?c [:client/code :db/id])
(pull ?v [:db/id
:vendor/name
{:vendor/legal-entity-1099-type [:db/ident]}
{:vendor/legal-entity-tin-type [:db/ident]}
{:vendor/address [:address/street1
:address/city
:address/state
:address/zip]}
:vendor/legal-entity-tin
:vendor/legal-entity-name
:vendor/legal-entity-first-name
:vendor/legal-entity-middle-name
:vendor/legal-entity-last-name])
(sum ?a)
:with ?d
:in $ ?c
:where
[?p :payment/date ?d ]
[(>= ?d #inst "2022-01-01T08:00")]
[(< ?d #inst "2023-01-01T08:00")]
[?p :payment/type :payment-type/check]
[?p :payment/client ?c]
[?p :payment/amount ?a]
[?p :payment/vendor ?v]]
(d/db conn)
(some-> session :client :db/id))
(d/q '[:find
(pull ?c [:client/code :db/id])
(pull ?v [:db/id
:vendor/name
{:vendor/legal-entity-1099-type [:db/ident]}
{:vendor/legal-entity-tin-type [:db/ident]}
{:vendor/address [:address/street1
:address/city
:address/state
:address/zip]}
:vendor/legal-entity-tin
:vendor/legal-entity-name
:vendor/legal-entity-first-name
:vendor/legal-entity-middle-name
:vendor/legal-entity-last-name])
(sum ?a)
:with ?d
:in $ [?c ...]
:where
[?p :payment/client ?c]
[?p :payment/date ?d ]
[(>= ?d #inst "2022-01-01T08:00")]
[(< ?d #inst "2023-01-01T08:00")]
[?p :payment/type :payment-type/check]
[?p :payment/amount ?a]
[?p :payment/vendor ?v]]
(d/db conn)
clients))
(filter (fn [[_ _ a]]
(>= (or a 0.0) 600.0)))
(take 200)
(sort-by (fn [[client _ amount]]
[(:client/code client ) amount]) ))))
(cond
(and (some-> session :client :db/id)
(can-see-client? user
(some-> session :client :db/id)))
(d/q '[:find
(pull ?c [:client/code :db/id])
(pull ?v [:db/id
:vendor/name
{:vendor/legal-entity-1099-type [:db/ident]}
{:vendor/legal-entity-tin-type [:db/ident]}
{:vendor/address [:address/street1
:address/city
:address/state
:address/zip]}
:vendor/legal-entity-tin
:vendor/legal-entity-name
:vendor/legal-entity-first-name
:vendor/legal-entity-middle-name
:vendor/legal-entity-last-name])
(sum ?a)
:with ?d
:in $ ?c
:where
[?p :payment/client ?c]
[?p :payment/date ?d ]
[(>= ?d #inst "2022-01-01T08:00")]
[(< ?d #inst "2023-01-01T08:00")]
[?p :payment/type :payment-type/check]
[?p :payment/amount ?a]
[?p :payment/vendor ?v]]
(d/db conn)
(some-> session :client :db/id))
(is-admin? user)
(d/q '[:find
(pull ?c [:client/code :db/id])
(pull ?v [:db/id
:vendor/name
{:vendor/legal-entity-1099-type [:db/ident]}
{:vendor/legal-entity-tin-type [:db/ident]}
{:vendor/address [:address/street1
:address/city
:address/state
:address/zip]}
:vendor/legal-entity-tin
:vendor/legal-entity-name
:vendor/legal-entity-first-name
:vendor/legal-entity-middle-name
:vendor/legal-entity-last-name])
(sum ?a)
:with ?d
:in $
:where
[?p :payment/date ?d ]
[(>= ?d #inst "2022-01-01T08:00")]
[(< ?d #inst "2023-01-01T08:00")]
[?p :payment/type :payment-type/check]
[?p :payment/client ?c]
[?p :payment/amount ?a]
[?p :payment/vendor ?v]]
(d/db conn))
(d/q '[:find
(pull ?c [:client/code :db/id])
(pull ?v [:db/id
:vendor/name
{:vendor/legal-entity-1099-type [:db/ident]}
{:vendor/legal-entity-tin-type [:db/ident]}
{:vendor/address [:address/street1
:address/city
:address/state
:address/zip]}
:vendor/legal-entity-tin
:vendor/legal-entity-name
:vendor/legal-entity-first-name
:vendor/legal-entity-middle-name
:vendor/legal-entity-last-name])
(sum ?a)
:with ?d
:in $ [?c ...]
:where
[?p :payment/client ?c]
[?p :payment/date ?d ]
[(>= ?d #inst "2022-01-01T08:00")]
[(< ?d #inst "2023-01-01T08:00")]
[?p :payment/type :payment-type/check]
[?p :payment/amount ?a]
[?p :payment/vendor ?v]]
(d/db conn)
clients)
(filter (fn [[_ _ a]]
(>= (or a 0.0) 600.0)))
(take 200)
(sort-by (fn [[client _ amount]]
[(:client/code client ) amount]) ))))
(defn dialog [header content footer]
[:div.modal.is-active