Ejemplo n.º 1
0
        public void downloadPublDaneRaportFizycznaOsoba(string regon)
        {
            if (regon != "")
            {
                if (!File.Exists(xmlPath + "\\PublDaneRaportFizycznaOsoba\\" + regon + ".xml"))
                {
                    string        AdresUslugi = "https://wyszukiwarkaregon.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc";
                    WSHttpBinding myBinding   = new WSHttpBinding();
                    myBinding.Security.Mode = SecurityMode.Transport;
                    myBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
                    myBinding.MessageEncoding = WSMessageEncoding.Mtom;
                    EndpointAddress         ea = new EndpointAddress(AdresUslugi);
                    UslugaBIRzewnPublClient cc = new UslugaBIRzewnPublClient(myBinding, ea);
                    cc.Open();
                    string strSID = cc.Zaloguj(bir1Key);
                    using (OperationContextScope scope = new OperationContextScope(cc.InnerChannel))
                    {
                        HttpRequestMessageProperty requestMessage = new HttpRequestMessageProperty();
                        requestMessage.Headers.Add("sid", strSID);
                        OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = requestMessage;

                        //Szukaj
                        ParametryWyszukiwania objParametryGR1 = new ParametryWyszukiwania();
                        string xmlFullRaport = cc.DanePobierzPelnyRaport(regon, "PublDaneRaportFizycznaOsoba");
                        File.WriteAllText(xmlPath + "\\PublDaneRaportFizycznaOsoba\\" + regon + ".xml", xmlFullRaport);
                    }
                }
            }
        }
        public string Connect(string nips)
        {
            WSHttpBinding myBinding = new WSHttpBinding();

            myBinding.Security.Mode = SecurityMode.Transport;
            myBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
            myBinding.MessageEncoding = WSMessageEncoding.Mtom;


            EndpointAddress         ea      = new EndpointAddress("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
            UslugaBIRzewnPublClient service = new UslugaBIRzewnPublClient(myBinding, ea);

            service.Open();

            string sid = service.Zaloguj("abcde12345abcde12345");

            new OperationContextScope(service.InnerChannel);

            HttpRequestMessageProperty reqProps = new HttpRequestMessageProperty();

            reqProps.Headers.Add("sid", sid);

            OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = reqProps;
            ParametryWyszukiwania parametryWyszukiwania = new ParametryWyszukiwania();

            parametryWyszukiwania.Nipy = nips;

            return(service.DaneSzukajPodmioty(parametryWyszukiwania));
        }
Ejemplo n.º 3
0
        public static string regonFromNIP(string nip, string key)
        {
            try
            {
                string        AdresUslugi = "https://wyszukiwarkaregon.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc";
                WSHttpBinding myBinding   = new WSHttpBinding();
                myBinding.Security.Mode = SecurityMode.Transport;
                myBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
                myBinding.MessageEncoding = WSMessageEncoding.Mtom;
                EndpointAddress         ea = new EndpointAddress(AdresUslugi);
                UslugaBIRzewnPublClient cc = new UslugaBIRzewnPublClient(myBinding, ea);
                cc.Open();
                string strSID = cc.Zaloguj(key);
                using (OperationContextScope scope = new OperationContextScope(cc.InnerChannel))
                {
                    HttpRequestMessageProperty requestMessage = new HttpRequestMessageProperty();
                    requestMessage.Headers.Add("sid", strSID);
                    OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = requestMessage;

                    //Szukaj
                    ParametryWyszukiwania objParametryGR1 = new ParametryWyszukiwania();
                    objParametryGR1.Nip = nip;
                    string      searchXml = cc.DaneSzukaj(objParametryGR1);
                    XmlDocument xdoc      = new XmlDocument();
                    xdoc.LoadXml(searchXml);
                    string regon = xdoc.SelectSingleNode("root/dane/Regon").InnerText;
                    return(regon);
                }
            }
            catch
            {
                return("");
            }
        }
Ejemplo n.º 4
0
 public MainWindow()
 {
     timer    = new Timer(Timer_Elapsed, null, TICK_TIME, Timeout.Infinite);
     client   = new UslugaBIRzewnPublClient();
     param    = new ParametryWyszukiwania();
     document = new XmlDocument();
     Login();
     Closing += MainWindow_Closing;
     InitializeComponent();
 }
Ejemplo n.º 5
0
        public static void CheckNIP() //Metoda sprawdzająca nip lub kilka nipów w bazie danych. Korzysta z otwartej sesji w metodzi ConBIR
        {
            UslugaBIRzewnPublClient cc       = ConBIR();
            ParametryWyszukiwania   numerNip = new ParametryWyszukiwania();

            Console.WriteLine("Wprowadź nip lub kilka nipów oddzielonych przecinkiem : ");
            numerNip.Nipy = Console.ReadLine();
            string ret = cc.DaneSzukajPodmioty(numerNip);

            SerializeModule(ret);
            cc.Close();
        }
Ejemplo n.º 6
0
        public async Task <T> szukajPodmioty <T>(string nip)
        {
            OperationContextScope      scope       = new OperationContextScope(uslugaBIRzewn.InnerChannel);
            HttpRequestMessageProperty httpRequest = new HttpRequestMessageProperty();

            httpRequest.Headers.Add("sid", sid);
            OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequest;

            var parametrSzukajKontrahenta = new ParametryWyszukiwania
            {
                Nip = nip
            };

            var response = await uslugaBIRzewn.DaneSzukajPodmiotyAsync(parametrSzukajKontrahenta);

            return(DeserializeFromXml <T>(response.DaneSzukajPodmiotyResult));
        }
Ejemplo n.º 7
0
        public static async Task <string> PobierzDane(string nip)
        {
            // WSHttpBinding myBinding = new WSHttpBinding();
            // myBinding.Security.Mode = SecurityMode.Transport;
            // myBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
            // myBinding.TextEncoding = Encoding.Unicode;              // WSMessageEncoding.Mtom;

            //  BasicHttpBinding b = new BasicHttpBinding();
            //  b.Security.Mode = BasicHttpSecurityMode.Transport;
            //  b.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
            //  b.TextEncoding = Encoding.Unicode;

            string result;
            var    encoding  = new MtomMessageEncoderBindingElement(new TextMessageEncodingBindingElement());
            var    transport = new HttpsTransportBindingElement();

            var customBinding = new CustomBinding(encoding, transport);
            // bir.Endpoint.Binding = customBinding;

            EndpointAddress         ea = new EndpointAddress("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
            UslugaBIRzewnPublClient cc = new UslugaBIRzewnPublClient(customBinding, ea);
            await cc.OpenAsync();

            ZalogujResponse r = await cc.ZalogujAsync("abcde12345abcde12345");

            using (OperationContextScope scope = new OperationContextScope(cc.InnerChannel))
            {
                System.ServiceModel.Channels.HttpRequestMessageProperty requestMessage = new System.ServiceModel.Channels.HttpRequestMessageProperty();
                requestMessage.Headers.Add("sid", r.ZalogujResult);
                OperationContext.Current.OutgoingMessageProperties[System.ServiceModel.Channels.HttpRequestMessageProperty.Name] = requestMessage;
                // DANE SZUKAJ 1
                ParametryWyszukiwania objParametryGR1 = new ParametryWyszukiwania();
                objParametryGR1.Nip = nip;
                DaneSzukajPodmiotyResponse dane = await cc.DaneSzukajPodmiotyAsync(objParametryGR1);

                // File.WriteAllText(Directory.GetCurrentDirectory() + "\\wynik.xml", dane.DaneSzukajPodmiotyResult);
                result = dane.DaneSzukajPodmiotyResult;
                WylogujResponse w = await cc.WylogujAsync(r.ZalogujResult);

                cc.Close();
                return(result);
            }
        }
Ejemplo n.º 8
0
        public static GusDataDto DataSearchSubjects(string nip)
        {
            var sid = Login();

            _ = new OperationContextScope(Client.InnerChannel);
            var reqProps = new HttpRequestMessageProperty();

            reqProps.Headers.Add("sid", sid);
            OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = reqProps;
            var queryParam = new ParametryWyszukiwania
            {
                Nip = nip
            };
            var result     = Client.DaneSzukajPodmioty(queryParam);
            var serializer = new XmlSerializer(typeof(GusRootObjectDto));
            GusRootObjectDto gusRoot;

            using (var reader = new StringReader(result))
            {
                gusRoot = (GusRootObjectDto)serializer.Deserialize(reader);
            }
            return(gusRoot?.Data);
        }
Ejemplo n.º 9
0
        //Zdarzenie obsługujące przycisk szukania
        private void SzukajButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (nipTextBox.Text.Length != 10) //Sprawdzanie czy podany łańcuch w TextBoxie ma 10 znaków
                {
                    MessageBox.Show("Numer NIP musi mieć 10 znaków");
                }
                else
                {
                    ParametryWyszukiwania parametryFirmy = PobierzParametry(nipTextBox.Text);
                    var         firma    = połącz.Klient.DaneSzukajPodmioty(parametryFirmy);
                    XmlDocument xmlFirmy = new XmlDocument();
                    xmlFirmy.LoadXml(firma);

                    if (CzyNipIstnieje(xmlFirmy)) //Wypełnianie okna informacjami o firmie
                    {
                        regonLabel.Content       = TekstZnacznikaXmlFirmy(xmlFirmy, "Regon");
                        nazwaTexTBlock.Text      = TekstZnacznikaXmlFirmy(xmlFirmy, "Nazwa");
                        województwoLabel.Content = TekstZnacznikaXmlFirmy(xmlFirmy, "Wojewodztwo");
                        adresLabel.Content       = TekstZnacznikaXmlFirmy(xmlFirmy, "Miejscowosc") + ", " + TekstZnacznikaXmlFirmy(xmlFirmy, "Ulica") + " " + TekstZnacznikaXmlFirmy(xmlFirmy, "NrNieruchomosci");
                        gminaLabel.Content       = TekstZnacznikaXmlFirmy(xmlFirmy, "Gmina");
                        typLabel.Content         = TekstZnacznikaXmlFirmy(xmlFirmy, "Typ");
                        kodPocztowyLabel.Content = TekstZnacznikaXmlFirmy(xmlFirmy, "KodPocztowy");
                        powiatLabel.Content      = TekstZnacznikaXmlFirmy(xmlFirmy, "Powiat");
                    }
                    else
                    {
                        MessageBox.Show("Brak firmy o podanym numerze NIP");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 10
0
        private void buttonSearch_Click(object sender, EventArgs e)
        {
            labelErrorMsg.Visible = false;

            UslugaBIRzewnPublClient polaczenie = new UslugaBIRzewnPublClient();
            string sid = polaczenie.Zaloguj("abcde12345abcde12345");

            try
            {
                //Środowisko testowe usługi BIR1.1
                OperationContextScope scope = new OperationContextScope(polaczenie.InnerChannel);

                HttpRequestMessageProperty requestMessageProperty = new HttpRequestMessageProperty();
                requestMessageProperty.Headers.Add("sid", sid);

                OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = requestMessageProperty;

                StringBuilder sb = new StringBuilder();
                foreach (object o in listBoxNIP.SelectedItems)
                {
                    sb.AppendLine(o.ToString());
                }
                string s = sb.ToString();

                ParametryWyszukiwania parametryWyszukiwania = new ParametryWyszukiwania();
                parametryWyszukiwania.Nipy = s;

                DataSet      dataSet = new DataSet();
                StringReader sr      = new StringReader(polaczenie.DaneSzukajPodmioty(parametryWyszukiwania));

                string przekazanieKomunikatu = polaczenie.GetValue("KomunikatKod");
                int    zwracanaWartosc       = Convert.ToInt32(przekazanieKomunikatu);

                dataSet.ReadXml(sr);

                PrepareDataGridView1ForData();

                if (zwracanaWartosc == 4)
                {
                    labelErrorMsg.Visible = true;
                    labelErrorMsg.Text    = "Nie znaleziono żadnych podmiotów gospodarczych.";
                }

                else
                {
                    dataGridView1.AutoGenerateColumns = false;
                    dataGridView1.ColumnCount         = 6;

                    dataGridView1.Columns[0].Name             = "Regon";
                    dataGridView1.Columns[0].HeaderText       = "REGON";
                    dataGridView1.Columns[0].DataPropertyName = "Regon";

                    dataGridView1.Columns[1].HeaderText       = "Nip";
                    dataGridView1.Columns[1].Name             = "NIP";
                    dataGridView1.Columns[1].DataPropertyName = "Nip";

                    dataGridView1.Columns[2].Name             = "Nazwa";
                    dataGridView1.Columns[2].HeaderText       = "Nazwa";
                    dataGridView1.Columns[2].DataPropertyName = "Nazwa";

                    dataGridView1.Columns[3].Name             = "Ulica";
                    dataGridView1.Columns[3].HeaderText       = "Ulica";
                    dataGridView1.Columns[3].DataPropertyName = "Ulica";

                    dataGridView1.Columns[4].Name             = "Miejscowosc";
                    dataGridView1.Columns[4].HeaderText       = "Miejscowość";
                    dataGridView1.Columns[4].DataPropertyName = "Miejscowosc";

                    dataGridView1.Columns[5].Name             = "KodPocztowy";
                    dataGridView1.Columns[5].HeaderText       = "Kod Pocztowy";
                    dataGridView1.Columns[5].DataPropertyName = "KodPocztowy";

                    dataGridView1.DataSource = dataSet.Tables[0];
                }
            }
            catch (Exception)
            {
                string error   = "Usługa BIR1 niedostępna lub żaden identyfikator NIP nie został dodany do listy wyszukiwania.";
                string caption = "Błąd";
                MessageBox.Show(error, caption, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            polaczenie.Wyloguj(sid);
        }
Ejemplo n.º 11
0
        public BiRCompany GetCompany(string nip)
        {
            try
            {
                _lastVerifyStatus = BiRVerifyStatus.NoSearchYet;

                var paramse = new ParametryWyszukiwania();
                paramse.Nip = nip;


                string errorCode;
                if (couter == 24)
                {
                    Init();
                    couter = 0;
                }
                string result = _client.DaneSzukajPodmioty(paramse);
                couter++;


                if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                {
                    errorCode = _client.GetValue(_codeOfMessageFromService);
                    Console.WriteLine(errorCode);
                    if (string.IsNullOrEmpty(errorCode) || errorCode.Equals(_errCodeForNoSession))
                    {
                        LogIn(false);
                        result = _client.DaneSzukajPodmioty(paramse);
                        if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                        {
                            errorCode = _client.GetValue(_codeOfMessageFromService);
                        }
                    }

                    if (!errorCode.Equals(_errCodeForEverythingOK))
                    {
                        _lastVerifyStatus = GetStatusFromErrorCode(errorCode, result);
                        return(null);
                    }
                }

                BiRCompany company = BiRResponseXMLParser.GetCompanyFromDaneSzukajPodmiotyResponse(result);

                // "P" = Typ podmiotu  rejestru REGON:  jednostka prawna(= osoba  prawna lub  jednostka organizacyjna
                // nieposiadająca osobowości prawnej, np.spółka cywilna)
                if (company.Type == _prawnaCompanyType)
                {
                    company.CompanyType = BiRCompanyType.Prawna;
                    result = _client.DanePobierzPelnyRaport(company.Regon, _raportOsPrawnaName);
                    if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                    {
                        errorCode = _client.GetValue(_codeOfMessageFromService);
                        if (string.IsNullOrEmpty(errorCode) || errorCode.Equals(_errCodeForNoSession))
                        {
                            LogIn(false);
                            result = _client.DanePobierzPelnyRaport(company.Regon, _raportOsPrawnaName);
                            if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                            {
                                errorCode = _client.GetValue(_codeOfMessageFromService);
                            }
                        }
                        if (!errorCode.Equals(_errCodeForEverythingOK))
                        {
                            _lastVerifyStatus = GetStatusFromErrorCode(errorCode, result);
                            return(null);
                        }
                    }

                    BiRResponseXMLParser.AddDanePrawna(ref company, result);
                }
                // Typ podmiotu rejestru REGON: jedn. fizyczna (= os. fizyczna prowadząca działalność gospodarczą)
                else if (company.Type == _osFizycznaCompanyType && company.SilosID == _dzialnoscWpisanaDoCedigSilosType)
                {
                    company.CompanyType = BiRCompanyType.FizycznaProwadzacaDzialalnoscGosp;
                    result = _client.DanePobierzPelnyRaport(company.Regon, _raportOsFizCedigName);
                    if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                    {
                        errorCode = _client.GetValue(_codeOfMessageFromService);
                        if (string.IsNullOrEmpty(errorCode) || errorCode.Equals(_errCodeForNoSession))
                        {
                            LogIn(false);
                            result = _client.DanePobierzPelnyRaport(company.Regon, _raportOsFizCedigName);
                            if (BiRResponseXMLParser.IsResponseEmpty(result) || BiRResponseXMLParser.ContainsError(result))
                            {
                                errorCode = _client.GetValue(_codeOfMessageFromService);
                            }
                        }
                        if (!errorCode.Equals(_errCodeForEverythingOK))
                        {
                            _lastVerifyStatus = GetStatusFromErrorCode(errorCode, result);
                            return(null);
                        }
                    }
                    BiRResponseXMLParser.AddDaneFizycznaCedig(ref company, result);
                }
                else
                {
                    // inaczej może być jeszcze LP i LF, czyli jednostek lokalnych
                    throw new ArgumentOutOfRangeException(result, "Zapytanie zwróciło nieobsługiwany typ podmiotu tj. typ = " + company.Type + " , silos = " + company.SilosID);
                }
                return(company);
            } catch (Exception e)
            {
            }

            return(null);
        }