private ForecastDataResponse ProcessGetForecastData(ForecastRequestData requestData) { var response = new ForecastDataResponse(); try { var periodIds = requestData.Periods; var hierarchyRowsId = requestData.HierarchyRows; int rowOffset = int.TryParse(requestData.Offset, out rowOffset) ? rowOffset : 0; int hierarchyLevel = hierarchyRowsId.Count(); var pageableConfig = new PageableConfig() { RowCount = requestData.Count, RowsOffset = rowOffset, LastValue = requestData.LastRow, HierarchyRowsId = hierarchyRowsId, HierarchyLevel = hierarchyLevel, PrimaryFilterValue = HttpUtility.UrlDecode(requestData.FilterValue) }; var data = ForecastProvider.GetData(requestData.ForecastId, periodIds, pageableConfig); var columns = ForecastDataMapper.GetMapTableColumns(data); response.DataSource = ForecastDataMapper.GetMapTreeTableDataItems(data, columns); if (UserConnection.GetIsFeatureEnabled("ForecastSummaryFormula")) { SummaryColumnCalculator.ApplySummaryColumns(UserConnection, columns); SummaryColumnCalculator.ApplySummaryData(UserConnection, requestData.ForecastId, response.DataSource); } FilterHiddenColumns(columns); response.Columns = columns; } catch (Exception ex) { response.Exception = ex; } return(response); }
public async Task TestSend(ForecastRequestData data) { var paramsData = Mapper.Map <WeatherParamsData>(data); var id = Context.ConnectionId; throw new NotImplementedException(); // await Clients.Caller.SendAsync("updateWeather", data); }
public async Task <IActionResult> WeatherForecast([FromQuery] ForecastRequestData data) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var models = await _forecastProvider.GetWeatherForecast(data); return(Ok(models)); }
public async Task <IEnumerable <DailyForecastViewModel> > GetWeatherForecast(ForecastRequestData data) { var paramsData = Mapper.Map <WeatherParamsData>(data); IEnumerable <DailyWeatherForecastDTO> result; if (data.ProviderType == WeatherForecastProviderType.All) { result = await _weatherService.GetAverageWeatherForecastForPeriodByAllProviders(paramsData); } else { result = await _weatherService.GetWeatherForecastsForPeriod(paramsData, (WeatherProviderType)data.ProviderType); } return(Mapper.Map <IEnumerable <DailyForecastViewModel> >(result)); }
public ForecastDataResponse GetForecastDataByPostMethod(ForecastRequestData requestData) { var response = ProcessGetForecastData(requestData); return(response); }