Class: FdxV660Api::TaxParty4
- Defined in:
- lib/fdx_v660_api/models/tax_party4.rb
Overview
All form data for the INSURED party, 1st-8th boxes after Box 2
Instance Attribute Summary collapse
-
#address ⇒ TaxFormAddress5
Issuer or recipient address.
-
#business_name ⇒ BusinessName4
Business issuer or recipient name.
-
#email ⇒ String
Issuer or recipient email address.
-
#individual_name ⇒ IndividualName4
Individual issuer or recipient name.
-
#party_type ⇒ TaxPartyType2
Type of issuer or recipient legal entity, as "BUSINESS" or "INDIVIDUAL".
-
#phone ⇒ TelephoneNumberPlusExtension1
Issuer or recipient telephone number.
-
#tin ⇒ String
Issuer or recipient Tax Identification Number.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(tin: SKIP, party_type: SKIP, individual_name: SKIP, business_name: SKIP, address: SKIP, phone: SKIP, email: SKIP, additional_properties: nil) ⇒ TaxParty4
constructor
A new instance of TaxParty4.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(tin: SKIP, party_type: SKIP, individual_name: SKIP, business_name: SKIP, address: SKIP, phone: SKIP, email: SKIP, additional_properties: nil) ⇒ TaxParty4
Returns a new instance of TaxParty4.
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 76 def initialize(tin: SKIP, party_type: SKIP, individual_name: SKIP, business_name: SKIP, address: SKIP, phone: SKIP, email: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @tin = tin unless tin == SKIP @party_type = party_type unless party_type == SKIP @individual_name = individual_name unless individual_name == SKIP @business_name = business_name unless business_name == SKIP @address = address unless address == SKIP @phone = phone unless phone == SKIP @email = email unless email == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#address ⇒ TaxFormAddress5
Issuer or recipient address
34 35 36 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 34 def address @address end |
#business_name ⇒ BusinessName4
Business issuer or recipient name
30 31 32 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 30 def business_name @business_name end |
#email ⇒ String
Issuer or recipient email address. (Additional information, not part of IRS forms)
43 44 45 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 43 def email @email end |
#individual_name ⇒ IndividualName4
Individual issuer or recipient name
26 27 28 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 26 def individual_name @individual_name end |
#party_type ⇒ TaxPartyType2
Type of issuer or recipient legal entity, as "BUSINESS" or "INDIVIDUAL". Commonly BUSINESS for issuer and INDIVIDUAL for recipient
22 23 24 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 22 def party_type @party_type end |
#phone ⇒ TelephoneNumberPlusExtension1
Issuer or recipient telephone number
38 39 40 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 38 def phone @phone end |
#tin ⇒ String
Issuer or recipient Tax Identification Number. The issuer TIN should normally not be truncated or masked. The recipient TIN may be truncated or masked on this recipient copy (though the full TIN will be filed on IRS copy). Usually EIN for issuer and SSN for recipient
17 18 19 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 17 def tin @tin end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 93 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. tin = hash.key?('tin') ? hash['tin'] : SKIP party_type = hash.key?('partyType') ? hash['partyType'] : SKIP individual_name = IndividualName4.from_hash(hash['individualName']) if hash['individualName'] business_name = BusinessName4.from_hash(hash['businessName']) if hash['businessName'] address = TaxFormAddress5.from_hash(hash['address']) if hash['address'] phone = TelephoneNumberPlusExtension1.from_hash(hash['phone']) if hash['phone'] email = hash.key?('email') ? hash['email'] : SKIP # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. TaxParty4.new(tin: tin, party_type: party_type, individual_name: individual_name, business_name: business_name, address: address, phone: phone, email: email, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 46 def self.names @_hash = {} if @_hash.nil? @_hash['tin'] = 'tin' @_hash['party_type'] = 'partyType' @_hash['individual_name'] = 'individualName' @_hash['business_name'] = 'businessName' @_hash['address'] = 'address' @_hash['phone'] = 'phone' @_hash['email'] = 'email' @_hash end |
.nullables ⇒ Object
An array for nullable fields
72 73 74 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 72 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 59 def self.optionals %w[ tin party_type individual_name business_name address phone email ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
133 134 135 136 137 138 139 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 133 def inspect class_name = self.class.name.split('::').last "<#{class_name} tin: #{@tin.inspect}, party_type: #{@party_type.inspect}, individual_name:"\ " #{@individual_name.inspect}, business_name: #{@business_name.inspect}, address:"\ " #{@address.inspect}, phone: #{@phone.inspect}, email: #{@email.inspect},"\ " additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
125 126 127 128 129 130 |
# File 'lib/fdx_v660_api/models/tax_party4.rb', line 125 def to_s class_name = self.class.name.split('::').last "<#{class_name} tin: #{@tin}, party_type: #{@party_type}, individual_name:"\ " #{@individual_name}, business_name: #{@business_name}, address: #{@address}, phone:"\ " #{@phone}, email: #{@email}, additional_properties: #{@additional_properties}>" end |