working on ezcater

ezcater other.

dajusments.

migration for square2
This commit is contained in:
2022-08-19 06:42:40 -07:00
parent dae1cb4a9b
commit bd0f8da16b
21 changed files with 1158 additions and 155 deletions

View File

@@ -24,6 +24,14 @@
[form-builder/builder {:submit-event [::saving ]
:id ::form}
[form-builder/section {:title "Sales Order"}
[:div
"Order " (:id data)
(when (:reference-link data)
[:a {:href (:reference-link data)
:target "_new"}
[:span.icon
[:i.fa.fa-external-link
]]])]
(when-not @(re-frame/subscribe [::subs/client])
[form-builder/field-v2 {:field :client}
"Client"
@@ -62,7 +70,12 @@
[:ul
(for [charge (:charges data)]
^{:key (:id charge)}
[:li (:type-name charge) ": " (:total charge)])]]
[:li [:span (:type-name charge) ": " (:total charge)
(when (:reference-link charge)
[:a {:href (:reference-link charge) :target "_new"}
[:span.icon
[:i.fa.fa-external-link
]]])]])]]
[form-builder/section {:title "Line Items"}
[:ul

View File

@@ -25,13 +25,14 @@
{:start (:start params 0)
:sort (:sort params)
:per-page (:per-page params)
:type-name (:type-name params)
:total-gte (:amount-gte (:total-range params))
:total-lte (:amount-lte (:total-range params))
:date-range (:date-range params)
:processor (some-> (:processor params) keyword)
:client-id (:id @(re-frame/subscribe [::subs/client]))}
[[:sales-orders [:id :total :tax :tip :discount :service-charge :returns :date
[:charges [:type-name :total :processor :id [:expected-deposit [:id]] ]]
[[:sales-orders [:id :source :total :tax :tip :reference-link :discount :service-charge :returns :date
[:charges [:type-name :note :reference-link :total :processor :id [:expected-deposit [:id]] ]]
[:line-items [:item-name :total :category]]
[:client [:name :id]]]]
:total

View File

@@ -39,9 +39,40 @@
(when (= :sales-orders ap)
[:<>
[:p.menu-label "Payment Method"]
[:div
[:nav.panel
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :type-name nil])}
[:span.panel-icon]
"All"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :type-name "CASH"])}
[:span.panel-icon
[:span {:class "icon-accounting-bill" :style {:font-weight "400"}}]]
"Cash"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :type-name "CARD"])}
[:span.panel-icon
[:span {:class "icon-credit-card-1" :style {:font-weight "400"}}]]
"Card"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :type-name "SQUARE_GIFT_CARD"])}
[:span.panel-icon
[:span {:class "icon-gift-box" :style {:font-weight "400"}}]]
"Gift Card"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :type-name "OTHER"])}
[:span.panel-icon ]
"Other"]]]
[:p.menu-label "Processor"]
[:div
[:nav.panel
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor nil])}
[:span.panel-icon]
"All"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "square"])}
[:span.panel-icon [:img.level-item {:src "/img/square.png"}]]
"Square"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "doordash"])}
[:span.panel-icon [:img.level-item {:src "/img/doordash.png"}]]
"Doordash"]
@@ -51,7 +82,17 @@
"Uber Eats"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "grubhub"])}
[:span.panel-icon [:img.level-item {:src "/img/grubhub.png"}]]
"Grubhub"]]]])
"Grubhub"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "koala"])}
[:span.panel-icon [:img.level-item {:src "/img/koala.png"}]]
"Koala"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "ezcater"])}
[:span.panel-icon [:img.level-item {:src "/img/ezcater.png"}]]
"EZCater"]
[:a.panel-block {:on-click (dispatch-event [::data-page/filter-changed data-page :processor "na"])}
[:span.panel-icon #_[:img.level-item {:src "/img/grubhub.png"}]]
"No Processor"]
]]])
(when-let [exact-match-id @(re-frame/subscribe [::data-page/filter data-page :exact-match-id])]
[:div

View File

@@ -17,15 +17,36 @@
(defn row [{sales-order :sales-order
selected-client :selected-client}]
(let [{:keys [client date total tax tip charges line-items id]} sales-order
(let [{:keys [client date total tax tip charges source line-items id]} sales-order
expected-deposits (->> charges (filter :expected-deposit) (map :expected-deposit))]
[grid/row {:class (:class sales-order) :id id}
(when-not selected-client
[grid/cell {} (:name client)])
[grid/cell {} (date->str date)]
[grid/cell {} source]
[grid/cell {:class "has-text-right"} (nf total)]
[grid/cell {:class "has-text-right"} (nf tax)]
[grid/cell {:class "has-text-right"} (nf tip)]
[grid/cell {}
[:div.level-left
(for [charge charges]
(with-meta
(condp = (:type-name charge)
"CASH"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-accounting-bill" :style {:font-weight "400"}}]]
"CARD"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-credit-card-1" :style {:font-weight "400"}}]]
"SQUARE_GIFT_CARD"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-gift-box" :style {:font-weight "400"}}]]
[:span.level-item [:span (:type-name charge) (when-let [note (:note charge)]
[:span
[:i.has-text-grey " (" note ")"]])] ])
{:key (:id charge)}))]]
[grid/cell {}
[:div.level
[:div.level-left
@@ -42,17 +63,15 @@
:uber-eats
[:img.level-item {:src "/img/ubereats.png" :style {:width "24px" :height "24px"}}]
(condp = (:type-name charge)
"CASH"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-accounting-bill" :style {:font-weight "400"}}]]
:square
[:img.level-item {:src "/img/square.png" :style {:width "24px" :height "24px"}}]
"CARD"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-credit-card-1" :style {:font-weight "400"}}]]
:koala
[:img.level-item {:src "/img/koala.png" :style {:width "24px" :height "24px"}}]
"SQUARE_GIFT_CARD"
[:span.icon.level-item {:style {:font-size "24px"}} [:span {:class "icon-gift-box" :style {:font-weight "400"}}]]
[:span.level-item "Other (" (:type-name charge) ")"]))
:ezcater
[:img.level-item {:src "/img/ezcater.png" :style {:width "24px" :height "24px"}}]
nil)
{:key (:id charge)}))]]]
@@ -105,10 +124,12 @@
(when-not selected-client
[grid/sortable-header-cell {:sort-key "client" :sort-name "Client"} "Client"])
[grid/sortable-header-cell {:sort-key "date" :sort-name "Date" :style {:width "8em"}} "Date"]
[grid/sortable-header-cell {:sort-key "source" :sort-name "Source"} "Source"]
[grid/sortable-header-cell {:sort-key "total" :sort-name "Total" :class "has-text-right" :style {:width "8em"}} "Total"]
[grid/sortable-header-cell {:sort-key "tax" :sort-name "Tax" :class "has-text-right" :style {:width "7em"}} "Tax"]
[grid/sortable-header-cell {:sort-key "tip" :sort-name "Tip" :class "has-text-right" :style {:width "7em"}} "Tip"]
[grid/header-cell {} "Payment Methods"]
[grid/header-cell {} "Processor"]
[grid/header-cell {} "Line Items"]
[grid/header-cell {:style {:width "8em"}}]]]
[grid/body