number range match.
This commit is contained in:
@@ -59,6 +59,18 @@
|
|||||||
(merge-query {:query {:in ['?vendor-id]
|
(merge-query {:query {:in ['?vendor-id]
|
||||||
:where ['[?e :transaction/vendor ?vendor-id]]}
|
:where ['[?e :transaction/vendor ?vendor-id]]}
|
||||||
:args [(:vendor-id args)]})
|
:args [(:vendor-id args)]})
|
||||||
|
(:amount-gte args)
|
||||||
|
(merge-query {:query {:in ['?amount-gte]
|
||||||
|
:where ['[?e :transaction/amount ?a]
|
||||||
|
'[(>= ?a ?amount-gte)]]}
|
||||||
|
:args [(:amount-gte args)]})
|
||||||
|
|
||||||
|
(:amount-lte args)
|
||||||
|
(merge-query {:query {:in ['?amount-lte]
|
||||||
|
:where ['[?e :transaction/amount ?a]
|
||||||
|
'[(<= ?a ?amount-lte)]]}
|
||||||
|
:args [(:amount-lte args)]})
|
||||||
|
|
||||||
(:start (:date-range args))
|
(:start (:date-range args))
|
||||||
(merge-query {:query {:in ['?start-date]
|
(merge-query {:query {:in ['?start-date]
|
||||||
:where ['[?e :transaction/date ?date]
|
:where ['[?e :transaction/date ?date]
|
||||||
|
|||||||
@@ -399,6 +399,8 @@
|
|||||||
:vendor_id {:type :id}
|
:vendor_id {:type :id}
|
||||||
:bank_account_id {:type :id}
|
:bank_account_id {:type :id}
|
||||||
:date_range {:type :date_range}
|
:date_range {:type :date_range}
|
||||||
|
:amount_lte {:type :money}
|
||||||
|
:amount_gte {:type :money}
|
||||||
:start {:type 'Int}
|
:start {:type 'Int}
|
||||||
:sort_by {:type 'String}
|
:sort_by {:type 'String}
|
||||||
:asc {:type 'Boolean}
|
:asc {:type 'Boolean}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
[auto-ap.routes :as routes]
|
[auto-ap.routes :as routes]
|
||||||
[auto-ap.views.components.bank-account-filter :refer [bank-account-filter]]
|
[auto-ap.views.components.bank-account-filter :refer [bank-account-filter]]
|
||||||
[auto-ap.views.components.date-range-filter :refer [date-range-filter]]
|
[auto-ap.views.components.date-range-filter :refer [date-range-filter]]
|
||||||
|
[auto-ap.views.components.number-filter :refer [number-filter]]
|
||||||
[auto-ap.views.components.vendor-filter :refer [vendor-filter]]
|
[auto-ap.views.components.vendor-filter :refer [vendor-filter]]
|
||||||
[auto-ap.views.components.typeahead :refer [typeahead-entity]]
|
[auto-ap.views.components.typeahead :refer [typeahead-entity]]
|
||||||
[auto-ap.views.components.layouts :refer [appearing-side-bar side-bar-layout]]
|
[auto-ap.views.components.layouts :refer [appearing-side-bar side-bar-layout]]
|
||||||
@@ -94,6 +95,16 @@
|
|||||||
{:dispatch [::params-change (::params updated)]
|
{:dispatch [::params-change (::params updated)]
|
||||||
:db updated})))
|
:db updated})))
|
||||||
|
|
||||||
|
(re-frame/reg-event-fx
|
||||||
|
::change-selected-amount-range
|
||||||
|
(fn [{:keys [db]} [_ key value]]
|
||||||
|
(let [[key] key
|
||||||
|
updated (-> db
|
||||||
|
(assoc-in [::transaction-page :amount-range-filter key] value)
|
||||||
|
(assoc-in [::params key] value))]
|
||||||
|
{:dispatch [::params-change (::params updated)]
|
||||||
|
:db updated})))
|
||||||
|
|
||||||
(re-frame/reg-event-fx
|
(re-frame/reg-event-fx
|
||||||
::change-selected-vendor
|
::change-selected-vendor
|
||||||
(fn [{:keys [db]} [_ vendor]]
|
(fn [{:keys [db]} [_ vendor]]
|
||||||
@@ -202,6 +213,12 @@
|
|||||||
{:on-change-event [::change-selected-date-range]
|
{:on-change-event [::change-selected-date-range]
|
||||||
:value (:date-range-filter @(re-frame/subscribe [::transaction-page]))}]]
|
:value (:date-range-filter @(re-frame/subscribe [::transaction-page]))}]]
|
||||||
|
|
||||||
|
[:p.menu-label "Amount"]
|
||||||
|
[:div
|
||||||
|
[number-filter
|
||||||
|
{:on-change-event [::change-selected-amount-range]
|
||||||
|
:value (:amount-range-filter @(re-frame/subscribe [::transaction-page]))}]]
|
||||||
|
|
||||||
[:p.menu-label "Vendor"]
|
[:p.menu-label "Vendor"]
|
||||||
[:div
|
[:div
|
||||||
[typeahead-entity {:matches @(re-frame/subscribe [::subs/vendors])
|
[typeahead-entity {:matches @(re-frame/subscribe [::subs/vendors])
|
||||||
|
|||||||
Reference in New Issue
Block a user