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);
        }
Exemple #2
0
        private static BasicDataPerYear getBasicStatisticForSimpleQuery(string query)
        {
            Dictionary <int, BasicData> result = new Dictionary <int, BasicData>();

            if (string.IsNullOrEmpty(query))
            {
                return(BasicDataPerYear.Empty());
            }


            AggregationContainerDescriptor <HlidacStatu.Lib.Data.Smlouva> aggs = new AggregationContainerDescriptor <HlidacStatu.Lib.Data.Smlouva>()
                                                                                 .DateHistogram("x-agg", h => h
                                                                                                .Field(f => f.datumUzavreni)
                                                                                                .Interval(Nest.DateInterval.Year)
                                                                                                .Aggregations(agg => agg
                                                                                                              .Sum("sumincome", s => s
                                                                                                                   .Field(ff => ff.CalculatedPriceWithVATinCZK)
                                                                                                                   )
                                                                                                              )
                                                                                                );
            // new AggregationContainerDescriptor<HlidacStatu.Lib.Data.Smlouva>().Sum("sumKc", m => m.Field(f => f.CalculatedPriceWithVATinCZK))
            //CelkemCena = res.ElasticResults.Aggregations.Keys.Contains("sumKc") ? ((Nest.ValueAggregate)res.Result.Aggregations["sumKc"]).Value : 0,


            var client = HlidacStatu.Lib.ES.Manager.GetESClient();
            var res    = HlidacStatu.Lib.Data.Smlouva.Search.SimpleSearch(query, 0, 0,
                                                                          HlidacStatu.Lib.Data.Smlouva.Search.OrderResult.FastestForScroll, aggs, true, exactNumOfResults: true);

            if (res.IsValid == false)
            {
                return(BasicDataPerYear.Empty());
            }
            foreach (Nest.DateHistogramBucket val in ((BucketAggregate)res.ElasticResults.Aggregations["x-agg"]).Items)
            {
                var bdata = new BasicData()
                {
                    Pocet      = val.DocCount ?? 0,
                    CelkemCena = (decimal)(((Nest.DateHistogramBucket)val).Sum("sumincome").Value ?? 0)
                };
                result.Add(val.Date.Year, bdata);
            }
            return(new BasicDataPerYear(result));
        }
 public static RatingDataPerYear Empty()
 {
     return(new RatingDataPerYear(
                new Dictionary <int, RatingData>(), BasicDataPerYear.Empty()
                ));
 }