コード例 #1
0
        private Osoba ProcessPersonChangedEvent(XDocument xdoc, Rizeni rizeni, long eventId)
        {
            try
            {
                GlobalStats.OsobaChangedEvent++;
                var idPuvodce = ParseValue(xdoc, "idOsobyPuvodce");
                var o         = xdoc.Descendants("osoba").FirstOrDefault();
                var osobaId   = ParseValue(o, "idOsoby");
                var key       = new OsobaId {
                    IdOsoby = osobaId, IdPuvodce = idPuvodce, SpisovaZnacka = rizeni.SpisovaZnacka
                };
                var osoba = Repository.GetPerson(key);

                if (UpdatePerson(osoba, o))
                {
                    Repository.SetPerson(osoba);
                }

                return(osoba);
            }
            catch (Exception e)
            {
                GlobalStats.WriteError(e.Message, eventId);
                throw;
            }
        }
コード例 #2
0
        public void SetInsolvencyProceeding(Rizeni item)
        {
            var res = Elastic.GetESClient(Database.Rizeni).Index(item, o => o.Id(item.SpisovaZnacka.ToString()));             //druhy parametr musi byt pole, ktere je unikatni

            if (!res.IsValid)
            {
                throw new ElasticsearchClientException(res.ServerError?.ToString());
            }
            Stats.InsolvencyProceedingSet++;
        }
コード例 #3
0
        private Rizeni CreateNewInsolvencyProceeding(string spisovaZnacka)
        {
            GlobalStats.RizeniCount++;
            var r = new Rizeni {
                SpisovaZnacka = spisovaZnacka
            };

            LinkRequestsQueue.Enqueue(r);
            return(r);
        }
コード例 #4
0
 protected bool Equals(Rizeni other)
 {
     return(Equals(SpisovaZnacka, other.SpisovaZnacka) &&
            Equals(Stav, other.Stav) &&
            Equals(Vyskrtnuto, other.Vyskrtnuto) &&
            Equals(Url, other.Url) &&
            Equals(DatumZalozeni, other.DatumZalozeni) &&
            Equals(PosledniZmena, other.PosledniZmena) &&
            Equals(Soud, other.Soud) &&
            Enumerable.SequenceEqual(Subjekty, other.Subjekty));
 }
コード例 #5
0
 private void AddToSubjects(Osoba osoba, Rizeni rizeni, DateTime lastChanged)
 {
     if (osoba.Role != "SPRÁVCE")
     {
         var subjekt = new Subjekt {
             Nazev = osoba.Nazev.ToUpperInvariant(), ICO = osoba.ICO, Rc = osoba.Rc, Role = osoba.Role.Substring(0, 1)
         };
         if (rizeni.Subjekty.All(s => s.Rc != osoba.Rc || s.ICO != osoba.ICO))
         {
             rizeni.Subjekty.Add(subjekt);
             rizeni.PosledniZmena = lastChanged;
         }
     }
 }
コード例 #6
0
        private Osoba ProcessAddressChangedEvent(XDocument xdoc, Rizeni rizeni, long eventId)
        {
            try
            {
                GlobalStats.AdresaChangedEvent++;
                var idPuvodce = ParseValue(xdoc, "idOsobyPuvodce");
                var o         = xdoc.Descendants("osoba").FirstOrDefault();
                var osobaId   = ParseValue(o, "idOsoby");
                var key       = new OsobaId {
                    IdOsoby = osobaId, IdPuvodce = idPuvodce, SpisovaZnacka = rizeni.SpisovaZnacka
                };
                var osoba = Repository.GetPerson(key);

                var changed = UpdatePerson(osoba, o);

                var a = o.Descendants("adresa").FirstOrDefault();

                if (a != null)
                {
                    var druhAdresy = ParseValue(a, "druhAdresy");
                    if (druhAdresy == "TRVALÁ" || druhAdresy == "SÍDLO FY")
                    {
                        changed |= Update(osoba, p => p.Mesto, ParseValue(a, "mesto"));
                        changed |= Update(osoba, p => p.Okres, ParseValue(a, "okres"));
                        changed |= Update(osoba, p => p.Zeme, ParseValue(a, "zeme"));
                        changed |= Update(osoba, p => p.Psc, ParseValue(a, "psc"));
                    }
                }

                if (changed)
                {
                    Repository.SetPerson(osoba);
                }

                return(osoba);
            }
            catch (Exception e)
            {
                GlobalStats.WriteError(e.Message, eventId);
                throw;
            }
        }
コード例 #7
0
        private void ProcessDocument(WsResult item, Rizeni rizeni)
        {
            if (!string.IsNullOrEmpty(item.DokumentUrl) && !IgnoreDocuments)
            {
                var document = Repository.GetDocument(item.Id.ToString()) ?? new Dokument
                {
                    Id            = item.Id.ToString(),
                    SpisovaZnacka = item.SpisovaZnacka,
                };

                document.Url          = item.DokumentUrl;
                document.DatumVlozeni = item.DatumZalozeniUdalosti;
                document.Popis        = item.PopisUdalosti;
                document.Oddil        = item.Oddil;

                Repository.SetDocument(document);
                rizeni.PosledniZmena = item.DatumZalozeniUdalosti;
                GlobalStats.DocumentCount++;
            }
        }
コード例 #8
0
 public void SetInsolvencyProceeding(Rizeni item) => UnderlyingRepository.SetInsolvencyProceeding(item);