private void AdjustDistributionPeriodValuesForProfileAmountChanges()
 {
     foreach (DistributionPeriod distributionPeriod in PaymentFundingLines?.SelectMany(_ => _.DistributionPeriods ?? new DistributionPeriod[0]))
     {
         distributionPeriod.Value = distributionPeriod.ProfilePeriods.Sum(_ => _.ProfiledValue);
     }
 }
        public void AddRows(PublishedProviderVersion dto)
        {
            Providers.AddRows(dto);
            Funding.AddRows(dto);
            PaymentFundingLines.AddRows(dto);
            InformationFundingLines.AddRows(dto);
            Calculations.AddRows(dto);

            EnsureProfilingIsSetUp(dto);

            foreach (FundingLine fundingLine in dto.FundingLines ?? ArraySegment <FundingLine> .Empty)
            {
                if (Profiling.TryGetValue(fundingLine.TemplateLineId, out IDataTableBuilder <PublishedProviderVersion> profiling))
                {
                    profiling.AddRows(dto);
                }
            }
        }
 private void AdjustTotalFundingForProviderForFundingLineValueChanges()
 {
     PublishedProviderToAdjust.TotalFunding = PaymentFundingLines.Sum(_ => _.Value);
 }