示例#1
0
        /// <summary>
        /// Pobranie podstawowych danych firmy do faktury
        /// </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 InvoiceData GetInvoiceData(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") + "/invoice/" + 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);
                }

                InvoiceData id = new InvoiceData();

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

                id.NIP = GetString(doc, "/result/firm/nip", null);

                id.Name      = GetString(doc, "/result/firm/name", null);
                id.FirstName = GetString(doc, "/result/firm/firstname", null);
                id.LastName  = GetString(doc, "/result/firm/lastname", null);

                id.Street       = GetString(doc, "/result/firm/street", null);
                id.StreetNumber = GetString(doc, "/result/firm/streetNumber", null);
                id.HouseNumber  = GetString(doc, "/result/firm/houseNumber", null);
                id.City         = GetString(doc, "/result/firm/city", null);
                id.PostCode     = GetString(doc, "/result/firm/postCode", null);
                id.PostCity     = GetString(doc, "/result/firm/postCity", null);

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

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

            return(null);
        }
示例#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);
            }
        }