Git Product home page Git Product logo

gus_bir1's Introduction

GusBir1

license CI badge Gem Version Code Climate Test Coverage

Simple, Ruby wrapper for REGON database (Baza Internetowa Regon (BIR))(web frontend is reachable at https://wyszukiwarkaregon.stat.gov.pl/appBIR/index.aspx). To access its SOAP API, one needs a USER_KEY issued by REGON administrators available at [email protected].

Official GUS docs: https://api.stat.gov.pl/Home/RegonApi

Installation

Add this line to your application's Gemfile:

gem 'gus_bir1'

And then execute:

$ bundle

Or install it yourself as:

$ gem install gus_bir1

Usage

Settings

# /config/initializers/gus_bir1.rb
# TEST CONF
GusBir1.production = false
GusBir1.client_key = 'abcde12345abcde12345'

General info

To check service status:

GusBir1.service_status.to_i
 => 1
GusBir1.service_status.humanize
 => "usługa dostępna"

To check data status

GusBir1.status_date_state
=> "18-05-2016"

To get session status

GusBir1.session_status.to_i
 => 1
GusBir1.session_status.humanize
 => "sesja istnieje"

Get data

To start querying the GUS database, You can use three methods GusBir1.find_by, GusBir1.get_full_data and (the best option) - GusBir1.find_and_get_full_data with one of the following parameters:

  • regon - single REGON number (either 9 or 14 digits long)
  • krs - single 10 digit KRS number
  • nip - single NIP (10 digits string)
  • regons14 - a collection of REGONs 14 digits long
  • regons9 - a collection of REGONs 9 digits long
  • krss - a collection of KRSs
  • nips - a collection of NIPs

find_by

with regon

response = GusBir1.find_by(regon: '00033150100000')
 => [#<OpenStruct name="GŁÓWNY URZĄD STATYSTYCZNY", regon="00033150100000", province="MAZOWIECKIE", district="m. st. Warszawa", community="Śródmieście", city="Warszawa", zip_code="00-925", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]
response.class
 => Array
response.first
 => #<OpenStruct name="GŁÓWNY URZĄD STATYSTYCZNY", regon="00033150100000", province="MAZOWIECKIE", district="m. st. Warszawa", community="Śródmieście", city="Warszawa", zip_code="00-925", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">

with nip

response = GusBir1.find_by(nip: '8992689516')
 => [#<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

with krs

response = GusBir1.find_by(krs: '0000352235')
 => [#<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

with regons14 (up to 20 regons)

response = GusBir1.find_by(regons14: '00033150100000,02121583300000')
 => [#<OpenStruct name="GŁÓWNY URZĄD STATYSTYCZNY", regon="00033150100000", province="MAZOWIECKIE", district="m. st. Warszawa", community="Śródmieście", city="Warszawa", zip_code="00-925", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">, #<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

with regons9 (up to 20 regons)

response = GusBir1.find_by(regons9: '000331501,021215833')
=> [#<OpenStruct name="GŁÓWNY URZĄD STATYSTYCZNY", regon="00033150100000", province="MAZOWIECKIE", district="m. st. Warszawa", community="Śródmieście", city="Warszawa", zip_code="00-925", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">, #<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

with nips (up to 20 nips)

 response = GusBir1.find_by(nips: '8992689516,5261040828')
 => [#<OpenStruct name="GŁÓWNY URZĄD STATYSTYCZNY", regon="00033150100000", province="MAZOWIECKIE", district="m. st. Warszawa", community="Śródmieście", city="Warszawa", zip_code="00-925", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">, #<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

with krss (up to 20 krss)

response = GusBir1.find_by(krss: '0000352235')
 => [#<OpenStruct name="\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ", regon="02121583300000", province="DOLNOŚLĄSKIE", district="m. Wrocław", community="Wrocław-Stare Miasto", city="Wrocław", zip_code="53-505", street="ul. Test-Krucza", type="P", silos_id="6", type_desc="Typ jednostki – jednostka prawna", silos_desc="Miejsce prowadzenia działalności jednostki prawnej", report="PublDaneRaportPrawna">]

get_full_data

If one knows the REGON of a business entity and an detailed report name, a full report can be fetched directly:

response = GusBir1.get_full_data('000331501', 'PublDaneRaportPrawna')
 => #<GusBir1::Response::FullData:0x00007f9c180a52d8 @body="<root>\r\n  <dane>\r\n    <praw_regon14>00033150100000</praw_regon14>\r\n    <praw_nip>5261040828</praw_nip>\r\n    <praw_nazwa>GŁÓWNY URZĄD STATYSTYCZNY</praw_nazwa>\r\n    <praw_nazwaSkrocona>GUS</praw_nazwaSkrocona>\r\n    <praw_numerWrejestrzeEwidencji />\r\n    <praw_dataPowstania>1975-12-15</praw_dataPowstania>\r\n    <praw_dataRozpoczeciaDzialalnosci>1975-12-15</praw_dataRozpoczeciaDzialalnosci>\r\n    <praw_dataWpisuDoREGON />\r\n    <praw_dataZawieszeniaDzialalnosci />\r\n    <praw_dataWznowieniaDzialalnosci />\r\n    <praw_dataZaistnieniaZmiany>2009-02-20</praw_dataZaistnieniaZmiany>\r\n    <praw_dataZakonczeniaDzialalnosci />\r\n    <praw_dataSkresleniazRegon />\r\n    <praw_adSiedzKraj_Symbol>PL</praw_adSiedzKraj_Symbol>\r\n    <praw_adSiedzWojewodztwo_Symbol>14</praw_adSiedzWojewodztwo_Symbol>\r\n    <praw_adSiedzPowiat_Symbol>65</praw_adSiedzPowiat_Symbol>\r\n    <praw_adSiedzGmina_Symbol>108</praw_adSiedzGmina_Symbol>\r\n    <praw_adSiedzKodPocztowy>00925</praw_adSiedzKodPocztowy>\r\n    <praw_adSiedzMiejscowoscPoczty_Symbol>0919810</praw_adSiedzMiejscowoscPoczty_Symbol>\r\n    <praw_adSiedzMiejscowosc_Symbol>0919810</praw_adSiedzMiejscowosc_Symbol>\r\n    <praw_adSiedzUlica_Symbol>10013</praw_adSiedzUlica_Symbol>\r\n    <praw_adSiedzNumerNieruchomosci>208</praw_adSiedzNumerNieruchomosci>\r\n    <praw_adSiedzNumerLokalu />\r\n    <praw_adSiedzNietypoweMiejsceLokalizacji />\r\n    <praw_numerTelefonu>6083000</praw_numerTelefonu>\r\n    <praw_numerWewnetrznyTelefonu />\r\n    <praw_numerFaksu>0226083863</praw_numerFaksu>\r\n    <praw_adresEmail>[email protected]</praw_adresEmail>\r\n    <praw_adresStronyinternetowej>www.stat.gov.pl</praw_adresStronyinternetowej>\r\n    <praw_adresEmail2 />\r\n    <praw_adKorKraj_Symbol>PL</praw_adKorKraj_Symbol>\r\n    <praw_adKorWojewodztwo_Symbol>14</praw_adKorWojewodztwo_Symbol>\r\n    <praw_adKorPowiat_Symbol>65</praw_adKorPowiat_Symbol>\r\n    <praw_adKorGmina_Symbol>108</praw_adKorGmina_Symbol>\r\n    <praw_adKorKodPocztowy>00925</praw_adKorKodPocztowy>\r\n    <praw_adKorMiejscowoscPoczty_Symbol>0919810</praw_adKorMiejscowoscPoczty_Symbol>\r\n    <praw_adKorMiejscowosc_Symbol>0919810</praw_adKorMiejscowosc_Symbol>\r\n    <praw_adKorUlica_Symbol>14199</praw_adKorUlica_Symbol>\r\n    <praw_adKorNumerNieruchomosci>208</praw_adKorNumerNieruchomosci>\r\n    <praw_adKorNumerLokalu />\r\n    <praw_adKorNietypoweMiejsceLokalizacji />\r\n    <praw_adKorNazwaPodmiotuDoKorespondencji />\r\n    <praw_adSiedzKraj_Nazwa>POLSKA</praw_adSiedzKraj_Nazwa>\r\n    <praw_adSiedzWojewodztwo_Nazwa>MAZOWIECKIE</praw_adSiedzWojewodztwo_Nazwa>\r\n    <praw_adSiedzPowiat_Nazwa>m. st. Warszawa</praw_adSiedzPowiat_Nazwa>\r\n    <praw_adSiedzGmina_Nazwa>Śródmieście</praw_adSiedzGmina_Nazwa>\r\n    <praw_adSiedzMiejscowosc_Nazwa>Warszawa</praw_adSiedzMiejscowosc_Nazwa>\r\n    <praw_adSiedzMiejscowoscPoczty_Nazwa>Warszawa</praw_adSiedzMiejscowoscPoczty_Nazwa>\r\n    <praw_adSiedzUlica_Nazwa>ul. Test-Krucza</praw_adSiedzUlica_Nazwa>\r\n    <praw_adKorKraj_Nazwa />\r\n    <praw_adKorWojewodztwo_Nazwa />\r\n    <praw_adKorPowiat_Nazwa />\r\n    <praw_adKorGmina_Nazwa />\r\n    <praw_adKorMiejscowosc_Nazwa />\r\n    <praw_adKorMiejscowoscPoczty_Nazwa />\r\n    <praw_adKorUlica_Nazwa />\r\n    <praw_podstawowaFormaPrawna_Symbol>2</praw_podstawowaFormaPrawna_Symbol>\r\n    <praw_szczegolnaFormaPrawna_Symbol>01</praw_szczegolnaFormaPrawna_Symbol>\r\n    <praw_formaFinansowania_Symbol>2</praw_formaFinansowania_Symbol>\r\n    <praw_formaWlasnosci_Symbol>111</praw_formaWlasnosci_Symbol>\r\n    <praw_organZalozycielski_Symbol>050000000</praw_organZalozycielski_Symbol>\r\n    <praw_organRejestrowy_Symbol />\r\n    <praw_rodzajRejestruEwidencji_Symbol>000</praw_rodzajRejestruEwidencji_Symbol>\r\n    <praw_podstawowaFormaPrawna_Nazwa>JEDNOSTKA ORGANIZACYJNA NIEMAJĄCA OSOBOWOŚCI PRAWNEJ</praw_podstawowaFormaPrawna_Nazwa>\r\n    <praw_szczegolnaFormaPrawna_Nazwa>ORGANY WŁADZY,ADMINISTRACJI RZĄDOWEJ</praw_szczegolnaFormaPrawna_Nazwa>\r\n    <praw_formaFinansowania_Nazwa>JEDNOSTKA BUDŻETOWA</praw_formaFinansowania_Nazwa>\r\n    <praw_formaWlasnosci_Nazwa>WŁASNOŚĆ SKARBU PAŃSTWA</praw_formaWlasnosci_Nazwa>\r\n    <praw_organZalozycielski_Nazwa>PREZES GŁÓWNEGO URZĘDU STATYSTYCZNEGO</praw_organZalozycielski_Nazwa>\r\n    <praw_organRejestrowy_Nazwa />\r\n    <praw_rodzajRejestruEwidencji_Nazwa>PODMIOTY UTWORZONE Z MOCY USTAWY</praw_rodzajRejestruEwidencji_Nazwa>\r\n    <praw_jednostekLokalnych>0</praw_jednostekLokalnych>\r\n  </dane>\r\n</root>">

find_and_get_full_data

response = GusBir1.find_and_get_full_data(nips: '8992689516,5261040828')
=> [#<GusBir1::Response::FullData:0x00007f9c19087ae8 @body="<root>\r\n  <dane>\r\n    <praw_regon14>00033150100000</praw_regon14>\r\n    <praw_nip>5261040828</praw_nip>\r\n    <praw_nazwa>GŁÓWNY URZĄD STATYSTYCZNY</praw_nazwa>\r\n    <praw_nazwaSkrocona>GUS</praw_nazwaSkrocona>\r\n    <praw_numerWrejestrzeEwidencji />\r\n    <praw_dataPowstania>1975-12-15</praw_dataPowstania>\r\n    <praw_dataRozpoczeciaDzialalnosci>1975-12-15</praw_dataRozpoczeciaDzialalnosci>\r\n    <praw_dataWpisuDoREGON />\r\n    <praw_dataZawieszeniaDzialalnosci />\r\n    <praw_dataWznowieniaDzialalnosci />\r\n    <praw_dataZaistnieniaZmiany>2009-02-20</praw_dataZaistnieniaZmiany>\r\n    <praw_dataZxaaakonczeniaDzialalnosci />\r\n    <praw_dataSkresleniazRegon />\r\n    <praw_adSiedzKraj_Symbol>PL</praw_adSiedzKraj_Symbol>\r\n    <praw_adSiedzWojewodztwo_Symbol>14</praw_adSiedzWojewodztwo_Symbol>\r\n    <praw_adSiedzPowiat_Symbol>65</praw_adSiedzPowiat_Symbol>\r\n    <praw_adSiedzGmina_Symbol>108</praw_adSiedzGmina_Symbol>\r\n    <praw_adSiedzKodPocztowy>00925</praw_adSiedzKodPocztowy>\r\n    <praw_adSiedzMiejscowoscPoczty_Symbol>0919810</praw_adSiedzMiejscowoscPoczty_Symbol>\r\n    <praw_adSiedzMiejscowosc_Symbol>0919810</praw_adSiedzMiejscowosc_Symbol>\r\n    <praw_adSiedzUlica_Symbol>10013</praw_adSiedzUlica_Symbol>\r\n    <praw_adSiedzNumerNieruchomosci>208</praw_adSiedzNumerNieruchomosci>\r\n    <praw_adSiedzNumerLokalu />\r\n    <praw_adSiedzNietypoweMiejsceLokalizacji />\r\n    <praw_numerTelefonu>6083000</praw_numerTelefonu>\r\n    <praw_numerWewnetrznyTelefonu />\r\n    <praw_numerFaksu>0226083863</praw_numerFaksu>\r\n    <praw_adresEmail>[email protected]</praw_adresEmail>\r\n    <praw_adresStronyinternetowej>www.stat.gov.pl</praw_adresStronyinternetowej>\r\n    <praw_adresEmail2 />\r\n    <praw_adKorKraj_Symbol>PL</praw_adKorKraj_Symbol>\r\n    <praw_adKorWojewodztwo_Symbol>14</praw_adKorWojewodztwo_Symbol>\r\n    <praw_adKorPowiat_Symbol>65</praw_adKorPowiat_Symbol>\r\n    <praw_adKorGmina_Symbol>108</praw_adKorGmina_Symbol>\r\n    <praw_adKorKodPocztowy>00925</praw_adKorKodPocztowy>\r\n    <praw_adKorMiejscowoscPoczty_Symbol>0919810</praw_adKorMiejscowoscPoczty_Symbol>\r\n    <praw_adKorMiejscowosc_Symbol>0919810</praw_adKorMiejscowosc_Symbol>\r\n    <praw_adKorUlica_Symbol>14199</praw_adKorUlica_Symbol>\r\n    <praw_adKorNumerNieruchomosci>208</praw_adKorNumerNieruchomosci>\r\n    <praw_adKorNumerLokalu />\r\n    <praw_adKorNietypoweMiejsceLokalizacji />\r\n    <praw_adKorNazwaPodmiotuDoKorespondencji />\r\n    <praw_adSiedzKraj_Nazwa>POLSKA</praw_adSiedzKraj_Nazwa>\r\n    <praw_adSiedzWojewodztwo_Nazwa>MAZOWIECKIE</praw_adSiedzWojewodztwo_Nazwa>\r\n    <praw_adSiedzPowiat_Nazwa>m. st. Warszawa</praw_adSiedzPowiat_Nazwa>\r\n    <praw_adSiedzGmina_Nazwa>Śródmieście</praw_adSiedzGmina_Nazwa>\r\n    <praw_adSiedzMiejscowosc_Nazwa>Warszawa</praw_adSiedzMiejscowosc_Nazwa>\r\n    <praw_adSiedzMiejscowoscPoczty_Nazwa>Warszawa</praw_adSiedzMiejscowoscPoczty_Nazwa>\r\n    <praw_adSiedzUlica_Nazwa>ul. Test-Krucza</praw_adSiedzUlica_Nazwa>\r\n    <praw_adKorKraj_Nazwa />\r\n    <praw_adKorWojewodztwo_Nazwa />\r\n    <praw_adKorPowiat_Nazwa />\r\n    <praw_adKorGmina_Nazwa />\r\n    <praw_adKorMiejscowosc_Nazwa />\r\n    <praw_adKorMiejscowoscPoczty_Nazwa />\r\n    <praw_adKorUlica_Nazwa />\r\n    <praw_podstawowaFormaPrawna_Symbol>2</praw_podstawowaFormaPrawna_Symbol>\r\n    <praw_szczegolnaFormaPrawna_Symbol>01</praw_szczegolnaFormaPrawna_Symbol>\r\n    <praw_formaFinansowania_Symbol>2</praw_formaFinansowania_Symbol>\r\n    <praw_formaWlasnosci_Symbol>111</praw_formaWlasnosci_Symbol>\r\n    <praw_organZalozycielski_Symbol>050000000</praw_organZalozycielski_Symbol>\r\n    <praw_organRejestrowy_Symbol />\r\n    <praw_rodzajRejestruEwidencji_Symbol>000</praw_rodzajRejestruEwidencji_Symbol>\r\n    <praw_podstawowaFormaPrawna_Nazwa>JEDNOSTKA ORGANIZACYJNA NIEMAJĄCA OSOBOWOŚCI PRAWNEJ</praw_podstawowaFormaPrawna_Nazwa>\r\n    <praw_szczegolnaFormaPrawna_Nazwa>ORGANY WŁADZY,ADMINISTRACJI RZĄDOWEJ</praw_szczegolnaFormaPrawna_Nazwa>\r\n    <praw_formaFinansowania_Nazwa>JEDNOSTKA BUDŻETOWA</praw_formaFinansowania_Nazwa>\r\n    <praw_formaWlasnosci_Nazwa>WŁASNOŚĆ SKARBU PAŃSTWA</praw_formaWlasnosci_Nazwa>\r\n    <praw_organZalozycielski_Nazwa>PREZES GŁÓWNEGO URZĘDU STATYSTYCZNEGO</praw_organZalozycielski_Nazwa>\r\n    <praw_organRejestrowy_Nazwa />\r\n    <praw_rodzajRejestruEwidencji_Nazwa>PODMIOTY UTWORZONE Z MOCY USTAWY</praw_rodzajRejestruEwidencji_Nazwa>\r\n    <praw_jednostekLokalnych>0</praw_jednostekLokalnych>\r\n  </dane>\r\n</root>">, #<GusBir1::Response::FullData:0x00007f9c1833c708 @body="<root>\r\n  <dane>\r\n    <praw_regon14>02121583300000</praw_regon14>\r\n    <praw_nip>8992689516</praw_nip>\r\n    <praw_nazwa>\"PSP POLSKA\" SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ</praw_nazwa>\r\n    <praw_nazwaSkrocona>PSP POLSKA SP. Z O.O.,WROCŁAW</praw_nazwaSkrocona>\r\n    <praw_numerWrejestrzeEwidencji>0000352235</praw_numerWrejestrzeEwidencji>\r\n    <praw_dataPowstania>2010-03-24</praw_dataPowstania>\r\n    <praw_dataRozpoczeciaDzialalnosci>2010-03-24</praw_dataRozpoczeciaDzialalnosci>\r\n    <praw_dataWpisuDoREGON>2010-04-01</praw_dataWpisuDoREGON>\r\n    <praw_dataZawieszeniaDzialalnosci />\r\n    <praw_dataWznowieniaDzialalnosci />\r\n    <praw_dataZaistnieniaZmiany>2010-12-15</praw_dataZaistnieniaZmiany>\r\n    <praw_dataZakonczeniaDzialalnosci />\r\n    <praw_dataSkresleniazRegon />\r\n    <praw_adSiedzKraj_Symbol>PL</praw_adSiedzKraj_Symbol>\r\n    <praw_adSiedzWojewodztwo_Symbol>02</praw_adSiedzWojewodztwo_Symbol>\r\n    <praw_adSiedzPowiat_Symbol>64</praw_adSiedzPowiat_Symbol>\r\n    <praw_adSiedzGmina_Symbol>059</praw_adSiedzGmina_Symbol>\r\n    <praw_adSiedzKodPocztowy>53505</praw_adSiedzKodPocztowy>\r\n    <praw_adSiedzMiejscowoscPoczty_Symbol>0986946</praw_adSiedzMiejscowoscPoczty_Symbol>\r\n    <praw_adSiedzMiejscowosc_Symbol>0986946</praw_adSiedzMiejscowosc_Symbol>\r\n    <praw_adSiedzUlica_Symbol>10013</praw_adSiedzUlica_Symbol>\r\n    <praw_adSiedzNumerNieruchomosci>15</praw_adSiedzNumerNieruchomosci>\r\n    <praw_adSiedzNumerLokalu />\r\n    <praw_adSiedzNietypoweMiejsceLokalizacji />\r\n    <praw_numerTelefonu>791834782</praw_numerTelefonu>\r\n    <praw_numerWewnetrznyTelefonu />\r\n    <praw_numerFaksu>717351551</praw_numerFaksu>\r\n    <praw_adresEmail>[email protected]</praw_adresEmail>\r\n    <praw_adresStronyinternetowej />\r\n    <praw_adresEmail2 />\r\n    <praw_adKorKraj_Symbol>PL</praw_adKorKraj_Symbol>\r\n    <praw_adKorWojewodztwo_Symbol>02</praw_adKorWojewodztwo_Symbol>\r\n    <praw_adKorPowiat_Symbol>64</praw_adKorPowiat_Symbol>\r\n    <praw_adKorGmina_Symbol>059</praw_adKorGmina_Symbol>\r\n    <praw_adKorKodPocztowy>53505</praw_adKorKodPocztowy>\r\n    <praw_adKorMiejscowoscPoczty_Symbol>0986946</praw_adKorMiejscowoscPoczty_Symbol>\r\n    <praw_adKorMiejscowosc_Symbol>0986946</praw_adKorMiejscowosc_Symbol>\r\n    <praw_adKorUlica_Symbol>10793</praw_adKorUlica_Symbol>\r\n    <praw_adKorNumerNieruchomosci>15</praw_adKorNumerNieruchomosci>\r\n    <praw_adKorNumerLokalu />\r\n    <praw_adKorNietypoweMiejsceLokalizacji />\r\n    <praw_adKorNazwaPodmiotuDoKorespondencji />\r\n    <praw_adSiedzKraj_Nazwa>POLSKA</praw_adSiedzKraj_Nazwa>\r\n    <praw_adSiedzWojewodztwo_Nazwa>DOLNOŚLĄSKIE</praw_adSiedzWojewodztwo_Nazwa>\r\n    <praw_adSiedzPowiat_Nazwa>m. Wrocław</praw_adSiedzPowiat_Nazwa>\r\n    <praw_adSiedzGmina_Nazwa>Wrocław-Stare Miasto</praw_adSiedzGmina_Nazwa>\r\n    <praw_adSiedzMiejscowosc_Nazwa>Wrocław</praw_adSiedzMiejscowosc_Nazwa>\r\n    <praw_adSiedzMiejscowoscPoczty_Nazwa>Wrocław</praw_adSiedzMiejscowoscPoczty_Nazwa>\r\n    <praw_adSiedzUlica_Nazwa>ul. Test-Krucza</praw_adSiedzUlica_Nazwa>\r\n    <praw_adKorKraj_Nazwa />\r\n    <praw_adKorWojewodztwo_Nazwa />\r\n    <praw_adKorPowiat_Nazwa />\r\n    <praw_adKorGmina_Nazwa />\r\n    <praw_adKorMiejscowosc_Nazwa />\r\n    <praw_adKorMiejscowoscPoczty_Nazwa />\r\n    <praw_adKorUlica_Nazwa />\r\n    <praw_podstawowaFormaPrawna_Symbol>1</praw_podstawowaFormaPrawna_Symbol>\r\n    <praw_szczegolnaFormaPrawna_Symbol>17</praw_szczegolnaFormaPrawna_Symbol>\r\n    <praw_formaFinansowania_Symbol>1</praw_formaFinansowania_Symbol>\r\n    <praw_formaWlasnosci_Symbol>214</praw_formaWlasnosci_Symbol>\r\n    <praw_organZalozycielski_Symbol />\r\n    <praw_organRejestrowy_Symbol>071930010</praw_organRejestrowy_Symbol>\r\n    <praw_rodzajRejestruEwidencji_Symbol>138</praw_rodzajRejestruEwidencji_Symbol>\r\n    <praw_podstawowaFormaPrawna_Nazwa>OSOBA PRAWNA</praw_podstawowaFormaPrawna_Nazwa>\r\n    <praw_szczegolnaFormaPrawna_Nazwa>SPÓŁKI Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ</praw_szczegolnaFormaPrawna_Nazwa>\r\n    <praw_formaFinansowania_Nazwa>JEDNOSTKA SAMOFINANSUJĄCA NIE BĘDĄCA JEDNOSTKĄ BUDŻETOWĄ LUB SAMORZĄDOWYM ZAKŁADEM BUDŻETOWYM</praw_formaFinansowania_Nazwa>\r\n    <praw_formaWlasnosci_Nazwa>WŁASNOŚĆ KRAJOWYCH OSÓB FIZYCZNYCH</praw_formaWlasnosci_Nazwa>\r\n    <praw_organZalozycielski_Nazwa />\r\n    <praw_organRejestrowy_Nazwa>SĄD REJONOWY DLA WROCŁAWIA FABRYCZNEJ WE WROCŁAWIU, VI WYDZIAŁ GOSPODARCZY KRAJOWEGO REJESTRU SĄDOWEGO</praw_organRejestrowy_Nazwa>\r\n    <praw_rodzajRejestruEwidencji_Nazwa>REJESTR PRZEDSIĘBIORCÓW</praw_rodzajRejestruEwidencji_Nazwa>\r\n    <praw_jednostekLokalnych>0</praw_jednostekLokalnych>\r\n  </dane>\r\n</root>">]
response.size
=> 2
response.class
=> Array
response.first.class
=> GusBir1::Response::FullData
response.first.to_h
=> {"praw_regon14"=>"00033150100000", "praw_nip"=>"5261040828", "praw_nazwa"=>"GŁÓWNY URZĄD STATYSTYCZNY", "praw_nazwaSkrocona"=>"GUS", "praw_numerWrejestrzeEwidencji"=>nil, "praw_dataPowstania"=>#<Date: 1975-12-15 ((2442762j,0s,0n),+0s,2299161j)>, "praw_dataRozpoczeciaDzialalnosci"=>#<Date: 1975-12-15 ((2442762j,0s,0n),+0s,2299161j)>, "praw_dataWpisuDoREGON"=>nil, "praw_dataZawieszeniaDzialalnosci"=>nil, "praw_dataWznowieniaDzialalnosci"=>nil, "praw_dataZaistnieniaZmiany"=>#<Date: 2009-02-20 ((2454883j,0s,0n),+0s,2299161j)>, "praw_dataZakonczeniaDzialalnosci"=>nil, "praw_dataSkresleniazRegon"=>nil, "praw_adSiedzKraj_Symbol"=>"PL", "praw_adSiedzWojewodztwo_Symbol"=>"14", "praw_adSiedzPowiat_Symbol"=>"65", "praw_adSiedzGmina_Symbol"=>"108", "praw_adSiedzKodPocztowy"=>"00925", "praw_adSiedzMiejscowoscPoczty_Symbol"=>"0919810", "praw_adSiedzMiejscowosc_Symbol"=>"0919810", "praw_adSiedzUlica_Symbol"=>"10013", "praw_adSiedzNumerNieruchomosci"=>"208", "praw_adSiedzNumerLokalu"=>nil, "praw_adSiedzNietypoweMiejsceLokalizacji"=>nil, "praw_numerTelefonu"=>"6083000", "praw_numerWewnetrznyTelefonu"=>nil, "praw_numerFaksu"=>"0226083863", "praw_adresEmail"=>"[email protected]", "praw_adresStronyinternetowej"=>"www.stat.gov.pl", "praw_adresEmail2"=>nil, "praw_adKorKraj_Symbol"=>"PL", "praw_adKorWojewodztwo_Symbol"=>"14", "praw_adKorPowiat_Symbol"=>"65", "praw_adKorGmina_Symbol"=>"108", "praw_adKorKodPocztowy"=>"00925", "praw_adKorMiejscowoscPoczty_Symbol"=>"0919810", "praw_adKorMiejscowosc_Symbol"=>"0919810", "praw_adKorUlica_Symbol"=>"14199", "praw_adKorNumerNieruchomosci"=>"208", "praw_adKorNumerLokalu"=>nil, "praw_adKorNietypoweMiejsceLokalizacji"=>nil, "praw_adKorNazwaPodmiotuDoKorespondencji"=>nil, "praw_adSiedzKraj_Nazwa"=>"POLSKA", "praw_adSiedzWojewodztwo_Nazwa"=>"MAZOWIECKIE", "praw_adSiedzPowiat_Nazwa"=>"m. st. Warszawa", "praw_adSiedzGmina_Nazwa"=>"Śródmieście", "praw_adSiedzMiejscowosc_Nazwa"=>"Warszawa", "praw_adSiedzMiejscowoscPoczty_Nazwa"=>"Warszawa", "praw_adSiedzUlica_Nazwa"=>"ul. Test-Krucza", "praw_adKorKraj_Nazwa"=>nil, "praw_adKorWojewodztwo_Nazwa"=>nil, "praw_adKorPowiat_Nazwa"=>nil, "praw_adKorGmina_Nazwa"=>nil, "praw_adKorMiejscowosc_Nazwa"=>nil, "praw_adKorMiejscowoscPoczty_Nazwa"=>nil, "praw_adKorUlica_Nazwa"=>nil, "praw_podstawowaFormaPrawna_Symbol"=>"2", "praw_szczegolnaFormaPrawna_Symbol"=>"01", "praw_formaFinansowania_Symbol"=>"2", "praw_formaWlasnosci_Symbol"=>"111", "praw_organZalozycielski_Symbol"=>"050000000", "praw_organRejestrowy_Symbol"=>nil, "praw_rodzajRejestruEwidencji_Symbol"=>"000", "praw_podstawowaFormaPrawna_Nazwa"=>"JEDNOSTKA ORGANIZACYJNA NIEMAJĄCA OSOBOWOŚCI PRAWNEJ", "praw_szczegolnaFormaPrawna_Nazwa"=>"ORGANY WŁADZY,ADMINISTRACJI RZĄDOWEJ", "praw_formaFinansowania_Nazwa"=>"JEDNOSTKA BUDŻETOWA", "praw_formaWlasnosci_Nazwa"=>"WŁASNOŚĆ SKARBU PAŃSTWA", "praw_organZalozycielski_Nazwa"=>"PREZES GŁÓWNEGO URZĘDU STATYSTYCZNEGO", "praw_organRejestrowy_Nazwa"=>nil, "praw_rodzajRejestruEwidencji_Nazwa"=>"PODMIOTY UTWORZONE Z MOCY USTAWY", "praw_jednostekLokalnych"=>"0"}
response.first.body
=> "<root>\r\n  <dane>\r\n    <praw_regon14>00033150100000</praw_regon14>\r\n    <praw_nip>5261040828</praw_nip>\r\n    <praw_nazwa>GŁÓWNY URZĄD STATYSTYCZNY</praw_nazwa>\r\n    <praw_nazwaSkrocona>GUS</praw_nazwaSkrocona>\r\n    <praw_numerWrejestrzeEwidencji />\r\n    <praw_dataPowstania>1975-12-15</praw_dataPowstania>\r\n    <praw_dataRozpoczeciaDzialalnosci>1975-12-15</praw_dataRozpoczeciaDzialalnosci>\r\n    <praw_dataWpisuDoREGON />\r\n    <praw_dataZawieszeniaDzialalnosci />\r\n    <praw_dataWznowieniaDzialalnosci />\r\n    <praw_dataZaistnieniaZmiany>2009-02-20</praw_dataZaistnieniaZmiany>\r\n    <praw_dataZakonczeniaDzialalnosci />\r\n    <praw_dataSkresleniazRegon />\r\n    <praw_adSiedzKraj_Symbol>PL</praw_adSiedzKraj_Symbol>\r\n    <praw_adSiedzWojewodztwo_Symbol>14</praw_adSiedzWojewodztwo_Symbol>\r\n    <praw_adSiedzPowiat_Symbol>65</praw_adSiedzPowiat_Symbol>\r\n    <praw_adSiedzGmina_Symbol>108</praw_adSiedzGmina_Symbol>\r\n    <praw_adSiedzKodPocztowy>00925</praw_adSiedzKodPocztowy>\r\n    <praw_adSiedzMiejscowoscPoczty_Symbol>0919810</praw_adSiedzMiejscowoscPoczty_Symbol>\r\n    <praw_adSiedzMiejscowosc_Symbol>0919810</praw_adSiedzMiejscowosc_Symbol>\r\n    <praw_adSiedzUlica_Symbol>10013</praw_adSiedzUlica_Symbol>\r\n    <praw_adSiedzNumerNieruchomosci>208</praw_adSiedzNumerNieruchomosci>\r\n    <praw_adSiedzNumerLokalu />\r\n    <praw_adSiedzNietypoweMiejsceLokalizacji />\r\n    <praw_numerTelefonu>6083000</praw_numerTelefonu>\r\n    <praw_numerWewnetrznyTelefonu />\r\n    <praw_numerFaksu>0226083863</praw_numerFaksu>\r\n    <praw_adresEmail>[email protected]</praw_adresEmail>\r\n    <praw_adresStronyinternetowej>www.stat.gov.pl</praw_adresStronyinternetowej>\r\n    <praw_adresEmail2 />\r\n    <praw_adKorKraj_Symbol>PL</praw_adKorKraj_Symbol>\r\n    <praw_adKorWojewodztwo_Symbol>14</praw_adKorWojewodztwo_Symbol>\r\n    <praw_adKorPowiat_Symbol>65</praw_adKorPowiat_Symbol>\r\n    <praw_adKorGmina_Symbol>108</praw_adKorGmina_Symbol>\r\n    <praw_adKorKodPocztowy>00925</praw_adKorKodPocztowy>\r\n    <praw_adKorMiejscowoscPoczty_Symbol>0919810</praw_adKorMiejscowoscPoczty_Symbol>\r\n    <praw_adKorMiejscowosc_Symbol>0919810</praw_adKorMiejscowosc_Symbol>\r\n    <praw_adKorUlica_Symbol>14199</praw_adKorUlica_Symbol>\r\n    <praw_adKorNumerNieruchomosci>208</praw_adKorNumerNieruchomosci>\r\n    <praw_adKorNumerLokalu />\r\n    <praw_adKorNietypoweMiejsceLokalizacji />\r\n    <praw_adKorNazwaPodmiotuDoKorespondencji />\r\n    <praw_adSiedzKraj_Nazwa>POLSKA</praw_adSiedzKraj_Nazwa>\r\n    <praw_adSiedzWojewodztwo_Nazwa>MAZOWIECKIE</praw_adSiedzWojewodztwo_Nazwa>\r\n    <praw_adSiedzPowiat_Nazwa>m. st. Warszawa</praw_adSiedzPowiat_Nazwa>\r\n    <praw_adSiedzGmina_Nazwa>Śródmieście</praw_adSiedzGmina_Nazwa>\r\n    <praw_adSiedzMiejscowosc_Nazwa>Warszawa</praw_adSiedzMiejscowosc_Nazwa>\r\n    <praw_adSiedzMiejscowoscPoczty_Nazwa>Warszawa</praw_adSiedzMiejscowoscPoczty_Nazwa>\r\n    <praw_adSiedzUlica_Nazwa>ul. Test-Krucza</praw_adSiedzUlica_Nazwa>\r\n    <praw_adKorKraj_Nazwa />\r\n    <praw_adKorWojewodztwo_Nazwa />\r\n    <praw_adKorPowiat_Nazwa />\r\n    <praw_adKorGmina_Nazwa />\r\n    <praw_adKorMiejscowosc_Nazwa />\r\n    <praw_adKorMiejscowoscPoczty_Nazwa />\r\n    <praw_adKorUlica_Nazwa />\r\n    <praw_podstawowaFormaPrawna_Symbol>2</praw_podstawowaFormaPrawna_Symbol>\r\n    <praw_szczegolnaFormaPrawna_Symbol>01</praw_szczegolnaFormaPrawna_Symbol>\r\n    <praw_formaFinansowania_Symbol>2</praw_formaFinansowania_Symbol>\r\n    <praw_formaWlasnosci_Symbol>111</praw_formaWlasnosci_Symbol>\r\n    <praw_organZalozycielski_Symbol>050000000</praw_organZalozycielski_Symbol>\r\n    <praw_organRejestrowy_Symbol />\r\n    <praw_rodzajRejestruEwidencji_Symbol>000</praw_rodzajRejestruEwidencji_Symbol>\r\n    <praw_podstawowaFormaPrawna_Nazwa>JEDNOSTKA ORGANIZACYJNA NIEMAJĄCA OSOBOWOŚCI PRAWNEJ</praw_podstawowaFormaPrawna_Nazwa>\r\n    <praw_szczegolnaFormaPrawna_Nazwa>ORGANY WŁADZY,ADMINISTRACJI RZĄDOWEJ</praw_szczegolnaFormaPrawna_Nazwa>\r\n    <praw_formaFinansowania_Nazwa>JEDNOSTKA BUDŻETOWA</praw_formaFinansowania_Nazwa>\r\n    <praw_formaWlasnosci_Nazwa>WŁASNOŚĆ SKARBU PAŃSTWA</praw_formaWlasnosci_Nazwa>\r\n    <praw_organZalozycielski_Nazwa>PREZES GŁÓWNEGO URZĘDU STATYSTYCZNEGO</praw_organZalozycielski_Nazwa>\r\n    <praw_organRejestrowy_Nazwa />\r\n    <praw_rodzajRejestruEwidencji_Nazwa>PODMIOTY UTWORZONE Z MOCY USTAWY</praw_rodzajRejestruEwidencji_Nazwa>\r\n    <praw_jednostekLokalnych>0</praw_jednostekLokalnych>\r\n  </dane>\r\n</root>"

Example

company = OpenStruct.new

gus_response = GusBir1.find_and_get_full_data(nip: 5261040828)
if gus_response.first
  gus_data = gus_response.first.to_h
  prefix = gus_data.first.first.split('_').first
  company.name = gus_data["#{prefix}_nazwaSkrocona"]
  company.name = gus_data["#{prefix}_nazwa"] if company.name.blank?
  company.address = gus_data["#{prefix}_adSiedzUlica_Nazwa"]
  company.address += " " + gus_data["#{prefix}_adSiedzNumerNieruchomosci"] if gus_data["#{prefix}_adSiedzNumerNieruchomosci"]
  company.address += "/#{gus_data["#{prefix}_adSiedzNumerLokalu"]}" if gus_data["#{prefix}_adSiedzNumerLokalu"]
  company.zip = gus_data["#{prefix}_adSiedzKodPocztowy"].insert(2,'-')
  company.city = gus_data["#{prefix}_adSiedzMiejscowoscPoczty_Nazwa"]
  company.country = gus_data["#{prefix}_adSiedzKraj_Nazwa"]
  company.regon = gus_data["#{prefix}_regon14"] if gus_data["#{prefix}_regon14"]
  company.regon = gus_data["#{prefix}_regon9"] if gus_data["#{prefix}_regon9"]
  company.nip = gus_data["#{prefix}_nip"] if gus_data["#{prefix}_nip"]
end

company
 => #<OpenStruct name="GUS", address="ul. Test-Krucza 208", zip="00-925", city="Warszawa", country="POLSKA", regon="00033150100000", nip="5261040828">

Development

After checking out the repo, run bin/setup to install dependencies. Then, run COVERAGE=1 rake test to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/espago/gus_bir1.

License

The gem is available as open source under the terms of the MIT License.

gus_bir1's People

Contributors

defkode avatar mzmrk avatar tronerta avatar verseth avatar wacaw avatar wojciecheu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gus_bir1's Issues

Mail dependency (via savon-multipart)

Hi guys,

Thanks a lot creating the gem. It is very niche, but very time-saving for those who need this :)

Can you see any way to use it without gem compatibility issues when on newer versions of rails? A lot of big gems depend on mail, which is now in version 2.7.1. Savon-multipart requires ~>2.5.4

Downgrading mail this much required downgrading many other gems too as therefore introduces potential security issues

Thanks and best,
Adam

Savon::SOAPFault

Hi

I'm using a gem in two projects. In the first one, everything works fine, but in the second one, I'm getting an error when trying to use it. (I have same version of gus_bir1 and savon in both projects)

simple code:

GusBir1.production = false
GusBir1.client_key = 'abcde12345abcde12345'
GusBir1.find_by(regon: '00033150100000')

and the error:

(s:Sender) The message with Action 'Zaloguj' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver. Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None). (Savon::SOAPFault)

I have no clue how to solve this issue.
Please help.

Service unavailable on every request

Hey,
I have problem with this gem, its not working anymore. I think something changed in webservice itself and its now responding with http 503 on /peer GET request. Same thing if I use raw Savon, and on both environments. Can you help me with this error?

gus_bir1:

GusBir1.service_status.humanize
D, [2019-10-31T11:52:05.978241 #5322] DEBUG -- : HTTPI /peer GET request to wyszukiwarkaregontest.stat.gov.pl (excon)
Traceback (most recent call last):
        1: from (irb):2
Wasabi::Resolver::HTTPError (Error: 503 for url https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl)
GusBir1.find_by(nip: "xxxxxxxx")
D, [2019-10-31T11:46:29.321983 #5322] DEBUG -- : HTTPI /peer GET request to wyszukiwarkaregontest.stat.gov.pl (excon)
Traceback (most recent call last):
        1: from (irb):1
Wasabi::Resolver::HTTPError (Error: 503 for url https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl)

savon:

client = Savon.client(wsdl: "https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl")
client.operations
D, [2019-10-31T11:28:59.418258 #4180] DEBUG -- : HTTPI /peer GET request to wyszukiwarkaregontest.stat.gov.pl (excon)
Traceback (most recent call last):
        1: from (irb):2
Wasabi::Resolver::HTTPError (Error: 503 for url https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.