Class: Zaig::Entities::Response

Inherits:
Object
  • Object
show all
Defined in:
lib/zaig/entities/response.rb

Overview

Class to create registration response objects.

Constant Summary collapse

APPROVAL_STATUS =

Collection with all the approval statuses.

%i[automatically_approved manually_approved].freeze
PENDING_STATUS =

Collection with all the pending statuses.

%i[pending in_manual_analysis in_manual_analysis].freeze
REPROVAL_STATUS =

Colllection with all the reproval statuses.

%i[automatically_reproved manually_reproved].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(analysis_status: nil, credit_proposal_legal_person_key: nil, message: nil, raw_data: nil, reason: nil, request: nil, status_code: nil, zaig_id: nil) ⇒ Response

Returns a new instance of Response.



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/zaig/entities/response.rb', line 19

def initialize(analysis_status: nil, credit_proposal_legal_person_key: nil, message: nil,
               raw_data: nil, reason: nil, request: nil, status_code: nil, zaig_id: nil)
  @analysis_status = analysis_status.nil? ? nil : analysis_status.to_s.strip.downcase.to_sym
  @credit_proposal_legal_person_key = credit_proposal_legal_person_key
  @message = message
  @raw_data = raw_data
  @reason = reason
  @request = request
  @status_code = status_code
  @zaig_id = zaig_id
end

Instance Attribute Details

#analysis_statusObject (readonly)

Returns the value of attribute analysis_status.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def analysis_status
  @analysis_status
end

Returns the value of attribute credit_proposal_legal_person_key.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def credit_proposal_legal_person_key
  @credit_proposal_legal_person_key
end

#messageObject (readonly)

Returns the value of attribute message.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def message
  @message
end

#raw_dataObject (readonly)

Returns the value of attribute raw_data.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def raw_data
  @raw_data
end

#reasonObject (readonly)

Returns the value of attribute reason.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def reason
  @reason
end

#requestObject (readonly)

Returns the value of attribute request.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def request
  @request
end

#status_codeObject (readonly)

Returns the value of attribute status_code.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def status_code
  @status_code
end

#zaig_idObject (readonly)

Returns the value of attribute zaig_id.



7
8
9
# File 'lib/zaig/entities/response.rb', line 7

def zaig_id
  @zaig_id
end

Class Method Details

.statusesObject

Retrieve all the available statuses.



32
33
34
# File 'lib/zaig/entities/response.rb', line 32

def self.statuses
  %i[automatically_approved automatically_reproved in_manual_analysis manually_approved manually_reproved waiting_for_data pending]
end

Instance Method Details

#approved?Boolean

Check if the registration is approved.

Returns:

  • (Boolean)


37
38
39
# File 'lib/zaig/entities/response.rb', line 37

def approved?
  APPROVAL_STATUS.include?(analysis_status)
end

#pending?Boolean

Check if the registration still not done.

Returns:

  • (Boolean)


42
43
44
# File 'lib/zaig/entities/response.rb', line 42

def pending?
  PENDING_STATUS.include?(analysis_status)
end

#rejected?Boolean Also known as: not_approved?

Check if the registration is reproved.

Returns:

  • (Boolean)


47
48
49
# File 'lib/zaig/entities/response.rb', line 47

def rejected?
  REPROVAL_STATUS.include?(analysis_status)
end