trevol 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +15 -0
  3. data/GENERADO.md +14 -0
  4. data/LICENSE +21 -0
  5. data/README.md +173 -0
  6. data/lib/trevol/client.rb +94 -0
  7. data/lib/trevol/errors.rb +152 -0
  8. data/lib/trevol/llave.rb +21 -0
  9. data/lib/trevol/paginacion.rb +41 -0
  10. data/lib/trevol/transporte.rb +173 -0
  11. data/lib/trevol/webhook.rb +100 -0
  12. data/lib/trevol.rb +18 -0
  13. data/lib/trevol_generado/api/balance_api.rb +220 -0
  14. data/lib/trevol_generado/api/credit_notes_api.rb +671 -0
  15. data/lib/trevol_generado/api/debit_notes_api.rb +671 -0
  16. data/lib/trevol_generado/api/equivalent_document_adjustments_api.rb +691 -0
  17. data/lib/trevol_generado/api/equivalent_documents_api.rb +698 -0
  18. data/lib/trevol_generado/api/events_api.rb +231 -0
  19. data/lib/trevol_generado/api/general_api.rb +201 -0
  20. data/lib/trevol_generado/api/invoices_api.rb +736 -0
  21. data/lib/trevol_generado/api/payroll_adjustments_api.rb +637 -0
  22. data/lib/trevol_generado/api/payrolls_api.rb +637 -0
  23. data/lib/trevol_generado/api/radian_events_api.rb +431 -0
  24. data/lib/trevol_generado/api/requests_api.rb +97 -0
  25. data/lib/trevol_generado/api/support_document_adjustments_api.rb +565 -0
  26. data/lib/trevol_generado/api/support_documents_api.rb +565 -0
  27. data/lib/trevol_generado/api/webhook_endpoints_api.rb +556 -0
  28. data/lib/trevol_generado/api_client.rb +441 -0
  29. data/lib/trevol_generado/api_error.rb +58 -0
  30. data/lib/trevol_generado/api_model_base.rb +88 -0
  31. data/lib/trevol_generado/configuration.rb +392 -0
  32. data/lib/trevol_generado/models/acquirer.rb +209 -0
  33. data/lib/trevol_generado/models/air_collection.rb +205 -0
  34. data/lib/trevol_generado/models/air_extension.rb +216 -0
  35. data/lib/trevol_generado/models/allowance_charge.rb +250 -0
  36. data/lib/trevol_generado/models/alternative_currency.rb +180 -0
  37. data/lib/trevol_generado/models/balance.rb +244 -0
  38. data/lib/trevol_generado/models/balance_event_data.rb +172 -0
  39. data/lib/trevol_generado/models/balance_transaction.rb +265 -0
  40. data/lib/trevol_generado/models/balance_transaction_company.rb +172 -0
  41. data/lib/trevol_generado/models/balance_transaction_document.rb +173 -0
  42. data/lib/trevol_generado/models/balance_transaction_list.rb +191 -0
  43. data/lib/trevol_generado/models/carrier.rb +219 -0
  44. data/lib/trevol_generado/models/certificate_event_data.rb +180 -0
  45. data/lib/trevol_generado/models/cinema_extension.rb +214 -0
  46. data/lib/trevol_generado/models/cinema_screening.rb +256 -0
  47. data/lib/trevol_generado/models/company.rb +267 -0
  48. data/lib/trevol_generado/models/company_key.rb +182 -0
  49. data/lib/trevol_generado/models/company_numbering.rb +201 -0
  50. data/lib/trevol_generado/models/consumption.rb +246 -0
  51. data/lib/trevol_generado/models/consumption_adjustment.rb +204 -0
  52. data/lib/trevol_generado/models/contingency.rb +160 -0
  53. data/lib/trevol_generado/models/credit_note_list.rb +191 -0
  54. data/lib/trevol_generado/models/currency.rb +241 -0
  55. data/lib/trevol_generado/models/customer.rb +360 -0
  56. data/lib/trevol_generado/models/debit_note_list.rb +191 -0
  57. data/lib/trevol_generado/models/deleted_object.rb +178 -0
  58. data/lib/trevol_generado/models/delivery.rb +200 -0
  59. data/lib/trevol_generado/models/delivery_email.rb +181 -0
  60. data/lib/trevol_generado/models/delivery_terms.rb +169 -0
  61. data/lib/trevol_generado/models/dian_result.rb +182 -0
  62. data/lib/trevol_generado/models/dian_rule.rb +216 -0
  63. data/lib/trevol_generado/models/document.rb +432 -0
  64. data/lib/trevol_generado/models/document_event_data.rb +315 -0
  65. data/lib/trevol_generado/models/document_reference.rb +169 -0
  66. data/lib/trevol_generado/models/document_totals.rb +299 -0
  67. data/lib/trevol_generado/models/document_totals_currency.rb +197 -0
  68. data/lib/trevol_generado/models/document_totals_item.rb +196 -0
  69. data/lib/trevol_generado/models/document_totals_tax.rb +197 -0
  70. data/lib/trevol_generado/models/document_totals_withholding.rb +206 -0
  71. data/lib/trevol_generado/models/equivalent_adjustment_item.rb +374 -0
  72. data/lib/trevol_generado/models/equivalent_document.rb +470 -0
  73. data/lib/trevol_generado/models/equivalent_document_adjustment.rb +440 -0
  74. data/lib/trevol_generado/models/equivalent_document_adjustment_input.rb +388 -0
  75. data/lib/trevol_generado/models/equivalent_document_adjustment_list.rb +191 -0
  76. data/lib/trevol_generado/models/equivalent_document_contingency.rb +181 -0
  77. data/lib/trevol_generado/models/equivalent_document_contingency_backup.rb +171 -0
  78. data/lib/trevol_generado/models/equivalent_document_event_data.rb +313 -0
  79. data/lib/trevol_generado/models/equivalent_document_input.rb +365 -0
  80. data/lib/trevol_generado/models/equivalent_document_list.rb +191 -0
  81. data/lib/trevol_generado/models/equivalent_document_reference.rb +241 -0
  82. data/lib/trevol_generado/models/equivalent_item.rb +387 -0
  83. data/lib/trevol_generado/models/event.rb +223 -0
  84. data/lib/trevol_generado/models/event_claim.rb +170 -0
  85. data/lib/trevol_generado/models/event_delivery.rb +178 -0
  86. data/lib/trevol_generado/models/event_delivery_email.rb +161 -0
  87. data/lib/trevol_generado/models/event_dian_result.rb +173 -0
  88. data/lib/trevol_generado/models/event_dian_rule.rb +170 -0
  89. data/lib/trevol_generado/models/event_document_error.rb +170 -0
  90. data/lib/trevol_generado/models/event_equivalent_document_ref.rb +161 -0
  91. data/lib/trevol_generado/models/event_error.rb +170 -0
  92. data/lib/trevol_generado/models/event_invoice_ref.rb +161 -0
  93. data/lib/trevol_generado/models/event_list.rb +191 -0
  94. data/lib/trevol_generado/models/event_payroll_ref.rb +160 -0
  95. data/lib/trevol_generado/models/event_radian_invoice_ref.rb +181 -0
  96. data/lib/trevol_generado/models/event_resend_input.rb +177 -0
  97. data/lib/trevol_generado/models/event_support_document_ref.rb +161 -0
  98. data/lib/trevol_generado/models/extension.rb +215 -0
  99. data/lib/trevol_generado/models/foreign_address.rb +218 -0
  100. data/lib/trevol_generado/models/free_of_charge.rb +170 -0
  101. data/lib/trevol_generado/models/game.rb +203 -0
  102. data/lib/trevol_generado/models/game_credit.rb +204 -0
  103. data/lib/trevol_generado/models/games_extension.rb +216 -0
  104. data/lib/trevol_generado/models/games_venue.rb +204 -0
  105. data/lib/trevol_generado/models/interoperability.rb +205 -0
  106. data/lib/trevol_generado/models/interoperability_collection.rb +171 -0
  107. data/lib/trevol_generado/models/interoperability_data.rb +186 -0
  108. data/lib/trevol_generado/models/invoice_input.rb +364 -0
  109. data/lib/trevol_generado/models/invoice_list.rb +191 -0
  110. data/lib/trevol_generado/models/invoice_reference.rb +198 -0
  111. data/lib/trevol_generado/models/item.rb +439 -0
  112. data/lib/trevol_generado/models/item_allowance.rb +190 -0
  113. data/lib/trevol_generado/models/item_consignment.rb +286 -0
  114. data/lib/trevol_generado/models/item_mandator.rb +231 -0
  115. data/lib/trevol_generado/models/item_notary.rb +204 -0
  116. data/lib/trevol_generado/models/item_property.rb +223 -0
  117. data/lib/trevol_generado/models/item_tax.rb +246 -0
  118. data/lib/trevol_generado/models/item_withholding.rb +214 -0
  119. data/lib/trevol_generado/models/meter.rb +233 -0
  120. data/lib/trevol_generado/models/note_input.rb +329 -0
  121. data/lib/trevol_generado/models/numbering.rb +178 -0
  122. data/lib/trevol_generado/models/numbering_expiring_event_data.rb +209 -0
  123. data/lib/trevol_generado/models/numbering_low_event_data.rb +209 -0
  124. data/lib/trevol_generado/models/origin_note.rb +230 -0
  125. data/lib/trevol_generado/models/payment.rb +232 -0
  126. data/lib/trevol_generado/models/payment_method.rb +187 -0
  127. data/lib/trevol_generado/models/payroll.rb +455 -0
  128. data/lib/trevol_generado/models/payroll_adjustment.rb +467 -0
  129. data/lib/trevol_generado/models/payroll_adjustment_input.rb +362 -0
  130. data/lib/trevol_generado/models/payroll_adjustment_list.rb +191 -0
  131. data/lib/trevol_generado/models/payroll_basic.rb +204 -0
  132. data/lib/trevol_generado/models/payroll_compensated_vacation.rb +204 -0
  133. data/lib/trevol_generado/models/payroll_compensation.rb +205 -0
  134. data/lib/trevol_generado/models/payroll_deductions.rb +370 -0
  135. data/lib/trevol_generado/models/payroll_disability.rb +249 -0
  136. data/lib/trevol_generado/models/payroll_earnings.rb +406 -0
  137. data/lib/trevol_generado/models/payroll_employee.rb +437 -0
  138. data/lib/trevol_generado/models/payroll_employer.rb +238 -0
  139. data/lib/trevol_generado/models/payroll_epctv_bonus.rb +191 -0
  140. data/lib/trevol_generado/models/payroll_event_data.rb +303 -0
  141. data/lib/trevol_generado/models/payroll_files.rb +179 -0
  142. data/lib/trevol_generado/models/payroll_input.rb +420 -0
  143. data/lib/trevol_generado/models/payroll_leaves.rb +184 -0
  144. data/lib/trevol_generado/models/payroll_list.rb +191 -0
  145. data/lib/trevol_generado/models/payroll_loan.rb +204 -0
  146. data/lib/trevol_generado/models/payroll_novelty.rb +177 -0
  147. data/lib/trevol_generado/models/payroll_other_concept.rb +197 -0
  148. data/lib/trevol_generado/models/payroll_overtime.rb +262 -0
  149. data/lib/trevol_generado/models/payroll_paid_period.rb +222 -0
  150. data/lib/trevol_generado/models/payroll_payment.rb +215 -0
  151. data/lib/trevol_generado/models/payroll_percent_amount.rb +205 -0
  152. data/lib/trevol_generado/models/payroll_period.rb +247 -0
  153. data/lib/trevol_generado/models/payroll_place.rb +179 -0
  154. data/lib/trevol_generado/models/payroll_reference.rb +188 -0
  155. data/lib/trevol_generado/models/payroll_salary_amounts.rb +171 -0
  156. data/lib/trevol_generado/models/payroll_sanction.rb +205 -0
  157. data/lib/trevol_generado/models/payroll_service_bonus.rb +214 -0
  158. data/lib/trevol_generado/models/payroll_severance.rb +232 -0
  159. data/lib/trevol_generado/models/payroll_solidarity_fund.rb +191 -0
  160. data/lib/trevol_generado/models/payroll_totals.rb +188 -0
  161. data/lib/trevol_generado/models/payroll_transport.rb +181 -0
  162. data/lib/trevol_generado/models/payroll_unpaid_period.rb +195 -0
  163. data/lib/trevol_generado/models/payroll_vacation.rb +173 -0
  164. data/lib/trevol_generado/models/payroll_workplace.rb +188 -0
  165. data/lib/trevol_generado/models/period.rb +169 -0
  166. data/lib/trevol_generado/models/physical_document.rb +179 -0
  167. data/lib/trevol_generado/models/pos.rb +186 -0
  168. data/lib/trevol_generado/models/pos_buyer.rb +181 -0
  169. data/lib/trevol_generado/models/pos_register.rb +269 -0
  170. data/lib/trevol_generado/models/prepayment.rb +248 -0
  171. data/lib/trevol_generado/models/preview.rb +195 -0
  172. data/lib/trevol_generado/models/problem.rb +329 -0
  173. data/lib/trevol_generado/models/problem_error.rb +178 -0
  174. data/lib/trevol_generado/models/public_services_extension.rb +385 -0
  175. data/lib/trevol_generado/models/radian_event.rb +359 -0
  176. data/lib/trevol_generado/models/radian_event_data.rb +289 -0
  177. data/lib/trevol_generado/models/radian_event_input.rb +284 -0
  178. data/lib/trevol_generado/models/radian_event_invoice.rb +208 -0
  179. data/lib/trevol_generado/models/radian_event_list.rb +191 -0
  180. data/lib/trevol_generado/models/received_invoice.rb +200 -0
  181. data/lib/trevol_generado/models/received_invoice_issuer.rb +190 -0
  182. data/lib/trevol_generado/models/references.rb +182 -0
  183. data/lib/trevol_generado/models/request_list.rb +191 -0
  184. data/lib/trevol_generado/models/request_log.rb +275 -0
  185. data/lib/trevol_generado/models/seller.rb +385 -0
  186. data/lib/trevol_generado/models/shipment.rb +178 -0
  187. data/lib/trevol_generado/models/show_event.rb +276 -0
  188. data/lib/trevol_generado/models/show_extension.rb +203 -0
  189. data/lib/trevol_generado/models/show_producer.rb +212 -0
  190. data/lib/trevol_generado/models/standard_code.rb +169 -0
  191. data/lib/trevol_generado/models/stock_exchange_extension.rb +320 -0
  192. data/lib/trevol_generado/models/stock_exchange_prices.rb +169 -0
  193. data/lib/trevol_generado/models/support_adjustment_item.rb +295 -0
  194. data/lib/trevol_generado/models/support_adjustment_reference.rb +188 -0
  195. data/lib/trevol_generado/models/support_currency.rb +231 -0
  196. data/lib/trevol_generado/models/support_document.rb +401 -0
  197. data/lib/trevol_generado/models/support_document_adjustment.rb +409 -0
  198. data/lib/trevol_generado/models/support_document_adjustment_input.rb +331 -0
  199. data/lib/trevol_generado/models/support_document_adjustment_list.rb +191 -0
  200. data/lib/trevol_generado/models/support_document_delivery.rb +199 -0
  201. data/lib/trevol_generado/models/support_document_event_data.rb +305 -0
  202. data/lib/trevol_generado/models/support_document_input.rb +331 -0
  203. data/lib/trevol_generado/models/support_document_list.rb +191 -0
  204. data/lib/trevol_generado/models/support_document_reference.rb +198 -0
  205. data/lib/trevol_generado/models/support_item.rb +317 -0
  206. data/lib/trevol_generado/models/support_item_charge.rb +180 -0
  207. data/lib/trevol_generado/models/support_item_tax.rb +197 -0
  208. data/lib/trevol_generado/models/support_item_withholding.rb +205 -0
  209. data/lib/trevol_generado/models/tacit_acceptance.rb +224 -0
  210. data/lib/trevol_generado/models/tacit_acceptance_rule.rb +226 -0
  211. data/lib/trevol_generado/models/test_event_data.rb +171 -0
  212. data/lib/trevol_generado/models/third_party_charge.rb +277 -0
  213. data/lib/trevol_generado/models/third_party_company.rb +203 -0
  214. data/lib/trevol_generado/models/top_up.rb +199 -0
  215. data/lib/trevol_generado/models/top_up_buyer.rb +352 -0
  216. data/lib/trevol_generado/models/top_up_input.rb +187 -0
  217. data/lib/trevol_generado/models/top_up_wompi.rb +209 -0
  218. data/lib/trevol_generado/models/transport_extension.rb +281 -0
  219. data/lib/trevol_generado/models/webhook_delivery.rb +267 -0
  220. data/lib/trevol_generado/models/webhook_delivery_attempt.rb +192 -0
  221. data/lib/trevol_generado/models/webhook_delivery_list.rb +191 -0
  222. data/lib/trevol_generado/models/webhook_endpoint.rb +317 -0
  223. data/lib/trevol_generado/models/webhook_endpoint_input.rb +229 -0
  224. data/lib/trevol_generado/models/webhook_endpoint_list.rb +191 -0
  225. data/lib/trevol_generado/models/webhook_endpoint_rotate_input.rb +160 -0
  226. data/lib/trevol_generado/models/webhook_endpoint_update.rb +227 -0
  227. data/lib/trevol_generado/models/withholding.rb +224 -0
  228. data/lib/trevol_generado/tablas.rb +243 -0
  229. data/lib/trevol_generado/version.rb +15 -0
  230. data/lib/trevol_generado.rb +251 -0
  231. metadata +386 -0
