class SolidusEasypost::ShippingMethodSelector

Public Instance Methods

shipping_method_for(rate) click to toggle source
# File lib/solidus_easypost/shipping_method_selector.rb, line 5
def shipping_method_for(rate)
  ::Spree::ShippingMethod.find_or_create_by(
    carrier: rate.carrier,
    service_level: rate.service,
  ) do |shipping_method|
    shipping_method.name = "#{rate.carrier} #{rate.service}"
    shipping_method.calculator = ::Spree::Calculator::Shipping::FlatRate.create
    shipping_method.shipping_categories = [::Spree::ShippingCategory.first]
    shipping_method.available_to_users = false
  end
end