core/app/models/spree/calculator/shipping/per_item.rb
require_dependency 'spree/shipping_calculator'
module Spree
module Calculator::Shipping
class PerItem < ShippingCalculator
preference :amount, :decimal, default: 0
preference :currency, :string, default: -> { Spree::Store.default.default_currency }
def self.description
Spree.t(:shipping_flat_rate_per_item)
end
def compute_package(package)
compute_from_quantity(package.contents.sum(&:quantity))
end
def compute_from_quantity(quantity)
preferred_amount * quantity
end
end
end
end