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