ecf-dgii 1.0.2

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 (388) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/README.md +316 -0
  4. data/lib/ecf-dgii.rb +40 -0
  5. data/lib/ecf_dgii/client.rb +343 -0
  6. data/lib/ecf_dgii/generated/api/api_key_api.rb +86 -0
  7. data/lib/ecf_dgii/generated/api/aprobacion_comercial_api.rb +162 -0
  8. data/lib/ecf_dgii/generated/api/company_api.rb +416 -0
  9. data/lib/ecf_dgii/generated/api/dgii_api.rb +745 -0
  10. data/lib/ecf_dgii/generated/api/ecf_api.rb +1242 -0
  11. data/lib/ecf_dgii/generated/api/recepcion_api.rb +437 -0
  12. data/lib/ecf_dgii/generated/api_client.rb +441 -0
  13. data/lib/ecf_dgii/generated/api_error.rb +58 -0
  14. data/lib/ecf_dgii/generated/api_model_base.rb +88 -0
  15. data/lib/ecf_dgii/generated/configuration.rb +401 -0
  16. data/lib/ecf_dgii/generated/models/acecf_reception_request_dto.rb +231 -0
  17. data/lib/ecf_dgii/generated/models/acecf_summary_dto.rb +254 -0
  18. data/lib/ecf_dgii/generated/models/acecf_summary_dto_receptor_http_status.rb +104 -0
  19. data/lib/ecf_dgii/generated/models/all_tipo_ecf_types.rb +52 -0
  20. data/lib/ecf_dgii/generated/models/anulacion_list_response.rb +259 -0
  21. data/lib/ecf_dgii/generated/models/anulacion_request.rb +192 -0
  22. data/lib/ecf_dgii/generated/models/certificate_response.rb +358 -0
  23. data/lib/ecf_dgii/generated/models/codificacion_tipo_impuestos_type.rb +77 -0
  24. data/lib/ecf_dgii/generated/models/codigo_modificacion_type.rb +43 -0
  25. data/lib/ecf_dgii/generated/models/company_response.rb +249 -0
  26. data/lib/ecf_dgii/generated/models/detalle_anulacion_request.rb +268 -0
  27. data/lib/ecf_dgii/generated/models/detalle_anulacion_request_dto.rb +200 -0
  28. data/lib/ecf_dgii/generated/models/dgii_environment.rb +41 -0
  29. data/lib/ecf_dgii/generated/models/directorio.rb +194 -0
  30. data/lib/ecf_dgii/generated/models/ecf31_codificacion_tipo_impuestos_type.rb +77 -0
  31. data/lib/ecf_dgii/generated/models/ecf31_codigos_item.rb +190 -0
  32. data/lib/ecf_dgii/generated/models/ecf31_comprador.rb +352 -0
  33. data/lib/ecf_dgii/generated/models/ecf31_descuento_o_recargo.rb +282 -0
  34. data/lib/ecf_dgii/generated/models/ecf31_descuento_o_recargo_monto_descuentoo_recargo.rb +103 -0
  35. data/lib/ecf_dgii/generated/models/ecf31_descuento_o_recargo_valor_descuentoo_recargo.rb +103 -0
  36. data/lib/ecf_dgii/generated/models/ecf31_ecf.rb +238 -0
  37. data/lib/ecf_dgii/generated/models/ecf31_emisor.rb +406 -0
  38. data/lib/ecf_dgii/generated/models/ecf31_encabezado.rb +320 -0
  39. data/lib/ecf_dgii/generated/models/ecf31_forma_de_pago.rb +212 -0
  40. data/lib/ecf_dgii/generated/models/ecf31_forma_de_pago_monto_pago.rb +103 -0
  41. data/lib/ecf_dgii/generated/models/ecf31_forma_pago_type.rb +46 -0
  42. data/lib/ecf_dgii/generated/models/ecf31_id_doc.rb +395 -0
  43. data/lib/ecf_dgii/generated/models/ecf31_impuesto_adicional.rb +186 -0
  44. data/lib/ecf_dgii/generated/models/ecf31_impuesto_adicional2.rb +242 -0
  45. data/lib/ecf_dgii/generated/models/ecf31_impuesto_adicional2_monto_impuesto_selectivo_consumo_especifico.rb +103 -0
  46. data/lib/ecf_dgii/generated/models/ecf31_impuesto_adicional2_tasa_impuesto_adicional.rb +103 -0
  47. data/lib/ecf_dgii/generated/models/ecf31_impuesto_adicional_otra_moneda.rb +242 -0
  48. data/lib/ecf_dgii/generated/models/ecf31_indicador_bieno_servicio_type.rb +40 -0
  49. data/lib/ecf_dgii/generated/models/ecf31_indicador_facturacion_type.rb +43 -0
  50. data/lib/ecf_dgii/generated/models/ecf31_informacion_referencia.rb +200 -0
  51. data/lib/ecf_dgii/generated/models/ecf31_informaciones_adicionales.rb +297 -0
  52. data/lib/ecf_dgii/generated/models/ecf31_item.rb +522 -0
  53. data/lib/ecf_dgii/generated/models/ecf31_item_cantidad_item.rb +103 -0
  54. data/lib/ecf_dgii/generated/models/ecf31_item_precio_unitario_item.rb +103 -0
  55. data/lib/ecf_dgii/generated/models/ecf31_otra_moneda.rb +302 -0
  56. data/lib/ecf_dgii/generated/models/ecf31_otra_moneda_detalle.rb +178 -0
  57. data/lib/ecf_dgii/generated/models/ecf31_otra_moneda_detalle_precio_otra_moneda.rb +103 -0
  58. data/lib/ecf_dgii/generated/models/ecf31_otra_moneda_tipo_cambio.rb +103 -0
  59. data/lib/ecf_dgii/generated/models/ecf31_pagina.rb +298 -0
  60. data/lib/ecf_dgii/generated/models/ecf31_retencion.rb +190 -0
  61. data/lib/ecf_dgii/generated/models/ecf31_sub_descuento.rb +206 -0
  62. data/lib/ecf_dgii/generated/models/ecf31_sub_recargo.rb +206 -0
  63. data/lib/ecf_dgii/generated/models/ecf31_subcantidad_item.rb +180 -0
  64. data/lib/ecf_dgii/generated/models/ecf31_subtotal.rb +288 -0
  65. data/lib/ecf_dgii/generated/models/ecf31_subtotal_impuesto_adicional.rb +158 -0
  66. data/lib/ecf_dgii/generated/models/ecf31_tipo_ajuste_type.rb +40 -0
  67. data/lib/ecf_dgii/generated/models/ecf31_tipo_descuento_recargo_type.rb +40 -0
  68. data/lib/ecf_dgii/generated/models/ecf31_tipo_ingresos_validation_type.rb +44 -0
  69. data/lib/ecf_dgii/generated/models/ecf31_tipo_pago_type.rb +41 -0
  70. data/lib/ecf_dgii/generated/models/ecf31_totales.rb +396 -0
  71. data/lib/ecf_dgii/generated/models/ecf31_totales_monto_no_facturable.rb +103 -0
  72. data/lib/ecf_dgii/generated/models/ecf31_transporte.rb +225 -0
  73. data/lib/ecf_dgii/generated/models/ecf31_version_type.rb +39 -0
  74. data/lib/ecf_dgii/generated/models/ecf32_codificacion_tipo_impuestos_type.rb +77 -0
  75. data/lib/ecf_dgii/generated/models/ecf32_codigos_item.rb +190 -0
  76. data/lib/ecf_dgii/generated/models/ecf32_comprador.rb +330 -0
  77. data/lib/ecf_dgii/generated/models/ecf32_descuento_o_recargo.rb +282 -0
  78. data/lib/ecf_dgii/generated/models/ecf32_ecf.rb +238 -0
  79. data/lib/ecf_dgii/generated/models/ecf32_emisor.rb +406 -0
  80. data/lib/ecf_dgii/generated/models/ecf32_encabezado.rb +320 -0
  81. data/lib/ecf_dgii/generated/models/ecf32_forma_de_pago.rb +212 -0
  82. data/lib/ecf_dgii/generated/models/ecf32_forma_pago_type.rb +46 -0
  83. data/lib/ecf_dgii/generated/models/ecf32_id_doc.rb +386 -0
  84. data/lib/ecf_dgii/generated/models/ecf32_impuesto_adicional.rb +186 -0
  85. data/lib/ecf_dgii/generated/models/ecf32_impuesto_adicional2.rb +242 -0
  86. data/lib/ecf_dgii/generated/models/ecf32_impuesto_adicional_otra_moneda.rb +242 -0
  87. data/lib/ecf_dgii/generated/models/ecf32_indicador_bieno_servicio_type.rb +40 -0
  88. data/lib/ecf_dgii/generated/models/ecf32_indicador_facturacion_type.rb +43 -0
  89. data/lib/ecf_dgii/generated/models/ecf32_informacion_referencia.rb +200 -0
  90. data/lib/ecf_dgii/generated/models/ecf32_informaciones_adicionales.rb +297 -0
  91. data/lib/ecf_dgii/generated/models/ecf32_item.rb +522 -0
  92. data/lib/ecf_dgii/generated/models/ecf32_mineria.rb +200 -0
  93. data/lib/ecf_dgii/generated/models/ecf32_otra_moneda.rb +302 -0
  94. data/lib/ecf_dgii/generated/models/ecf32_otra_moneda_detalle.rb +178 -0
  95. data/lib/ecf_dgii/generated/models/ecf32_pagina.rb +298 -0
  96. data/lib/ecf_dgii/generated/models/ecf32_sub_descuento.rb +206 -0
  97. data/lib/ecf_dgii/generated/models/ecf32_sub_recargo.rb +206 -0
  98. data/lib/ecf_dgii/generated/models/ecf32_subcantidad_item.rb +180 -0
  99. data/lib/ecf_dgii/generated/models/ecf32_subtotal.rb +288 -0
  100. data/lib/ecf_dgii/generated/models/ecf32_subtotal_impuesto_adicional.rb +158 -0
  101. data/lib/ecf_dgii/generated/models/ecf32_tipo_ajuste_type.rb +40 -0
  102. data/lib/ecf_dgii/generated/models/ecf32_tipo_descuento_recargo_type.rb +40 -0
  103. data/lib/ecf_dgii/generated/models/ecf32_tipo_ingresos_validation_type.rb +44 -0
  104. data/lib/ecf_dgii/generated/models/ecf32_tipo_pago_type.rb +41 -0
  105. data/lib/ecf_dgii/generated/models/ecf32_totales.rb +356 -0
  106. data/lib/ecf_dgii/generated/models/ecf32_transporte.rb +225 -0
  107. data/lib/ecf_dgii/generated/models/ecf32_version_type.rb +39 -0
  108. data/lib/ecf_dgii/generated/models/ecf33_codificacion_tipo_impuestos_type.rb +77 -0
  109. data/lib/ecf_dgii/generated/models/ecf33_codigo_modificacion_type.rb +43 -0
  110. data/lib/ecf_dgii/generated/models/ecf33_codigos_item.rb +190 -0
  111. data/lib/ecf_dgii/generated/models/ecf33_comprador.rb +330 -0
  112. data/lib/ecf_dgii/generated/models/ecf33_descuento_o_recargo.rb +282 -0
  113. data/lib/ecf_dgii/generated/models/ecf33_ecf.rb +254 -0
  114. data/lib/ecf_dgii/generated/models/ecf33_emisor.rb +406 -0
  115. data/lib/ecf_dgii/generated/models/ecf33_encabezado.rb +304 -0
  116. data/lib/ecf_dgii/generated/models/ecf33_forma_de_pago.rb +212 -0
  117. data/lib/ecf_dgii/generated/models/ecf33_forma_pago_type.rb +46 -0
  118. data/lib/ecf_dgii/generated/models/ecf33_id_doc.rb +379 -0
  119. data/lib/ecf_dgii/generated/models/ecf33_impuesto_adicional.rb +186 -0
  120. data/lib/ecf_dgii/generated/models/ecf33_impuesto_adicional2.rb +242 -0
  121. data/lib/ecf_dgii/generated/models/ecf33_impuesto_adicional_otra_moneda.rb +242 -0
  122. data/lib/ecf_dgii/generated/models/ecf33_indicador_bieno_servicio_type.rb +40 -0
  123. data/lib/ecf_dgii/generated/models/ecf33_indicador_facturacion_type.rb +43 -0
  124. data/lib/ecf_dgii/generated/models/ecf33_informacion_referencia.rb +241 -0
  125. data/lib/ecf_dgii/generated/models/ecf33_informaciones_adicionales.rb +297 -0
  126. data/lib/ecf_dgii/generated/models/ecf33_item.rb +532 -0
  127. data/lib/ecf_dgii/generated/models/ecf33_mineria.rb +200 -0
  128. data/lib/ecf_dgii/generated/models/ecf33_otra_moneda.rb +302 -0
  129. data/lib/ecf_dgii/generated/models/ecf33_otra_moneda_detalle.rb +178 -0
  130. data/lib/ecf_dgii/generated/models/ecf33_pagina.rb +298 -0
  131. data/lib/ecf_dgii/generated/models/ecf33_retencion.rb +190 -0
  132. data/lib/ecf_dgii/generated/models/ecf33_sub_descuento.rb +206 -0
  133. data/lib/ecf_dgii/generated/models/ecf33_sub_recargo.rb +206 -0
  134. data/lib/ecf_dgii/generated/models/ecf33_subcantidad_item.rb +180 -0
  135. data/lib/ecf_dgii/generated/models/ecf33_subtotal.rb +288 -0
  136. data/lib/ecf_dgii/generated/models/ecf33_subtotal_impuesto_adicional.rb +158 -0
  137. data/lib/ecf_dgii/generated/models/ecf33_tipo_ajuste_type.rb +40 -0
  138. data/lib/ecf_dgii/generated/models/ecf33_tipo_descuento_recargo_type.rb +40 -0
  139. data/lib/ecf_dgii/generated/models/ecf33_tipo_pago_type.rb +41 -0
  140. data/lib/ecf_dgii/generated/models/ecf33_totales.rb +396 -0
  141. data/lib/ecf_dgii/generated/models/ecf33_transporte.rb +225 -0
  142. data/lib/ecf_dgii/generated/models/ecf33_version_type.rb +39 -0
  143. data/lib/ecf_dgii/generated/models/ecf34_codificacion_tipo_impuestos_type.rb +77 -0
  144. data/lib/ecf_dgii/generated/models/ecf34_codigo_modificacion_type.rb +43 -0
  145. data/lib/ecf_dgii/generated/models/ecf34_codigos_item.rb +190 -0
  146. data/lib/ecf_dgii/generated/models/ecf34_comprador.rb +330 -0
  147. data/lib/ecf_dgii/generated/models/ecf34_descuento_o_recargo.rb +282 -0
  148. data/lib/ecf_dgii/generated/models/ecf34_ecf.rb +254 -0
  149. data/lib/ecf_dgii/generated/models/ecf34_emisor.rb +406 -0
  150. data/lib/ecf_dgii/generated/models/ecf34_encabezado.rb +304 -0
  151. data/lib/ecf_dgii/generated/models/ecf34_id_doc.rb +344 -0
  152. data/lib/ecf_dgii/generated/models/ecf34_impuesto_adicional.rb +186 -0
  153. data/lib/ecf_dgii/generated/models/ecf34_impuesto_adicional2.rb +210 -0
  154. data/lib/ecf_dgii/generated/models/ecf34_impuesto_adicional_otra_moneda.rb +242 -0
  155. data/lib/ecf_dgii/generated/models/ecf34_indicador_bieno_servicio_type.rb +40 -0
  156. data/lib/ecf_dgii/generated/models/ecf34_indicador_facturacion_type.rb +43 -0
  157. data/lib/ecf_dgii/generated/models/ecf34_informacion_referencia.rb +241 -0
  158. data/lib/ecf_dgii/generated/models/ecf34_informaciones_adicionales.rb +297 -0
  159. data/lib/ecf_dgii/generated/models/ecf34_item.rb +532 -0
  160. data/lib/ecf_dgii/generated/models/ecf34_mineria.rb +200 -0
  161. data/lib/ecf_dgii/generated/models/ecf34_otra_moneda.rb +302 -0
  162. data/lib/ecf_dgii/generated/models/ecf34_otra_moneda_detalle.rb +178 -0
  163. data/lib/ecf_dgii/generated/models/ecf34_pagina.rb +298 -0
  164. data/lib/ecf_dgii/generated/models/ecf34_retencion.rb +190 -0
  165. data/lib/ecf_dgii/generated/models/ecf34_sub_descuento.rb +206 -0
  166. data/lib/ecf_dgii/generated/models/ecf34_sub_recargo.rb +206 -0
  167. data/lib/ecf_dgii/generated/models/ecf34_subcantidad_item.rb +180 -0
  168. data/lib/ecf_dgii/generated/models/ecf34_subtotal.rb +288 -0
  169. data/lib/ecf_dgii/generated/models/ecf34_subtotal_impuesto_adicional.rb +158 -0
  170. data/lib/ecf_dgii/generated/models/ecf34_tipo_ajuste_type.rb +40 -0
  171. data/lib/ecf_dgii/generated/models/ecf34_tipo_descuento_recargo_type.rb +40 -0
  172. data/lib/ecf_dgii/generated/models/ecf34_tipo_pago_type.rb +41 -0
  173. data/lib/ecf_dgii/generated/models/ecf34_totales.rb +396 -0
  174. data/lib/ecf_dgii/generated/models/ecf34_transporte.rb +225 -0
  175. data/lib/ecf_dgii/generated/models/ecf34_version_type.rb +39 -0
  176. data/lib/ecf_dgii/generated/models/ecf41_codigos_item.rb +190 -0
  177. data/lib/ecf_dgii/generated/models/ecf41_comprador.rb +292 -0
  178. data/lib/ecf_dgii/generated/models/ecf41_descuento_o_recargo.rb +272 -0
  179. data/lib/ecf_dgii/generated/models/ecf41_ecf.rb +238 -0
  180. data/lib/ecf_dgii/generated/models/ecf41_emisor.rb +376 -0
  181. data/lib/ecf_dgii/generated/models/ecf41_encabezado.rb +300 -0
  182. data/lib/ecf_dgii/generated/models/ecf41_forma_de_pago.rb +212 -0
  183. data/lib/ecf_dgii/generated/models/ecf41_forma_pago_type.rb +46 -0
  184. data/lib/ecf_dgii/generated/models/ecf41_id_doc.rb +313 -0
  185. data/lib/ecf_dgii/generated/models/ecf41_indicador_agente_retenciono_percepcion_type.rb +40 -0
  186. data/lib/ecf_dgii/generated/models/ecf41_indicador_bieno_servicio_type.rb +40 -0
  187. data/lib/ecf_dgii/generated/models/ecf41_indicador_facturacion_type.rb +43 -0
  188. data/lib/ecf_dgii/generated/models/ecf41_informacion_referencia.rb +200 -0
  189. data/lib/ecf_dgii/generated/models/ecf41_item.rb +474 -0
  190. data/lib/ecf_dgii/generated/models/ecf41_otra_moneda.rb +280 -0
  191. data/lib/ecf_dgii/generated/models/ecf41_otra_moneda_detalle.rb +178 -0
  192. data/lib/ecf_dgii/generated/models/ecf41_pagina.rb +268 -0
  193. data/lib/ecf_dgii/generated/models/ecf41_retencion.rb +206 -0
  194. data/lib/ecf_dgii/generated/models/ecf41_sub_descuento.rb +206 -0
  195. data/lib/ecf_dgii/generated/models/ecf41_sub_recargo.rb +206 -0
  196. data/lib/ecf_dgii/generated/models/ecf41_subtotal.rb +288 -0
  197. data/lib/ecf_dgii/generated/models/ecf41_tipo_ajuste_type.rb +40 -0
  198. data/lib/ecf_dgii/generated/models/ecf41_tipo_descuento_recargo_type.rb +40 -0
  199. data/lib/ecf_dgii/generated/models/ecf41_totales.rb +364 -0
  200. data/lib/ecf_dgii/generated/models/ecf41_version_type.rb +39 -0
  201. data/lib/ecf_dgii/generated/models/ecf43_codigos_item.rb +190 -0
  202. data/lib/ecf_dgii/generated/models/ecf43_ecf.rb +226 -0
  203. data/lib/ecf_dgii/generated/models/ecf43_emisor.rb +376 -0
  204. data/lib/ecf_dgii/generated/models/ecf43_encabezado.rb +274 -0
  205. data/lib/ecf_dgii/generated/models/ecf43_id_doc.rb +241 -0
  206. data/lib/ecf_dgii/generated/models/ecf43_indicador_bieno_servicio_type.rb +40 -0
  207. data/lib/ecf_dgii/generated/models/ecf43_indicador_facturacion_type.rb +43 -0
  208. data/lib/ecf_dgii/generated/models/ecf43_informacion_referencia.rb +200 -0
  209. data/lib/ecf_dgii/generated/models/ecf43_item.rb +384 -0
  210. data/lib/ecf_dgii/generated/models/ecf43_otra_moneda.rb +200 -0
  211. data/lib/ecf_dgii/generated/models/ecf43_otra_moneda_detalle.rb +178 -0
  212. data/lib/ecf_dgii/generated/models/ecf43_pagina.rb +188 -0
  213. data/lib/ecf_dgii/generated/models/ecf43_subtotal.rb +198 -0
  214. data/lib/ecf_dgii/generated/models/ecf43_totales.rb +214 -0
  215. data/lib/ecf_dgii/generated/models/ecf43_version_type.rb +39 -0
  216. data/lib/ecf_dgii/generated/models/ecf44_codificacion_tipo_impuestos_type.rb +77 -0
  217. data/lib/ecf_dgii/generated/models/ecf44_codigos_item.rb +190 -0
  218. data/lib/ecf_dgii/generated/models/ecf44_comprador.rb +346 -0
  219. data/lib/ecf_dgii/generated/models/ecf44_descuento_o_recargo.rb +272 -0
  220. data/lib/ecf_dgii/generated/models/ecf44_ecf.rb +238 -0
  221. data/lib/ecf_dgii/generated/models/ecf44_emisor.rb +406 -0
  222. data/lib/ecf_dgii/generated/models/ecf44_encabezado.rb +320 -0
  223. data/lib/ecf_dgii/generated/models/ecf44_forma_de_pago.rb +212 -0
  224. data/lib/ecf_dgii/generated/models/ecf44_forma_pago_type.rb +46 -0
  225. data/lib/ecf_dgii/generated/models/ecf44_id_doc.rb +385 -0
  226. data/lib/ecf_dgii/generated/models/ecf44_impuesto_adicional.rb +186 -0
  227. data/lib/ecf_dgii/generated/models/ecf44_impuesto_adicional2.rb +238 -0
  228. data/lib/ecf_dgii/generated/models/ecf44_impuesto_adicional_otra_moneda.rb +190 -0
  229. data/lib/ecf_dgii/generated/models/ecf44_indicador_bieno_servicio_type.rb +40 -0
  230. data/lib/ecf_dgii/generated/models/ecf44_indicador_facturacion_type.rb +43 -0
  231. data/lib/ecf_dgii/generated/models/ecf44_informacion_referencia.rb +200 -0
  232. data/lib/ecf_dgii/generated/models/ecf44_informaciones_adicionales.rb +297 -0
  233. data/lib/ecf_dgii/generated/models/ecf44_item.rb +460 -0
  234. data/lib/ecf_dgii/generated/models/ecf44_otra_moneda.rb +222 -0
  235. data/lib/ecf_dgii/generated/models/ecf44_otra_moneda_detalle.rb +178 -0
  236. data/lib/ecf_dgii/generated/models/ecf44_pagina.rb +218 -0
  237. data/lib/ecf_dgii/generated/models/ecf44_sub_descuento.rb +206 -0
  238. data/lib/ecf_dgii/generated/models/ecf44_sub_recargo.rb +206 -0
  239. data/lib/ecf_dgii/generated/models/ecf44_subtotal.rb +208 -0
  240. data/lib/ecf_dgii/generated/models/ecf44_subtotal_impuesto_adicional.rb +148 -0
  241. data/lib/ecf_dgii/generated/models/ecf44_tipo_ajuste_type.rb +40 -0
  242. data/lib/ecf_dgii/generated/models/ecf44_tipo_descuento_recargo_type.rb +40 -0
  243. data/lib/ecf_dgii/generated/models/ecf44_tipo_ingresos_validation_type.rb +44 -0
  244. data/lib/ecf_dgii/generated/models/ecf44_tipo_pago_type.rb +41 -0
  245. data/lib/ecf_dgii/generated/models/ecf44_totales.rb +246 -0
  246. data/lib/ecf_dgii/generated/models/ecf44_transporte.rb +225 -0
  247. data/lib/ecf_dgii/generated/models/ecf44_version_type.rb +39 -0
  248. data/lib/ecf_dgii/generated/models/ecf45_codificacion_tipo_impuestos_type.rb +77 -0
  249. data/lib/ecf_dgii/generated/models/ecf45_codigos_item.rb +190 -0
  250. data/lib/ecf_dgii/generated/models/ecf45_comprador.rb +352 -0
  251. data/lib/ecf_dgii/generated/models/ecf45_descuento_o_recargo.rb +282 -0
  252. data/lib/ecf_dgii/generated/models/ecf45_ecf.rb +238 -0
  253. data/lib/ecf_dgii/generated/models/ecf45_emisor.rb +406 -0
  254. data/lib/ecf_dgii/generated/models/ecf45_encabezado.rb +320 -0
  255. data/lib/ecf_dgii/generated/models/ecf45_forma_de_pago.rb +212 -0
  256. data/lib/ecf_dgii/generated/models/ecf45_forma_pago_type.rb +46 -0
  257. data/lib/ecf_dgii/generated/models/ecf45_id_doc.rb +395 -0
  258. data/lib/ecf_dgii/generated/models/ecf45_impuesto_adicional.rb +186 -0
  259. data/lib/ecf_dgii/generated/models/ecf45_impuesto_adicional2.rb +242 -0
  260. data/lib/ecf_dgii/generated/models/ecf45_impuesto_adicional_otra_moneda.rb +210 -0
  261. data/lib/ecf_dgii/generated/models/ecf45_indicador_bieno_servicio_type.rb +40 -0
  262. data/lib/ecf_dgii/generated/models/ecf45_indicador_facturacion_type.rb +43 -0
  263. data/lib/ecf_dgii/generated/models/ecf45_informacion_referencia.rb +200 -0
  264. data/lib/ecf_dgii/generated/models/ecf45_informaciones_adicionales.rb +280 -0
  265. data/lib/ecf_dgii/generated/models/ecf45_item.rb +512 -0
  266. data/lib/ecf_dgii/generated/models/ecf45_otra_moneda.rb +302 -0
  267. data/lib/ecf_dgii/generated/models/ecf45_otra_moneda_detalle.rb +178 -0
  268. data/lib/ecf_dgii/generated/models/ecf45_pagina.rb +298 -0
  269. data/lib/ecf_dgii/generated/models/ecf45_sub_descuento.rb +206 -0
  270. data/lib/ecf_dgii/generated/models/ecf45_sub_recargo.rb +206 -0
  271. data/lib/ecf_dgii/generated/models/ecf45_subcantidad_item.rb +180 -0
  272. data/lib/ecf_dgii/generated/models/ecf45_subtotal.rb +288 -0
  273. data/lib/ecf_dgii/generated/models/ecf45_subtotal_impuesto_adicional.rb +158 -0
  274. data/lib/ecf_dgii/generated/models/ecf45_tipo_ajuste_type.rb +40 -0
  275. data/lib/ecf_dgii/generated/models/ecf45_tipo_descuento_recargo_type.rb +40 -0
  276. data/lib/ecf_dgii/generated/models/ecf45_tipo_ingresos_validation_type.rb +44 -0
  277. data/lib/ecf_dgii/generated/models/ecf45_tipo_pago_type.rb +41 -0
  278. data/lib/ecf_dgii/generated/models/ecf45_totales.rb +356 -0
  279. data/lib/ecf_dgii/generated/models/ecf45_transporte.rb +225 -0
  280. data/lib/ecf_dgii/generated/models/ecf45_version_type.rb +39 -0
  281. data/lib/ecf_dgii/generated/models/ecf46_codigos_item.rb +190 -0
  282. data/lib/ecf_dgii/generated/models/ecf46_comprador.rb +356 -0
  283. data/lib/ecf_dgii/generated/models/ecf46_descuento_o_recargo.rb +272 -0
  284. data/lib/ecf_dgii/generated/models/ecf46_ecf.rb +238 -0
  285. data/lib/ecf_dgii/generated/models/ecf46_emisor.rb +406 -0
  286. data/lib/ecf_dgii/generated/models/ecf46_encabezado.rb +320 -0
  287. data/lib/ecf_dgii/generated/models/ecf46_forma_de_pago.rb +212 -0
  288. data/lib/ecf_dgii/generated/models/ecf46_forma_pago_type.rb +46 -0
  289. data/lib/ecf_dgii/generated/models/ecf46_id_doc.rb +375 -0
  290. data/lib/ecf_dgii/generated/models/ecf46_indicador_bieno_servicio_type.rb +40 -0
  291. data/lib/ecf_dgii/generated/models/ecf46_indicador_facturacion_type.rb +43 -0
  292. data/lib/ecf_dgii/generated/models/ecf46_informacion_referencia.rb +200 -0
  293. data/lib/ecf_dgii/generated/models/ecf46_informaciones_adicionales.rb +397 -0
  294. data/lib/ecf_dgii/generated/models/ecf46_item.rb +458 -0
  295. data/lib/ecf_dgii/generated/models/ecf46_mineria.rb +200 -0
  296. data/lib/ecf_dgii/generated/models/ecf46_otra_moneda.rb +230 -0
  297. data/lib/ecf_dgii/generated/models/ecf46_otra_moneda_detalle.rb +178 -0
  298. data/lib/ecf_dgii/generated/models/ecf46_pagina.rb +228 -0
  299. data/lib/ecf_dgii/generated/models/ecf46_sub_descuento.rb +206 -0
  300. data/lib/ecf_dgii/generated/models/ecf46_sub_recargo.rb +206 -0
  301. data/lib/ecf_dgii/generated/models/ecf46_subtotal.rb +228 -0
  302. data/lib/ecf_dgii/generated/models/ecf46_tipo_ajuste_type.rb +40 -0
  303. data/lib/ecf_dgii/generated/models/ecf46_tipo_descuento_recargo_type.rb +40 -0
  304. data/lib/ecf_dgii/generated/models/ecf46_tipo_ingresos_validation_type.rb +44 -0
  305. data/lib/ecf_dgii/generated/models/ecf46_tipo_pago_type.rb +41 -0
  306. data/lib/ecf_dgii/generated/models/ecf46_totales.rb +264 -0
  307. data/lib/ecf_dgii/generated/models/ecf46_transporte.rb +317 -0
  308. data/lib/ecf_dgii/generated/models/ecf46_version_type.rb +39 -0
  309. data/lib/ecf_dgii/generated/models/ecf47_codigos_item.rb +190 -0
  310. data/lib/ecf_dgii/generated/models/ecf47_comprador.rb +158 -0
  311. data/lib/ecf_dgii/generated/models/ecf47_ecf.rb +226 -0
  312. data/lib/ecf_dgii/generated/models/ecf47_emisor.rb +376 -0
  313. data/lib/ecf_dgii/generated/models/ecf47_encabezado.rb +294 -0
  314. data/lib/ecf_dgii/generated/models/ecf47_forma_de_pago.rb +212 -0
  315. data/lib/ecf_dgii/generated/models/ecf47_forma_pago_type.rb +46 -0
  316. data/lib/ecf_dgii/generated/models/ecf47_id_doc.rb +323 -0
  317. data/lib/ecf_dgii/generated/models/ecf47_indicador_agente_retenciono_percepcion_type.rb +40 -0
  318. data/lib/ecf_dgii/generated/models/ecf47_indicador_bieno_servicio_type.rb +40 -0
  319. data/lib/ecf_dgii/generated/models/ecf47_indicador_facturacion_type.rb +43 -0
  320. data/lib/ecf_dgii/generated/models/ecf47_informacion_referencia.rb +200 -0
  321. data/lib/ecf_dgii/generated/models/ecf47_item.rb +410 -0
  322. data/lib/ecf_dgii/generated/models/ecf47_otra_moneda.rb +200 -0
  323. data/lib/ecf_dgii/generated/models/ecf47_otra_moneda_detalle.rb +178 -0
  324. data/lib/ecf_dgii/generated/models/ecf47_pagina.rb +188 -0
  325. data/lib/ecf_dgii/generated/models/ecf47_retencion.rb +212 -0
  326. data/lib/ecf_dgii/generated/models/ecf47_subtotal.rb +198 -0
  327. data/lib/ecf_dgii/generated/models/ecf47_totales.rb +224 -0
  328. data/lib/ecf_dgii/generated/models/ecf47_transporte.rb +148 -0
  329. data/lib/ecf_dgii/generated/models/ecf47_version_type.rb +39 -0
  330. data/lib/ecf_dgii/generated/models/ecf_estado.rb +43 -0
  331. data/lib/ecf_dgii/generated/models/ecf_progress.rb +43 -0
  332. data/lib/ecf_dgii/generated/models/ecf_reception_request_dto.rb +283 -0
  333. data/lib/ecf_dgii/generated/models/ecf_reception_request_dto_monto_total.rb +103 -0
  334. data/lib/ecf_dgii/generated/models/ecf_receptor_dto.rb +339 -0
  335. data/lib/ecf_dgii/generated/models/ecf_response.rb +628 -0
  336. data/lib/ecf_dgii/generated/models/ecf_type.rb +48 -0
  337. data/lib/ecf_dgii/generated/models/estado_type.rb +40 -0
  338. data/lib/ecf_dgii/generated/models/get_companies_limit_parameter.rb +103 -0
  339. data/lib/ecf_dgii/generated/models/get_companies_page_parameter.rb +103 -0
  340. data/lib/ecf_dgii/generated/models/indicador_agente_retenciono_percepcion_type.rb +40 -0
  341. data/lib/ecf_dgii/generated/models/indicador_envio_diferido_type.rb +39 -0
  342. data/lib/ecf_dgii/generated/models/indicador_facturacion_dr_type.rb +42 -0
  343. data/lib/ecf_dgii/generated/models/indicador_monto_gravado_type.rb +40 -0
  344. data/lib/ecf_dgii/generated/models/indicador_norma1007_type.rb +40 -0
  345. data/lib/ecf_dgii/generated/models/indicador_servicio_todo_incluido_type.rb +39 -0
  346. data/lib/ecf_dgii/generated/models/liquidacion_type.rb +40 -0
  347. data/lib/ecf_dgii/generated/models/mensaje.rb +159 -0
  348. data/lib/ecf_dgii/generated/models/new_company_api_key.rb +164 -0
  349. data/lib/ecf_dgii/generated/models/paginated_api_result_of_acecf_reception_request_dto.rb +208 -0
  350. data/lib/ecf_dgii/generated/models/paginated_api_result_of_anulacion_list_response.rb +208 -0
  351. data/lib/ecf_dgii/generated/models/paginated_api_result_of_company_response.rb +208 -0
  352. data/lib/ecf_dgii/generated/models/paginated_api_result_of_ecf_reception_request_dto.rb +208 -0
  353. data/lib/ecf_dgii/generated/models/paginated_api_result_of_ecf_response.rb +208 -0
  354. data/lib/ecf_dgii/generated/models/problem_details.rb +188 -0
  355. data/lib/ecf_dgii/generated/models/provincia_municipio_type.rb +620 -0
  356. data/lib/ecf_dgii/generated/models/respuesta_anulacion_rango.rb +185 -0
  357. data/lib/ecf_dgii/generated/models/respuesta_consulta_estado.rb +256 -0
  358. data/lib/ecf_dgii/generated/models/respuesta_consulta_estado_monto_total.rb +104 -0
  359. data/lib/ecf_dgii/generated/models/respuesta_consulta_rfce.rb +205 -0
  360. data/lib/ecf_dgii/generated/models/respuesta_consulta_timbre.rb +183 -0
  361. data/lib/ecf_dgii/generated/models/respuesta_consulta_track_id.rb +228 -0
  362. data/lib/ecf_dgii/generated/models/respuesta_estatus_servicio.rb +172 -0
  363. data/lib/ecf_dgii/generated/models/respuesta_ventana_de_mantenimiento.rb +151 -0
  364. data/lib/ecf_dgii/generated/models/search_ecf_reception_requests_tipos_ecfs_parameter_inner.rb +103 -0
  365. data/lib/ecf_dgii/generated/models/search_ecfs_amount_from_parameter.rb +103 -0
  366. data/lib/ecf_dgii/generated/models/secuencia_request.rb +190 -0
  367. data/lib/ecf_dgii/generated/models/secuencia_request_dto.rb +156 -0
  368. data/lib/ecf_dgii/generated/models/send_acecf_request.rb +179 -0
  369. data/lib/ecf_dgii/generated/models/tipo_afiliacion_type.rb +40 -0
  370. data/lib/ecf_dgii/generated/models/tipo_cuenta_pago_type.rb +41 -0
  371. data/lib/ecf_dgii/generated/models/tipo_descuento_recargo_type.rb +40 -0
  372. data/lib/ecf_dgii/generated/models/tipo_ingresos_validation_type.rb +44 -0
  373. data/lib/ecf_dgii/generated/models/tipo_moneda_type.rb +55 -0
  374. data/lib/ecf_dgii/generated/models/tipo_pago_type.rb +41 -0
  375. data/lib/ecf_dgii/generated/models/tipoe_cf_type.rb +48 -0
  376. data/lib/ecf_dgii/generated/models/token.rb +216 -0
  377. data/lib/ecf_dgii/generated/models/unidad_medida_type.rb +100 -0
  378. data/lib/ecf_dgii/generated/models/upsert_company_request.rb +368 -0
  379. data/lib/ecf_dgii/generated/models/ventana_de_mantenimiento.rb +185 -0
  380. data/lib/ecf_dgii/generated/models/via_transporte_type.rb +41 -0
  381. data/lib/ecf_dgii/generated/version.rb +15 -0
  382. data/lib/ecf_dgii/generated.rb +411 -0
  383. data/lib/ecf_dgii/generators/ecf_dgii/install_generator.rb +15 -0
  384. data/lib/ecf_dgii/generators/ecf_dgii/templates/ecf_dgii.rb.erb +15 -0
  385. data/lib/ecf_dgii/polling.rb +56 -0
  386. data/lib/ecf_dgii/railtie.rb +5 -0
  387. data/lib/ecf_dgii/version.rb +3 -0
  388. metadata +549 -0
