private void GetData() { BusyViewModel.ActiveAsync(string.Format("... Loading {0} ...", _ticker)) .Then(() => Items.ClearAsync(), Scheduler.Dispatcher.TPL) .Then(() => _service.GetDataAsync(_ticker, DateTime.Now.AddMonths(-1), DateTime.Now), Scheduler.Task.TPL) .Then(data => Items.AddRangeAsync(data), Scheduler.Dispatcher.TPL) .LogException(Log) .CatchAndHandle(x => StandardDialog.Error("Error", "Problem getting chart data"), Scheduler.Task.TPL) .Finally(BusyViewModel.InActive, Scheduler.Task.TPL); }
public async Task <IActionResult> GetUserChargesData() { var user = (await _userService.GetByEmailAsync(CurrentUser.Email)).Result; var userId = user.Id; var endDate = DateTime.Today.AddDays(1).AddSeconds(-1); var startDate = DateTime.Today.AddDays(-6); var userGateUsages = (await _gateUsageService.GetAllAsync(x => x.UserId == userId)).Result.ToList(); var lineChartData = await _chartService.GetDataAsync(new ChartRequestDto(startDate, endDate, ChartType.GateOpenings, ChartGranuality.PerDay, userId)); return(Ok(new { chargesUsed = userGateUsages.Count, chargesLeft = user.Charges, lineChartData = _mapper.Map <ChartDataReturnModel>(lineChartData.Result) })); }
public async Task <IActionResult> GetChartData([FromBody] ChartDataRequest model) { if (ModelState.IsValid) { var serviceRequest = _mapper.Map <ChartRequestDto>(model); // ReSharper disable once PossibleInvalidOperationException serviceRequest.UserId = CurrentUser.UserId.Value; var chartDataResult = await _chartService.GetDataAsync(serviceRequest); if (chartDataResult.IsValid) { return(Ok(SmartJsonResult <ChartDataReturnModel> .Success(_mapper.Map <ChartDataReturnModel>(chartDataResult.Result)))); } return(BadRequest(SmartJsonResult.Failure(chartDataResult.ValidationErrors))); } return(BadRequest(SmartJsonResult.Failure(GetModelStateErrors(ModelState)))); }