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,376 @@
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 Ecf47Emisor < ApiModelBase
18
+ attr_accessor :rnc_emisor
19
+
20
+ attr_accessor :razon_social_emisor
21
+
22
+ attr_accessor :nombre_comercial
23
+
24
+ attr_accessor :sucursal
25
+
26
+ attr_accessor :direccion_emisor
27
+
28
+ attr_accessor :municipio
29
+
30
+ attr_accessor :provincia
31
+
32
+ attr_accessor :tabla_telefono_emisor
33
+
34
+ attr_accessor :correo_emisor
35
+
36
+ attr_accessor :web_site
37
+
38
+ attr_accessor :actividad_economica
39
+
40
+ attr_accessor :numero_factura_interna
41
+
42
+ attr_accessor :numero_pedido_interno
43
+
44
+ attr_accessor :informacion_adicional_emisor
45
+
46
+ attr_accessor :fecha_emision
47
+
48
+ class EnumAttributeValidator
49
+ attr_reader :datatype
50
+ attr_reader :allowable_values
51
+
52
+ def initialize(datatype, allowable_values)
53
+ @allowable_values = allowable_values.map do |value|
54
+ case datatype.to_s
55
+ when /Integer/i
56
+ value.to_i
57
+ when /Float/i
58
+ value.to_f
59
+ else
60
+ value
61
+ end
62
+ end
63
+ end
64
+
65
+ def valid?(value)
66
+ !value || allowable_values.include?(value)
67
+ end
68
+ end
69
+
70
+ # Attribute mapping from ruby-style variable name to JSON key.
71
+ def self.attribute_map
72
+ {
73
+ :'rnc_emisor' => :'rncEmisor',
74
+ :'razon_social_emisor' => :'razonSocialEmisor',
75
+ :'nombre_comercial' => :'nombreComercial',
76
+ :'sucursal' => :'sucursal',
77
+ :'direccion_emisor' => :'direccionEmisor',
78
+ :'municipio' => :'municipio',
79
+ :'provincia' => :'provincia',
80
+ :'tabla_telefono_emisor' => :'tablaTelefonoEmisor',
81
+ :'correo_emisor' => :'correoEmisor',
82
+ :'web_site' => :'webSite',
83
+ :'actividad_economica' => :'actividadEconomica',
84
+ :'numero_factura_interna' => :'numeroFacturaInterna',
85
+ :'numero_pedido_interno' => :'numeroPedidoInterno',
86
+ :'informacion_adicional_emisor' => :'informacionAdicionalEmisor',
87
+ :'fecha_emision' => :'fechaEmision'
88
+ }
89
+ end
90
+
91
+ # Returns attribute mapping this model knows about
92
+ def self.acceptable_attribute_map
93
+ attribute_map
94
+ end
95
+
96
+ # Returns all the JSON keys this model knows about
97
+ def self.acceptable_attributes
98
+ acceptable_attribute_map.values
99
+ end
100
+
101
+ # Attribute type mapping.
102
+ def self.openapi_types
103
+ {
104
+ :'rnc_emisor' => :'String',
105
+ :'razon_social_emisor' => :'String',
106
+ :'nombre_comercial' => :'String',
107
+ :'sucursal' => :'String',
108
+ :'direccion_emisor' => :'String',
109
+ :'municipio' => :'ProvinciaMunicipioType',
110
+ :'provincia' => :'ProvinciaMunicipioType',
111
+ :'tabla_telefono_emisor' => :'Array<String>',
112
+ :'correo_emisor' => :'String',
113
+ :'web_site' => :'String',
114
+ :'actividad_economica' => :'String',
115
+ :'numero_factura_interna' => :'String',
116
+ :'numero_pedido_interno' => :'String',
117
+ :'informacion_adicional_emisor' => :'String',
118
+ :'fecha_emision' => :'Date'
119
+ }
120
+ end
121
+
122
+ # List of attributes with nullable: true
123
+ def self.openapi_nullable
124
+ Set.new([
125
+ :'nombre_comercial',
126
+ :'sucursal',
127
+ :'municipio',
128
+ :'provincia',
129
+ :'tabla_telefono_emisor',
130
+ :'correo_emisor',
131
+ :'web_site',
132
+ :'actividad_economica',
133
+ :'numero_factura_interna',
134
+ :'numero_pedido_interno',
135
+ :'informacion_adicional_emisor',
136
+ ])
137
+ end
138
+
139
+ # Initializes the object
140
+ # @param [Hash] attributes Model attributes in the form of hash
141
+ def initialize(attributes = {})
142
+ if (!attributes.is_a?(Hash))
143
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EcfDgii::Generated::Ecf47Emisor` initialize method"
144
+ end
145
+
146
+ # check to see if the attribute exists and convert string to symbol for hash key
147
+ acceptable_attribute_map = self.class.acceptable_attribute_map
148
+ attributes = attributes.each_with_object({}) { |(k, v), h|
149
+ if (!acceptable_attribute_map.key?(k.to_sym))
150
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EcfDgii::Generated::Ecf47Emisor`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
151
+ end
152
+ h[k.to_sym] = v
153
+ }
154
+
155
+ if attributes.key?(:'rnc_emisor')
156
+ self.rnc_emisor = attributes[:'rnc_emisor']
157
+ else
158
+ self.rnc_emisor = nil
159
+ end
160
+
161
+ if attributes.key?(:'razon_social_emisor')
162
+ self.razon_social_emisor = attributes[:'razon_social_emisor']
163
+ else
164
+ self.razon_social_emisor = nil
165
+ end
166
+
167
+ if attributes.key?(:'nombre_comercial')
168
+ self.nombre_comercial = attributes[:'nombre_comercial']
169
+ end
170
+
171
+ if attributes.key?(:'sucursal')
172
+ self.sucursal = attributes[:'sucursal']
173
+ end
174
+
175
+ if attributes.key?(:'direccion_emisor')
176
+ self.direccion_emisor = attributes[:'direccion_emisor']
177
+ else
178
+ self.direccion_emisor = nil
179
+ end
180
+
181
+ if attributes.key?(:'municipio')
182
+ self.municipio = attributes[:'municipio']
183
+ end
184
+
185
+ if attributes.key?(:'provincia')
186
+ self.provincia = attributes[:'provincia']
187
+ end
188
+
189
+ if attributes.key?(:'tabla_telefono_emisor')
190
+ if (value = attributes[:'tabla_telefono_emisor']).is_a?(Array)
191
+ self.tabla_telefono_emisor = value
192
+ end
193
+ end
194
+
195
+ if attributes.key?(:'correo_emisor')
196
+ self.correo_emisor = attributes[:'correo_emisor']
197
+ end
198
+
199
+ if attributes.key?(:'web_site')
200
+ self.web_site = attributes[:'web_site']
201
+ end
202
+
203
+ if attributes.key?(:'actividad_economica')
204
+ self.actividad_economica = attributes[:'actividad_economica']
205
+ end
206
+
207
+ if attributes.key?(:'numero_factura_interna')
208
+ self.numero_factura_interna = attributes[:'numero_factura_interna']
209
+ end
210
+
211
+ if attributes.key?(:'numero_pedido_interno')
212
+ self.numero_pedido_interno = attributes[:'numero_pedido_interno']
213
+ end
214
+
215
+ if attributes.key?(:'informacion_adicional_emisor')
216
+ self.informacion_adicional_emisor = attributes[:'informacion_adicional_emisor']
217
+ end
218
+
219
+ if attributes.key?(:'fecha_emision')
220
+ self.fecha_emision = attributes[:'fecha_emision']
221
+ end
222
+ end
223
+
224
+ # Show invalid properties with the reasons. Usually used together with valid?
225
+ # @return Array for valid properties with the reasons
226
+ def list_invalid_properties
227
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
228
+ invalid_properties = Array.new
229
+ if @rnc_emisor.nil?
230
+ invalid_properties.push('invalid value for "rnc_emisor", rnc_emisor cannot be nil.')
231
+ end
232
+
233
+ if @razon_social_emisor.nil?
234
+ invalid_properties.push('invalid value for "razon_social_emisor", razon_social_emisor cannot be nil.')
235
+ end
236
+
237
+ if @direccion_emisor.nil?
238
+ invalid_properties.push('invalid value for "direccion_emisor", direccion_emisor cannot be nil.')
239
+ end
240
+
241
+ pattern = Regexp.new(/^[0-9]{1,20}$/)
242
+ if !@numero_pedido_interno.nil? && @numero_pedido_interno !~ pattern
243
+ invalid_properties.push("invalid value for \"numero_pedido_interno\", must conform to the pattern #{pattern}.")
244
+ end
245
+
246
+ invalid_properties
247
+ end
248
+
249
+ # Check to see if the all the properties in the model are valid
250
+ # @return true if the model is valid
251
+ def valid?
252
+ warn '[DEPRECATED] the `valid?` method is obsolete'
253
+ return false if @rnc_emisor.nil?
254
+ return false if @razon_social_emisor.nil?
255
+ return false if @direccion_emisor.nil?
256
+ return false if !@numero_pedido_interno.nil? && @numero_pedido_interno !~ Regexp.new(/^[0-9]{1,20}$/)
257
+ true
258
+ end
259
+
260
+ # Custom attribute writer method with validation
261
+ # @param [Object] rnc_emisor Value to be assigned
262
+ def rnc_emisor=(rnc_emisor)
263
+ if rnc_emisor.nil?
264
+ fail ArgumentError, 'rnc_emisor cannot be nil'
265
+ end
266
+
267
+ @rnc_emisor = rnc_emisor
268
+ end
269
+
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] razon_social_emisor Value to be assigned
272
+ def razon_social_emisor=(razon_social_emisor)
273
+ if razon_social_emisor.nil?
274
+ fail ArgumentError, 'razon_social_emisor cannot be nil'
275
+ end
276
+
277
+ @razon_social_emisor = razon_social_emisor
278
+ end
279
+
280
+ # Custom attribute writer method with validation
281
+ # @param [Object] direccion_emisor Value to be assigned
282
+ def direccion_emisor=(direccion_emisor)
283
+ if direccion_emisor.nil?
284
+ fail ArgumentError, 'direccion_emisor cannot be nil'
285
+ end
286
+
287
+ @direccion_emisor = direccion_emisor
288
+ end
289
+
290
+ # Custom attribute writer method with validation
291
+ # @param [Object] numero_pedido_interno Value to be assigned
292
+ def numero_pedido_interno=(numero_pedido_interno)
293
+ pattern = Regexp.new(/^[0-9]{1,20}$/)
294
+ if !numero_pedido_interno.nil? && numero_pedido_interno !~ pattern
295
+ fail ArgumentError, "invalid value for \"numero_pedido_interno\", must conform to the pattern #{pattern}."
296
+ end
297
+
298
+ @numero_pedido_interno = numero_pedido_interno
299
+ end
300
+
301
+ # Checks equality by comparing each attribute.
302
+ # @param [Object] Object to be compared
303
+ def ==(o)
304
+ return true if self.equal?(o)
305
+ self.class == o.class &&
306
+ rnc_emisor == o.rnc_emisor &&
307
+ razon_social_emisor == o.razon_social_emisor &&
308
+ nombre_comercial == o.nombre_comercial &&
309
+ sucursal == o.sucursal &&
310
+ direccion_emisor == o.direccion_emisor &&
311
+ municipio == o.municipio &&
312
+ provincia == o.provincia &&
313
+ tabla_telefono_emisor == o.tabla_telefono_emisor &&
314
+ correo_emisor == o.correo_emisor &&
315
+ web_site == o.web_site &&
316
+ actividad_economica == o.actividad_economica &&
317
+ numero_factura_interna == o.numero_factura_interna &&
318
+ numero_pedido_interno == o.numero_pedido_interno &&
319
+ informacion_adicional_emisor == o.informacion_adicional_emisor &&
320
+ fecha_emision == o.fecha_emision
321
+ end
322
+
323
+ # @see the `==` method
324
+ # @param [Object] Object to be compared
325
+ def eql?(o)
326
+ self == o
327
+ end
328
+
329
+ # Calculates hash code according to all attributes.
330
+ # @return [Integer] Hash code
331
+ def hash
332
+ [rnc_emisor, razon_social_emisor, nombre_comercial, sucursal, direccion_emisor, municipio, provincia, tabla_telefono_emisor, correo_emisor, web_site, actividad_economica, numero_factura_interna, numero_pedido_interno, informacion_adicional_emisor, fecha_emision].hash
333
+ end
334
+
335
+ # Builds the object from hash
336
+ # @param [Hash] attributes Model attributes in the form of hash
337
+ # @return [Object] Returns the model itself
338
+ def self.build_from_hash(attributes)
339
+ return nil unless attributes.is_a?(Hash)
340
+ attributes = attributes.transform_keys(&:to_sym)
341
+ transformed_hash = {}
342
+ openapi_types.each_pair do |key, type|
343
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
344
+ transformed_hash["#{key}"] = nil
345
+ elsif type =~ /\AArray<(.*)>/i
346
+ # check to ensure the input is an array given that the attribute
347
+ # is documented as an array but the input is not
348
+ if attributes[attribute_map[key]].is_a?(Array)
349
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
350
+ end
351
+ elsif !attributes[attribute_map[key]].nil?
352
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
353
+ end
354
+ end
355
+ new(transformed_hash)
356
+ end
357
+
358
+ # Returns the object in the form of hash
359
+ # @return [Hash] Returns the object in the form of hash
360
+ def to_hash
361
+ hash = {}
362
+ self.class.attribute_map.each_pair do |attr, param|
363
+ value = self.send(attr)
364
+ if value.nil?
365
+ is_nullable = self.class.openapi_nullable.include?(attr)
366
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
367
+ end
368
+
369
+ hash[param] = _to_hash(value)
370
+ end
371
+ hash
372
+ end
373
+
374
+ end
375
+
376
+ end
@@ -0,0 +1,294 @@
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 Ecf47Encabezado < ApiModelBase
18
+ attr_accessor :version
19
+
20
+ attr_accessor :id_doc
21
+
22
+ attr_accessor :emisor
23
+
24
+ attr_accessor :comprador
25
+
26
+ attr_accessor :transporte
27
+
28
+ attr_accessor :totales
29
+
30
+ attr_accessor :otra_moneda
31
+
32
+ class EnumAttributeValidator
33
+ attr_reader :datatype
34
+ attr_reader :allowable_values
35
+
36
+ def initialize(datatype, allowable_values)
37
+ @allowable_values = allowable_values.map do |value|
38
+ case datatype.to_s
39
+ when /Integer/i
40
+ value.to_i
41
+ when /Float/i
42
+ value.to_f
43
+ else
44
+ value
45
+ end
46
+ end
47
+ end
48
+
49
+ def valid?(value)
50
+ !value || allowable_values.include?(value)
51
+ end
52
+ end
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+ :'version' => :'version',
58
+ :'id_doc' => :'idDoc',
59
+ :'emisor' => :'emisor',
60
+ :'comprador' => :'comprador',
61
+ :'transporte' => :'transporte',
62
+ :'totales' => :'totales',
63
+ :'otra_moneda' => :'otraMoneda'
64
+ }
65
+ end
66
+
67
+ # Returns attribute mapping this model knows about
68
+ def self.acceptable_attribute_map
69
+ attribute_map
70
+ end
71
+
72
+ # Returns all the JSON keys this model knows about
73
+ def self.acceptable_attributes
74
+ acceptable_attribute_map.values
75
+ end
76
+
77
+ # Attribute type mapping.
78
+ def self.openapi_types
79
+ {
80
+ :'version' => :'Ecf47VersionType',
81
+ :'id_doc' => :'Ecf47IdDoc',
82
+ :'emisor' => :'Ecf47Emisor',
83
+ :'comprador' => :'Ecf47Comprador',
84
+ :'transporte' => :'Ecf47Transporte',
85
+ :'totales' => :'Ecf47Totales',
86
+ :'otra_moneda' => :'Ecf47OtraMoneda'
87
+ }
88
+ end
89
+
90
+ # List of attributes with nullable: true
91
+ def self.openapi_nullable
92
+ Set.new([
93
+ :'comprador',
94
+ :'transporte',
95
+ :'otra_moneda'
96
+ ])
97
+ end
98
+
99
+ # Initializes the object
100
+ # @param [Hash] attributes Model attributes in the form of hash
101
+ def initialize(attributes = {})
102
+ if (!attributes.is_a?(Hash))
103
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EcfDgii::Generated::Ecf47Encabezado` initialize method"
104
+ end
105
+
106
+ # check to see if the attribute exists and convert string to symbol for hash key
107
+ acceptable_attribute_map = self.class.acceptable_attribute_map
108
+ attributes = attributes.each_with_object({}) { |(k, v), h|
109
+ if (!acceptable_attribute_map.key?(k.to_sym))
110
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EcfDgii::Generated::Ecf47Encabezado`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
111
+ end
112
+ h[k.to_sym] = v
113
+ }
114
+
115
+ if attributes.key?(:'version')
116
+ self.version = attributes[:'version']
117
+ else
118
+ self.version = nil
119
+ end
120
+
121
+ if attributes.key?(:'id_doc')
122
+ self.id_doc = attributes[:'id_doc']
123
+ else
124
+ self.id_doc = nil
125
+ end
126
+
127
+ if attributes.key?(:'emisor')
128
+ self.emisor = attributes[:'emisor']
129
+ else
130
+ self.emisor = nil
131
+ end
132
+
133
+ if attributes.key?(:'comprador')
134
+ self.comprador = attributes[:'comprador']
135
+ end
136
+
137
+ if attributes.key?(:'transporte')
138
+ self.transporte = attributes[:'transporte']
139
+ end
140
+
141
+ if attributes.key?(:'totales')
142
+ self.totales = attributes[:'totales']
143
+ else
144
+ self.totales = nil
145
+ end
146
+
147
+ if attributes.key?(:'otra_moneda')
148
+ self.otra_moneda = attributes[:'otra_moneda']
149
+ end
150
+ end
151
+
152
+ # Show invalid properties with the reasons. Usually used together with valid?
153
+ # @return Array for valid properties with the reasons
154
+ def list_invalid_properties
155
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
156
+ invalid_properties = Array.new
157
+ if @version.nil?
158
+ invalid_properties.push('invalid value for "version", version cannot be nil.')
159
+ end
160
+
161
+ if @id_doc.nil?
162
+ invalid_properties.push('invalid value for "id_doc", id_doc cannot be nil.')
163
+ end
164
+
165
+ if @emisor.nil?
166
+ invalid_properties.push('invalid value for "emisor", emisor cannot be nil.')
167
+ end
168
+
169
+ if @totales.nil?
170
+ invalid_properties.push('invalid value for "totales", totales cannot be nil.')
171
+ end
172
+
173
+ invalid_properties
174
+ end
175
+
176
+ # Check to see if the all the properties in the model are valid
177
+ # @return true if the model is valid
178
+ def valid?
179
+ warn '[DEPRECATED] the `valid?` method is obsolete'
180
+ return false if @version.nil?
181
+ return false if @id_doc.nil?
182
+ return false if @emisor.nil?
183
+ return false if @totales.nil?
184
+ true
185
+ end
186
+
187
+ # Custom attribute writer method with validation
188
+ # @param [Object] version Value to be assigned
189
+ def version=(version)
190
+ if version.nil?
191
+ fail ArgumentError, 'version cannot be nil'
192
+ end
193
+
194
+ @version = version
195
+ end
196
+
197
+ # Custom attribute writer method with validation
198
+ # @param [Object] id_doc Value to be assigned
199
+ def id_doc=(id_doc)
200
+ if id_doc.nil?
201
+ fail ArgumentError, 'id_doc cannot be nil'
202
+ end
203
+
204
+ @id_doc = id_doc
205
+ end
206
+
207
+ # Custom attribute writer method with validation
208
+ # @param [Object] emisor Value to be assigned
209
+ def emisor=(emisor)
210
+ if emisor.nil?
211
+ fail ArgumentError, 'emisor cannot be nil'
212
+ end
213
+
214
+ @emisor = emisor
215
+ end
216
+
217
+ # Custom attribute writer method with validation
218
+ # @param [Object] totales Value to be assigned
219
+ def totales=(totales)
220
+ if totales.nil?
221
+ fail ArgumentError, 'totales cannot be nil'
222
+ end
223
+
224
+ @totales = totales
225
+ end
226
+
227
+ # Checks equality by comparing each attribute.
228
+ # @param [Object] Object to be compared
229
+ def ==(o)
230
+ return true if self.equal?(o)
231
+ self.class == o.class &&
232
+ version == o.version &&
233
+ id_doc == o.id_doc &&
234
+ emisor == o.emisor &&
235
+ comprador == o.comprador &&
236
+ transporte == o.transporte &&
237
+ totales == o.totales &&
238
+ otra_moneda == o.otra_moneda
239
+ end
240
+
241
+ # @see the `==` method
242
+ # @param [Object] Object to be compared
243
+ def eql?(o)
244
+ self == o
245
+ end
246
+
247
+ # Calculates hash code according to all attributes.
248
+ # @return [Integer] Hash code
249
+ def hash
250
+ [version, id_doc, emisor, comprador, transporte, totales, otra_moneda].hash
251
+ end
252
+
253
+ # Builds the object from hash
254
+ # @param [Hash] attributes Model attributes in the form of hash
255
+ # @return [Object] Returns the model itself
256
+ def self.build_from_hash(attributes)
257
+ return nil unless attributes.is_a?(Hash)
258
+ attributes = attributes.transform_keys(&:to_sym)
259
+ transformed_hash = {}
260
+ openapi_types.each_pair do |key, type|
261
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
262
+ transformed_hash["#{key}"] = nil
263
+ elsif type =~ /\AArray<(.*)>/i
264
+ # check to ensure the input is an array given that the attribute
265
+ # is documented as an array but the input is not
266
+ if attributes[attribute_map[key]].is_a?(Array)
267
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
268
+ end
269
+ elsif !attributes[attribute_map[key]].nil?
270
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
271
+ end
272
+ end
273
+ new(transformed_hash)
274
+ end
275
+
276
+ # Returns the object in the form of hash
277
+ # @return [Hash] Returns the object in the form of hash
278
+ def to_hash
279
+ hash = {}
280
+ self.class.attribute_map.each_pair do |attr, param|
281
+ value = self.send(attr)
282
+ if value.nil?
283
+ is_nullable = self.class.openapi_nullable.include?(attr)
284
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
285
+ end
286
+
287
+ hash[param] = _to_hash(value)
288
+ end
289
+ hash
290
+ end
291
+
292
+ end
293
+
294
+ end