demarches-normaliennes/app/services/api_entreprise_service.rb

30 lines
1.1 KiB
Ruby
Raw Normal View History

2018-04-10 12:24:49 +02:00
class ApiEntrepriseService
2019-04-30 16:36:40 +02:00
# Retrieve all informations we can get about a SIRET.
#
# Returns nil if the SIRET is unknown; and nested params
# suitable for being saved into a Etablissement object otherwise.
#
2020-03-05 13:50:38 +01:00
# Raises a ApiEntreprise::API::RequestFailed exception on transcient errors
2019-04-30 16:36:40 +02:00
# (timeout, 5XX HTTP error code, etc.)
def self.get_etablissement_params_for_siret(siret, procedure_id)
etablissement_params = ApiEntreprise::EtablissementAdapter.new(siret, procedure_id).to_params
entreprise_params = ApiEntreprise::EntrepriseAdapter.new(siret, procedure_id).to_params
2018-02-22 16:53:29 +01:00
2018-03-19 14:48:15 +01:00
if etablissement_params.present? && entreprise_params.present?
begin
association_params = ApiEntreprise::RNAAdapter.new(siret, procedure_id).to_params
etablissement_params.merge!(association_params)
2020-03-05 13:50:38 +01:00
rescue ApiEntreprise::API::RequestFailed
end
2018-02-22 16:53:29 +01:00
begin
exercices_params = ApiEntreprise::ExercicesAdapter.new(siret, procedure_id).to_params
etablissement_params.merge!(exercices_params)
2020-03-05 13:50:38 +01:00
rescue ApiEntreprise::API::RequestFailed
end
etablissement_params.merge(entreprise_params)
2018-02-22 16:53:29 +01:00
end
end
end