class CardConnect::Service::SettlementStatusRequest
Constants
- FIELDS
- REQUIRED_FIELDS
Attributes
errors[R]
Public Class Methods
new(attrs = {})
click to toggle source
Initializes a new Settlement Status Request
@param attrs [Hash] @return CardConnect::SettlementStatusRequest
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 19 def initialize(attrs = {}) @errors = [] set_attributes(attrs, FIELDS) validate_required_fields end
Public Instance Methods
payload()
click to toggle source
Builds the request payload
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 31 def payload payload = '?' FIELDS.each do |field| payload += "#{field}=#{send(field)}&" end payload end
valid?()
click to toggle source
Indicates that the request is valid once it is built.
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 26 def valid? errors.empty? end
Private Instance Methods
validate_date_format()
click to toggle source
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 53 def validate_date_format raise if date.length != 4 Date.parse(date, '%m%d') rescue errors.push('Date format is invalid. Please use MMDD format') end
validate_presence_of_required_fields()
click to toggle source
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 46 def validate_presence_of_required_fields REQUIRED_FIELDS.each do |field| value = send(field) value.nil? || value.empty? ? errors.push("#{field.capitalize} is missing") : next end end
validate_required_fields()
click to toggle source
# File lib/cardconnect/services/settlement_status/settlement_status_request.rb, line 41 def validate_required_fields validate_presence_of_required_fields validate_date_format unless date.nil? || date.empty? end