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); }
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() )); }