public IActionResult GetDailyCovidByFilters([FromBody] DailyCovidDate selectedFields)
 {
     if (ModelState.IsValid)
     {
         var searchResponse = _elasticClient.Search <DailyCovid>(s => s
                                                                 .Query(q => q
                                                                        .Term(c => c
                                                                              .Name("by_country")
                                                                              .Field(p => p.CountryCode)
                                                                              .Value(selectedFields.DailyCovid.CountryCode))
                                                                        &&
                                                                        q.DateRange(c => c
                                                                                    .Name("by_date")
                                                                                    .Field(p => p.DateReported)
                                                                                    .GreaterThanOrEquals(selectedFields.StartDateTime.Value.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture))
                                                                                    .LessThanOrEquals(selectedFields.EndDateTime.Value.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture))
                                                                                    .Format("MM/dd/yyyy")))
                                                                 .Size(1000));
         var searchResponseList  = searchResponse.Documents.ToList();
         var dailyCovidViewModel = new DailyCovidViewModel
         {
             DailyCovids = searchResponseList
         };
         return(Ok(dailyCovidViewModel));
     }
     return(Ok(""));
 }
        public IActionResult Index()
        {
            var searchResponse = _elasticClient.Search <DailyCovid>(s => s.From(0).Take(2000).MatchAll().Sort(ss => ss.Descending(d => d.DateReported)));
            var dailyCovids    = searchResponse.Documents.ToList();
            var viewModelList  = new DailyCovidViewModel
            {
                DailyCovids = dailyCovids
            };

            return(View(viewModelList));
        }
        public IActionResult GetMaxCase()
        {
            DateTime date           = new DateTime(2020, 9, 27);
            var      searchResponse = _elasticClient.Search <DailyCovid>(s => s
                                                                         .Query(q => q
                                                                                .DateRange(c => c
                                                                                           .Name("by_date")
                                                                                           .Field(p => p.DateReported)
                                                                                           .GreaterThanOrEquals(date.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture))
                                                                                           .Format("MM/dd/yyyy")))
                                                                         .Size(235)
                                                                         .Sort(a => a
                                                                               .Descending(d => d.CumulativeCases)));
            var searchResponseList  = searchResponse.Documents.ToList();
            var dailyCovidViewModel = new DailyCovidViewModel
            {
                DailyCovids = searchResponseList
            };

            return(Ok(dailyCovidViewModel));
        }