From 4fbc7ddcfd4897c938328cee73833760bba1d6d4 Mon Sep 17 00:00:00 2001 From: Bryce Covert Date: Mon, 1 May 2023 17:00:34 -0700 Subject: [PATCH] makes it slightly more reusable --- src/clj/auto_ap/ezcater/core.clj | 109 ++++++++++++++++--------------- 1 file changed, 57 insertions(+), 52 deletions(-) diff --git a/src/clj/auto_ap/ezcater/core.clj b/src/clj/auto_ap/ezcater/core.clj index d16f4116..d5bb0a1e 100644 --- a/src/clj/auto_ap/ezcater/core.clj +++ b/src/clj/auto_ap/ezcater/core.clj @@ -200,6 +200,62 @@ :returns 0.0 :vendor :vendor/ccp-ezcater})) + +(defn get-by-id [integration id] + (query + integration + {:venia/queries [[:order {:id id} + [:uuid + :orderNumber + :orderSourceType + [:caterer + [:name + :uuid + [:address [:street]]]] + [:event + [:timestamp + :catererHandoffFoodTime + :orderType]] + [:catererCart [[:orderItems + [:name + :quantity + :posItemId + [:totalInSubunits + [:currency + :subunits]]]] + [:totals + [:catererTotalDue]] + [:feesAndDiscounts + {:type 'DELIVERY_FEE} + [[:cost + [:currency + :subunits]]]]]] + [:totals [[:customerTotalDue + [ + :currency + :subunits + ]] + [:pointOfSaleIntegrationFee + [ + :currency + :subunits + ]] + [:tip + [:currency + :subunits]] + [:salesTax + [ + :currency + :subunits + ]] + [:salesTaxRemittance + [:currency + :subunits + ]] + [:subTotal + [:currency + :subunits]]]]]]]})) + (defn lookup-order [json] (let [caterer (get-caterer (get json "parent_id")) integration (:ezcater-integration/_caterers caterer) @@ -207,58 +263,7 @@ location (-> caterer :ezcater-location/_caterer first :ezcater-location/location)] (if (and client location) (doto - (-> (query - integration - {:venia/queries [[:order {:id (get json "entity_id")} - [:uuid - :orderSourceType - [:caterer - [:name - :uuid - [:address [:street]]]] - [:event - [:timestamp - :catererHandoffFoodTime - :orderType]] - [:catererCart [[:orderItems - [:name - :quantity - :posItemId - [:totalInSubunits - [:currency - :subunits]]]] - [:totals - [:catererTotalDue]] - [:feesAndDiscounts - {:type 'DELIVERY_FEE} - [[:cost - [:currency - :subunits]]]]]] - [:totals [[:customerTotalDue - [ - :currency - :subunits - ]] - [:pointOfSaleIntegrationFee - [ - :currency - :subunits - ]] - [:tip - [:currency - :subunits]] - [:salesTax - [ - :currency - :subunits - ]] - [:salesTaxRemittance - [:currency - :subunits - ]] - [:subTotal - [:currency - :subunits]]]]]]]}) + (-> (get-by-id integration (get json "entity_id")) (:order) (assoc :client-code client :client-location location))