From d97045fffc88d95185de68c48899d16d5ad8c982 Mon Sep 17 00:00:00 2001 From: Zee Spencer <50284+zspencer@users.noreply.github.com> Date: Mon, 4 Dec 2023 18:14:10 -0800 Subject: [PATCH 1/3] `Marketplace`: `Checkout` shows the `Products` being purchased - https://github.com/zinc-collective/convene/issues/1980 - https://github.com/zinc-collective/convene/issues/1326 It's not the prettiest, but it includes each product being purchased, the quantity, the unit pricer, and the total price as well as the taxes and delivery fees. --- .../cart/deliveries/_delivery.html.erb | 14 ++++++------- .../marketplace/checkouts/show.html.erb | 21 ++++++++++++++++++- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/app/furniture/marketplace/cart/deliveries/_delivery.html.erb b/app/furniture/marketplace/cart/deliveries/_delivery.html.erb index c957fe8cc..c0518afe2 100644 --- a/app/furniture/marketplace/cart/deliveries/_delivery.html.erb +++ b/app/furniture/marketplace/cart/deliveries/_delivery.html.erb @@ -1,12 +1,12 @@ -<%- if delivery.delivery_area.present? %> -

<%= render(delivery.delivery_area) %>

-<%- end %> -

- <%= render(Marketplace::Cart::DeliveryExpectationsComponent.new(cart: delivery.cart)) %> -

+ <%= turbo_frame_tag(delivery) do %> <% if delivery.details_filled_in? %> -

Delivering to:

+

Delivering to:

+

+ <%= render(delivery.delivery_area) %>
+ <%= render(Marketplace::Cart::DeliveryExpectationsComponent.new(cart: delivery.cart)) %> +

+

<%= delivery.contact_email %>
diff --git a/app/furniture/marketplace/checkouts/show.html.erb b/app/furniture/marketplace/checkouts/show.html.erb index 1d1ba486f..a6ab27731 100644 --- a/app/furniture/marketplace/checkouts/show.html.erb +++ b/app/furniture/marketplace/checkouts/show.html.erb @@ -1,7 +1,26 @@ <%= turbo_frame_tag(checkout.marketplace, data: { turbo_action: :advance }) do %> <%= link_to(t("marketplace.marketplaces.show.link_to"), marketplace.location) %> -

Checkout

+

Checkout

<%= render CardComponent.new do %> +

Receipt

+
+ <%- cart.cart_products.each do |cart_product| %> +
<%= cart_product.name %>
+ (<%=cart_product.quantity%>) x <%= humanized_money_with_symbol(cart_product.price) %>
+
<%= humanized_money_with_symbol(cart_product.price_total) %>
+ <%- end %> +
Sub Total
+
<%= humanized_money_with_symbol(cart.product_total) %>
+
Delivery Fee
(<%= cart.delivery_area.label %>)
+
<%= humanized_money_with_symbol(cart.delivery_fee) %>
+
Taxes
+
<%= humanized_money_with_symbol(cart.tax_total) %>
+
Total
+
<%= humanized_money_with_symbol(cart.price_total) %>
+
+ <%- end %> + + <%= render CardComponent.new(classes: "mt-3") do %> <%= render cart.delivery %> <%- end %> <%- end %> From 3e27fc5426fcf948868b0af28508b48ea55a0c7c Mon Sep 17 00:00:00 2001 From: Zee Spencer <50284+zspencer@users.noreply.github.com> Date: Mon, 4 Dec 2023 18:25:51 -0800 Subject: [PATCH 2/3] Wordsmithying --- .../cart/deliveries/_delivery.html.erb | 5 +-- .../cart/deliveries/_form.html.erb | 2 +- .../cart/delivery_areas/_form.html.erb | 2 +- .../marketplace/checkouts/show.html.erb | 44 ++++++++++--------- 4 files changed, 27 insertions(+), 26 deletions(-) diff --git a/app/furniture/marketplace/cart/deliveries/_delivery.html.erb b/app/furniture/marketplace/cart/deliveries/_delivery.html.erb index c0518afe2..0a2b34af7 100644 --- a/app/furniture/marketplace/cart/deliveries/_delivery.html.erb +++ b/app/furniture/marketplace/cart/deliveries/_delivery.html.erb @@ -7,7 +7,7 @@ <%= render(Marketplace::Cart::DeliveryExpectationsComponent.new(cart: delivery.cart)) %>

-
+

<%= delivery.contact_email %>
<%= number_to_phone(delivery.contact_phone_number) %>
@@ -20,8 +20,7 @@

-

Payment Details

