supports looking up by check number.
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -266,6 +266,7 @@
|
||||
:payment_page {:type '(list :payment_page)
|
||||
:args {:client_id {:type :id}
|
||||
:vendor_id {:type :id}
|
||||
:check_number_like {:type 'String}
|
||||
:start {:type 'Int}
|
||||
:sort_by {:type 'String}
|
||||
:asc {:type 'Boolean}}
|
||||
|
||||
@@ -40,7 +40,9 @@
|
||||
(assoc-in [::params] params))
|
||||
:graphql {:token (-> cofx :db :user)
|
||||
:query-obj {:venia/queries [[:payment_page
|
||||
(assoc params :client-id (:id @(re-frame/subscribe [::subs/client])))
|
||||
(-> params
|
||||
(assoc :client-id (:id @(re-frame/subscribe [::subs/client])))
|
||||
(dissoc :check-number-like-current))
|
||||
[[:payments [:id :status :amount :type :check_number :s3_url :date [:vendor [:name :id]] [:client [:name :id]]]]
|
||||
:total
|
||||
:start
|
||||
@@ -96,6 +98,27 @@
|
||||
(assoc-in updated [::params :vendor-id] value))
|
||||
updated))))
|
||||
|
||||
(re-frame/reg-event-fx
|
||||
::check-number-like-current-changed
|
||||
(fn [{:keys [db]} [_ params check-like]]
|
||||
{:db (assoc-in db [::params :check-number-like-current] check-like )
|
||||
:dispatch-debounce {:event [::check-number-like-settled check-like]
|
||||
:time 500
|
||||
:key ::check-number-like}}))
|
||||
|
||||
(re-frame/reg-event-fx
|
||||
::check-number-like-settled
|
||||
(fn [{:keys [db]} [_ check-like]]
|
||||
{:dispatch [::params-change (assoc (::params db) :check-number-like check-like :start 0) ]}))
|
||||
|
||||
(defn check-number-filter []
|
||||
(let [{:keys [check-number-like-current] :as params} @(re-frame/subscribe [::params])]
|
||||
[:div.field
|
||||
[:div.control [:input.input {:placeholder "10001"
|
||||
:value check-number-like-current
|
||||
:on-change (fn [x]
|
||||
(re-frame/dispatch [::check-number-like-current-changed params (.. x -target -value) ]))} ]]]))
|
||||
|
||||
(defn check-table [{:keys [id payment-page status on-params-change vendors params check-boxes checked on-check-changed expense-event]}]
|
||||
(let [#_#_state (reagent/atom (or @params {}))
|
||||
selected-client @(re-frame/subscribe [::subs/client])
|
||||
@@ -211,8 +234,12 @@
|
||||
(defn checks-page []
|
||||
[side-bar-layout {:side-bar
|
||||
[:div
|
||||
[:p.menu-label "Vendor"]
|
||||
[:p.menu-label "Vendor"]
|
||||
[:div [vendor-filter {:on-change-event [::change-selected-vendor]
|
||||
:value (:vendor-filter @(re-frame/subscribe [::payment-page]))
|
||||
:vendors @(re-frame/subscribe [::subs/vendors])}]]]
|
||||
:vendors @(re-frame/subscribe [::subs/vendors])}]]
|
||||
|
||||
[:p.menu-label "Check #"]
|
||||
[:div [check-number-filter]]
|
||||
]
|
||||
:main [checks-content]}])
|
||||
|
||||
@@ -847,7 +847,7 @@
|
||||
{:db (assoc-in db [::params :invoice-number-like-current] invoice-like )
|
||||
:dispatch-debounce {:event [::invoice-number-like-settled invoice-like]
|
||||
:time 500
|
||||
:key ::invoice-nuber-like}}))
|
||||
:key ::invoice-number-like}}))
|
||||
|
||||
(re-frame/reg-event-fx
|
||||
::invoice-number-like-settled
|
||||
|
||||
Reference in New Issue
Block a user