fixes for some issues found

This commit is contained in:
Bryce Covert
2021-01-04 18:57:52 -08:00
parent 65db253593
commit 0f7a5c1f00
5 changed files with 115 additions and 113 deletions

View File

@@ -24,7 +24,7 @@
:location (if (clojure.string/blank? location)
nil
location)
:numeric-code numeric-code
:numeric-code (js/parseInt numeric-code)
:name name
:account-set account-set
:client-overrides (map (fn [client-override]

View File

@@ -11,7 +11,8 @@
[cljs-time.core :as t]
[re-frame.core :as re-frame]
[reagent.core :as r]
[clojure.string :as str]))
[clojure.string :as str]
[auto-ap.status :as status]))
@@ -63,7 +64,8 @@
(let [successful-set (set (map :external-id (:successful (:import-ledger result))))
error-set (into {} (map (juxt :external-id :error) (:errors (:import-ledger result))))
existing-set (set (map :external-id (:existing (:import-ledger result))))
ignored-set (set (map :external-id (:ignored (:import-ledger result))))]
ignored-set (set (map :external-id (:ignored (:import-ledger result))))
seen-set (atom #{})]
{:db (-> (forms/save-succeeded db ::form )
(assoc-in [::forms/forms ::form :result] {:errors error-set :success successful-set :existing existing-set :ignored ignored-set})
@@ -80,16 +82,19 @@
(existing-set (line->id %))
""
(error-set (line->id %))
[drop-down {:id [::ledger-import-line (line->id %) ]
:is-right? true
:header [:a.button {:aria-haspopup true
:on-click (dispatch-event [::events/toggle-menu [::ledger-import-line (line->id %)]])
:tab-index "0"}
[:span.is-warning.icon {:title (error-set (line->id %))} [:i.fa.fa-exclamation-triangle]]]}
[drop-down-contents
[:div
[:span.dropdown-item (error-set (line->id %)) ]]]]
(and (error-set (line->id %))
(not (@seen-set (line->id %))))
(do
(swap! seen-set conj (line->id %))
[drop-down {:id [::ledger-import-line (line->id %) ]
:is-right? true
:header [:a.button {:aria-haspopup true
:on-click (dispatch-event [::events/toggle-menu [::ledger-import-line (line->id %)]])
:tab-index "0"}
[:span.is-warning.icon {:title (error-set (line->id %))} [:i.fa.fa-exclamation-triangle]]]}
[drop-down-contents
[:div
[:span.dropdown-item (error-set (line->id %)) ]]]])
)
:status-category
(cond (successful-set (line->id %))
@@ -110,9 +115,9 @@
::importing
(fn [{:keys [db]} _]
(when @(re-frame/subscribe [::can-submit])
{:db (forms/loading db ::form )
:graphql
{:graphql
{:token (-> db :user)
:owns-state {:single ::import}
:query-obj {:venia/operation {:operation/type :mutation
:operation/name "ImportLedger"}
:venia/queries [{:query/data [:import-ledger
@@ -137,7 +142,7 @@
[:form.form
(if value
[:div
[:table.table
[:table.table {:style {:width "100%"}}
[:thead
[:tr
(list
@@ -190,22 +195,25 @@
(fn []
(let [current-client @(re-frame/subscribe [::subs/client])
user @(re-frame/subscribe [::subs/user])
status @(re-frame/subscribe [::status/single ::import])
{:keys [data result active? error id]} @(re-frame/subscribe [::forms/form ::form]) ]
[:div
[:div.level
[:div.level-left
[:h1.title "Eternal Import"]]
[:div.level-right
[:button.button.is-primary.is-pulled-right.is-large {:disabled (not data)
:on-click (dispatch-event [::importing])} "Import"]]]
[status/status-notification {:statuses [[::status/single ::import]]} ]
(when result
[:div.notification
"Imported with "
(count (:errors result)) " errors, "
(count (:ignored result)) " ignored, "
(count (:success result)) " successful."])
(if @(re-frame/subscribe [::forms/is-loading? ::form])
[:div [:i.icon.fa.fa-spin.fa-spinner]]
(if (= :loading (:state status ))
[status/big-loader status]
[:div
[:div.is-clearfix
[:div.is-pulled-right