@@ -0,0 +1,460 @@
1
+ =begin
2
+ #ECF API
3
+
4
+ #ECF API (Electronic Fiscal Receipt).
5
+
6
+ The version of the OpenAPI document: v1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module EcfDgii::Generated
17
+ class Ecf44Item < ApiModelBase
18
+ attr_accessor :numero_linea
19
+
20
+ attr_accessor :tabla_codigos_item
21
+
22
+ attr_accessor :indicador_facturacion
23
+
24
+ attr_accessor :nombre_item
25
+
26
+ attr_accessor :indicador_bieno_servicio
27
+
28
+ attr_accessor :descripcion_item
29
+
30
+ attr_accessor :cantidad_item
31
+
32
+ attr_accessor :unidad_medida
33
+
34
+ attr_accessor :fecha_elaboracion
35
+
36
+ attr_accessor :fecha_vencimiento_item
37
+
38
+ attr_accessor :precio_unitario_item
39
+
40
+ attr_accessor :descuento_monto
41
+
42
+ attr_accessor :tabla_sub_descuento
43
+
44
+ attr_accessor :recargo_monto
45
+
46
+ attr_accessor :tabla_sub_recargo
47
+
48
+ attr_accessor :tabla_impuesto_adicional
49
+
50
+ attr_accessor :otra_moneda_detalle
51
+
52
+ attr_accessor :monto_item
53
+
54
+ class EnumAttributeValidator
55
+ attr_reader :datatype
56
+ attr_reader :allowable_values
57
+
58
+ def initialize(datatype, allowable_values)
59
+ @allowable_values = allowable_values.map do |value|
60
+ case datatype.to_s
61
+ when /Integer/i
62
+ value.to_i
63
+ when /Float/i
64
+ value.to_f
65
+ else
66
+ value
67
+ end
68
+ end
69
+ end
70
+
71
+ def valid?(value)
72
+ !value || allowable_values.include?(value)
73
+ end
74
+ end
75
+
76
+ # Attribute mapping from ruby-style variable name to JSON key.
77
+ def self.attribute_map
78
+ {
79
+ :'numero_linea' => :'numeroLinea',
80
+ :'tabla_codigos_item' => :'tablaCodigosItem',
81
+ :'indicador_facturacion' => :'indicadorFacturacion',
82
+ :'nombre_item' => :'nombreItem',
83
+ :'indicador_bieno_servicio' => :'indicadorBienoServicio',
84
+ :'descripcion_item' => :'descripcionItem',
85
+ :'cantidad_item' => :'cantidadItem',
86
+ :'unidad_medida' => :'unidadMedida',
87
+ :'fecha_elaboracion' => :'fechaElaboracion',
88
+ :'fecha_vencimiento_item' => :'fechaVencimientoItem',
89
+ :'precio_unitario_item' => :'precioUnitarioItem',
90
+ :'descuento_monto' => :'descuentoMonto',
91
+ :'tabla_sub_descuento' => :'tablaSubDescuento',
92
+ :'recargo_monto' => :'recargoMonto',
93
+ :'tabla_sub_recargo' => :'tablaSubRecargo',
94
+ :'tabla_impuesto_adicional' => :'tablaImpuestoAdicional',
95
+ :'otra_moneda_detalle' => :'otraMonedaDetalle',
96
+ :'monto_item' => :'montoItem'
97
+ }
98
+ end
99
+
100
+ # Returns attribute mapping this model knows about
101
+ def self.acceptable_attribute_map
102
+ attribute_map
103
+ end
104
+
105
+ # Returns all the JSON keys this model knows about
106
+ def self.acceptable_attributes
107
+ acceptable_attribute_map.values
108
+ end
109
+
110
+ # Attribute type mapping.
111
+ def self.openapi_types
112
+ {
113
+ :'numero_linea' => :'SearchEcfReceptionRequestsTiposEcfsParameterInner',
114
+ :'tabla_codigos_item' => :'Array<Ecf44CodigosItem>',
115
+ :'indicador_facturacion' => :'Ecf44IndicadorFacturacionType',
116
+ :'nombre_item' => :'String',
117
+ :'indicador_bieno_servicio' => :'Ecf44IndicadorBienoServicioType',
118
+ :'descripcion_item' => :'String',
119
+ :'cantidad_item' => :'Ecf31ItemCantidadItem',
120
+ :'unidad_medida' => :'UnidadMedidaType',
121
+ :'fecha_elaboracion' => :'Time',
122
+ :'fecha_vencimiento_item' => :'Time',
123
+ :'precio_unitario_item' => :'Ecf31ItemPrecioUnitarioItem',
124
+ :'descuento_monto' => :'Ecf31DescuentoORecargoMontoDescuentooRecargo',
125
+ :'tabla_sub_descuento' => :'Array<Ecf44SubDescuento>',
126
+ :'recargo_monto' => :'Ecf31DescuentoORecargoMontoDescuentooRecargo',
127
+ :'tabla_sub_recargo' => :'Array<Ecf44SubRecargo>',
128
+ :'tabla_impuesto_adicional' => :'Array<Ecf44ImpuestoAdicional>',
129
+ :'otra_moneda_detalle' => :'Ecf44OtraMonedaDetalle',
130
+ :'monto_item' => :'Ecf31FormaDePagoMontoPago'
131
+ }
132
+ end
133
+
134
+ # List of attributes with nullable: true
135
+ def self.openapi_nullable
136
+ Set.new([
137
+ :'tabla_codigos_item',
138
+ :'descripcion_item',
139
+ :'unidad_medida',
140
+ :'fecha_elaboracion',
141
+ :'fecha_vencimiento_item',
142
+ :'descuento_monto',
143
+ :'tabla_sub_descuento',
144
+ :'recargo_monto',
145
+ :'tabla_sub_recargo',
146
+ :'tabla_impuesto_adicional',
147
+ :'otra_moneda_detalle',
148
+ ])
149
+ end
150
+
151
+ # Initializes the object
152
+ # @param [Hash] attributes Model attributes in the form of hash
153
+ def initialize(attributes = {})
154
+ if (!attributes.is_a?(Hash))
155
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EcfDgii::Generated::Ecf44Item` initialize method"
156
+ end
157
+
158
+ # check to see if the attribute exists and convert string to symbol for hash key
159
+ acceptable_attribute_map = self.class.acceptable_attribute_map
160
+ attributes = attributes.each_with_object({}) { |(k, v), h|
161
+ if (!acceptable_attribute_map.key?(k.to_sym))
162
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EcfDgii::Generated::Ecf44Item`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
163
+ end
164
+ h[k.to_sym] = v
165
+ }
166
+
167
+ if attributes.key?(:'numero_linea')
168
+ self.numero_linea = attributes[:'numero_linea']
169
+ else
170
+ self.numero_linea = nil
171
+ end
172
+
173
+ if attributes.key?(:'tabla_codigos_item')
174
+ if (value = attributes[:'tabla_codigos_item']).is_a?(Array)
175
+ self.tabla_codigos_item = value
176
+ end
177
+ end
178
+
179
+ if attributes.key?(:'indicador_facturacion')
180
+ self.indicador_facturacion = attributes[:'indicador_facturacion']
181
+ else
182
+ self.indicador_facturacion = nil
183
+ end
184
+
185
+ if attributes.key?(:'nombre_item')
186
+ self.nombre_item = attributes[:'nombre_item']
187
+ else
188
+ self.nombre_item = nil
189
+ end
190
+
191
+ if attributes.key?(:'indicador_bieno_servicio')
192
+ self.indicador_bieno_servicio = attributes[:'indicador_bieno_servicio']
193
+ else
194
+ self.indicador_bieno_servicio = nil
195
+ end
196
+
197
+ if attributes.key?(:'descripcion_item')
198
+ self.descripcion_item = attributes[:'descripcion_item']
199
+ end
200
+
201
+ if attributes.key?(:'cantidad_item')
202
+ self.cantidad_item = attributes[:'cantidad_item']
203
+ else
204
+ self.cantidad_item = nil
205
+ end
206
+
207
+ if attributes.key?(:'unidad_medida')
208
+ self.unidad_medida = attributes[:'unidad_medida']
209
+ end
210
+
211
+ if attributes.key?(:'fecha_elaboracion')
212
+ self.fecha_elaboracion = attributes[:'fecha_elaboracion']
213
+ end
214
+
215
+ if attributes.key?(:'fecha_vencimiento_item')
216
+ self.fecha_vencimiento_item = attributes[:'fecha_vencimiento_item']
217
+ end
218
+
219
+ if attributes.key?(:'precio_unitario_item')
220
+ self.precio_unitario_item = attributes[:'precio_unitario_item']
221
+ else
222
+ self.precio_unitario_item = nil
223
+ end
224
+
225
+ if attributes.key?(:'descuento_monto')
226
+ self.descuento_monto = attributes[:'descuento_monto']
227
+ end
228
+
229
+ if attributes.key?(:'tabla_sub_descuento')
230
+ if (value = attributes[:'tabla_sub_descuento']).is_a?(Array)
231
+ self.tabla_sub_descuento = value
232
+ end
233
+ end
234
+
235
+ if attributes.key?(:'recargo_monto')
236
+ self.recargo_monto = attributes[:'recargo_monto']
237
+ end
238
+
239
+ if attributes.key?(:'tabla_sub_recargo')
240
+ if (value = attributes[:'tabla_sub_recargo']).is_a?(Array)
241
+ self.tabla_sub_recargo = value
242
+ end
243
+ end
244
+
245
+ if attributes.key?(:'tabla_impuesto_adicional')
246
+ if (value = attributes[:'tabla_impuesto_adicional']).is_a?(Array)
247
+ self.tabla_impuesto_adicional = value
248
+ end
249
+ end
250
+
251
+ if attributes.key?(:'otra_moneda_detalle')
252
+ self.otra_moneda_detalle = attributes[:'otra_moneda_detalle']
253
+ end
254
+
255
+ if attributes.key?(:'monto_item')
256
+ self.monto_item = attributes[:'monto_item']
257
+ else
258
+ self.monto_item = nil
259
+ end
260
+ end
261
+
262
+ # Show invalid properties with the reasons. Usually used together with valid?
263
+ # @return Array for valid properties with the reasons
264
+ def list_invalid_properties
265
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
266
+ invalid_properties = Array.new
267
+ if @numero_linea.nil?
268
+ invalid_properties.push('invalid value for "numero_linea", numero_linea cannot be nil.')
269
+ end
270
+
271
+ if @indicador_facturacion.nil?
272
+ invalid_properties.push('invalid value for "indicador_facturacion", indicador_facturacion cannot be nil.')
273
+ end
274
+
275
+ if @nombre_item.nil?
276
+ invalid_properties.push('invalid value for "nombre_item", nombre_item cannot be nil.')
277
+ end
278
+
279
+ if @indicador_bieno_servicio.nil?
280
+ invalid_properties.push('invalid value for "indicador_bieno_servicio", indicador_bieno_servicio cannot be nil.')
281
+ end
282
+
283
+ if @cantidad_item.nil?
284
+ invalid_properties.push('invalid value for "cantidad_item", cantidad_item cannot be nil.')
285
+ end
286
+
287
+ if @precio_unitario_item.nil?
288
+ invalid_properties.push('invalid value for "precio_unitario_item", precio_unitario_item cannot be nil.')
289
+ end
290
+
291
+ if @monto_item.nil?
292
+ invalid_properties.push('invalid value for "monto_item", monto_item cannot be nil.')
293
+ end
294
+
295
+ invalid_properties
296
+ end
297
+
298
+ # Check to see if the all the properties in the model are valid
299
+ # @return true if the model is valid
300
+ def valid?
301
+ warn '[DEPRECATED] the `valid?` method is obsolete'
302
+ return false if @numero_linea.nil?
303
+ return false if @indicador_facturacion.nil?
304
+ return false if @nombre_item.nil?
305
+ return false if @indicador_bieno_servicio.nil?
306
+ return false if @cantidad_item.nil?
307
+ return false if @precio_unitario_item.nil?
308
+ return false if @monto_item.nil?
309
+ true
310
+ end
311
+
312
+ # Custom attribute writer method with validation
313
+ # @param [Object] numero_linea Value to be assigned
314
+ def numero_linea=(numero_linea)
315
+ if numero_linea.nil?
316
+ fail ArgumentError, 'numero_linea cannot be nil'
317
+ end
318
+
319
+ @numero_linea = numero_linea
320
+ end
321
+
322
+ # Custom attribute writer method with validation
323
+ # @param [Object] indicador_facturacion Value to be assigned
324
+ def indicador_facturacion=(indicador_facturacion)
325
+ if indicador_facturacion.nil?
326
+ fail ArgumentError, 'indicador_facturacion cannot be nil'
327
+ end
328
+
329
+ @indicador_facturacion = indicador_facturacion
330
+ end
331
+
332
+ # Custom attribute writer method with validation
333
+ # @param [Object] nombre_item Value to be assigned
334
+ def nombre_item=(nombre_item)
335
+ if nombre_item.nil?
336
+ fail ArgumentError, 'nombre_item cannot be nil'
337
+ end
338
+
339
+ @nombre_item = nombre_item
340
+ end
341
+
342
+ # Custom attribute writer method with validation
343
+ # @param [Object] indicador_bieno_servicio Value to be assigned
344
+ def indicador_bieno_servicio=(indicador_bieno_servicio)
345
+ if indicador_bieno_servicio.nil?
346
+ fail ArgumentError, 'indicador_bieno_servicio cannot be nil'
347
+ end
348
+
349
+ @indicador_bieno_servicio = indicador_bieno_servicio
350
+ end
351
+
352
+ # Custom attribute writer method with validation
353
+ # @param [Object] cantidad_item Value to be assigned
354
+ def cantidad_item=(cantidad_item)
355
+ if cantidad_item.nil?
356
+ fail ArgumentError, 'cantidad_item cannot be nil'
357
+ end
358
+
359
+ @cantidad_item = cantidad_item
360
+ end
361
+
362
+ # Custom attribute writer method with validation
363
+ # @param [Object] precio_unitario_item Value to be assigned
364
+ def precio_unitario_item=(precio_unitario_item)
365
+ if precio_unitario_item.nil?
366
+ fail ArgumentError, 'precio_unitario_item cannot be nil'
367
+ end
368
+
369
+ @precio_unitario_item = precio_unitario_item
370
+ end
371
+
372
+ # Custom attribute writer method with validation
373
+ # @param [Object] monto_item Value to be assigned
374
+ def monto_item=(monto_item)
375
+ if monto_item.nil?
376
+ fail ArgumentError, 'monto_item cannot be nil'
377
+ end
378
+
379
+ @monto_item = monto_item
380
+ end
381
+
382
+ # Checks equality by comparing each attribute.
383
+ # @param [Object] Object to be compared
384
+ def ==(o)
385
+ return true if self.equal?(o)
386
+ self.class == o.class &&
387
+ numero_linea == o.numero_linea &&
388
+ tabla_codigos_item == o.tabla_codigos_item &&
389
+ indicador_facturacion == o.indicador_facturacion &&
390
+ nombre_item == o.nombre_item &&
391
+ indicador_bieno_servicio == o.indicador_bieno_servicio &&
392
+ descripcion_item == o.descripcion_item &&
393
+ cantidad_item == o.cantidad_item &&
394
+ unidad_medida == o.unidad_medida &&
395
+ fecha_elaboracion == o.fecha_elaboracion &&
396
+ fecha_vencimiento_item == o.fecha_vencimiento_item &&
397
+ precio_unitario_item == o.precio_unitario_item &&
398
+ descuento_monto == o.descuento_monto &&
399
+ tabla_sub_descuento == o.tabla_sub_descuento &&
400
+ recargo_monto == o.recargo_monto &&
401
+ tabla_sub_recargo == o.tabla_sub_recargo &&
402
+ tabla_impuesto_adicional == o.tabla_impuesto_adicional &&
403
+ otra_moneda_detalle == o.otra_moneda_detalle &&
404
+ monto_item == o.monto_item
405
+ end
406
+
407
+ # @see the `==` method
408
+ # @param [Object] Object to be compared
409
+ def eql?(o)
410
+ self == o
411
+ end
412
+
413
+ # Calculates hash code according to all attributes.
414
+ # @return [Integer] Hash code
415
+ def hash
416
+ [numero_linea, tabla_codigos_item, indicador_facturacion, nombre_item, indicador_bieno_servicio, descripcion_item, cantidad_item, unidad_medida, fecha_elaboracion, fecha_vencimiento_item, precio_unitario_item, descuento_monto, tabla_sub_descuento, recargo_monto, tabla_sub_recargo, tabla_impuesto_adicional, otra_moneda_detalle, monto_item].hash
417
+ end
418
+
419
+ # Builds the object from hash
420
+ # @param [Hash] attributes Model attributes in the form of hash
421
+ # @return [Object] Returns the model itself
422
+ def self.build_from_hash(attributes)
423
+ return nil unless attributes.is_a?(Hash)
424
+ attributes = attributes.transform_keys(&:to_sym)
425
+ transformed_hash = {}
426
+ openapi_types.each_pair do |key, type|
427
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
428
+ transformed_hash["#{key}"] = nil
429
+ elsif type =~ /\AArray<(.*)>/i
430
+ # check to ensure the input is an array given that the attribute
431
+ # is documented as an array but the input is not
432
+ if attributes[attribute_map[key]].is_a?(Array)
433
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
434
+ end
435
+ elsif !attributes[attribute_map[key]].nil?
436
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
437
+ end
438
+ end
439
+ new(transformed_hash)
440
+ end
441
+
442
+ # Returns the object in the form of hash
443
+ # @return [Hash] Returns the object in the form of hash
444
+ def to_hash
445
+ hash = {}
446
+ self.class.attribute_map.each_pair do |attr, param|
447
+ value = self.send(attr)
448
+ if value.nil?
449
+ is_nullable = self.class.openapi_nullable.include?(attr)
450
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
451
+ end
452
+
453
+ hash[param] = _to_hash(value)
454
+ end
455
+ hash
456
+ end
457
+
458
+ end
459
+
460
+ end
@@ -0,0 +1,222 @@
1
+ =begin
2
+ #ECF API
3
+
4
+ #ECF API (Electronic Fiscal Receipt).
5
+
6
+ The version of the OpenAPI document: v1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module EcfDgii::Generated
17
+ class Ecf44OtraMoneda < ApiModelBase
18
+ attr_accessor :tipo_moneda
19
+
20
+ attr_accessor :tipo_cambio
21
+
22
+ attr_accessor :monto_exento_otra_moneda
23
+
24
+ attr_accessor :monto_impuesto_adicional_otra_moneda
25
+
26
+ attr_accessor :impuestos_adicionales_otra_moneda
27
+
28
+ attr_accessor :monto_total_otra_moneda
29
+
30
+ class EnumAttributeValidator
31
+ attr_reader :datatype
32
+ attr_reader :allowable_values
33
+
34
+ def initialize(datatype, allowable_values)
35
+ @allowable_values = allowable_values.map do |value|
36
+ case datatype.to_s
37
+ when /Integer/i
38
+ value.to_i
39
+ when /Float/i
40
+ value.to_f
41
+ else
42
+ value
43
+ end
44
+ end
45
+ end
46
+
47
+ def valid?(value)
48
+ !value || allowable_values.include?(value)
49
+ end
50
+ end
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'tipo_moneda' => :'tipoMoneda',
56
+ :'tipo_cambio' => :'tipoCambio',
57
+ :'monto_exento_otra_moneda' => :'montoExentoOtraMoneda',
58
+ :'monto_impuesto_adicional_otra_moneda' => :'montoImpuestoAdicionalOtraMoneda',
59
+ :'impuestos_adicionales_otra_moneda' => :'impuestosAdicionalesOtraMoneda',
60
+ :'monto_total_otra_moneda' => :'montoTotalOtraMoneda'
61
+ }
62
+ end
63
+
64
+ # Returns attribute mapping this model knows about
65
+ def self.acceptable_attribute_map
66
+ attribute_map
67
+ end
68
+
69
+ # Returns all the JSON keys this model knows about
70
+ def self.acceptable_attributes
71
+ acceptable_attribute_map.values
72
+ end
73
+
74
+ # Attribute type mapping.
75
+ def self.openapi_types
76
+ {
77
+ :'tipo_moneda' => :'TipoMonedaType',
78
+ :'tipo_cambio' => :'Ecf31OtraMonedaTipoCambio',
79
+ :'monto_exento_otra_moneda' => :'Ecf31DescuentoORecargoMontoDescuentooRecargo',
80
+ :'monto_impuesto_adicional_otra_moneda' => :'Ecf31ImpuestoAdicional2MontoImpuestoSelectivoConsumoEspecifico',
81
+ :'impuestos_adicionales_otra_moneda' => :'Array<Ecf44ImpuestoAdicionalOtraMoneda>',
82
+ :'monto_total_otra_moneda' => :'Ecf31DescuentoORecargoMontoDescuentooRecargo'
83
+ }
84
+ end
85
+
86
+ # List of attributes with nullable: true
87
+ def self.openapi_nullable
88
+ Set.new([
89
+ :'tipo_moneda',
90
+ :'tipo_cambio',
91
+ :'monto_exento_otra_moneda',
92
+ :'monto_impuesto_adicional_otra_moneda',
93
+ :'impuestos_adicionales_otra_moneda',
94
+ :'monto_total_otra_moneda'
95
+ ])
96
+ end
97
+
98
+ # Initializes the object
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ def initialize(attributes = {})
101
+ if (!attributes.is_a?(Hash))
102
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EcfDgii::Generated::Ecf44OtraMoneda` initialize method"
103
+ end
104
+
105
+ # check to see if the attribute exists and convert string to symbol for hash key
106
+ acceptable_attribute_map = self.class.acceptable_attribute_map
107
+ attributes = attributes.each_with_object({}) { |(k, v), h|
108
+ if (!acceptable_attribute_map.key?(k.to_sym))
109
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EcfDgii::Generated::Ecf44OtraMoneda`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
110
+ end
111
+ h[k.to_sym] = v
112
+ }
113
+
114
+ if attributes.key?(:'tipo_moneda')
115
+ self.tipo_moneda = attributes[:'tipo_moneda']
116
+ end
117
+
118
+ if attributes.key?(:'tipo_cambio')
119
+ self.tipo_cambio = attributes[:'tipo_cambio']
120
+ end
121
+
122
+ if attributes.key?(:'monto_exento_otra_moneda')
123
+ self.monto_exento_otra_moneda = attributes[:'monto_exento_otra_moneda']
124
+ end
125
+
126
+ if attributes.key?(:'monto_impuesto_adicional_otra_moneda')
127
+ self.monto_impuesto_adicional_otra_moneda = attributes[:'monto_impuesto_adicional_otra_moneda']
128
+ end
129
+
130
+ if attributes.key?(:'impuestos_adicionales_otra_moneda')
131
+ if (value = attributes[:'impuestos_adicionales_otra_moneda']).is_a?(Array)
132
+ self.impuestos_adicionales_otra_moneda = value
133
+ end
134
+ end
135
+
136
+ if attributes.key?(:'monto_total_otra_moneda')
137
+ self.monto_total_otra_moneda = attributes[:'monto_total_otra_moneda']
138
+ end
139
+ end
140
+
141
+ # Show invalid properties with the reasons. Usually used together with valid?
142
+ # @return Array for valid properties with the reasons
143
+ def list_invalid_properties
144
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
145
+ invalid_properties = Array.new
146
+ invalid_properties
147
+ end
148
+
149
+ # Check to see if the all the properties in the model are valid
150
+ # @return true if the model is valid
151
+ def valid?
152
+ warn '[DEPRECATED] the `valid?` method is obsolete'
153
+ true
154
+ end
155
+
156
+ # Checks equality by comparing each attribute.
157
+ # @param [Object] Object to be compared
158
+ def ==(o)
159
+ return true if self.equal?(o)
160
+ self.class == o.class &&
161
+ tipo_moneda == o.tipo_moneda &&
162
+ tipo_cambio == o.tipo_cambio &&
163
+ monto_exento_otra_moneda == o.monto_exento_otra_moneda &&
164
+ monto_impuesto_adicional_otra_moneda == o.monto_impuesto_adicional_otra_moneda &&
165
+ impuestos_adicionales_otra_moneda == o.impuestos_adicionales_otra_moneda &&
166
+ monto_total_otra_moneda == o.monto_total_otra_moneda
167
+ end
168
+
169
+ # @see the `==` method
170
+ # @param [Object] Object to be compared
171
+ def eql?(o)
172
+ self == o
173
+ end
174
+
175
+ # Calculates hash code according to all attributes.
176
+ # @return [Integer] Hash code
177
+ def hash
178
+ [tipo_moneda, tipo_cambio, monto_exento_otra_moneda, monto_impuesto_adicional_otra_moneda, impuestos_adicionales_otra_moneda, monto_total_otra_moneda].hash
179
+ end
180
+
181
+ # Builds the object from hash
182
+ # @param [Hash] attributes Model attributes in the form of hash
183
+ # @return [Object] Returns the model itself
184
+ def self.build_from_hash(attributes)
185
+ return nil unless attributes.is_a?(Hash)
186
+ attributes = attributes.transform_keys(&:to_sym)
187
+ transformed_hash = {}
188
+ openapi_types.each_pair do |key, type|
189
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
190
+ transformed_hash["#{key}"] = nil
191
+ elsif type =~ /\AArray<(.*)>/i
192
+ # check to ensure the input is an array given that the attribute
193
+ # is documented as an array but the input is not
194
+ if attributes[attribute_map[key]].is_a?(Array)
195
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
196
+ end
197
+ elsif !attributes[attribute_map[key]].nil?
198
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
199
+ end
200
+ end
201
+ new(transformed_hash)
202
+ end
203
+
204
+ # Returns the object in the form of hash
205
+ # @return [Hash] Returns the object in the form of hash
206
+ def to_hash
207
+ hash = {}
208
+ self.class.attribute_map.each_pair do |attr, param|
209
+ value = self.send(attr)
210
+ if value.nil?
211
+ is_nullable = self.class.openapi_nullable.include?(attr)
212
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
213
+ end
214
+
215
+ hash[param] = _to_hash(value)
216
+ end
217
+ hash
218
+ end
219
+
220
+ end
221
+
222
+ end