br_nfe 1.1.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +5 -0
- data/.travis.yml +8 -0
- data/Gemfile +16 -0
- data/Gemfile.lock +27 -3
- data/LICENSE +1 -1
- data/README.markdown +10 -12
- data/Rakefile +13 -0
- data/br_nfe.gemspec +18 -21
- data/lib/br_nfe/active_model_base.rb +7 -1
- data/lib/br_nfe/base.rb +175 -37
- data/lib/br_nfe/endereco.rb +7 -1
- data/lib/br_nfe/helper/have_rps.rb +1 -1
- data/lib/br_nfe/helper/values_ts/service_v1.rb +313 -0
- data/lib/br_nfe/response/service/build_response.rb +286 -0
- data/lib/br_nfe/response/service/default.rb +185 -0
- data/lib/br_nfe/{servico/response → response/service}/nota_fiscal.rb +11 -10
- data/lib/br_nfe/response/service/paths/base.rb +93 -0
- data/lib/br_nfe/response/service/paths/v1/servico_cancelar_nfse_resposta.rb +22 -0
- data/lib/br_nfe/response/service/paths/v1/servico_consultar_lote_rps_resposta.rb +25 -0
- data/lib/br_nfe/response/service/paths/v1/servico_consultar_nfse_resposta.rb +25 -0
- data/lib/br_nfe/response/service/paths/v1/servico_consultar_nfse_rps_resposta.rb +25 -0
- data/lib/br_nfe/response/service/paths/v1/servico_consultar_situacao_lote_rps_resposta.rb +31 -0
- data/lib/br_nfe/response/service/paths/v1/servico_enviar_lote_rps_resposta.rb +36 -0
- data/lib/br_nfe/response/service/paths/v1/tc_nfse.rb +127 -0
- data/lib/br_nfe/service/base.rb +59 -0
- data/lib/br_nfe/service/betha/base.rb +8 -0
- data/lib/br_nfe/service/betha/v1/cancelamento_nfs.rb +39 -0
- data/lib/br_nfe/service/betha/v1/consulta_lote_rps.rb +34 -0
- data/lib/br_nfe/service/betha/v1/consulta_nfs_por_rps.rb +32 -0
- data/lib/br_nfe/service/betha/v1/consulta_nfse.rb +32 -0
- data/lib/br_nfe/service/betha/v1/consulta_situacao_lote_rps.rb +30 -0
- data/lib/br_nfe/service/betha/v1/gateway.rb +21 -0
- data/lib/br_nfe/service/betha/v1/recepcao_lote_rps.rb +37 -0
- data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_lote_rps_resposta.rb +19 -0
- data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_resposta.rb +17 -0
- data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_rps_resposta.rb +17 -0
- data/lib/br_nfe/service/concerns/rules/cancelamento_nfs.rb +20 -0
- data/lib/br_nfe/service/concerns/rules/consulta_nfs_por_rps.rb +18 -0
- data/lib/br_nfe/service/concerns/rules/consulta_nfse.rb +29 -0
- data/lib/br_nfe/service/concerns/rules/recepcao_lote_rps.rb +50 -0
- data/lib/br_nfe/{servico → service}/intermediario.rb +1 -1
- data/lib/br_nfe/service/item.rb +70 -0
- data/lib/br_nfe/service/rps.rb +231 -0
- data/lib/br_nfe/service/sc/florianopolis/base.rb +25 -0
- data/lib/br_nfe/service/sc/florianopolis/cancellation.rb +30 -0
- data/lib/br_nfe/service/sc/florianopolis/emission_rps.rb +19 -0
- data/lib/br_nfe/service/sc/florianopolis/xml/_address.xml.slim +21 -0
- data/lib/br_nfe/service/sc/florianopolis/xml/_contact.xml.slim +3 -0
- data/lib/br_nfe/service/sc/florianopolis/xml/_service_item.xml.slim +9 -0
- data/lib/br_nfe/service/sc/florianopolis/xml/cancellation.xml.slim +6 -0
- data/lib/br_nfe/service/sc/florianopolis/xml/inf_requisicao.xml.slim +55 -0
- data/lib/br_nfe/service/sc/gaspar/cancela_nfse.rb +13 -0
- data/lib/br_nfe/service/sc/gaspar/consulta_lote_rps.rb +13 -0
- data/lib/br_nfe/service/sc/gaspar/consulta_nfs_por_rps.rb +13 -0
- data/lib/br_nfe/service/sc/gaspar/consulta_nfse.rb +17 -0
- data/lib/br_nfe/service/sc/gaspar/consulta_situacao_lote_rps.rb +13 -0
- data/lib/br_nfe/service/sc/gaspar/recepcao_lote_rps.rb +13 -0
- data/lib/br_nfe/service/sc/gaspar/recepcao_lote_rps_limitado.rb +13 -0
- data/lib/br_nfe/service/thema/v1/base.rb +55 -0
- data/lib/br_nfe/service/thema/v1/cancela_nfse.rb +48 -0
- data/lib/br_nfe/service/thema/v1/consulta_lote_rps.rb +49 -0
- data/lib/br_nfe/service/thema/v1/consulta_nfs_por_rps.rb +48 -0
- data/lib/br_nfe/service/thema/v1/consulta_nfse.rb +47 -0
- data/lib/br_nfe/service/thema/v1/consulta_situacao_lote_rps.rb +46 -0
- data/lib/br_nfe/service/thema/v1/recepcao_lote_rps.rb +51 -0
- data/lib/br_nfe/service/thema/v1/recepcao_lote_rps_limitado.rb +30 -0
- data/lib/br_nfe/service/xml/v1/_tc_contato.xml.slim +7 -0
- data/lib/br_nfe/service/xml/v1/_tc_cpf_cnpj.xml.slim +5 -0
- data/lib/br_nfe/service/xml/v1/_tc_dados_construcao_civil.xml.slim +2 -0
- data/lib/br_nfe/service/xml/v1/_tc_dados_prestador.xml.slim +15 -0
- data/lib/br_nfe/service/xml/v1/_tc_dados_servico.xml.slim +14 -0
- data/lib/br_nfe/service/xml/v1/_tc_dados_tomador.xml.slim +15 -0
- data/lib/br_nfe/service/xml/v1/_tc_endereco.xml.slim +13 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_intermediario_servico.xml.slim +7 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_nfse.xml.slim +7 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_orgao_gerador.xml.slim +8 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_prestador.xml.slim +3 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_rps.xml.slim +16 -0
- data/lib/br_nfe/service/xml/v1/_tc_identificacao_tomador.xml.slim +4 -0
- data/lib/br_nfe/service/xml/v1/_tc_inf_pedido_cancelamento.xml.slim +4 -0
- data/lib/br_nfe/service/xml/v1/_tc_inf_rps.xml.slim +47 -0
- data/lib/br_nfe/service/xml/v1/_tc_lote_rps.xml.slim +9 -0
- data/lib/br_nfe/service/xml/v1/_tc_pedido_cancelamento.xml.slim +4 -0
- data/lib/br_nfe/service/xml/v1/_tc_rps.xml.slim +8 -0
- data/lib/br_nfe/service/xml/v1/_tc_valores.xml.slim +48 -0
- data/lib/br_nfe/service/xml/v1/servico_cancelar_nfse_envio.xml.slim +9 -0
- data/lib/br_nfe/service/xml/v1/servico_consultar_lote_rps_envio.xml.slim +4 -0
- data/lib/br_nfe/service/xml/v1/servico_consultar_nfse_envio.xml.slim +19 -0
- data/lib/br_nfe/service/xml/v1/servico_consultar_nfse_rps_envio.xml.slim +5 -0
- data/lib/br_nfe/service/xml/v1/servico_consultar_situacao_lote_rps_envio.xml.slim +4 -0
- data/lib/br_nfe/service/xml/v1/servico_enviar_lote_rps_envio.xml.slim +9 -0
- data/lib/br_nfe/version.rb +2 -2
- data/lib/br_nfe/xml/_signed_info_sh1.xml.slim +9 -0
- data/lib/br_nfe/xml/signature_sh1.xml.slim +12 -0
- data/lib/br_nfe/xml/soap_env.xml.slim +3 -0
- data/lib/br_nfe.rb +72 -20
- data/test/br_nfe/base_test.rb +257 -108
- data/test/br_nfe/helper/have_intermediario_test.rb +2 -2
- data/test/br_nfe/helper/have_rps_test.rb +4 -4
- data/test/br_nfe/response/service/build_response_test.rb +377 -0
- data/test/br_nfe/response/service/default_test.rb +218 -0
- data/test/br_nfe/{servico/response → response/service}/nota_fiscal_test.rb +2 -2
- data/test/br_nfe/response/service/paths/base_test.rb +199 -0
- data/test/br_nfe/response/service/paths/v1/servico_cancelar_nfse_resposta_test.rb +25 -0
- data/test/br_nfe/response/service/paths/v1/servico_consultar_lote_rps_resposta_test.rb +30 -0
- data/test/br_nfe/response/service/paths/v1/servico_consultar_nfse_resposta_test.rb +30 -0
- data/test/br_nfe/response/service/paths/v1/servico_consultar_nfse_rps_resposta_test.rb +30 -0
- data/test/br_nfe/response/service/paths/v1/servico_consultar_situacao_lote_rps_resposta_test.rb +30 -0
- data/test/br_nfe/response/service/paths/v1/servico_enviar_lote_rps_resposta_test.rb +34 -0
- data/test/br_nfe/response/service/paths/v1/tc_nfse_test.rb +122 -0
- data/test/br_nfe/service/base_test.rb +138 -0
- data/test/br_nfe/service/betha/base_test.rb +9 -0
- data/test/br_nfe/service/betha/v1/cancelamento_nfs_test.rb +60 -0
- data/test/br_nfe/service/betha/v1/consulta_lote_rps_test.rb +55 -0
- data/test/br_nfe/service/betha/v1/consulta_nfs_por_rps_test.rb +55 -0
- data/test/br_nfe/service/betha/v1/consulta_nfse_test.rb +53 -0
- data/test/br_nfe/service/betha/v1/consulta_situacao_lote_rps_test.rb +49 -0
- data/test/br_nfe/service/betha/v1/gateway_test.rb +35 -0
- data/test/br_nfe/service/betha/v1/recepcao_lote_rps_test.rb +84 -0
- data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_lote_rps_resposta_test.rb +16 -0
- data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_resposta_test.rb +16 -0
- data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_rps_resposta_test.rb +16 -0
- data/test/br_nfe/service/betha/v1/xsd/TiposNFe_v01.xsd +583 -0
- data/test/br_nfe/service/betha/v1/xsd/nfse_v01.xsd +652 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_cancelar_nfse_envio_v01.xsd +17 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_consultar_lote_rps_envio_v01.xsd +16 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_consultar_nfse_envio_v01.xsd +28 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_consultar_nfse_rps_envio_v01.xsd +16 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_consultar_situacao_lote_rps_envio_v01.xsd +16 -0
- data/test/br_nfe/service/betha/v1/xsd/servico_enviar_lote_rps_envio_v01.xsd +17 -0
- data/test/br_nfe/service/betha/v1/xsd/xmldsig-core-schema.xsd +308 -0
- data/test/br_nfe/service/betha/v1/xsd/xmldsig-core-schema_v01.xsd +95 -0
- data/test/br_nfe/service/concerns/rules/cancelamento_nfs_test.rb +15 -0
- data/test/br_nfe/service/concerns/rules/consulta_nfs_por_rps_test.rb +36 -0
- data/test/br_nfe/service/concerns/rules/consulta_nfse_test.rb +42 -0
- data/test/br_nfe/{servico/base_test.rb → service/concerns/rules/recepcao_lote_rps_test.rb} +12 -4
- data/test/br_nfe/{servico → service}/intermediario_test.rb +1 -1
- data/test/br_nfe/service/item_test.rb +34 -0
- data/test/br_nfe/{servico → service}/rps_test.rb +191 -43
- data/test/br_nfe/service/sc/florianopolis/XSD/TiposNFSe_v2.0.xsd +863 -0
- data/test/br_nfe/service/sc/florianopolis/XSD/xmldsig-core-schema.xsd +309 -0
- data/test/br_nfe/service/sc/florianopolis/base_test.rb +20 -0
- data/test/br_nfe/service/sc/florianopolis/cancellation_test.rb +36 -0
- data/test/br_nfe/service/sc/florianopolis/emission_rps_test.rb +145 -0
- data/test/br_nfe/service/sc/gaspar/cancela_nfse_test.rb +21 -0
- data/test/br_nfe/service/sc/gaspar/consulta_nfs_por_rps_test.rb +21 -0
- data/test/br_nfe/service/sc/gaspar/consulta_nfse_test.rb +21 -0
- data/test/br_nfe/service/sc/gaspar/consulta_situacao_lote_rps_test.rb +21 -0
- data/test/br_nfe/service/sc/gaspar/recepcao_lote_rps_limitado_test.rb +22 -0
- data/test/br_nfe/service/sc/gaspar/recepcao_lote_rps_test.rb +22 -0
- data/test/br_nfe/service/thema/v1/base_test.rb +65 -0
- data/test/br_nfe/service/thema/v1/cancela_nfse_test.rb +56 -0
- data/test/br_nfe/service/thema/v1/consulta_lote_rps_test.rb +47 -0
- data/test/br_nfe/service/thema/v1/consulta_nfs_por_rps_test.rb +50 -0
- data/test/br_nfe/service/thema/v1/consulta_nfse_test.rb +50 -0
- data/test/br_nfe/service/thema/v1/consulta_situacao_lote_rps_test.rb +47 -0
- data/test/br_nfe/service/thema/v1/recepcao_lote_rps_test.rb +62 -0
- data/test/br_nfe/service/thema/v1/recepcao_lote_rps_test_limitado.rb +50 -0
- data/test/br_nfe/service/thema/v1/xsd/nfse.xsd +656 -0
- data/test/br_nfe/service/thema/v1/xsd/xmldsig-core-schema20020212.xsd +318 -0
- data/test/br_nfe/service/xsd/v1/nfse.xsd +779 -0
- data/test/br_nfe/service/xsd/v1/xmldsig-core-schema20020212.xsd +316 -0
- data/test/cert.pfx +0 -0
- data/test/factories/base.rb +2 -0
- data/test/factories/destinatario.rb +3 -3
- data/test/factories/response/service/build_response.rb +5 -0
- data/test/factories/response/service/default.rb +10 -0
- data/test/factories/{servico/response → response/service}/nota_fiscal.rb +9 -9
- data/test/factories/service/base.rb +6 -0
- data/test/factories/service/betha/base.rb +4 -0
- data/test/factories/service/betha/v1/cancelamento_nfs.rb +9 -0
- data/test/factories/{servico → service}/betha/v1/consulta_lote_rps.rb +2 -2
- data/test/factories/{servico → service}/betha/v1/consulta_nfs_por_rps.rb +1 -1
- data/test/factories/service/betha/v1/consulta_nfse.rb +8 -0
- data/test/factories/{servico → service}/betha/v1/consulta_situacao_lote_rps.rb +2 -2
- data/test/factories/{servico → service}/betha/v1/gateway.rb +1 -1
- data/test/factories/service/betha/v1/recepcao_lote_rps.rb +8 -0
- data/test/factories/{servico → service}/intermediario.rb +2 -2
- data/test/factories/service/item.rb +12 -0
- data/test/factories/service/rps.rb +50 -0
- data/test/factories/service/sc/florianopolis/base.rb +5 -0
- data/test/factories/service/sc/florianopolis/cancellation.rb +7 -0
- data/test/factories/service/sc/florianopolis/emission_rps.rb +7 -0
- data/test/factories/service/sc/gaspar/cancela_nfse.rb +9 -0
- data/test/factories/service/sc/gaspar/consulta_lote_rps.rb +7 -0
- data/test/factories/service/sc/gaspar/consulta_nfs_por_rps.rb +6 -0
- data/test/factories/service/sc/gaspar/consulta_nfse.rb +8 -0
- data/test/factories/service/sc/gaspar/consulta_situacao_lote_rps.rb +6 -0
- data/test/factories/service/sc/gaspar/recepcao_lote_rps.rb +9 -0
- data/test/factories/service/sc/gaspar/recepcao_lote_rps_limitado.rb +9 -0
- data/test/factories/service/thema/v1/base.rb +7 -0
- data/test/factories/service/thema/v1/cancela_nfse.rb +9 -0
- data/test/factories/service/thema/v1/consulta_lote_rps.rb +7 -0
- data/test/factories/service/thema/v1/consulta_nfs_por_rps.rb +6 -0
- data/test/factories/service/thema/v1/consulta_nfse.rb +8 -0
- data/test/factories/service/thema/v1/consulta_situacao_lote_rps.rb +6 -0
- data/test/factories/service/thema/v1/recepcao_lote_rps.rb +9 -0
- data/test/factories/service/thema/v1/recepcao_lote_rps_limitado.rb +8 -0
- data/test/test_helper.rb +42 -0
- metadata +338 -121
- data/lib/br_nfe/servico/base.rb +0 -35
- data/lib/br_nfe/servico/betha/base.rb +0 -85
- data/lib/br_nfe/servico/betha/build_response.rb +0 -141
- data/lib/br_nfe/servico/betha/v1/build_response.rb +0 -121
- data/lib/br_nfe/servico/betha/v1/cancelamento_nfs.rb +0 -52
- data/lib/br_nfe/servico/betha/v1/consulta_lote_rps.rb +0 -33
- data/lib/br_nfe/servico/betha/v1/consulta_nfs_por_rps.rb +0 -37
- data/lib/br_nfe/servico/betha/v1/consulta_nfse.rb +0 -51
- data/lib/br_nfe/servico/betha/v1/consulta_situacao_lote_rps.rb +0 -18
- data/lib/br_nfe/servico/betha/v1/gateway.rb +0 -125
- data/lib/br_nfe/servico/betha/v1/recepcao_lote_rps.rb +0 -97
- data/lib/br_nfe/servico/betha/v2/build_response.rb +0 -159
- data/lib/br_nfe/servico/betha/v2/cancelamento_nfs.rb +0 -30
- data/lib/br_nfe/servico/betha/v2/consulta_lote_rps.rb +0 -30
- data/lib/br_nfe/servico/betha/v2/consulta_nfse_por_rps.rb +0 -27
- data/lib/br_nfe/servico/betha/v2/envio_lote_rps_sincrono.rb +0 -30
- data/lib/br_nfe/servico/betha/v2/gateway.rb +0 -230
- data/lib/br_nfe/servico/betha/v2/gera_nfse.rb +0 -30
- data/lib/br_nfe/servico/betha/v2/recepcao_lote_rps.rb +0 -52
- data/lib/br_nfe/servico/betha/v2/substituicao_nfse.rb +0 -43
- data/lib/br_nfe/servico/response/default.rb +0 -34
- data/lib/br_nfe/servico/rps.rb +0 -108
- data/test/br_nfe/servico/betha/base_test.rb +0 -135
- data/test/br_nfe/servico/betha/v1/build_response_test.rb +0 -557
- data/test/br_nfe/servico/betha/v1/cancelamento_nfs_test.rb +0 -72
- data/test/br_nfe/servico/betha/v1/consulta_lote_rps_test.rb +0 -46
- data/test/br_nfe/servico/betha/v1/consulta_nfs_por_rps_test.rb +0 -68
- data/test/br_nfe/servico/betha/v1/consulta_nfse_test.rb +0 -74
- data/test/br_nfe/servico/betha/v1/consulta_situacao_lote_rps_test.rb +0 -27
- data/test/br_nfe/servico/betha/v1/gateway_test.rb +0 -151
- data/test/br_nfe/servico/betha/v1/recepcao_lote_rps_test.rb +0 -249
- data/test/br_nfe/servico/betha/v2/cancelamento_nfs_test.rb +0 -44
- data/test/br_nfe/servico/betha/v2/consulta_lote_rps_test.rb +0 -38
- data/test/br_nfe/servico/betha/v2/consulta_nfse_por_rps_test.rb +0 -36
- data/test/br_nfe/servico/betha/v2/envio_lote_rps_sincrono_test.rb +0 -51
- data/test/br_nfe/servico/betha/v2/gateway_test.rb +0 -372
- data/test/br_nfe/servico/betha/v2/gera_nfse_test.rb +0 -62
- data/test/br_nfe/servico/betha/v2/recepcao_lote_rps_test.rb +0 -108
- data/test/br_nfe/servico/betha/v2/substituicao_nfse_test.rb +0 -84
- data/test/br_nfe/servico/response/default_test.rb +0 -54
- data/test/factories/servico/base.rb +0 -5
- data/test/factories/servico/betha/base.rb +0 -5
- data/test/factories/servico/betha/v1/build_response.rb +0 -6
- data/test/factories/servico/betha/v1/cancelamento_nfs.rb +0 -7
- data/test/factories/servico/betha/v1/consulta_nfse.rb +0 -8
- data/test/factories/servico/betha/v1/recepcao_lote_rps.rb +0 -6
- data/test/factories/servico/betha/v2/cancelamento_nfs.rb +0 -7
- data/test/factories/servico/betha/v2/consulta_lote_rps.rb +0 -6
- data/test/factories/servico/betha/v2/consulta_nfse_por_rps.rb +0 -6
- data/test/factories/servico/betha/v2/envio_lote_rps_sincrono.rb +0 -5
- data/test/factories/servico/betha/v2/gateway.rb +0 -5
- data/test/factories/servico/betha/v2/gera_nfse.rb +0 -6
- data/test/factories/servico/betha/v2/recepcao_lote_rps.rb +0 -5
- data/test/factories/servico/betha/v2/substituicao_nfse.rb +0 -8
- data/test/factories/servico/response/default.rb +0 -10
- data/test/factories/servico/rps.rb +0 -44
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Response
|
|
4
|
+
module Paths
|
|
5
|
+
module V1
|
|
6
|
+
module ServicoEnviarLoteRpsResposta
|
|
7
|
+
include BrNfe::Service::Response::Paths::Base
|
|
8
|
+
|
|
9
|
+
# Caminho referente ao caminho do número do lote
|
|
10
|
+
def lot_number_path
|
|
11
|
+
[:enviar_lote_rps_resposta, :numero_lote]
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Caminho para encontrar o número do protocolo
|
|
15
|
+
def protocol_path
|
|
16
|
+
[:enviar_lote_rps_resposta, :protocolo]
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# Caminho para encontrar a data de recebimento do lote/rps/nfe
|
|
20
|
+
def received_date_path
|
|
21
|
+
[:enviar_lote_rps_resposta, :data_recebimento]
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# def message_alerts_path; [] end
|
|
25
|
+
def message_errors_path
|
|
26
|
+
[:enviar_lote_rps_resposta, :lista_mensagem_retorno, :mensagem_retorno]
|
|
27
|
+
end
|
|
28
|
+
# def message_code_key; :codigo end
|
|
29
|
+
# def message_msg_key; :mensagem end
|
|
30
|
+
# def message_solution_key; :correcao end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Response
|
|
4
|
+
module Paths
|
|
5
|
+
module V1
|
|
6
|
+
module TcNfse
|
|
7
|
+
def default_path_to_nf
|
|
8
|
+
[:nfse, :inf_nfse]
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def invoice_numero_nf_path
|
|
12
|
+
default_path_to_nf + [:numero]
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def invoice_codigo_verificacao_path
|
|
16
|
+
default_path_to_nf + [:codigo_verificacao]
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def invoice_data_emissao_path
|
|
20
|
+
default_path_to_nf + [:data_emissao]
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def invoice_url_nf_path
|
|
24
|
+
default_path_to_nf + [:outras_informacoes]
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def invoice_rps_numero_path
|
|
28
|
+
default_path_to_nf + [:identificacao_rps, :numero]
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def invoice_rps_serie_path
|
|
32
|
+
default_path_to_nf + [:identificacao_rps, :serie]
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def invoice_rps_tipo_path
|
|
36
|
+
default_path_to_nf + [:identificacao_rps, :tipo]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def invoice_competencia_path
|
|
40
|
+
default_path_to_nf + [:competencia]
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def invoice_outras_informacoes_path
|
|
44
|
+
default_path_to_nf + [:outras_informacoes]
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def invoice_item_lista_servico_path
|
|
48
|
+
default_path_to_nf + [:intermediario_servico]
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def invoice_cnae_code_path
|
|
52
|
+
default_path_to_nf + [:servico, :codigo_cnae]
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def invoice_description_path
|
|
56
|
+
default_path_to_nf + [:servico, :discriminacao]
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def invoice_codigo_municipio_path
|
|
60
|
+
default_path_to_nf + [:servico, :codigo_municipio]
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def invoice_total_services_path
|
|
64
|
+
default_path_to_nf + [:servico, :valores, :valor_servicos]
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def invoice_deductions_path
|
|
68
|
+
default_path_to_nf + [:servico, :valores, :valor_deducoes]
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def invoice_valor_pis_path
|
|
72
|
+
default_path_to_nf + [:servico, :valores, :valor_pis]
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def invoice_valor_cofins_path
|
|
76
|
+
default_path_to_nf + [:servico, :valores, :valor_cofins]
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def invoice_valor_inss_path
|
|
80
|
+
default_path_to_nf + [:servico, :valores, :valor_inss]
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def invoice_valor_ir_path
|
|
84
|
+
default_path_to_nf + [:servico, :valores, :valor_ir]
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def invoice_valor_csll_path
|
|
88
|
+
default_path_to_nf + [:servico, :valores, :valor_csll]
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
def invoice_iss_retained_path
|
|
92
|
+
default_path_to_nf + [:servico, :valores, :valor_iss_retido]
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
def invoice_outras_retencoes_path
|
|
96
|
+
default_path_to_nf + [:servico, :valores, :outras_retencoes]
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
def invoice_total_iss_path
|
|
100
|
+
default_path_to_nf + [:servico, :valores, :valor_iss]
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def invoice_base_calculation_path
|
|
104
|
+
default_path_to_nf + [:servico, :valores, :base_calculo]
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
def invoice_iss_tax_rate_path
|
|
108
|
+
default_path_to_nf + [:servico, :valores, :iss_retido]
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
def invoice_valor_liquido_path
|
|
112
|
+
default_path_to_nf + [:servico, :valores, :valor_liquido_nfse]
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
def invoice_desconto_condicionado_path
|
|
116
|
+
default_path_to_nf + [:servico, :valores, :desconto_condicionado]
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
def invoice_desconto_incondicionado_path
|
|
120
|
+
default_path_to_nf + [:servico, :valores, :desconto_incondicionado]
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
class Base < BrNfe::Base
|
|
4
|
+
include BrNfe::Helper::ValuesTs::ServiceV1
|
|
5
|
+
|
|
6
|
+
# Declaro que o método `render_xml` irá verificar os arquivos também presentes
|
|
7
|
+
# no diretório especificado
|
|
8
|
+
#
|
|
9
|
+
# <b>Tipo de retorno: </b> _Array_
|
|
10
|
+
#
|
|
11
|
+
def xml_current_dir_path
|
|
12
|
+
["#{BrNfe.root}/lib/br_nfe/service/xml/#{xml_version}"]+super
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def response_path_module
|
|
16
|
+
raise "Não implementado."
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def response_root_path
|
|
20
|
+
[]
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def nfse_xml_path
|
|
24
|
+
#//Envelope/Body/ConsultarLoteRpsEnvioResponse/ConsultarLoteRpsResposta
|
|
25
|
+
'//*/*/*/*'
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def body_xml_path
|
|
29
|
+
[]
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def id_attribute?
|
|
33
|
+
true
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def request
|
|
37
|
+
set_response( client_wsdl.call(method_wsdl, xml: soap_xml) )
|
|
38
|
+
rescue Savon::SOAPFault => error
|
|
39
|
+
return @response = BrNfe::Response::Service::Default.new(status: :soap_error, error_messages: [error.message])
|
|
40
|
+
rescue Savon::HTTPError => error
|
|
41
|
+
return @response = BrNfe::Response::Service::Default.new(status: :http_error, error_messages: [error.message])
|
|
42
|
+
rescue Exception => error
|
|
43
|
+
return @response = BrNfe::Response::Service::Default.new(status: :unknown_error, error_messages: [error.message])
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def set_response(resp)
|
|
47
|
+
@original_response = resp
|
|
48
|
+
@response = BrNfe::Response::Service::BuildResponse.new(
|
|
49
|
+
savon_response: resp, # Rsposta da requisição SOAP
|
|
50
|
+
keys_root_path: response_root_path, # Caminho inicial da resposta / Chave pai principal
|
|
51
|
+
nfe_xml_path: nfse_xml_path, # Caminho para encontrar a NF dentro do XML
|
|
52
|
+
module_methods: response_path_module, # Module que contém os caminhos para encontrar cada informação pertinente para cada requisição
|
|
53
|
+
body_xml_path: body_xml_path,
|
|
54
|
+
).response
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class CancelamentoNfs < BrNfe::Service::Betha::V1::Gateway
|
|
6
|
+
include BrNfe::Service::Concerns::Rules::CancelamentoNfs
|
|
7
|
+
|
|
8
|
+
def certificado_obrigatorio?
|
|
9
|
+
true
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def wsdl
|
|
13
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/cancelarNfseV02?wsdl"
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def method_wsdl
|
|
17
|
+
:cancelar_nfse_envio
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def response_path_module
|
|
21
|
+
BrNfe::Service::Response::Paths::V1::ServicoCancelarNfseResposta
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def response_root_path
|
|
25
|
+
[:cancelar_nfse_envio_response]
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def id_attribute?
|
|
29
|
+
false
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def xml_builder
|
|
33
|
+
render_xml 'servico_cancelar_nfse_envio'
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class ConsultaLoteRps < BrNfe::Service::Betha::V1::Gateway
|
|
6
|
+
|
|
7
|
+
attr_accessor :protocolo
|
|
8
|
+
|
|
9
|
+
validates :protocolo, presence: true
|
|
10
|
+
|
|
11
|
+
def wsdl
|
|
12
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/consultarLoteRps?wsdl"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def method_wsdl
|
|
16
|
+
:consultar_lote_rps_envio
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def response_path_module
|
|
20
|
+
BrNfe::Service::Betha::V1::ResponsePaths::ServicoConsultarLoteRpsResposta
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def response_root_path
|
|
24
|
+
[:consultar_lote_rps_envio_response]
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def xml_builder
|
|
28
|
+
render_xml 'servico_consultar_lote_rps_envio'
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class ConsultaNfsPorRps < BrNfe::Service::Betha::V1::Gateway
|
|
6
|
+
include BrNfe::Service::Concerns::Rules::ConsultaNfsPorRps
|
|
7
|
+
|
|
8
|
+
def wsdl
|
|
9
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/consultarNfsePorRps?wsdl"
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def method_wsdl
|
|
13
|
+
:consultar_nfse_por_rps_envio
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def response_path_module
|
|
17
|
+
BrNfe::Service::Betha::V1::ResponsePaths::ServicoConsultarNfseRpsResposta
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def response_root_path
|
|
21
|
+
[:consultar_nfse_rps_envio_response]
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def xml_builder
|
|
25
|
+
render_xml 'servico_consultar_nfse_rps_envio'
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class ConsultaNfse < BrNfe::Service::Betha::V1::Gateway
|
|
6
|
+
include BrNfe::Service::Concerns::Rules::ConsultaNfse
|
|
7
|
+
|
|
8
|
+
def wsdl
|
|
9
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/consultarNfse?wsdl"
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def method_wsdl
|
|
13
|
+
:consultar_nfse_envio
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def response_path_module
|
|
17
|
+
BrNfe::Service::Betha::V1::ResponsePaths::ServicoConsultarNfseResposta
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def response_root_path
|
|
21
|
+
[:consultar_nfse_envio_response]
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def xml_builder
|
|
25
|
+
render_xml 'servico_consultar_nfse_envio'
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class ConsultaSituacaoLoteRps < BrNfe::Service::Betha::V1::ConsultaLoteRps
|
|
6
|
+
|
|
7
|
+
def wsdl
|
|
8
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/consultarSituacaoLoteRps?wsdl"
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def method_wsdl
|
|
12
|
+
:consultar_situacao_lote_rps_envio
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def response_path_module
|
|
16
|
+
BrNfe::Service::Response::Paths::V1::ServicoConsultarSituacaoLoteRpsResposta
|
|
17
|
+
end
|
|
18
|
+
def response_root_path
|
|
19
|
+
[:consultar_situacao_lote_rps_envio_response]
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def xml_builder
|
|
23
|
+
render_xml 'servico_consultar_situacao_lote_rps_envio'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class Gateway < BrNfe::Service::Betha::Base
|
|
6
|
+
def message_namespaces
|
|
7
|
+
{"xmlns:ns1" => "http://www.betha.com.br/e-nota-contribuinte-ws"}
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def soap_namespaces
|
|
11
|
+
super.merge(message_namespaces)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def namespace_identifier
|
|
15
|
+
:ns1
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
module BrNfe
|
|
2
|
+
module Service
|
|
3
|
+
module Betha
|
|
4
|
+
module V1
|
|
5
|
+
class RecepcaoLoteRps < BrNfe::Service::Betha::V1::Gateway
|
|
6
|
+
include BrNfe::Service::Concerns::Rules::RecepcaoLoteRps
|
|
7
|
+
|
|
8
|
+
def certificado_obrigatorio?
|
|
9
|
+
true
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def wsdl
|
|
13
|
+
"http://e-gov.betha.com.br/e-nota-contribuinte-#{'test-' if env == :test}ws/recepcionarLoteRps?wsdl"
|
|
14
|
+
end
|
|
15
|
+
def method_wsdl
|
|
16
|
+
:enviar_lote_rps_envio
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def response_path_module
|
|
20
|
+
BrNfe::Service::Response::Paths::V1::ServicoEnviarLoteRpsResposta
|
|
21
|
+
end
|
|
22
|
+
def response_root_path
|
|
23
|
+
[:enviar_lote_rps_envio_response]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def id_attribute?
|
|
27
|
+
false
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def xml_builder
|
|
31
|
+
render_xml 'servico_enviar_lote_rps_envio'
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|