/// <summary> /// Assigns the project portal prediction. /// </summary> /// <param name="presenter">The presenter.</param> /// <param name="projectPortalId">The project portal identifier.</param> /// <param name="requiredAllocationsPerWeek">The required allocations per week.</param> private void AssignProjectPortalPrediction(ProjectDashboardPresenter presenter, int projectPortalId, string requiredAllocationsPerWeek) { decimal? futureHours; if (!string.IsNullOrEmpty(requiredAllocationsPerWeek)) { futureHours = requiredAllocationsPerWeek != "0" ? Convert.ToDecimal(requiredAllocationsPerWeek, CultureInfo.CurrentCulture) : default(decimal?); } else { var dateFrom = DateTimeHelper.RetrieveCurrentDateTime().RetrieveNextWeekStartDate(); var dateTo = DateTimeHelper.RetrieveCurrentDateTime().RetrieveNextWeekStartDate().AddDays(7); futureHours = this.teamEngagementService.RetrieveTotalAllocatedHours(projectPortalId, dateFrom, dateTo); } if (futureHours.HasValue) { presenter.RequiredAllocationsPerWeek = futureHours; } else { presenter.RequiredAllocationsPerWeek = 0; } presenter.AssignProjectPortalPredictionInfo(this.projectService.RetrieveProjectPortalPredictionBurnUpInfo(projectPortalId, SessionData.Instance.UserInfo.Developer.DeveloperID, futureHours)); this.AssignIntervalOffset(presenter); }