tons of bug fixes

This commit is contained in:
Bryce Covert
2020-07-08 21:44:11 -07:00
parent 86f51f93e4
commit d120b7e810
18 changed files with 442 additions and 156 deletions

View File

@@ -1,11 +1,12 @@
(ns auto-ap.views.pages.ledger.profit-and-loss
(:require [auto-ap.subs :as subs]
[auto-ap.views.components.layouts :refer [side-bar-layout appearing-side-bar]]
[auto-ap.views.pages.ledger.table :refer [table]]
[auto-ap.views.pages.ledger.table :as ledger-table ]
[vimsical.re-frame.cofx.inject :as inject]
[goog.string :as gstring]
[auto-ap.utils :refer [dollars-0? by ]]
[auto-ap.views.pages.ledger.side-bar :refer [ledger-side-bar]]
[auto-ap.views.utils :refer [date->str date-picker bind-field standard dispatch-event local-now ->% ->$ str->date]]
[auto-ap.views.utils :refer [date->str date-picker bind-field standard dispatch-event local-now ->% ->$ str->date with-user]]
[cljs-time.core :as t]
[re-frame.core :as re-frame]))
(def ranges
@@ -67,9 +68,29 @@
(-> db ::ledger-list :ledger-page)))
(re-frame/reg-sub
::ledger-params
::last-ledger-params
(fn [db]
(-> db (::ledger-params {}) )))
(-> db ::last-ledger-params )))
(re-frame/reg-sub
::investigate-ledger-params
(fn [db]
(-> db ::investigate-ledger-params )))
(re-frame/reg-sub
::ledger-params
:<- [::last-ledger-params]
:<- [::subs/client]
:<- [::ledger-table/table-params]
:<- [::investigate-ledger-params]
(fn [[last-params client table-params investigate-ledger-params]]
(let [params (cond-> {}
client (assoc :client-id (:id client))
(seq table-params) (merge table-params)
(seq investigate-ledger-params) (merge investigate-ledger-params))]
(when (not= params last-params)
(re-frame/dispatch [::ledger-params-changed]))
params)))
(re-frame/reg-sub
::accounts
@@ -200,6 +221,8 @@
(re-frame/reg-event-fx
::date-picked
(fn [cofx [_ f date]]
@@ -218,14 +241,15 @@
(re-frame/reg-event-fx
::ledger-params-changed
(fn [{:keys [db]} [_ params]]
[with-user (re-frame/inject-cofx ::inject/sub [::ledger-params])]
(fn [{:keys [user ::ledger-params db]} [_ ]]
{:db (assoc db
::ledger-list-loading true
::ledger-params params)
:graphql {:token (-> db :user)
::last-ledger-params ledger-params)
:graphql {:token user
:query-obj {:venia/queries [[:ledger-page
params
ledger-params
[[:journal-entries [:id
:source
:amount
@@ -242,26 +266,25 @@
:end]]]}
:on-success [::ledger-list-received]}}))
(re-frame/reg-event-fx
(re-frame/reg-event-db
::investigate-clicked
(fn [{:keys [db] } [_ location from-numeric-code to-numeric-code which]]
{:db (assoc db
::ledger-list-active? true
::ledger-list-loading true)
:dispatch [::ledger-params-changed (assoc (::ledger-params db)
:client-id (:id @(re-frame/subscribe [::subs/client]))
:from-numeric-code from-numeric-code
:to-numeric-code to-numeric-code
:location location
:date-range {:start (if (= :current which)
(:from-date (::params db))
(date->str (t/minus (str->date (:from-date (::params db)) standard) (t/years 1))
standard))
:end (if (= :current which)
(:to-date (::params db))
(date->str (t/minus (str->date (:to-date (::params db)) standard) (t/years 1))
standard))})]}))
(fn [db [_ location from-numeric-code to-numeric-code which]]
(-> db
(assoc
::ledger-list-active? true
::ledger-list-loading true
::investigate-ledger-params {:client-id (:id @(re-frame/subscribe [::subs/client]))
:from-numeric-code from-numeric-code
:to-numeric-code to-numeric-code
:location location
:date-range {:start (if (= :current which)
(:from-date (::params db))
(date->str (t/minus (str->date (:from-date (::params db)) standard) (t/years 1))
standard))
:end (if (= :current which)
(:to-date (::params db))
(date->str (t/minus (str->date (:to-date (::params db)) standard) (t/years 1))
standard))}}))))
(def groupings
{:sales [["40000-43999 Food Sales " 40000 43999]
@@ -625,17 +648,18 @@
[:div [:a.delete.is-pulled-right {:on-click (dispatch-event [::ledger-list-closing])}]
[:div
[:h1.title "Ledger entries"]
[table {:id :ledger
:ledger-page ledger-page
:status? false
:status (re-frame/subscribe [::ledger-list-loading])
:params (re-frame/subscribe [::ledger-params])
:on-params-change (fn [params]
(re-frame/dispatch [::ledger-params-changed params]))}]]]))
[ledger-table/table {:id :ledger
:ledger-page ledger-page
:status? false
:status (re-frame/subscribe [::ledger-list-loading])
:params (re-frame/subscribe [::ledger-params])
:on-params-change (fn [params]
(re-frame/dispatch [::ledger-params-changed params]))}]]]))
(defn profit-and-loss-page []
(let [ledger-list-active? @(re-frame/subscribe [::ledger-list-active?])
user (re-frame/subscribe [::subs/user])]
user (re-frame/subscribe [::subs/user])
ledger-params @(re-frame/subscribe [::ledger-params])]
(if (not= "manager" (:user/role @user))
[side-bar-layout
{:side-bar [ledger-side-bar]