24 lines
942 B
C#
24 lines
942 B
C#
using EvoCalculator.Core.Calculation.Post;
|
|
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
|
|
|
|
namespace EvoCalculator.Core.Calculation.Columns
|
|
{
|
|
public class ExtraBonusSumColumn : BaseColumnWithSum
|
|
{
|
|
public ExtraBonusSumColumn(int count) : base(count)
|
|
{
|
|
}
|
|
|
|
public void ComputeValues(PreparedValues preparedValues, CashflowMSFOColumn cashflowMsfoColumn,
|
|
PostValues postValues)
|
|
{
|
|
Values[2] = cashflowMsfoColumn.Nominal >= preparedValues.IRR_MSFO_Plan
|
|
? -1 * postValues.BonusBase.Value *
|
|
(decimal) (cashflowMsfoColumn.Nominal / preparedValues.IRR_MSFO_Plan - 1) *
|
|
(decimal) preparedValues.ExtraBonus * (decimal) (1 + preparedValues.SalaryRate) *
|
|
(decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate
|
|
: 0;
|
|
Values[0] = Sum;
|
|
}
|
|
}
|
|
} |