class Sendle::Api::Order
Public Instance Methods
url()
click to toggle source
# File lib/sendle/api/order.rb, line 6 def url Sendle::Api.base_url + "orders" end
validate_create_request!(params)
click to toggle source
# File lib/sendle/api/order.rb, line 10 def validate_create_request!(params) # Checking for required params of parcel required = %w( pickup_date kilogram_weight cubic_metre_volume ) validate_presence_of!(required, params) # Checking for sender params raise Sendle::Api::Errors::MissingParams.new(['sender']) unless hash_contains?(params, :sender) sender_params = params[:sender] raise Sendle::Api::Errors::MissingParams.new(['sender:contact']) unless hash_contains?(sender_params, :contact) required = %w( name phone ) validate_presence_of!(required, sender_params[:contact]) raise Sendle::Api::Errors::MissingParams.new(['sender:address']) unless hash_contains?(sender_params, :address) required = %w( address_line1 suburb postcode state_name ) validate_presence_of!(required, sender_params[:address]) # Checking for receiver params raise Sendle::Api::Errors::MissingParams.new(['receiver']) unless hash_contains?(params, :receiver) receiver_params = params[:receiver] raise Sendle::Api::Errors::MissingParams.new(['receiver:contact']) unless hash_contains?(receiver_params, :contact) required = %w( name ) validate_presence_of!(required, receiver_params[:contact]) raise Sendle::Api::Errors::MissingParams.new(['receiver:address']) unless hash_contains?(receiver_params, :address) required = %w( address_line1 suburb postcode state_name ) validate_presence_of!(required, receiver_params[:address]) end