Class: SwFac::Tools
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Config
#cadena, #dev_token, #doc_cer_path, #doc_key_path, #key_pass, #pem, #pem_cadena, #production_token, #serial
Instance Method Summary collapse
- #consulta_no_certificado(no_certificado) ⇒ Object
- #consulta_saldo ⇒ Object
- #valida_rfc(rfc) ⇒ Object
Methods inherited from Config
#cer_cadena, #initialize, #key_to_pem, #serial_number
Constructor Details
This class inherits a constructor from SwFac::Config
Instance Method Details
#consulta_no_certificado(no_certificado) ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/sw_fac/tools.rb', line 69 def consulta_no_certificado(no_certificado) # Servicio para validar el numero de certificado # # Parameters: # no_certificado: (String) url = URI("#{SwFac::UrlProduction}lco/#{no_certificado}") http = Net::HTTP.new(url.host, url.port) request = Net::HTTP::Get.new(url) request["Authorization"] = "bearer #{@production_token}" request.content_type = "application/json" request["Cache-Control"] = 'no-cache' request["Postman-Token"] = 'e17ee551-7f7a-32a7-8fd8-6b53ea70e3c9' pet = http.request(request) parsed = JSON.parse(pet.body) response = {} if pet.code == '200' response[:status] = parsed['status'] response[:certificado_consultado] = parsed['data']['noCertificado'] response[:rfc] = parsed['data']['rfc'] response[:valides_obligaciones] = parsed['data']['validezObligaciones'] response[:status_certificado] = parsed['data']['estatusCertificado'] response[:fecha_inicio] = parsed['data']['fechaInicio'] response[:fecha_final] = parsed['data']['fechaFinal'] else response[:status] = 'Error' response[:message] = parsed['message'] response[:message_detail] = parsed['messageDetail'] end return response end |
#consulta_saldo ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/sw_fac/tools.rb', line 4 def consulta_saldo # Servicio utilizado para consultar los timbres disponibles en el entorno productivo url_prod = URI("#{SwFac::UrlProduction}account/balance") http = Net::HTTP.new(url_prod.host, url_prod.port) request = Net::HTTP::Get.new(url_prod) request["Authorization"] = "bearer #{@production_token}" request.content_type = "application/json" request["Cache-Control"] = 'no-cache' response_1 = http.request(request) res = JSON.parse(response_1.body) response = {} if response_1.code == '200' response[:status] = '200' response[:saldo] = res['data']['saldoTimbres'] else response[:status] = '401' response[:saldo] = '' # response[:error] = "" end return response rescue => e puts "Error: #{e}" end |
#valida_rfc(rfc) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/sw_fac/tools.rb', line 33 def valida_rfc(rfc) # Servicio para identificar que los RFC (emisores y receptores) que intervienen en el proceso sean válidos, # es decir que estén en la LCO (Lista de Contribuyentes con Obligación ante el SAT). # # Parameters: # rfc: (String) url = URI("#{SwFac::UrlProduction}lrfc/#{rfc}") http = Net::HTTP.new(url.host, url.port) request = Net::HTTP::Get.new(url) request["Authorization"] = "bearer #{@production_token}" request.content_type = "application/json" request["Cache-Control"] = 'no-cache' request["Postman-Token"] = 'a663ff71-f97d-57c9-be0b-1b1cdc06871e' pet = http.request(request) parsed = JSON.parse(pet.body) response = {} if pet.code == '200' response[:status] = parsed['status'] response[:rfc_consultado] = parsed['data']['contribuyenteRFC'] response[:sncf] = parsed['data']['sncf'] response[:subcontratacion] = parsed['data']['subcontratacion'] else response[:status] = 'Error' response[:message] = parsed['message'] response[:message_detail] = parsed['messageDetail'] end return response rescue => e puts "Error: #{e}" end |