transaction date range. Need to generalize filter changing.

This commit is contained in:
Bryce Covert
2019-05-03 07:54:21 -07:00
parent b176647585
commit 34751fe77a
6 changed files with 89 additions and 5 deletions

View File

@@ -0,0 +1,38 @@
(ns auto-ap.views.components.date-range-filter
(:require
[clojure.spec.alpha :as s]
[auto-ap.entities.invoice :as invoice]
[auto-ap.views.components.typeahead :refer [typeahead]]
[auto-ap.views.utils :refer [bind-field date-picker]]))
(defn date-range-filter [{:keys [value on-change-event]}]
[:div.field
[:div.control
[:div.columns.is-variable.is-1
[:div.column
[bind-field
[date-picker {:class-name "input is-fullwidth"
:class "input"
:format-week-number (fn [] "")
:previous-month-button-label ""
:placeholder "Start Date mm/dd/yyyy"
:next-month-button-label ""
:next-month-label ""
:event on-change-event
:type "date"
:field [:start]
:subscription value}]]]
[:div.column.is-narrow " to "]
[:div.column
[bind-field
[date-picker {:class-name "input is-fullwidth"
:class "input"
:format-week-number (fn [] "")
:previous-month-button-label ""
:placeholder "Start Date mm/dd/yyyy"
:next-month-button-label ""
:event on-change-event
:next-month-label ""
:type "date"
:field [:end]
:subscription value}]]]]]])

View File

@@ -3,6 +3,7 @@
[auto-ap.forms :as forms]
[auto-ap.subs :as subs]
[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.layouts :refer [appearing-side-bar side-bar-layout]]
[auto-ap.views.components.modal :refer [action-modal]]
[auto-ap.views.components.paginator :refer [paginator]]
@@ -12,7 +13,7 @@
[auto-ap.views.pages.transactions.common :refer [transaction-read]]
[auto-ap.utils :refer [replace-by]]
[auto-ap.views.pages.transactions.manual :as manual]
[auto-ap.views.utils :refer [bind-field date->str dispatch-event nf]]
[auto-ap.views.utils :refer [bind-field date->str dispatch-event nf date-picker]]
[goog.string :as gstring]
[re-frame.core :as re-frame]))
@@ -63,7 +64,7 @@
::received
(fn [db [_ data]]
(-> db
(assoc ::transaction-page (first (:transaction-page data)))
(update ::transaction-page merge (first (:transaction-page data)))
(assoc-in [:status :loading] false))))
(re-frame/reg-event-db
@@ -78,6 +79,17 @@
(assoc-in updated [::params :bank-account-id] value))
updated))))
(re-frame/reg-event-fx
::change-selected-date-range
(fn [{:keys [db]} [_ key value]]
(let [[key] key
updated (-> db
(assoc-in [::transaction-page :date-range-filter key] value)
(assoc-in [::params :date-range key] value))]
{:dispatch [::params-change (::params updated)]
:db updated})))
(re-frame/reg-sub
::notification
(fn [db]
@@ -130,7 +142,12 @@
[bank-account-filter
{:on-change-event [::change-selected-bank-account]
:value (:bank-acount-filter @(re-frame/subscribe [::transaction-page]))
:bank-accounts @(re-frame/subscribe [::subs/bank-accounts])}]]]
:bank-accounts @(re-frame/subscribe [::subs/bank-accounts])}]]
[:p.menu-label "Date Range"]
[:div
[date-range-filter
{:on-change-event [::change-selected-date-range]
:value (:date-range-filter @(re-frame/subscribe [::transaction-page]))}]]]
:main [transactions-content]
:right-side-bar [appearing-side-bar
{:visible? transaction-bar-active?}

View File

@@ -123,7 +123,8 @@
[drop-down {:id [::expense-accounts id ]
:header [:a.button {:aria-haspopup true
:on-click (dispatch-event [::events/toggle-menu [::expense-accounts id]])
:tab-index "0"} "i"]}
:tab-index "0"}
[:span.icon-saving-bank-1]]}
[drop-down-contents
[:div
[:span.dropdown-item description-original ]]]]