28 lines
1.5 KiB
C#
28 lines
1.5 KiB
C#
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
|
|
|
|
namespace EvoCalculator.Core.Calculation.Columns
|
|
{
|
|
public class CashflowNPVColumn : BaseColumn<decimal>
|
|
{
|
|
public CashflowNPVColumn(int count) : base(count)
|
|
{
|
|
}
|
|
|
|
public void ComputeValues(PreparedValues preparedValues, SumColumn sumColumn,
|
|
NPVBonusExpensesColumn npvBonusExpensesColumn, AgentComissionExpensesColumn agentComissionExpensesColumn,
|
|
TaxColumn taxColumn, NSIBExpensesColumn nsibExpensesColumn, NegativeCashflowColumn negativeCashflowColumn,
|
|
RatExpensesColumn ratExpensesColumn, TransExpensesColumn transExpensesColumn,
|
|
TLMExpensesColumn tlmExpensesColumn, GPSExpensesColumn gpsExpensesColumn)
|
|
{
|
|
Values[0] = -preparedValues.AcquisitionExpenses;
|
|
Values[1] = sumColumn.Values[1] + npvBonusExpensesColumn.Values[1] +
|
|
agentComissionExpensesColumn.Values[1] - taxColumn.Values[1] + nsibExpensesColumn.Values[1];
|
|
|
|
for (var i = 2; i < Values.Length; i++)
|
|
Values[i] = sumColumn.Values[i] + negativeCashflowColumn.Values[i] + npvBonusExpensesColumn.Values[i] +
|
|
agentComissionExpensesColumn.Values[i] + ratExpensesColumn.Values[i] - taxColumn.Values[i] -
|
|
transExpensesColumn.Values[i] + nsibExpensesColumn.Values[i] + tlmExpensesColumn.Values[i] +
|
|
gpsExpensesColumn.Values[i];
|
|
}
|
|
}
|
|
} |