- <%= button_to("Make Payment", delivery.cart.location(child: :checkout), data: { turbo: false }) %> + <%= button_to("Place Order", delivery.cart.location(child: :checkout), data: { turbo: false }) %> <%- else %> <%= render "marketplace/cart/deliveries/form", delivery: delivery %> <%- end %> diff --git a/app/furniture/marketplace/cart/deliveries/_form.html.erb b/app/furniture/marketplace/cart/deliveries/_form.html.erb index 65d416eda..285d42478 100644 --- a/app/furniture/marketplace/cart/deliveries/_form.html.erb +++ b/app/furniture/marketplace/cart/deliveries/_form.html.erb @@ -7,6 +7,6 @@ <%= render "text_area", attribute: :delivery_notes, form: delivery_form %> - <%= delivery_form.submit %> + <%= delivery_form.submit "Save" %> <%- end %> <%- end %> diff --git a/app/furniture/marketplace/cart/delivery_areas/_form.html.erb b/app/furniture/marketplace/cart/delivery_areas/_form.html.erb index 3a32352b5..bf24320da 100644 --- a/app/furniture/marketplace/cart/delivery_areas/_form.html.erb +++ b/app/furniture/marketplace/cart/delivery_areas/_form.html.erb @@ -7,6 +7,6 @@ choices: cart.marketplace.delivery_areas.pluck(:label, :id), attribute: :delivery_area_id, form: form, }) %> - <%= form.submit %> + <%= form.submit "Save" %> <%- end %>
diff --git a/app/furniture/marketplace/checkouts/show.html.erb b/app/furniture/marketplace/checkouts/show.html.erb index a6ab27731..7ae4b3673 100644 --- a/app/furniture/marketplace/checkouts/show.html.erb +++ b/app/furniture/marketplace/checkouts/show.html.erb @@ -1,26 +1,28 @@ <%= turbo_frame_tag(checkout.marketplace, data: { turbo_action: :advance }) do %> <%= link_to(t("marketplace.marketplaces.show.link_to"), marketplace.location) %>

Checkout

- <%= render CardComponent.new do %> -

Receipt

-
- <%- cart.cart_products.each do |cart_product| %> -
<%= cart_product.name %>
- (<%=cart_product.quantity%>) x <%= humanized_money_with_symbol(cart_product.price) %>
-
<%= humanized_money_with_symbol(cart_product.price_total) %>
- <%- end %> -
Sub Total
-
<%= humanized_money_with_symbol(cart.product_total) %>
-
Delivery Fee
(<%= cart.delivery_area.label %>)
-
<%= humanized_money_with_symbol(cart.delivery_fee) %>
-
Taxes
-
<%= humanized_money_with_symbol(cart.tax_total) %>
-
Total
-
<%= humanized_money_with_symbol(cart.price_total) %>
-
- <%- end %> +
+ <%= render CardComponent.new do %> +

Receipt

+
+ <%- cart.cart_products.each do |cart_product| %> +
<%= cart_product.name %>
+ (<%=cart_product.quantity%>) x <%= humanized_money_with_symbol(cart_product.price) %>
+
<%= humanized_money_with_symbol(cart_product.price_total) %>
+ <%- end %> +
Sub Total
+
<%= humanized_money_with_symbol(cart.product_total) %>
+
Delivery Fee
(<%= cart.delivery_area.label %>)
+
<%= humanized_money_with_symbol(cart.delivery_fee) %>
+
Taxes
+
<%= humanized_money_with_symbol(cart.tax_total) %>
+
Total
+
<%= humanized_money_with_symbol(cart.price_total) %>
+
+ <%- end %> - <%= render CardComponent.new(classes: "mt-3") do %> - <%= render cart.delivery %> - <%- end %> + <%= render CardComponent.new(classes: "mt-3") do %> + <%= render cart.delivery %> + <%- end %> +
<%- end %> From 6e8fae2632e049f1d74a3a526ee440e636697ebc Mon Sep 17 00:00:00 2001 From: Zee Spencer <50284+zspencer@users.noreply.github.com> Date: Mon, 4 Dec 2023 18:47:12 -0800 Subject: [PATCH 3/3] Fix tests --- spec/furniture/marketplace/buying_products_system_spec.rb | 4 ++-- .../marketplace/checkouts_controller_request_spec.rb | 6 ------ 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/spec/furniture/marketplace/buying_products_system_spec.rb b/spec/furniture/marketplace/buying_products_system_spec.rb index 314b81153..a1c7caeba 100644 --- a/spec/furniture/marketplace/buying_products_system_spec.rb +++ b/spec/furniture/marketplace/buying_products_system_spec.rb @@ -83,11 +83,11 @@ def set_delivery_details(delivery_address:, contact_phone_number:, contact_email fill_in("Delivery address", with: delivery_address) fill_in("Contact phone number", with: contact_phone_number) fill_in("Contact email", with: contact_email) - click_button("Save changes") + click_button("Save") end def pay(card_number:, card_expiry:, card_cvc:, billing_name:, email:, billing_postal_code:) - click_button("Make Payment") + click_button("Place Order") fill_in("cardNumber", with: card_number) fill_in("cardExpiry", with: card_expiry) fill_in("cardCvc", with: card_cvc) diff --git a/spec/furniture/marketplace/checkouts_controller_request_spec.rb b/spec/furniture/marketplace/checkouts_controller_request_spec.rb index 0f5d6c504..95597660f 100644 --- a/spec/furniture/marketplace/checkouts_controller_request_spec.rb +++ b/spec/furniture/marketplace/checkouts_controller_request_spec.rb @@ -52,11 +52,5 @@ ) end end - - context "when the Cart is empty" do - let(:cart) { create(:marketplace_cart, marketplace: marketplace) } - - it { is_expected.to render_template(:show) } - end end end