30 lines
955 B
C#
30 lines
955 B
C#
using System.Linq;
|
|
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
|
|
|
|
namespace EvoCalculator.Core.Calculation.Columns
|
|
{
|
|
public class DeprecationLDColumn : BaseColumnWithSum
|
|
{
|
|
public DeprecationLDColumn(int count) : base(count)
|
|
{
|
|
}
|
|
|
|
public void ComputeValues(PreparedValues preparedValues)
|
|
{
|
|
Values[1] = 0;
|
|
for (var i = 2; i < Values.Length - 1; i++)
|
|
Values[i] = preparedValues.BalanceHolder == 100000001
|
|
? preparedValues.DeprecationTime *
|
|
(preparedValues.AcceptSum - Values.Skip(2).Take(i - 1).Sum(x => x)) / 100
|
|
: 0;
|
|
|
|
Values[^1] = preparedValues.BalanceHolder == 100000001
|
|
? preparedValues.AcceptSum - Values.Skip(2)
|
|
.Take(Values.Length - 1)
|
|
.Sum(x => x)
|
|
: 0;
|
|
|
|
Values[0] = Sum;
|
|
}
|
|
}
|
|
} |