Ejemplo n.º 1
0
        /// <summary>
        /// Pobranie szczegółowych danych firmy
        /// </summary>
        /// <param name="type">typ numeru identyfikującego firmę</param>
        /// <param name="number">numer określonego typu</param>
        /// <param name="force">jeżeli true zostanie wymuszone zapytanie do GUS w celu pobrania najświeższych danych (trwa dłużej)</param>
        /// <returns>dane firmy lub null w przypadku błędu</returns>
        public AllData GetAllData(Number type, string number, bool force = false)
        {
            try
            {
                // clear error
                LastError = string.Empty;

                // validate number and construct path
                string suffix = null;

                if ((suffix = GetPathSuffix(type, number)) == null)
                {
                    return(null);
                }

                // prepare url
                Uri url = new Uri(URL + (force ? "/getf" : "/get") + "/all/" + suffix);

                // prepare request
                XPathDocument doc = Get(url);

                if (doc == null)
                {
                    LastError = "Nie udało się nawiązać połączenia z serwisem NIP24";
                    return(null);
                }

                // parse response
                string res = GetString(doc, "/result/error/code", null);

                if (res != null)
                {
                    LastError = GetString(doc, "/result/error/description", null);
                    return(null);
                }

                AllData ad = new AllData();

                ad.UID = GetString(doc, "/result/firm/uid", null);

                ad.NIP   = GetString(doc, "/result/firm/nip", null);
                ad.Type  = GetString(doc, "/result/firm/type", null);
                ad.NIP   = GetString(doc, "/result/firm/nip", null);
                ad.REGON = GetString(doc, "/result/firm/regon", null);

                ad.Name       = GetString(doc, "/result/firm/name", null);
                ad.ShortName  = GetString(doc, "/result/firm/shortname", null);
                ad.FirstName  = GetString(doc, "/result/firm/firstname", null);
                ad.SecondName = GetString(doc, "/result/firm/secondname", null);
                ad.LastName   = GetString(doc, "/result/firm/lastname", null);

                ad.Street        = GetString(doc, "/result/firm/street", null);
                ad.StreetCode    = GetString(doc, "/result/firm/streetCode", null);
                ad.StreetNumber  = GetString(doc, "/result/firm/streetNumber", null);
                ad.HouseNumber   = GetString(doc, "/result/firm/houseNumber", null);
                ad.City          = GetString(doc, "/result/firm/city", null);
                ad.CityCode      = GetString(doc, "/result/firm/cityCode", null);
                ad.Community     = GetString(doc, "/result/firm/community", null);
                ad.CommunityCode = GetString(doc, "/result/firm/communityCode", null);
                ad.County        = GetString(doc, "/result/firm/county", null);
                ad.CountyCode    = GetString(doc, "/result/firm/countyCode", null);
                ad.State         = GetString(doc, "/result/firm/state", null);
                ad.StateCode     = GetString(doc, "/result/firm/stateCode", null);
                ad.PostCode      = GetString(doc, "/result/firm/postCode", null);
                ad.PostCity      = GetString(doc, "/result/firm/postCity", null);

                ad.Phone = GetString(doc, "/result/firm/phone", null);
                ad.Email = GetString(doc, "/result/firm/email", null);
                ad.WWW   = GetString(doc, "/result/firm/www", null);

                ad.CreationDate     = GetDateTime(doc, "/result/firm/creationDate");
                ad.StartDate        = GetDateTime(doc, "/result/firm/startDate");
                ad.RegistrationDate = GetDateTime(doc, "/result/firm/registrationDate");
                ad.HoldDate         = GetDateTime(doc, "/result/firm/holdDate");
                ad.RenevalDate      = GetDateTime(doc, "/result/firm/renevalDate");
                ad.LastUpdateDate   = GetDateTime(doc, "/result/firm/lastUpdateDate");
                ad.EndDate          = GetDateTime(doc, "/result/firm/endDate");

                ad.RegistryEntityCode = GetString(doc, "/result/firm/registryEntity/code", null);
                ad.RegistryEntityName = GetString(doc, "/result/firm/registryEntity/name", null);

                ad.RegistryCode = GetString(doc, "/result/firm/registry/code", null);
                ad.RegistryName = GetString(doc, "/result/firm/registry/name", null);

                ad.RecordCreationDate = GetDateTime(doc, "/result/firm/record/created");
                ad.RecordNumber       = GetString(doc, "/result/firm/record/number", null);

                ad.BasicLegalFormCode = GetString(doc, "/result/firm/basicLegalForm/code", null);
                ad.BasicLegalFormName = GetString(doc, "/result/firm/basicLegalForm/name", null);

                ad.SpecificLegalFormCode = GetString(doc, "/result/firm/specificLegalForm/code", null);
                ad.SpecificLegalFormName = GetString(doc, "/result/firm/specificLegalForm/name", null);

                ad.OwnershipFormCode = GetString(doc, "/result/firm/ownershipForm/code", null);
                ad.OwnershipFormName = GetString(doc, "/result/firm/ownershipForm/name", null);

                for (int i = 1; ; i++)
                {
                    string code = GetString(doc, "/result/firm/PKDs/PKD[" + i + "]/code", null);

                    if (code == null)
                    {
                        break;
                    }

                    string descr = GetString(doc, "/result/firm/PKDs/PKD[" + i + "]/description", null);
                    string pri   = GetString(doc, "/result/firm/PKDs/PKD[" + i + "]/primary", "false");

                    PKD pkd = new PKD();

                    pkd.Code        = code;
                    pkd.Description = descr;
                    pkd.Primary     = pri.Equals("true");

                    ad.PKD.Add(pkd);
                }

                return(ad);
            }
            catch (Exception e)
            {
                LastError = e.Message;
            }

            return(null);
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            try
            {
                // Utworzenie obiektu klienta usługi serwisu produkcyjnego
                // id – ciąg znaków reprezentujący identyfikator klucza API
                // key – ciąg znaków reprezentujący klucz API
                // NIP24Client nip24 = new NIP24Client("id", "key");

                // Utworzenie obiektu klienta usługi serwisu testowego
                NIP24Client nip24 = new NIP24Client();

                string nip            = "7171642051";
                string nip_eu         = "PL" + nip;
                string account_number = "49154000046458439719826658";

                // Sprawdzenie stanu konta
                AccountStatus account = nip24.GetAccountStatus();

                if (account != null)
                {
                    Console.WriteLine(account);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Sprawdzenie statusu fimy
                bool active = nip24.IsActive(Number.NIP, nip);

                if (active)
                {
                    Console.WriteLine("Firma prowadzi aktywną działalność");
                }
                else
                {
                    if (String.IsNullOrEmpty(nip24.LastError))
                    {
                        Console.WriteLine("Firma zawiesiła lub zakończyła działalność");
                    }
                    else
                    {
                        Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                    }
                }

                // Sprawdzenie statusu firmy w rejestrze VAT
                VATStatus vat = nip24.GetVATStatus(Number.NIP, nip);

                if (vat != null)
                {
                    Console.WriteLine(vat);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody zwracającej dane do faktury
                InvoiceData invoice = nip24.GetInvoiceData(Number.NIP, nip);

                if (invoice != null)
                {
                    Console.WriteLine(invoice);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody zwracającej szczegółowe dane firmy
                AllData all = nip24.GetAllData(Number.NIP, nip);

                if (all != null)
                {
                    Console.WriteLine(all);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody zwracającej dane z systemu VIES
                VIESData vies = nip24.GetVIESData(nip_eu);

                if (vies != null)
                {
                    Console.WriteLine(vies);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody zwracającej informacje o rachunku bankowym
                IBANStatus iban = nip24.GetIBANStatus(Number.NIP, nip, account_number);

                if (iban != null)
                {
                    Console.WriteLine(iban);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody sprawdzającej status podmiotu na białej liście podatników VAT
                WLStatus whitelist = nip24.GetWhitelistStatus(Number.NIP, nip, account_number);

                if (whitelist != null)
                {
                    Console.WriteLine(whitelist);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }

                // Wywołanie metody wyszukującej dane w rejestrze VAT
                SearchResult result = nip24.SearchVATRegistry(Number.NIP, nip);

                if (result != null)
                {
                    Console.WriteLine(result);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError + " (kod: " + nip24.LastErrorCode + ")");
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.StackTrace);
            }
        }
        static void Main(string[] args)
        {
            try
            {
                // Utworzenie obiektu klienta usługi serwisu produkcyjnego
                // id – ciąg znaków reprezentujący identyfikator klucza API
                // key – ciąg znaków reprezentujący klucz API
                // NIP24Client nip24 = new NIP24Client("id", "key");

                // Utworzenie obiektu klienta usługi serwisu testowego
                NIP24Client nip24 = new NIP24Client();

                string nip    = "7171642051";
                string nip_eu = "PL" + nip;

                // Sprawdzenie stanu konta
                AccountStatus account = nip24.GetAccountStatus();

                if (account != null)
                {
                    Console.WriteLine(account);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError);
                }

                // Sprawdzenie statusu fimy
                bool active = nip24.IsActive(Number.NIP, nip);

                if (active)
                {
                    Console.WriteLine("Firma prowadzi aktywną działalność");
                }
                else
                {
                    if (String.IsNullOrEmpty(nip24.LastError))
                    {
                        Console.WriteLine("Firma zawiesiła lub zakończyła działalność");
                    }
                    else
                    {
                        Console.WriteLine("Błąd: " + nip24.LastError);
                    }
                }

                // Sprawdzenie statusu firmy w rejestrze VAT
                VATStatus vat = nip24.GetVATStatus(Number.NIP, nip, true);

                if (vat != null)
                {
                    Console.WriteLine("NIP: " + vat.NIP);
                    Console.WriteLine("REGON: " + vat.REGON);
                    Console.WriteLine("Nazwa firmy: " + vat.Name);
                    Console.WriteLine("Status: " + vat.Status);
                    Console.WriteLine("Wynik: " + vat.Result);
                    Console.WriteLine("Data sprawdzenia: " + vat.Date);
                    Console.WriteLine("Źródło: " + vat.Source);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError);
                }

                // Wywołanie metody zwracającej dane do faktury
                InvoiceData invoice = nip24.GetInvoiceData(Number.NIP, nip, false);

                if (invoice != null)
                {
                    Console.WriteLine("Nazwa: " + invoice.Name);
                    Console.WriteLine("Adres : " + invoice.PostCode + " " + invoice.PostCity + " " + invoice.Street
                                      + " " + invoice.StreetNumber + "/" + invoice.HouseNumber);
                    Console.WriteLine("NIP: " + invoice.NIP);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError);
                }

                // Wywołanie metody zwracającej szczegółowe dane firmy
                AllData all = nip24.GetAllData(Number.NIP, nip, false);

                if (all != null)
                {
                    Console.WriteLine(all);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError);
                }

                // Wywołanie metody zwracającej dane z systemu VIES
                VIESData vies = nip24.GetVIESData(nip_eu);

                if (vies != null)
                {
                    Console.WriteLine(vies);
                }
                else
                {
                    Console.WriteLine("Błąd: " + nip24.LastError);
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.StackTrace);
            }
        }