Class: Razorpay::RpOrder::Api

Inherits:
Base
  • Object
show all
Defined in:
app/services/razorpay/rp_order/api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Razorpay::Base

Instance Attribute Details

#orderObject (readonly)

Returns the value of attribute order.



4
5
6
# File 'app/services/razorpay/rp_order/api.rb', line 4

def order
  @order
end

Instance Method Details

#create(order_id) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/services/razorpay/rp_order/api.rb', line 6

def create(order_id)
  @order = Spree::Order.find_by(id: order_id)
  raise "Order not found" unless order
  params = order_create_params
  Rails.logger.info "Razorpay::Order.create Params: #{params.inspect}"
  razorpay_order = Razorpay::Order.create(params)
  if razorpay_order.try(:id).present?
    log_order_in_db(razorpay_order.id)
    return [razorpay_order.id, params[:amount]]
  end
  ['', 0]
rescue StandardError => e
  Rails.logger.error("Razorpay Order create failed: #{e.message}")
  Rails.logger.error(e.backtrace.join("\n"))
  ['', 0]
end