@@ -0,0 +1,440 @@
1
+ =begin
2
+ #API de Trevol
3
+
4
+ #Trevol API. Documentación: https://platform.trevol.si/docs
5
+
6
+ The version of the OpenAPI document: 2026-10-22
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.26.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TrevolGenerado
17
+ # Una nota de ajuste de un documento equivalente (crédito 94 o débito 93). Se expide como la factura: archivos `pdf`, `xml`, `zip` y `dian_response`.
18
+ class EquivalentDocumentAdjustment < ApiModelBase
19
+ # posa_…
20
+ attr_accessor :id
21
+
22
+ # Valores conocidos: `equivalent_document_adjustment`.
23
+ attr_accessor :object
24
+
25
+ # Valores conocidos: `test`, `live`.
26
+ attr_accessor :environment
27
+
28
+ # `processing` solo en la versión 2026-10-22: la DIAN no confirmó y Trevol sigue resolviendo el documento (el resultado llega por GET y por webhook; no crees otro documento para la misma venta). En 2026-10-21 ese documento se ve como `error`. `validating`: el set de pruebas de la DIAN (habilitación) recibió el documento y todavía lo valida; no es un error, responde 202 en las dos versiones y Trevol solo consulta (nunca reenvía). Valores conocidos: `pending`, `sending`, `accepted`, `rejected`, `error`, `contingency`, `processing`, `validating`.
29
+ attr_accessor :status
30
+
31
+ attr_accessor :number
32
+
33
+ attr_accessor :prefix
34
+
35
+ attr_accessor :external_id
36
+
37
+ # Valores conocidos: `api`, `app`, `contapyme`.
38
+ attr_accessor :origin
39
+
40
+ # El código único del documento (CUDE, 96 hex).
41
+ attr_accessor :cude
42
+
43
+ attr_accessor :qr
44
+
45
+ attr_accessor :issued_at
46
+
47
+ attr_accessor :customer
48
+
49
+ attr_accessor :items
50
+
51
+ attr_accessor :payment
52
+
53
+ # Montos como texto decimal con 2 decimales, siempre en pesos. Con moneda extranjera, `currency` trae el equivalente.
54
+ attr_accessor :totals
55
+
56
+ attr_accessor :dian
57
+
58
+ attr_accessor :delivery
59
+
60
+ attr_accessor :created_at
61
+
62
+ attr_accessor :updated_at
63
+
64
+ attr_accessor :notes
65
+
66
+ attr_accessor :period
67
+
68
+ attr_accessor :references
69
+
70
+ attr_accessor :allowance_charges
71
+
72
+ attr_accessor :prepayments
73
+
74
+ # Un booleano o un decimal con punto.
75
+ attr_accessor :rounding
76
+
77
+ # Valores conocidos: `credit`, `debit`.
78
+ attr_accessor :note_type
79
+
80
+ # Concepto de la nota (tabla 16.6): 1 a 5.
81
+ attr_accessor :concept
82
+
83
+ attr_accessor :description
84
+
85
+ attr_accessor :equivalent_document
86
+
87
+ # Attribute mapping from ruby-style variable name to JSON key.
88
+ def self.attribute_map
89
+ {
90
+ :'id' => :'id',
91
+ :'object' => :'object',
92
+ :'environment' => :'environment',
93
+ :'status' => :'status',
94
+ :'number' => :'number',
95
+ :'prefix' => :'prefix',
96
+ :'external_id' => :'external_id',
97
+ :'origin' => :'origin',
98
+ :'cude' => :'cude',
99
+ :'qr' => :'qr',
100
+ :'issued_at' => :'issued_at',
101
+ :'customer' => :'customer',
102
+ :'items' => :'items',
103
+ :'payment' => :'payment',
104
+ :'totals' => :'totals',
105
+ :'dian' => :'dian',
106
+ :'delivery' => :'delivery',
107
+ :'created_at' => :'created_at',
108
+ :'updated_at' => :'updated_at',
109
+ :'notes' => :'notes',
110
+ :'period' => :'period',
111
+ :'references' => :'references',
112
+ :'allowance_charges' => :'allowance_charges',
113
+ :'prepayments' => :'prepayments',
114
+ :'rounding' => :'rounding',
115
+ :'note_type' => :'note_type',
116
+ :'concept' => :'concept',
117
+ :'description' => :'description',
118
+ :'equivalent_document' => :'equivalent_document'
119
+ }
120
+ end
121
+
122
+ # Returns attribute mapping this model knows about
123
+ def self.acceptable_attribute_map
124
+ attribute_map
125
+ end
126
+
127
+ # Returns all the JSON keys this model knows about
128
+ def self.acceptable_attributes
129
+ acceptable_attribute_map.values
130
+ end
131
+
132
+ # Attribute type mapping.
133
+ def self.openapi_types
134
+ {
135
+ :'id' => :'String',
136
+ :'object' => :'String',
137
+ :'environment' => :'String',
138
+ :'status' => :'String',
139
+ :'number' => :'String',
140
+ :'prefix' => :'String',
141
+ :'external_id' => :'String',
142
+ :'origin' => :'String',
143
+ :'cude' => :'String',
144
+ :'qr' => :'String',
145
+ :'issued_at' => :'Time',
146
+ :'customer' => :'Customer',
147
+ :'items' => :'Array<EquivalentAdjustmentItem>',
148
+ :'payment' => :'Payment',
149
+ :'totals' => :'DocumentTotals',
150
+ :'dian' => :'DianResult',
151
+ :'delivery' => :'Delivery',
152
+ :'created_at' => :'Time',
153
+ :'updated_at' => :'Time',
154
+ :'notes' => :'Array<String>',
155
+ :'period' => :'Period',
156
+ :'references' => :'References',
157
+ :'allowance_charges' => :'Array<AllowanceCharge>',
158
+ :'prepayments' => :'Array<Prepayment>',
159
+ :'rounding' => :'Object',
160
+ :'note_type' => :'String',
161
+ :'concept' => :'String',
162
+ :'description' => :'String',
163
+ :'equivalent_document' => :'EquivalentDocumentReference'
164
+ }
165
+ end
166
+
167
+ # List of attributes with nullable: true
168
+ def self.openapi_nullable
169
+ Set.new([
170
+ :'number',
171
+ :'prefix',
172
+ :'external_id',
173
+ :'cude',
174
+ :'qr',
175
+ :'issued_at',
176
+ :'totals',
177
+ :'updated_at',
178
+ :'rounding',
179
+ ])
180
+ end
181
+
182
+ # Returns attribute type mapping
183
+ def self.acceptable_openapi_types
184
+ openapi_types
185
+ end
186
+
187
+ # Returns the nullable attributes
188
+ def self.acceptable_openapi_nullable
189
+ openapi_nullable
190
+ end
191
+
192
+ # Initializes the object
193
+ # @param [Hash] attributes Model attributes in the form of hash
194
+ def initialize(attributes = {})
195
+ if (!attributes.is_a?(Hash))
196
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TrevolGenerado::EquivalentDocumentAdjustment` initialize method"
197
+ end
198
+
199
+ # check to see if the attribute exists and convert string to symbol for hash key
200
+ acceptable_attribute_map = self.class.acceptable_attribute_map
201
+ attributes = attributes.each_with_object({}) { |(k, v), h|
202
+ if (!acceptable_attribute_map.key?(k.to_sym))
203
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TrevolGenerado::EquivalentDocumentAdjustment`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
204
+ end
205
+ h[k.to_sym] = v
206
+ }
207
+
208
+ if attributes.key?(:'id')
209
+ self.id = attributes[:'id']
210
+ end
211
+
212
+ if attributes.key?(:'object')
213
+ self.object = attributes[:'object']
214
+ end
215
+
216
+ if attributes.key?(:'environment')
217
+ self.environment = attributes[:'environment']
218
+ end
219
+
220
+ if attributes.key?(:'status')
221
+ self.status = attributes[:'status']
222
+ end
223
+
224
+ if attributes.key?(:'number')
225
+ self.number = attributes[:'number']
226
+ end
227
+
228
+ if attributes.key?(:'prefix')
229
+ self.prefix = attributes[:'prefix']
230
+ end
231
+
232
+ if attributes.key?(:'external_id')
233
+ self.external_id = attributes[:'external_id']
234
+ end
235
+
236
+ if attributes.key?(:'origin')
237
+ self.origin = attributes[:'origin']
238
+ end
239
+
240
+ if attributes.key?(:'cude')
241
+ self.cude = attributes[:'cude']
242
+ end
243
+
244
+ if attributes.key?(:'qr')
245
+ self.qr = attributes[:'qr']
246
+ end
247
+
248
+ if attributes.key?(:'issued_at')
249
+ self.issued_at = attributes[:'issued_at']
250
+ end
251
+
252
+ if attributes.key?(:'customer')
253
+ self.customer = attributes[:'customer']
254
+ end
255
+
256
+ if attributes.key?(:'items')
257
+ if (value = attributes[:'items']).is_a?(Array)
258
+ self.items = value
259
+ end
260
+ end
261
+
262
+ if attributes.key?(:'payment')
263
+ self.payment = attributes[:'payment']
264
+ end
265
+
266
+ if attributes.key?(:'totals')
267
+ self.totals = attributes[:'totals']
268
+ end
269
+
270
+ if attributes.key?(:'dian')
271
+ self.dian = attributes[:'dian']
272
+ end
273
+
274
+ if attributes.key?(:'delivery')
275
+ self.delivery = attributes[:'delivery']
276
+ end
277
+
278
+ if attributes.key?(:'created_at')
279
+ self.created_at = attributes[:'created_at']
280
+ end
281
+
282
+ if attributes.key?(:'updated_at')
283
+ self.updated_at = attributes[:'updated_at']
284
+ end
285
+
286
+ if attributes.key?(:'notes')
287
+ if (value = attributes[:'notes']).is_a?(Array)
288
+ self.notes = value
289
+ end
290
+ end
291
+
292
+ if attributes.key?(:'period')
293
+ self.period = attributes[:'period']
294
+ end
295
+
296
+ if attributes.key?(:'references')
297
+ self.references = attributes[:'references']
298
+ end
299
+
300
+ if attributes.key?(:'allowance_charges')
301
+ if (value = attributes[:'allowance_charges']).is_a?(Array)
302
+ self.allowance_charges = value
303
+ end
304
+ end
305
+
306
+ if attributes.key?(:'prepayments')
307
+ if (value = attributes[:'prepayments']).is_a?(Array)
308
+ self.prepayments = value
309
+ end
310
+ end
311
+
312
+ if attributes.key?(:'rounding')
313
+ self.rounding = attributes[:'rounding']
314
+ end
315
+
316
+ if attributes.key?(:'note_type')
317
+ self.note_type = attributes[:'note_type']
318
+ end
319
+
320
+ if attributes.key?(:'concept')
321
+ self.concept = attributes[:'concept']
322
+ end
323
+
324
+ if attributes.key?(:'description')
325
+ self.description = attributes[:'description']
326
+ end
327
+
328
+ if attributes.key?(:'equivalent_document')
329
+ self.equivalent_document = attributes[:'equivalent_document']
330
+ end
331
+ end
332
+
333
+ # Show invalid properties with the reasons. Usually used together with valid?
334
+ # @return Array for valid properties with the reasons
335
+ def list_invalid_properties
336
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
337
+ invalid_properties = Array.new
338
+ invalid_properties
339
+ end
340
+
341
+ # Check to see if the all the properties in the model are valid
342
+ # @return true if the model is valid
343
+ def valid?
344
+ warn '[DEPRECATED] the `valid?` method is obsolete'
345
+ true
346
+ end
347
+
348
+ # Checks equality by comparing each attribute.
349
+ # @param [Object] Object to be compared
350
+ def ==(o)
351
+ return true if self.equal?(o)
352
+ self.class == o.class &&
353
+ id == o.id &&
354
+ object == o.object &&
355
+ environment == o.environment &&
356
+ status == o.status &&
357
+ number == o.number &&
358
+ prefix == o.prefix &&
359
+ external_id == o.external_id &&
360
+ origin == o.origin &&
361
+ cude == o.cude &&
362
+ qr == o.qr &&
363
+ issued_at == o.issued_at &&
364
+ customer == o.customer &&
365
+ items == o.items &&
366
+ payment == o.payment &&
367
+ totals == o.totals &&
368
+ dian == o.dian &&
369
+ delivery == o.delivery &&
370
+ created_at == o.created_at &&
371
+ updated_at == o.updated_at &&
372
+ notes == o.notes &&
373
+ period == o.period &&
374
+ references == o.references &&
375
+ allowance_charges == o.allowance_charges &&
376
+ prepayments == o.prepayments &&
377
+ rounding == o.rounding &&
378
+ note_type == o.note_type &&
379
+ concept == o.concept &&
380
+ description == o.description &&
381
+ equivalent_document == o.equivalent_document
382
+ end
383
+
384
+ # @see the `==` method
385
+ # @param [Object] Object to be compared
386
+ def eql?(o)
387
+ self == o
388
+ end
389
+
390
+ # Calculates hash code according to all attributes.
391
+ # @return [Integer] Hash code
392
+ def hash
393
+ [id, object, environment, status, number, prefix, external_id, origin, cude, qr, issued_at, customer, items, payment, totals, dian, delivery, created_at, updated_at, notes, period, references, allowance_charges, prepayments, rounding, note_type, concept, description, equivalent_document].hash
394
+ end
395
+
396
+ # Builds the object from hash
397
+ # @param [Hash] attributes Model attributes in the form of hash
398
+ # @return [Object] Returns the model itself
399
+ def self.build_from_hash(attributes)
400
+ return nil unless attributes.is_a?(Hash)
401
+ attributes = attributes.transform_keys(&:to_sym)
402
+ # include attributes inherited from allOf parents (the nearest declaration wins)
403
+ map = acceptable_attribute_map
404
+ transformed_hash = {}
405
+ acceptable_openapi_types.each_pair do |key, type|
406
+ if attributes.key?(map[key]) && attributes[map[key]].nil?
407
+ transformed_hash["#{key}"] = nil
408
+ elsif type =~ /\AArray<(.*)>/i
409
+ # check to ensure the input is an array given that the attribute
410
+ # is documented as an array but the input is not
411
+ if attributes[map[key]].is_a?(Array)
412
+ transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
413
+ end
414
+ elsif !attributes[map[key]].nil?
415
+ transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
416
+ end
417
+ end
418
+ new(transformed_hash)
419
+ end
420
+
421
+ # Returns the object in the form of hash
422
+ # @return [Hash] Returns the object in the form of hash
423
+ def to_hash
424
+ hash = {}
425
+ # include attributes inherited from allOf parents (the nearest declaration wins)
426
+ self.class.acceptable_attribute_map.each_pair do |attr, param|
427
+ value = self.send(attr)
428
+ if value.nil?
429
+ is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
430
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
431
+ end
432
+
433
+ hash[param] = _to_hash(value)
434
+ end
435
+ hash
436
+ end
437
+
438
+ end
439
+
440
+ end