diff --git a/app/furniture/marketplace/cart.rb b/app/furniture/marketplace/cart.rb index 7e12bf61e..269e90609 100644 --- a/app/furniture/marketplace/cart.rb +++ b/app/furniture/marketplace/cart.rb @@ -12,6 +12,8 @@ class Cart < Record belongs_to :shopper, inverse_of: :carts + belongs_to :delivery_area, inverse_of: :carts, optional: true + has_many :cart_products, dependent: :destroy, inverse_of: :cart has_many :products, through: :cart_products, inverse_of: :carts diff --git a/app/furniture/marketplace/delivery_area.rb b/app/furniture/marketplace/delivery_area.rb index a258a2ef1..5160df261 100644 --- a/app/furniture/marketplace/delivery_area.rb +++ b/app/furniture/marketplace/delivery_area.rb @@ -5,6 +5,7 @@ class DeliveryArea < Record belongs_to :marketplace, inverse_of: :delivery_areas has_many :orders, inverse_of: :delivery_area + has_many :carts, inverse_of: :delivery_area has_many :deliveries, inverse_of: :delivery_area attribute :delivery_window, ::Marketplace::Delivery::WindowType.new diff --git a/app/furniture/marketplace/marketplaces/_form.html.erb b/app/furniture/marketplace/marketplaces/_form.html.erb index f87dbd546..0ae9d9546 100644 --- a/app/furniture/marketplace/marketplaces/_form.html.erb +++ b/app/furniture/marketplace/marketplaces/_form.html.erb @@ -1,9 +1,7 @@
<%= form_with model: marketplace.location do |f| %> - <%= render "money_field", { attribute: :delivery_fee, form: f, min: 0, step: 0.01} %> <%= render "text_field", { attribute: :notify_emails, form: f } %> - <%= render "text_field", { attribute: :order_by, form: f } %> - <%= render "text_field", { attribute: :delivery_window, form: f } %> + <%= f.submit %> <% end %>
diff --git a/spec/furniture/marketplace/cart_spec.rb b/spec/furniture/marketplace/cart_spec.rb index 1e718b889..7587e1490 100644 --- a/spec/furniture/marketplace/cart_spec.rb +++ b/spec/furniture/marketplace/cart_spec.rb @@ -9,6 +9,8 @@ it { is_expected.to belong_to(:shopper).inverse_of(:carts) } + it { is_expected.to belong_to(:delivery_area).inverse_of(:carts).optional } + describe "#price_total" do subject(:price_total) { cart.price_total } diff --git a/spec/furniture/marketplace/delivery_area_spec.rb b/spec/furniture/marketplace/delivery_area_spec.rb index f3c321af6..f03ad054d 100644 --- a/spec/furniture/marketplace/delivery_area_spec.rb +++ b/spec/furniture/marketplace/delivery_area_spec.rb @@ -3,5 +3,6 @@ RSpec.describe Marketplace::DeliveryArea, type: :model do it { is_expected.to belong_to(:marketplace).inverse_of(:delivery_areas) } it { is_expected.to have_many(:orders).inverse_of(:delivery_area) } + it { is_expected.to have_many(:carts).inverse_of(:delivery_area) } it { is_expected.to have_many(:deliveries).inverse_of(:delivery_area) } end