Example #1
0
        public Analysis.RatingDataPerYear RatingPerYearForHolding(Data.Relation.AktualnostType aktualnost)
        {
            Analysis.RatingDataPerYear myStat = Analysis.ACore.GetRatingForICO(this.ICO);

            Dictionary <string, Analysis.RatingDataPerYear> PerIcoStat =
                IcosInHolding(aktualnost)
                .Select(ico => new { ico = ico, ss = Analysis.ACore.GetRatingForICO(ico) })
                .ToDictionary(k => k.ico, v => v.ss);

            foreach (var icodata in PerIcoStat)
            {
                foreach (var kv in icodata.Value.Data)
                {
                    if (myStat.Data.Keys.Contains(kv.Key))
                    {
                        myStat.Data[kv.Key].NumBezCeny            += kv.Value.NumBezCeny;
                        myStat.Data[kv.Key].NumBezSmluvniStrany   += kv.Value.NumBezSmluvniStrany;
                        myStat.Data[kv.Key].NumSPolitiky          += kv.Value.NumSPolitiky;
                        myStat.Data[kv.Key].SumKcBezSmluvniStrany += kv.Value.SumKcBezSmluvniStrany;
                        myStat.Data[kv.Key].SumKcSPolitiky        += kv.Value.SumKcSPolitiky;
                    }
                    else
                    {
                        myStat.Data.Add(kv.Key, kv.Value);
                    }
                }
            }

            return(new Analysis.RatingDataPerYear(new Analysis.RatingDataPerYear[] { myStat }, StatisticForHolding(aktualnost)));
        }
Example #2
0
 public IEnumerable <string> IcosInHolding(Data.Relation.AktualnostType aktualnost)
 {
     return(this.AktualniVazby(aktualnost)
            .Where(v => !string.IsNullOrEmpty(v.To?.UniqId) &&
                   v.To.Type == HlidacStatu.Lib.Data.Graph.Node.NodeType.Company)
            .Select(v => v.To)
            .Distinct(new HlidacStatu.Lib.Data.Graph.NodeComparer())
            .Select(m => m.Id));
 }
        static OsobaStatistic Empty(Data.Relation.AktualnostType aktualnost = Data.Relation.AktualnostType.Nedavny)
        {
            OsobaStatistic os = new OsobaStatistic();

            os.Aktualnost       = aktualnost;
            os.BasicStatPerYear = BasicDataPerYear.Empty();
            os.RatingPerYear    = RatingDataPerYear.Empty();
            return(os);
        }
Example #4
0
        public Analysis.BasicDataPerYear StatisticForHolding(Data.Relation.AktualnostType aktualnost)
        {
            Analysis.BasicDataPerYear myStat = Analysis.ACore.GetBasicStatisticForICO(this.ICO);

            Dictionary <string, Analysis.BasicDataPerYear> PerIcoStat =
                IcosInHolding(aktualnost)
                .Select(ico => new { ico = ico, ss = Analysis.ACore.GetBasicStatisticForICO(ico) })
                .ToDictionary(k => k.ico, v => v.ss);

            foreach (var kv in PerIcoStat)
            {
                myStat.Add(kv.Value);
            }

            return(myStat);
        }
        public OsobaStatistic(Data.Osoba o, Data.Relation.AktualnostType aktualnost, bool refresh = false)
        {
            this.Item       = o.NameId;
            this._osoba     = o;
            this.Aktualnost = aktualnost;

            osq = new OsobaStatisticQuery()
            {
                NameId = this.Item, Aktualnost = this.Aktualnost
            };

            if (refresh)
            {
                osobaStatcache.Delete(osq);
            }

            this.InitData();
        }
Example #6
0
            public static RegistrSmluv Calculate(Osoba o, Data.Relation.AktualnostType aktualnost, int?obor)
            {
                RegistrSmluv res = new RegistrSmluv();

                res.OsobaNameId = o.NameId;
                res.Aktualnost  = aktualnost;
                res.Obor        = (Smlouva.SClassification.ClassificationsTypes?)obor;

                Dictionary <string, StatisticsSubjectPerYear <Smlouva.Statistics.Data> > statni = new Dictionary <string, StatisticsSubjectPerYear <Smlouva.Statistics.Data> >();
                Dictionary <string, StatisticsSubjectPerYear <Smlouva.Statistics.Data> > soukr  = new Dictionary <string, StatisticsSubjectPerYear <Smlouva.Statistics.Data> >();

                var perIcoStat = o.AktualniVazby(aktualnost)
                                 .Where(v => !string.IsNullOrEmpty(v.To?.UniqId) &&
                                        v.To.Type == HlidacStatu.Lib.Data.Graph.Node.NodeType.Company)
                                 .Select(v => v.To)
                                 .Distinct(new HlidacStatu.Lib.Data.Graph.NodeComparer())
                                 .Select(f => Firmy.Get(f.Id))
                                 .Where(f => f.Valid == true)
                                 .Select(f => new { f = f, ss = f.StatistikaRegistruSmluv(obor) });


                foreach (var it in perIcoStat)
                {
                    if (it.f.PatrimStatu())
                    {
                        statni.Add(it.f.ICO, it.ss);
                    }
                    else
                    {
                        soukr.Add(it.f.ICO, it.ss);
                    }
                }
                res.StatniFirmy   = statni;
                res.SoukromeFirmy = soukr;

                return(res);
            }
 public OsobaStatistic(string nameId, Data.Relation.AktualnostType aktualnost, bool refresh = false)
     : this(Data.Osoby.GetByNameId.Get(nameId), aktualnost, refresh)
 {
 }
        private static Tuple <Dictionary <string, SubjectStatistic>, Dictionary <string, SubjectStatistic> > getStatisticForOsoba(string osobaNameId, Data.Relation.AktualnostType aktualnost)
        {
            var o = Data.Osoby.GetByNameId.Get(osobaNameId);

            if (o == null)
            {
                HlidacStatu.Util.Consts.Logger.Info("Unknown osobaId " + osobaNameId);
                return(new Tuple <Dictionary <string, SubjectStatistic>, Dictionary <string, SubjectStatistic> >(
                           new Dictionary <string, SubjectStatistic>(), new Dictionary <string, SubjectStatistic>()
                           ));
            }

            var perIcoStat = o.AktualniVazby(aktualnost)
                             .Where(v => !string.IsNullOrEmpty(v.To?.UniqId) &&
                                    v.To.Type == HlidacStatu.Lib.Data.Graph.Node.NodeType.Company)
                             .Select(v => v.To)
                             .Distinct(new HlidacStatu.Lib.Data.Graph.NodeComparer())
                             .Select(f => new { ico = f.Id, ss = new Analysis.SubjectStatistic(f.Id) });
            //.OrderByDescending(or => or.ss.BasicStatPerYear.Summary.CelkemCena)
            //.ThenByDescending(or => or.ss.BasicStatPerYear.Summary.Pocet)
            //.ToDictionary(k => k.ico, v => v.ss);

            Dictionary <string, SubjectStatistic> statni = new Dictionary <string, SubjectStatistic>();
            Dictionary <string, SubjectStatistic> soukr  = new Dictionary <string, SubjectStatistic>();

            foreach (var it in perIcoStat)
            {
                Lib.Data.Firma f = Lib.Data.Firmy.Get(it.ico);
                if (f.PatrimStatu())
                {
                    statni.Add(it.ico, it.ss);
                }
                else
                {
                    soukr.Add(it.ico, it.ss);
                }
            }


            return(new Tuple <Dictionary <string, SubjectStatistic>, Dictionary <string, SubjectStatistic> >
                       (statni, soukr));
        }