Esempio n. 1
0
        public List <ProjectFundingSourceBudget> ToProjectFundingSourceBudgets()
        {
            // ReSharper disable PossibleInvalidOperationException
            if (CalendarYearBudgets != null)
            {
                return
                    (CalendarYearBudgets.Where(x => x.IsRelevant ?? false)
                     .Select(x => new ProjectFundingSourceBudget(ProjectID, FundingSourceID, x.CalendarYear, x.ProjectedAmount ?? 0, CostTypeID))
                     .ToList());
            }

            return(new List <ProjectFundingSourceBudget>()
            {
                new ProjectFundingSourceBudget(ProjectID, FundingSourceID, null, ProjectedAmount ?? 0, CostTypeID)
            });

            // ReSharper restore PossibleInvalidOperationException
        }
Esempio n. 2
0
        public List <ProjectFundingSourceBudgetUpdate> ToProjectFundingSourceBudgetUpdates(ProjectUpdateBatch projectUpdateBatch)
        {
            var fundingSource = HttpRequestStorage.DatabaseEntities.FundingSources.Single(x => x.FundingSourceID == FundingSourceID);

            if (projectUpdateBatch.ProjectUpdate.FundingType == FundingType.BudgetVariesByYear)
            {
                // ReSharper disable PossibleInvalidOperationException
                return
                    (CalendarYearBudgets.Where(x => x.ProjectedAmount.HasValue)
                     .Select(x => new ProjectFundingSourceBudgetUpdate(projectUpdateBatch, fundingSource, x.CalendarYear, x.ProjectedAmount ?? 0, CostTypeID))
                     .ToList());
                // ReSharper restore PossibleInvalidOperationException
            }
            else
            {
                var projectFundingSourceBudgetUpdate = new List <ProjectFundingSourceBudgetUpdate>(  );
                projectFundingSourceBudgetUpdate.Add(new ProjectFundingSourceBudgetUpdate(projectUpdateBatch, fundingSource, null, ProjectedAmount ?? 0, CostTypeID));
                return(projectFundingSourceBudgetUpdate);
            }
        }
Esempio n. 3
0
 public void AddProjectFundingSourceBudgetUpdate(ProjectFundingSourceBudgetUpdate projectFundingSourceBudgetUpdate)
 {
     Check.Require(projectFundingSourceBudgetUpdate.ProjectUpdateBatch.ProjectID == ProjectID && projectFundingSourceBudgetUpdate.FundingSourceID == FundingSourceID,
                   "Row doesn't align with collection mismatch ProjectID and FundingSourceID");
     CalendarYearBudgets.Add(new CalendarYearBudgetAmounts(projectFundingSourceBudgetUpdate.CalendarYear ?? 0, projectFundingSourceBudgetUpdate.ProjectedAmount));
 }
Esempio n. 4
0
 public void AddProjectFundingSourceBudget(ProjectFundingSourceBudget projectFundingSourceBudget)
 {
     Check.Require(projectFundingSourceBudget.ProjectID == ProjectID && projectFundingSourceBudget.FundingSourceID == FundingSourceID,
                   "Row doesn't align with collection mismatch ProjectID and FundingSourceID");
     CalendarYearBudgets.Add(new CalendarYearBudgetAmounts(projectFundingSourceBudget.CalendarYear ?? 0, projectFundingSourceBudget.SecuredAmount, projectFundingSourceBudget.TargetedAmount));
 }