Sha256: 567635e28aae8d79a535aa7ca81551be737dcb78a4fea1fcc3d7556f4bc80f2c

Contents?: true

Size: 511 Bytes

Versions: 3

Compression:

Stored size: 511 Bytes

Contents

module ShoppingCart
  class ConfirmOrder
    def initialize(order:, user:)
      @order = order
      @user = user
    end

    def call
      confirm_order
      send_thanks_email
      @order.decorate
    end

    private

    def confirm_order
      @order.total_price = @order.order_total
      @order.number = "#R#{Time.now.nsec}" + @order.id.to_s
      @order.confirm!
    end

    def send_thanks_email
      CheckoutMailer.with(user: @user, order: @order).complete_email.deliver_later
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
loker-shopping-cart-0.1.3 app/services/shopping_cart/confirm_order.rb
loker-shopping-cart-0.1.2 app/services/shopping_cart/confirm_order.rb
loker-shopping-cart-0.1.1 app/services/shopping_cart/confirm_order.rb