diff --git a/EvoCalculator.Core.Base/Columns/BaseColumn.cs b/EvoCalculator.Core.Base/Columns/BaseColumn.cs index f1c1795..750bcd8 100644 --- a/EvoCalculator.Core.Base/Columns/BaseColumn.cs +++ b/EvoCalculator.Core.Base/Columns/BaseColumn.cs @@ -20,14 +20,16 @@ namespace EvoCalculator.Core.Base.Columns { if (i < Values.Length) return Values[i]; - return (T)Convert.ChangeType(0.0, typeof(T)); + return (T) Convert.ChangeType(0.0, typeof(T)); } - public T[] GetValues(int from = 0) => - from switch + public T[] GetValues(int from = 0) + { + return from switch { 0 => Values, _ => Values.Skip(from).ToArray() }; + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Base/Columns/BaseColumnWithNominal.cs b/EvoCalculator.Core.Base/Columns/BaseColumnWithNominal.cs index 105092a..cd8dfd2 100644 --- a/EvoCalculator.Core.Base/Columns/BaseColumnWithNominal.cs +++ b/EvoCalculator.Core.Base/Columns/BaseColumnWithNominal.cs @@ -14,7 +14,6 @@ namespace EvoCalculator.Core.Base.Columns protected BaseColumnWithNominal() { - } public double Nominal => (Math.Pow(IRR + 1, (double) 1 / 12) - 1) * 12; diff --git a/EvoCalculator.Core.Base/Columns/BaseColumnWithXIRR.cs b/EvoCalculator.Core.Base/Columns/BaseColumnWithXIRR.cs index 318545e..b9be4e9 100644 --- a/EvoCalculator.Core.Base/Columns/BaseColumnWithXIRR.cs +++ b/EvoCalculator.Core.Base/Columns/BaseColumnWithXIRR.cs @@ -7,11 +7,6 @@ namespace EvoCalculator.Core.Base.Columns { public class BaseColumnWithXIRR : BaseColumn { - public void RoundValues(int precision = 2) - { - this.Values = this.Values.Select(x => Math.Round(x, precision)).ToArray(); - } - protected BaseColumnWithXIRR(int count, BaseColumn dateTempColumn) : base(count) { Dates = dateTempColumn.Values; @@ -51,5 +46,10 @@ namespace EvoCalculator.Core.Base.Columns return XIRR.GetResult(); } } + + public void RoundValues(int precision = 2) + { + Values = Values.Select(x => Math.Round(x, precision)).ToArray(); + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Base/EvoCalculator.Core.Base.csproj b/EvoCalculator.Core.Base/EvoCalculator.Core.Base.csproj index 9efa47d..a03a1da 100644 --- a/EvoCalculator.Core.Base/EvoCalculator.Core.Base.csproj +++ b/EvoCalculator.Core.Base/EvoCalculator.Core.Base.csproj @@ -6,8 +6,8 @@ - - + + diff --git a/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj b/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj index bf92fb3..99f45ce 100644 --- a/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj +++ b/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj @@ -6,14 +6,14 @@ - - - - + + + + - + diff --git a/EvoCalculator.Core.Calculation/v1/Columns/DeprecationLDColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/DeprecationLDColumn.cs index f226ffa..e7407c3 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/DeprecationLDColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/DeprecationLDColumn.cs @@ -15,7 +15,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns Values[1] = 0; for (var i = 2; i < Values.Length - 1; i++) Values[i] = preparedValues.BalanceHolder == 100000001 - ? (decimal)preparedValues.DeprecationTime * + ? (decimal) preparedValues.DeprecationTime * (preparedValues.AcceptSum - Values.Skip(2).Take(i - 1).Sum(x => x)) / 100 : 0; diff --git a/EvoCalculator.Core.Calculation/v1/Columns/DirectorBonusSumColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/DirectorBonusSumColumn.cs index d439ef8..4d940d7 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/DirectorBonusSumColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/DirectorBonusSumColumn.cs @@ -11,9 +11,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(PreparedValues preparedValues, PostValues.PostValues postValues) { - Values[2] = -postValues.BonusBase.Value * (decimal)preparedValues.DirectorBonus * - (decimal)(1 + preparedValues.SalaryRate) * - (decimal)preparedValues.MarketRate * (decimal)preparedValues.DistrictRate; + Values[2] = -postValues.BonusBase.Value * (decimal) preparedValues.DirectorBonus * + (decimal) (1 + preparedValues.SalaryRate) * + (decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate; Values[0] = Sum; } } diff --git a/EvoCalculator.Core.Calculation/v1/Columns/ExtraBonusSumColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/ExtraBonusSumColumn.cs index 2114a07..241e821 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/ExtraBonusSumColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/ExtraBonusSumColumn.cs @@ -14,9 +14,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns { 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 + (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; } diff --git a/EvoCalculator.Core.Calculation/v1/Columns/IRRGrColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/IRRGrColumn.cs index 5da6bc7..14afd8a 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/IRRGrColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/IRRGrColumn.cs @@ -13,7 +13,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns { for (var i = 1; i < Values.Length; i++) Values[i] = Math.Pow(1 + cashflowMSFOColumn.IRR, - (double)(dateTempColumn.Values[i] - dateTempColumn.Values[i - 1]).Days / 365) - 1; + (double) (dateTempColumn.Values[i] - dateTempColumn.Values[i - 1]).Days / 365) - 1; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/InterestColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/InterestColumn.cs index 1e2bb6c..5fe4227 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/InterestColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/InterestColumn.cs @@ -22,7 +22,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(IRRGrColumn irrGrColumn, NIColumn niColumn) { for (var i = 2; i < Values.Length; i++) - Values[i] = niColumn.Values[i - 1] * (decimal)irrGrColumn.Values[i]; + Values[i] = niColumn.Values[i - 1] * (decimal) irrGrColumn.Values[i]; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/KaskoBonusGrSumColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/KaskoBonusGrSumColumn.cs index a27ecdc..ca1a034 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/KaskoBonusGrSumColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/KaskoBonusGrSumColumn.cs @@ -15,9 +15,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns if (i < 13) Values[i] = kaskoNmperGrColumn.Values[i] * 1; else if (i <= 24) - Values[i] = kaskoNmperGrColumn.Values[i] * (decimal)0.7; + Values[i] = kaskoNmperGrColumn.Values[i] * (decimal) 0.7; else - Values[i] = kaskoNmperGrColumn.Values[i] * (decimal)0.5; + Values[i] = kaskoNmperGrColumn.Values[i] * (decimal) 0.5; Values[0] = Sum; } diff --git a/EvoCalculator.Core.Calculation/v1/Columns/KaskoNmperGrColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/KaskoNmperGrColumn.cs index ebfc6de..1c57e64 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/KaskoNmperGrColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/KaskoNmperGrColumn.cs @@ -19,7 +19,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(PreparedValues preparedValues, Constants.Calculation constants) { if (preparedValues.NmperInsurance < constants.MaxOnePolicePeriod) + { Values[1] = preparedValues.InsuranceKasko; + } else { var InsuranceKaskoMonth = preparedValues.NmperInsurance >= constants.MaxOnePolicePeriod @@ -27,11 +29,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns : preparedValues.InsuranceKasko / preparedValues.NmperInsurance; for (var i = 1; i < preparedValues.NmperInsurance; i += 12) if (i <= preparedValues.NmperInsurance) - { Values[i] = preparedValues.NmperInsurance - i + 1 >= constants.MaxOnePolicePeriod ? InsuranceKaskoMonth * 12 : InsuranceKaskoMonth * (preparedValues.NmperInsurance - i + 1); - } } Values[0] = -XNPV; diff --git a/EvoCalculator.Core.Calculation/v1/Columns/NPVBonusExpensesColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/NPVBonusExpensesColumn.cs index bfc8c26..2613754 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/NPVBonusExpensesColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/NPVBonusExpensesColumn.cs @@ -13,14 +13,14 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(PreparedValues preparedValues, PostValues.PostValues postValues) { Values[1] = -1 * (preparedValues.RatBonus + preparedValues.NsBonus + preparedValues.NsibBonus) * - (decimal)(1 + preparedValues.SalaryRate) * - (decimal)preparedValues.MarketRate * (decimal)preparedValues.DistrictRate; + (decimal) (1 + preparedValues.SalaryRate) * + (decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate; Values[2] = preparedValues.BonusFix > 0 ? -preparedValues.BonusFix : -1 * postValues.BonusBase.Value * Convert.ToDecimal(preparedValues.Bonus) * - (decimal)(1 + preparedValues.SalaryRate) * - (decimal)preparedValues.MarketRate * (decimal)preparedValues.DistrictRate; + (decimal) (1 + preparedValues.SalaryRate) * + (decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate; for (var i = 3; i < Values.Length; i++) Values[i] = 0; diff --git a/EvoCalculator.Core.Calculation/v1/Columns/NPVColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/NPVColumn.cs index 44f9ae0..636c862 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/NPVColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/NPVColumn.cs @@ -11,7 +11,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(BaseColumn cashflowNpvColumn, NPVWeightColumn npvWeightColumn) { for (var i = 0; i < Values.Length; i++) - Values[i] = cashflowNpvColumn.GetValue(i) * (decimal)npvWeightColumn.GetValue(i); + Values[i] = cashflowNpvColumn.GetValue(i) * (decimal) npvWeightColumn.GetValue(i); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/NPVFinal2Column.cs b/EvoCalculator.Core.Calculation/v1/Columns/NPVFinal2Column.cs index ac744cf..c6dae32 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/NPVFinal2Column.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/NPVFinal2Column.cs @@ -11,7 +11,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(CashflowNPVFinal2Column cashflowNpvFinal2Column, NPVWeightColumn npvWeightColumn) { for (var i = 0; i < Values.Length; i++) - Values[i] = cashflowNpvFinal2Column.GetValue(i) * (decimal)npvWeightColumn.GetValue(i); + Values[i] = cashflowNpvFinal2Column.GetValue(i) * (decimal) npvWeightColumn.GetValue(i); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/NPVFinalColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/NPVFinalColumn.cs index ebcfbce..f21169c 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/NPVFinalColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/NPVFinalColumn.cs @@ -11,7 +11,7 @@ namespace EvoCalculator.Core.Calculation.v1.Columns public void ComputeValues(CashflowNPVFinalColumn cashflowNpvFinalColumn, NPVWeightColumn npvWeightColumn) { for (var i = 0; i < Values.Length; i++) - Values[i] = cashflowNpvFinalColumn.GetValue(i) * (decimal)npvWeightColumn.GetValue(i); + Values[i] = cashflowNpvFinalColumn.GetValue(i) * (decimal) npvWeightColumn.GetValue(i); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/SumColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/SumColumn.cs index c94d8be..6e063a8 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/SumColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/SumColumn.cs @@ -8,10 +8,10 @@ namespace EvoCalculator.Core.Calculation.v1.Columns { public class SumColumn : BaseColumnWithXIRR { + protected readonly BaseColumn _nsibBruttoGrColumn; protected readonly PercentPaymentColumn _percentPaymentColumn; protected readonly PostValues.PostValues _postValues; protected readonly PreparedValues _preparedValues; - protected readonly BaseColumn _nsibBruttoGrColumn; public SumColumn(int count, BaseColumn dateTempColumn, PreparedValues preparedValues, PercentPaymentColumn percentPaymentColumn, @@ -41,14 +41,10 @@ namespace EvoCalculator.Core.Calculation.v1.Columns throw new Exception( "Первый платеж по графику более 50% от суммы лизинговых платежей. Необходимо уменьшить первый платеж"); - for (int i = 2; i < Values.Length - 1; i++) - { + for (var i = 2; i < Values.Length - 1; i++) if (GetValue(i) < _nsibBruttoGrColumn.GetValue(i)) - { throw new Exception( "Невозможно осуществить расчет графика. При заданных параметрах лизинговый платеж не покрывает расходы по НСИБ. Исключите НСИБ или увеличьте лизинговые платежи"); - } - } } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/SumRepaymentColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/SumRepaymentColumn.cs index ba7f70c..e3c3aa4 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/SumRepaymentColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/SumRepaymentColumn.cs @@ -21,9 +21,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns { for (var i = 7; i < Values.Length; i++) Values[i] = sumCurrentColumn.Values[i] + sumCurrentNegativeColumn.Values[i] - - sumCurrentTlmColumn.Values[i] * (1 + (decimal)calculation.VatValue) - - sumCurrentInterestColumn.Values[i] * (1 + (decimal)calculation.VatValue) * - (decimal)preparedValues.Repayment; + sumCurrentTlmColumn.Values[i] * (1 + (decimal) calculation.VatValue) - + sumCurrentInterestColumn.Values[i] * (1 + (decimal) calculation.VatValue) * + (decimal) preparedValues.Repayment; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/Columns/SumWithVATColumn/BaseSumWithVATColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/SumWithVATColumn/BaseSumWithVATColumn.cs index 96b72f9..0af215d 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/SumWithVATColumn/BaseSumWithVATColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/SumWithVATColumn/BaseSumWithVATColumn.cs @@ -23,9 +23,9 @@ namespace EvoCalculator.Core.Calculation.v1.Columns Values[0] = 0; Values[1] = _preparedValues.FirstPaymentWithNdsAbs > 0 ? _preparedValues.FirstPaymentWithNdsAbs - : (decimal)(1 + _constants.VatValue) * _sumColumn.Values[1]; + : (decimal) (1 + _constants.VatValue) * _sumColumn.Values[1]; for (var i = 2; i < Values.Length; i++) - Values[i] = (decimal)(1 + _constants.VatValue) * _sumColumn.Values[i]; + Values[i] = (decimal) (1 + _constants.VatValue) * _sumColumn.Values[i]; Values[0] = Sum; } diff --git a/EvoCalculator.Core.Calculation/v1/Columns/TaxColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/TaxColumn.cs index 5dd8acc..f585d85 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/TaxColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/TaxColumn.cs @@ -17,18 +17,18 @@ namespace EvoCalculator.Core.Calculation.v1.Columns GPSExpensesColumn gpsExpensesColumn) { for (var i = 1; i < Values.Length; i++) - Values[i] = (decimal)constants.IncomeTaxValue * (sumColumn.GetValue(i) - - acceptInsuranceColumn.GetValue(i) - - deprecationColumn.GetValue(i) - + ratExpensesColumn.GetValue(i) - + registrExpensesColumn.GetValue(i) - + comissionBonusExpensesColumn.GetValue(i) - + transExpensesColumn.GetValue(i) - + npvBonusExpensesColumn.GetValue(i) - + agentComissionExpensesColumn.GetValue(i) - + insuranceBonusExpensesColumn.GetValue(i) - + tlmExpensesColumn.GetValue(i) - + gpsExpensesColumn.GetValue(i) + Values[i] = (decimal) constants.IncomeTaxValue * (sumColumn.GetValue(i) + - acceptInsuranceColumn.GetValue(i) + - deprecationColumn.GetValue(i) + + ratExpensesColumn.GetValue(i) + + registrExpensesColumn.GetValue(i) + + comissionBonusExpensesColumn.GetValue(i) + + transExpensesColumn.GetValue(i) + + npvBonusExpensesColumn.GetValue(i) + + agentComissionExpensesColumn.GetValue(i) + + insuranceBonusExpensesColumn.GetValue(i) + + tlmExpensesColumn.GetValue(i) + + gpsExpensesColumn.GetValue(i) ); diff --git a/EvoCalculator.Core.Calculation/v1/Columns/VATColumn.cs b/EvoCalculator.Core.Calculation/v1/Columns/VATColumn.cs index b8c60e1..d1c55b4 100644 --- a/EvoCalculator.Core.Calculation/v1/Columns/VATColumn.cs +++ b/EvoCalculator.Core.Calculation/v1/Columns/VATColumn.cs @@ -20,8 +20,8 @@ namespace EvoCalculator.Core.Calculation.v1.Columns Values[0] = 0; Values[1] = preparedValues.FirstPaymentNdsAbs > 0 ? preparedValues.FirstPaymentNdsAbs - : (decimal)constants.VatValue * sumColumn.Values[1]; - for (var i = 2; i < Values.Length; i++) Values[i] = (decimal)constants.VatValue * sumColumn.Values[i]; + : (decimal) constants.VatValue * sumColumn.Values[1]; + for (var i = 2; i < Values.Length; i++) Values[i] = (decimal) constants.VatValue * sumColumn.Values[i]; Values[0] = Sum; } diff --git a/EvoCalculator.Core.Calculation/v1/PostValues/BaseCost.cs b/EvoCalculator.Core.Calculation/v1/PostValues/BaseCost.cs index 8cdd98a..bbef91d 100644 --- a/EvoCalculator.Core.Calculation/v1/PostValues/BaseCost.cs +++ b/EvoCalculator.Core.Calculation/v1/PostValues/BaseCost.cs @@ -13,7 +13,7 @@ namespace EvoCalculator.Core.Calculation.v1.PostValues Value = preparedValues.PlPrice + preparedValues.InsuranceOsago + Math.Abs(kaskoNmperGrColumn.Values[0]) + Math.Abs(tlmGrColumn.Values[0]) + Math.Abs(gpsGrColumn.Values[0]) + preparedValues.Rats + preparedValues.Registration + preparedValues.TrackerCost + - preparedValues.TLMCost + preparedValues.TransportTaxGr * (decimal)preparedValues.Leasing0K + + preparedValues.TLMCost + preparedValues.TransportTaxGr * (decimal) preparedValues.Leasing0K + preparedValues.NsibBrutto; } } diff --git a/EvoCalculator.Core.Calculation/v1/PostValues/BonusResult.cs b/EvoCalculator.Core.Calculation/v1/PostValues/BonusResult.cs index cd972ca..e78aaf6 100644 --- a/EvoCalculator.Core.Calculation/v1/PostValues/BonusResult.cs +++ b/EvoCalculator.Core.Calculation/v1/PostValues/BonusResult.cs @@ -10,8 +10,8 @@ namespace EvoCalculator.Core.Calculation.v1.PostValues public void ComputeValue(PreparedValues preparedValues, BaseColumnWithSum npvBonusExpensesColumn) { Value = Math.Abs(npvBonusExpensesColumn.Values[0]) - - Math.Abs(npvBonusExpensesColumn.Values[0]) * (decimal)preparedValues.SalaryRate / - (decimal)(1 + preparedValues.SalaryRate); + Math.Abs(npvBonusExpensesColumn.Values[0]) * (decimal) preparedValues.SalaryRate / + (decimal) (1 + preparedValues.SalaryRate); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/PostValues/NPVNI.cs b/EvoCalculator.Core.Calculation/v1/PostValues/NPVNI.cs index 642151a..04af4b3 100644 --- a/EvoCalculator.Core.Calculation/v1/PostValues/NPVNI.cs +++ b/EvoCalculator.Core.Calculation/v1/PostValues/NPVNI.cs @@ -9,7 +9,7 @@ namespace EvoCalculator.Core.Calculation.v1.PostValues { public void ComputeValue(PreparedValues preparedValues, NPVColumn npvColumn) { - Value = npvColumn.Values.Sum(x => (double)x) / (double)preparedValues.NpvBase; + Value = npvColumn.Values.Sum(x => (double) x) / (double) preparedValues.NpvBase; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_PR.cs b/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_PR.cs index 11aa810..3e7840a 100644 --- a/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_PR.cs +++ b/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_PR.cs @@ -7,7 +7,7 @@ namespace EvoCalculator.Core.Calculation.v1.PostValues { public void ComputeValue(PreparedValues preparedValues, PostValues postValues) { - Value = (double)postValues.PriceUP.Value / (double)preparedValues.PriceUpTotal; + Value = (double) postValues.PriceUP.Value / (double) preparedValues.PriceUpTotal; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_Year_PR.cs b/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_Year_PR.cs index 801cc83..40f6835 100644 --- a/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_Year_PR.cs +++ b/EvoCalculator.Core.Calculation/v1/PostValues/PriceUP_Year_PR.cs @@ -7,7 +7,7 @@ namespace EvoCalculator.Core.Calculation.v1.PostValues { public void ComputeValue(PreparedValues preparedValues, PostValues postValues) { - Value = (double)postValues.PriceUP_Year.Value / (double)preparedValues.PriceUpTotal; + Value = (double) postValues.PriceUP_Year.Value / (double) preparedValues.PriceUpTotal; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v2/Columns/CashflowMSFOColumn/BaseCashflowMSFOColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/CashflowMSFOColumn/BaseCashflowMSFOColumn.cs index 41b69f5..e9fc1e9 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/CashflowMSFOColumn/BaseCashflowMSFOColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/CashflowMSFOColumn/BaseCashflowMSFOColumn.cs @@ -4,10 +4,23 @@ using EvoCalculator.Core.Models.Calculation.Models.Prepared; namespace EvoCalculator.Core.Calculation.v2.Columns { - public class BaseCashflowMSFOColumn : EvoCalculator.Core.Calculation.v1.Columns.BaseCashflowMSFOColumn + public class BaseCashflowMSFOColumn : v1.Columns.BaseCashflowMSFOColumn { protected readonly SubsidyExpensesColumn _subsidyExpensesColumn; + public BaseCashflowMSFOColumn(int count, DateTempColumn dateTempColumn, PostValues.PostValues postValues, + PreparedValues preparedValues, PercentPaymentColumn percentPaymentColumn, SumColumn sumColumn, + NegativeCashflowColumn negativeCashflowColumn, NSIBBruttoGrColumn nsibBruttoGrColumn, + BaseColumn tlmGrColumn, BaseColumn gpsGrColumn, BaseColumnWithSum npvBonusExpensesColumn, + AgentComissionExpensesColumn agentComissionExpensesColumn, SubsidyExpensesColumn subsidyExpensesColumn) : + base(count, dateTempColumn, postValues, + preparedValues, percentPaymentColumn, sumColumn, negativeCashflowColumn, nsibBruttoGrColumn, + tlmGrColumn, + gpsGrColumn, npvBonusExpensesColumn, agentComissionExpensesColumn) + { + _subsidyExpensesColumn = subsidyExpensesColumn; + } + protected override void FillValues() { Values[0] = -_preparedValues.AcquisitionExpenses - _preparedValues.FuelCardSum; @@ -23,18 +36,5 @@ namespace EvoCalculator.Core.Calculation.v2.Columns + _agentComissionExpensesColumn.Values[i] + _subsidyExpensesColumn.Values[i]; } - - public BaseCashflowMSFOColumn(int count, DateTempColumn dateTempColumn, PostValues.PostValues postValues, - PreparedValues preparedValues, PercentPaymentColumn percentPaymentColumn, SumColumn sumColumn, - NegativeCashflowColumn negativeCashflowColumn, NSIBBruttoGrColumn nsibBruttoGrColumn, - BaseColumn tlmGrColumn, BaseColumn gpsGrColumn, BaseColumnWithSum npvBonusExpensesColumn, - AgentComissionExpensesColumn agentComissionExpensesColumn, SubsidyExpensesColumn subsidyExpensesColumn) : - base(count, dateTempColumn, postValues, - preparedValues, percentPaymentColumn, sumColumn, negativeCashflowColumn, nsibBruttoGrColumn, - tlmGrColumn, - gpsGrColumn, npvBonusExpensesColumn, agentComissionExpensesColumn) - { - _subsidyExpensesColumn = subsidyExpensesColumn; - } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v2/Columns/CreditColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/CreditColumn.cs index 5ec7f06..95a6d53 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/CreditColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/CreditColumn.cs @@ -11,18 +11,12 @@ namespace EvoCalculator.Core.Calculation.v2.Columns public void ComputeValues(PreparedValues preparedValues, SumCreditColumn sumCreditColumn) { - Values[1] = -sumCreditColumn.GetValue(1) * (decimal)preparedValues.LoanRate / 12; + Values[1] = -sumCreditColumn.GetValue(1) * (decimal) preparedValues.LoanRate / 12; for (var i = 2; i < Values.Length; i++) - { if (GetValue(i - 1) < 0) - { - Values[i] = -sumCreditColumn.GetValue(i - 1) * (decimal)preparedValues.LoanRate / 12; - } + Values[i] = -sumCreditColumn.GetValue(i - 1) * (decimal) preparedValues.LoanRate / 12; else - { Values[i] = 0; - } - } Values[0] = Sum; } } diff --git a/EvoCalculator.Core.Calculation/v2/Columns/DirectorBonusSumColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/DirectorBonusSumColumn.cs index e75f59d..3faad67 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/DirectorBonusSumColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/DirectorBonusSumColumn.cs @@ -11,11 +11,11 @@ namespace EvoCalculator.Core.Calculation.v2.Columns public void ComputeValues(PreparedValues preparedValues, PostValues.PostValues postValues) { - Values[2] = -1 * (postValues.BonusBase.Value * (decimal)preparedValues.DirectorBonus * - (decimal)(1 + preparedValues.SalaryRate) * - (decimal)preparedValues.MarketRate * (decimal)preparedValues.DistrictRate - + preparedValues.DirectorBonusNsib * (decimal)(1 + preparedValues.SalaryRate) + - preparedValues.RegionalDirectorBonusNsib * (decimal)(1 + preparedValues.SalaryRate)); + Values[2] = -1 * (postValues.BonusBase.Value * (decimal) preparedValues.DirectorBonus * + (decimal) (1 + preparedValues.SalaryRate) * + (decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate + + preparedValues.DirectorBonusNsib * (decimal) (1 + preparedValues.SalaryRate) + + preparedValues.RegionalDirectorBonusNsib * (decimal) (1 + preparedValues.SalaryRate)); Values[0] = Sum; } } diff --git a/EvoCalculator.Core.Calculation/v2/Columns/KaskoNmperGrColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/KaskoNmperGrColumn.cs index 00c4437..31eec09 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/KaskoNmperGrColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/KaskoNmperGrColumn.cs @@ -18,7 +18,9 @@ namespace EvoCalculator.Core.Calculation.v2.Columns public void ComputeValues(PreparedValues preparedValues, Constants.Calculation constants) { if (preparedValues.NmperInsurance < constants.MaxOnePolicePeriod) + { Values[1] = preparedValues.InsuranceKasko; + } else { var InsuranceKaskoMonth = preparedValues.NmperInsurance >= constants.MaxOnePolicePeriod @@ -26,11 +28,9 @@ namespace EvoCalculator.Core.Calculation.v2.Columns : preparedValues.InsuranceKasko / preparedValues.NmperInsurance; for (var i = 1; i < preparedValues.NmperInsurance; i += 12) if (i <= preparedValues.NmperInsurance) - { Values[i] = preparedValues.NmperInsurance - i + 1 >= constants.MaxOnePolicePeriod ? InsuranceKaskoMonth * 12 : InsuranceKaskoMonth * (preparedValues.NmperInsurance - i + 1); - } } Values[0] = -Sum; diff --git a/EvoCalculator.Core.Calculation/v2/Columns/NPVBonusExpensesColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/NPVBonusExpensesColumn.cs index 6453b8d..2fa1fc9 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/NPVBonusExpensesColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/NPVBonusExpensesColumn.cs @@ -13,13 +13,13 @@ namespace EvoCalculator.Core.Calculation.v2.Columns public void ComputeValues(PreparedValues preparedValues, PostValues.PostValues postValues) { Values[1] = -1 * (preparedValues.RatBonus + preparedValues.NsBonus + preparedValues.NsibBonus) * - (decimal)(1 + preparedValues.SalaryRate); + (decimal) (1 + preparedValues.SalaryRate); Values[2] = preparedValues.BonusFix > 0 ? -preparedValues.BonusFix : -1 * postValues.BonusBase.Value * Convert.ToDecimal(preparedValues.Bonus) * - (decimal)(1 + preparedValues.SalaryRate) * - (decimal)preparedValues.MarketRate * (decimal)preparedValues.DistrictRate; + (decimal) (1 + preparedValues.SalaryRate) * + (decimal) preparedValues.MarketRate * (decimal) preparedValues.DistrictRate; for (var i = 3; i < Values.Length; i++) Values[i] = 0; diff --git a/EvoCalculator.Core.Calculation/v2/Columns/SumColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/SumColumn.cs index ef47811..028f2e0 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/SumColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/SumColumn.cs @@ -5,7 +5,7 @@ using EvoCalculator.Core.Models.Calculation.Models.Prepared; namespace EvoCalculator.Core.Calculation.v2.Columns { - public class SumColumn : EvoCalculator.Core.Calculation.v1.Columns.SumColumn + public class SumColumn : v1.Columns.SumColumn { public SumColumn(int count, BaseColumn dateTempColumn, PreparedValues preparedValues, PercentPaymentColumn percentPaymentColumn, v1.PostValues.PostValues postValues, diff --git a/EvoCalculator.Core.Calculation/v2/Columns/SumCreditColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/SumCreditColumn.cs index 66213b0..fb56d5d 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/SumCreditColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/SumCreditColumn.cs @@ -12,20 +12,14 @@ namespace EvoCalculator.Core.Calculation.v2.Columns public void ComputeValues(PreparedValues preparedValues, PostValues.PostValues postValues , Constants.Calculation constants, SumColumn sumColumn) { - Values[1] = (postValues.BaseCost.Value - sumColumn.GetValue(1)) * (1 + (decimal)constants.VatValue); + Values[1] = (postValues.BaseCost.Value - sumColumn.GetValue(1)) * (1 + (decimal) constants.VatValue); Values[2] = Values[1]; for (var i = 3; i < Values.Length; i++) - { if (GetValue(i - 1) > 0) - { Values[i] = GetValue(i - 1) - GetValue(2) / preparedValues.LoanRatePeriod; - } else - { Values[i] = 0; - } - } } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Calculation/v2/Columns/TaxColumn.cs b/EvoCalculator.Core.Calculation/v2/Columns/TaxColumn.cs index 6650f8e..be6cef3 100644 --- a/EvoCalculator.Core.Calculation/v2/Columns/TaxColumn.cs +++ b/EvoCalculator.Core.Calculation/v2/Columns/TaxColumn.cs @@ -20,22 +20,22 @@ namespace EvoCalculator.Core.Calculation.v2.Columns GPSExpensesColumn gpsExpensesColumn, SubsidyExpensesColumn subsidyExpensesColumn) { for (var i = 1; i < Values.Length; i++) - Values[i] = (decimal)constants.IncomeTaxValue * (sumColumn.GetValue(i) - - acceptInsuranceColumn.GetValue(i) - - deprecationColumn.GetValue(i) - + ratExpensesColumn.GetValue(i) - + registrExpensesColumn.GetValue(i) - + comissionBonusExpensesColumn.GetValue(i) - + transExpensesColumn.GetValue(i) - + npvBonusExpensesColumn.GetValue(i) - + agentComissionExpensesColumn.GetValue(i) - + insuranceBonusExpensesColumn.GetValue(i) - + tlmExpensesColumn.GetValue(i) - + gpsExpensesColumn.GetValue(i) - + subsidyExpensesColumn.GetValue(i) - - (i == 1 - ? preparedValues.SubsidySum - : 0) + Values[i] = (decimal) constants.IncomeTaxValue * (sumColumn.GetValue(i) + - acceptInsuranceColumn.GetValue(i) + - deprecationColumn.GetValue(i) + + ratExpensesColumn.GetValue(i) + + registrExpensesColumn.GetValue(i) + + comissionBonusExpensesColumn.GetValue(i) + + transExpensesColumn.GetValue(i) + + npvBonusExpensesColumn.GetValue(i) + + agentComissionExpensesColumn.GetValue(i) + + insuranceBonusExpensesColumn.GetValue(i) + + tlmExpensesColumn.GetValue(i) + + gpsExpensesColumn.GetValue(i) + + subsidyExpensesColumn.GetValue(i) + - (i == 1 + ? preparedValues.SubsidySum + : 0) ); diff --git a/EvoCalculator.Core.Calculation/v2/PostValues/PostValues.cs b/EvoCalculator.Core.Calculation/v2/PostValues/PostValues.cs index c2e96fd..881753a 100644 --- a/EvoCalculator.Core.Calculation/v2/PostValues/PostValues.cs +++ b/EvoCalculator.Core.Calculation/v2/PostValues/PostValues.cs @@ -1,9 +1,14 @@ namespace EvoCalculator.Core.Calculation.v2.PostValues { - public class PostValues : EvoCalculator.Core.Calculation.v1.PostValues.PostValues + public class PostValues : v1.PostValues.PostValues { public ContractEconomy ContractEconomy; + public PostValues() + { + ContractEconomy = new ContractEconomy(); + } + public override object GetValues() { return new @@ -19,10 +24,5 @@ ContractEconomy = ContractEconomy.Value }; } - - public PostValues() - { - ContractEconomy = new ContractEconomy(); - } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj b/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj index 8c9a48a..e844a81 100644 --- a/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj +++ b/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj @@ -7,7 +7,7 @@ - + diff --git a/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj b/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj index 689c6d1..6e1e1e6 100644 --- a/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj +++ b/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj @@ -7,12 +7,12 @@ - + - - + + diff --git a/EvoCalculator.Core.FinanceFormulas/XNPV.cs b/EvoCalculator.Core.FinanceFormulas/XNPV.cs index 7bd3f91..d1287a9 100644 --- a/EvoCalculator.Core.FinanceFormulas/XNPV.cs +++ b/EvoCalculator.Core.FinanceFormulas/XNPV.cs @@ -25,7 +25,7 @@ namespace EvoCalculator.Core.FinanceFormulas return (from item in _flows let days = -(item.Date - startDate).Days - select (double)item.Value * Math.Pow(1 + _rate, (double)days / 365)).Sum(); + select (double) item.Value * Math.Pow(1 + _rate, (double) days / 365)).Sum(); } public double GetResultPrime() @@ -33,7 +33,7 @@ namespace EvoCalculator.Core.FinanceFormulas var startDate = _flows.OrderBy(i => i.Date).First().Date; return (from item in _flows let daysRatio = -(item.Date - startDate).Days / 365 - select (double)item.Value * daysRatio * Math.Pow(1.0 + _rate, daysRatio - 1)).Sum(); + select (double) item.Value * daysRatio * Math.Pow(1.0 + _rate, daysRatio - 1)).Sum(); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Models/Calculation/Models/Prepared/PreparedValues.cs b/EvoCalculator.Core.Models/Calculation/Models/Prepared/PreparedValues.cs index 82416ca..380abea 100644 --- a/EvoCalculator.Core.Models/Calculation/Models/Prepared/PreparedValues.cs +++ b/EvoCalculator.Core.Models/Calculation/Models/Prepared/PreparedValues.cs @@ -101,7 +101,7 @@ namespace EvoCalculator.Core.Models.Calculation.Models.Prepared public decimal CalculationCost => PlPrice + (Insurance + Rats + Registration + TrackerCost + - TLMCost + TransportTaxGr) * (decimal)Leasing0K; + TLMCost + TransportTaxGr) * (decimal) Leasing0K; public decimal TlmCostPaymentSum { get; set; } public decimal GpsCostPaymentSum { get; set; } @@ -138,7 +138,7 @@ namespace EvoCalculator.Core.Models.Calculation.Models.Prepared public decimal DogCredit => PlPrice + (Insurance + Rats + Registration + TrackerCost + TLMCost + TransportTaxGr) * - (decimal)Leasing0K - + (decimal) Leasing0K - FirstPaymentSum + NsibNetto * 12 / Nmper - (Leasing0K != 1 ? 0 : Discount); diff --git a/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj b/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj index 320c82c..bbed960 100644 --- a/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj +++ b/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj @@ -6,12 +6,12 @@ - + - - + + diff --git a/EvoCalculator.Core.Models/PostCalculation/Models/Prepared/Validation/Required.cs b/EvoCalculator.Core.Models/PostCalculation/Models/Prepared/Validation/Required.cs index b9d3fc2..135daf7 100644 --- a/EvoCalculator.Core.Models/PostCalculation/Models/Prepared/Validation/Required.cs +++ b/EvoCalculator.Core.Models/PostCalculation/Models/Prepared/Validation/Required.cs @@ -4,8 +4,8 @@ namespace EvoCalculator.Core.Models.PostCalculation.Models.Prepared.Validation { public class Required : ValidationAttribute { - private bool _current; - private bool _next; + private readonly bool _current; + private readonly bool _next; public Required(bool current, bool next, string errorMessage) { diff --git a/EvoCalculator.Core.Models/PostCalculation/Models/Request/RequestCalculation.cs b/EvoCalculator.Core.Models/PostCalculation/Models/Request/RequestCalculation.cs index b8e430f..897bdef 100644 --- a/EvoCalculator.Core.Models/PostCalculation/Models/Request/RequestCalculation.cs +++ b/EvoCalculator.Core.Models/PostCalculation/Models/Request/RequestCalculation.cs @@ -1,9 +1,8 @@ using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.lib; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; -using System.ComponentModel.DataAnnotations; - namespace EvoCalculator.Core.Models.PostCalculation.Models.Request { @@ -23,19 +22,15 @@ namespace EvoCalculator.Core.Models.PostCalculation.Models.Request { var errors = new List(); - if (this.TablePayments.Current[0].SumPayment / - (this.PreparedValues.PlPrice.Next - PreparedValues.Discount.Next) >= 0.500001m) - { + if (TablePayments.Current[0].SumPayment / + (PreparedValues.PlPrice.Next - PreparedValues.Discount.Next) >= 0.500001m) errors.Add(new ValidationResult( "Первый платеж по графику более 50% от стоимости ПЛ с учетом скидки. Необходимо уменьшить первый платеж")); - } if (PreparedValues.CalcType == 100000003 && PreparedValues.Nmper.Next - PreparedValues.EditPaymentNumber > 1) - { errors.Add( new ValidationResult("При досрочном выкупе недопустимый срок сворачивания графика")); - } return errors; diff --git a/EvoCalculator.Core.PostCalculation/EvoCalculator.Core.PostCalculation.csproj b/EvoCalculator.Core.PostCalculation/EvoCalculator.Core.PostCalculation.csproj index 60ad764..8030d50 100644 --- a/EvoCalculator.Core.PostCalculation/EvoCalculator.Core.PostCalculation.csproj +++ b/EvoCalculator.Core.PostCalculation/EvoCalculator.Core.PostCalculation.csproj @@ -5,9 +5,9 @@ - - - + + + diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Current/DateColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Current/DateColumn.cs index f110684..bd3a8c2 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Current/DateColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Current/DateColumn.cs @@ -1,5 +1,4 @@ using System; -using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; @@ -13,10 +12,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Current public void ComputeValues(TablePaymentsRow[] currentTablePayments) { - for (var i = 1; i < Values.Length; i++) - { - Values[i] = currentTablePayments[i - 1].DatePayment; - } + for (var i = 1; i < Values.Length; i++) Values[i] = currentTablePayments[i - 1].DatePayment; Values[0] = Values[1]; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Current/SumColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Current/SumColumn.cs index 165797c..9582a2f 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Current/SumColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Current/SumColumn.cs @@ -15,10 +15,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Current { Values[0] = -(preparedValues.BaseCost + preparedValues.FuelCardSum); Values[1] = currentTablePayments[0].SumPayment + preparedValues.SubsidySum; - for (var i = 2; i < Values.Length; i++) - { - Values[i] = currentTablePayments[i - 1].SumPayment; - } + for (var i = 2; i < Values.Length; i++) Values[i] = currentTablePayments[i - 1].SumPayment; } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOColumn.cs index 9bbb5e9..0836683 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOColumn.cs @@ -9,10 +9,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class CashflowMSFOColumn : BaseColumnWithNominal { - public CashflowMSFOColumn() - { - } - public void ComputeValues(NextValues.NextValues nextValues , PreparedValues preparedValues , BaseColumn nextSumColumn @@ -26,7 +22,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { var costInsurances = Array.Empty(); if (nextTableInsurance != null) - { costInsurances = nextTableInsurance .Where(ins => ins.PeriodNumberInsurance > 1 @@ -35,13 +30,9 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next .OrderBy(x => x.TypeRiskInsurance) .Select(x => -x.CostInsurance) .ToArray(); - } var tlmCosts = Array.Empty(); - if (nextTLMCostColumn != null) - { - tlmCosts = nextTLMCostColumn.Values.Skip(1).Select(x => -x).ToArray(); - } + if (nextTLMCostColumn != null) tlmCosts = nextTLMCostColumn.Values.Skip(1).Select(x => -x).ToArray(); Values = Array.Concat( new[] {-nextValues.AcquisitionExpenses.Value - preparedValues.FuelCardSum} @@ -58,14 +49,10 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next ); var nextTLMDates = Array.Empty(); - if (nextTLMDateColumn != null) - { - nextTLMDates = nextTLMDateColumn.Values.Skip(1).ToArray(); - } + if (nextTLMDateColumn != null) nextTLMDates = nextTLMDateColumn.Values.Skip(1).ToArray(); var dateStartPeriodInsurances = Array.Empty(); if (nextTableInsurance != null) - { dateStartPeriodInsurances = nextTableInsurance .Where(ins => ins.PeriodNumberInsurance > 1 @@ -74,7 +61,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next .OrderBy(x => x.TypeRiskInsurance) .Select(x => x.DateStartPeriodInsurance) .ToArray(); - } Dates = Array.Concat( new[] {nextDateTempColumn.GetValue(0)} @@ -94,7 +80,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { if (Values.Length != Dates.Length) throw new Exception( - $"Ошибка во время расчета столбца {this.GetType().Name}: не совпадает длина массива значений"); + $"Ошибка во время расчета столбца {GetType().Name}: не совпадает длина массива значений"); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinal2Column.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinal2Column.cs index 4c96eca..9c21bca 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinal2Column.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinal2Column.cs @@ -7,17 +7,13 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class CashflowMSFOFinal2Column : BaseColumnWithNominal { - public CashflowMSFOFinal2Column() - { - } - public void ComputeValues(CashflowMSFOFinalColumn nextCashflowMSFOFinalColumn, BaseColumn nextDateTempColumn, PreparedValues preparedValues) { - Dates = Array.Concat(nextCashflowMSFOFinalColumn.Dates, new[] { nextDateTempColumn.GetValue(2) }); + Dates = Array.Concat(nextCashflowMSFOFinalColumn.Dates, new[] {nextDateTempColumn.GetValue(2)}); Values = Array.Concat(nextCashflowMSFOFinalColumn.Values, - new[] { -preparedValues.BonusDirector }); + new[] {-preparedValues.BonusDirector}); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinalColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinalColumn.cs index 1b97ecc..3e5dd85 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinalColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOFinalColumn.cs @@ -7,16 +7,12 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class CashflowMSFOFinalColumn : BaseColumnWithNominal { - public CashflowMSFOFinalColumn() - { - } - public void ComputeValues(CashflowMSFOColumn nextCashflowMSFOColumn, BaseColumn nextDateTempColumn, PreparedValues preparedValues) { - Dates = Array.Concat(nextCashflowMSFOColumn.Dates, new[] { nextDateTempColumn.GetValue(2) }); + Dates = Array.Concat(nextCashflowMSFOColumn.Dates, new[] {nextDateTempColumn.GetValue(2)}); Values = Array.Concat(nextCashflowMSFOColumn.Values, - new[] { -preparedValues.BonusManagerLeasingExtra }); + new[] {-preparedValues.BonusManagerLeasingExtra}); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOForNIColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOForNIColumn.cs index 736e301..848cba1 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOForNIColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowMSFOForNIColumn.cs @@ -12,10 +12,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public DateTime[] Dates; - public CashflowMSFOForNIColumn() - { - } - public void ComputeValues(PreparedValues preparedValues , NextValues.NextValues nextValues , BaseColumn nextDateTempColumn diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowNSIBColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowNSIBColumn.cs index d4596f7..2033fa4 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowNSIBColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CashflowNSIBColumn.cs @@ -1,10 +1,4 @@ -using System; -using System.Linq; -using EvoCalculator.Core.Base.Columns; -using EvoCalculator.Core.Base.Interfaces.Columns; -using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; -using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; -using TridentGoalSeek; +using EvoCalculator.Core.Base.Columns; namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CreditColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CreditColumn.cs index c36f08b..dadf8a7 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CreditColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/CreditColumn.cs @@ -11,18 +11,12 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next public void ComputeValues(PreparedValues preparedValues, BaseColumn nextSumCreditColumn) { - Values[1] = -nextSumCreditColumn.GetValue(1) * (decimal)preparedValues.LoanRate / 12; + Values[1] = -nextSumCreditColumn.GetValue(1) * (decimal) preparedValues.LoanRate / 12; for (var i = 2; i < Values.Length; i++) - { if (GetValue(i - 1) < 0) - { - Values[i] = -nextSumCreditColumn.GetValue(i - 1) * (decimal)preparedValues.LoanRate / 12; - } + Values[i] = -nextSumCreditColumn.GetValue(i - 1) * (decimal) preparedValues.LoanRate / 12; else - { Values[i] = 0; - } - } Values[0] = Sum; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT1.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT1.cs index 2536d26..18eac07 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT1.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT1.cs @@ -1,5 +1,4 @@ using System; -using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; @@ -15,14 +14,12 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next public void ComputeValues(PreparedValues preparedValues, TablePaymentsRow[] currentTablePayments) { for (var i = 1; i < Values.Length; i++) - { if (i < preparedValues.EditPaymentNumber) Values[i] = currentTablePayments[i - 1].DatePayment; else if (i == preparedValues.EditPaymentNumber) Values[i] = preparedValues.EditPaymentDate.Next.AddMonths(preparedValues.MonthOffset); else Values[i] = Values[i - 1].AddMonths(1); - } Values[0] = Values[1]; } } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT2.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT2.cs index f211c77..c5baa67 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT2.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/DateColumn/DateColumnVT2.cs @@ -14,12 +14,10 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next public void ComputeValues(PreparedValues preparedValues, TablePaymentsRow[] currentTablePayments) { for (var i = 1; i < Values.Length; i++) - { if (i <= preparedValues.EditPaymentNumber) Values[i] = currentTablePayments[i - 1].DatePayment; else Values[i] = Values[i - 1].AddMonths(1); - } Values[0] = Values[1]; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/InterestColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/InterestColumn.cs index 94ab503..8af0527 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/InterestColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/InterestColumn.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Text.RegularExpressions; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Tools.Check; using EvoCalculator.Core.Tools.GroupColumns; @@ -18,7 +17,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next public void ComputeValues(BaseColumn nextNIColumn, BaseColumn nextIRRGrColumn) { for (var i = 2; i < Values.Length; i++) - Values[i] = nextNIColumn.Values[i - 1] * (decimal)nextIRRGrColumn.Values[i]; + Values[i] = nextNIColumn.Values[i - 1] * (decimal) nextIRRGrColumn.Values[i]; } public void PostCheck(BaseColumn nextSumColumn diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBBruttoGrColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBBruttoGrColumn.cs index 93449ef..70a2121 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBBruttoGrColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBBruttoGrColumn.cs @@ -1,5 +1,4 @@ -using System.Collections.Generic; -using System.Linq; +using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; @@ -9,22 +8,11 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class NSIBBruttoGrColumn : BaseColumnWithSum, IGoalSeekAlgorithm { - private readonly PreparedValues _preparedValues; private readonly TablePaymentsRow[] _currentTablePayments; private readonly BaseColumn _nextSumColumn; + private readonly PreparedValues _preparedValues; - private double[] _ratios; - - private void ComputeRatios() - { - var targetMaxNextSumPayment = - _nextSumColumn.Values - .Where((x, i) => i >= _preparedValues.EditPaymentNumber) - .Max(x => x); - - for (var i = _preparedValues.EditPaymentNumber; i < Values.Length; i++) - _ratios[i] = (double) (_nextSumColumn.GetValue(i) / targetMaxNextSumPayment); - } + private readonly double[] _ratios; public NSIBBruttoGrColumn(int count, PreparedValues preparedValues, TablePaymentsRow[] currentTablePayments, @@ -43,16 +31,25 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next return Values.Skip(_preparedValues.EditPaymentNumber).Sum(v => v); } + private void ComputeRatios() + { + var targetMaxNextSumPayment = + _nextSumColumn.Values + .Where((x, i) => i >= _preparedValues.EditPaymentNumber) + .Max(x => x); + + for (var i = _preparedValues.EditPaymentNumber; i < Values.Length; i++) + _ratios[i] = (double) (_nextSumColumn.GetValue(i) / targetMaxNextSumPayment); + } + private void FillValues(decimal x) { for (var i = 1; i < Values.Length - (_preparedValues.LastPaymentFix ? 1 : 0); i++) - { if (i < _preparedValues.EditPaymentNumber) Values[i] = _currentTablePayments[i - 1].NSIBBruttoPayment; else Values[i] = x * (decimal) _ratios[i]; - } Values[0] = Sum; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBExpensesColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBExpensesColumn.cs index 81ba579..77f48e8 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBExpensesColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/NSIBExpensesColumn.cs @@ -21,7 +21,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next var futureNSIBExpensesPayments = currentTablePayments .Where((x, i) => i >= nextValues.Nmper.Value - 1) .Sum(x => x.NSIBExpensesPayment); - if (preparedValues.LastPaymentFix == true) + if (preparedValues.LastPaymentFix) { Values[^2] = futureNSIBExpensesPayments; Values[^1] = 0; diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/RevenueColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/RevenueColumn.cs index d444c44..ba76f07 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/RevenueColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/RevenueColumn.cs @@ -21,7 +21,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next var futureRevenuePayments = currentTablePayments .Where((x, i) => i >= nextValues.Nmper.Value - 1) .Sum(x => x.NSIBRevenuePayment); - if (preparedValues.LastPaymentFix == true) + if (preparedValues.LastPaymentFix) { Values[^2] = futureRevenuePayments; Values[^1] = 0; diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/BaseSumColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/BaseSumColumn.cs index 8177765..6d3bfb1 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/BaseSumColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/BaseSumColumn.cs @@ -9,13 +9,27 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class BaseSumColumn : BaseColumnWithNominal { - protected readonly PreparedValues _preparedValues; - protected readonly NextValues.NextValues _nextValues; protected readonly TablePaymentsRow[] _currentTablePayments; protected readonly TablePaymentsRow[] _nextTablePayments; + protected readonly NextValues.NextValues _nextValues; + protected readonly PreparedValues _preparedValues; protected double[] _ratios; + public BaseSumColumn(int count, BaseColumn dateTempColumn, PreparedValues preparedValues, + NextValues.NextValues nextValues, TablePaymentsRow[] currentTablePayments + , TablePaymentsRow[] nextTablePayments) + : base(count, dateTempColumn) + { + _preparedValues = preparedValues; + _nextValues = nextValues; + _currentTablePayments = currentTablePayments; + _nextTablePayments = nextTablePayments; + + _ratios = new double[count]; + ComputeRatios(); + } + public virtual void ComputeValues(decimal x) { } @@ -35,23 +49,9 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next for (var i = targetCurrentPayments[0].NumberPayment; i < _ratios.Length; i++) if (i < _currentTablePayments.Length) - _ratios[i] = (double)(_currentTablePayments[i - 1].SumPayment / targetMaxSumPayment); + _ratios[i] = (double) (_currentTablePayments[i - 1].SumPayment / targetMaxSumPayment); else - _ratios[i] = (double)(_currentTablePayments[^2].SumPayment / targetMaxSumPayment); - } - - public BaseSumColumn(int count, BaseColumn dateTempColumn, PreparedValues preparedValues, - NextValues.NextValues nextValues, TablePaymentsRow[] currentTablePayments - , TablePaymentsRow[] nextTablePayments) - : base(count, dateTempColumn) - { - _preparedValues = preparedValues; - _nextValues = nextValues; - _currentTablePayments = currentTablePayments; - _nextTablePayments = nextTablePayments; - - _ratios = new double[count]; - ComputeRatios(); + _ratios[i] = (double) (_currentTablePayments[^2].SumPayment / targetMaxSumPayment); } @@ -60,14 +60,15 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next Values[0] = -(_nextValues.BaseCost.Value + _preparedValues.FuelCardSum); Values[1] = _currentTablePayments[0].SumPayment + _preparedValues.SubsidySum; for (var i = 2; i < Values.Length - 1; i++) - { if (i < _preparedValues.EditPaymentNumber) + { Values[i] = _currentTablePayments[i - 1].SumPayment; + } else { if (_nextTablePayments != null && _nextTablePayments - .Select(tablePaymentsRow => tablePaymentsRow.NumberPayment) - .Contains(i)) + .Select(tablePaymentsRow => tablePaymentsRow.NumberPayment) + .Contains(i)) { var numberPayment = _nextTablePayments .FirstOrDefault(tablePaymentsRow => tablePaymentsRow.NumberPayment == i) @@ -76,15 +77,14 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next } else { - Values[i] = x * (decimal)_ratios[i]; + Values[i] = x * (decimal) _ratios[i]; } } - } Values[^1] = _preparedValues.LastPaymentFix switch { true => _currentTablePayments[^1].SumPayment, - _ => x * (decimal)_ratios[^2] + _ => x * (decimal) _ratios[^2] }; } @@ -94,7 +94,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next checkTools.CheckColumnForLessThanZeroValue(Values); checkTools.CheckColumnForZeroValue(Values.Skip(2)); - if (Values[1] / Values.Skip(1).Sum() >= (decimal)0.5) + if (Values[1] / Values.Skip(1).Sum() >= (decimal) 0.5) throw new Exception( "Первый платеж по графику более 50% от суммы лизинговых платежей. Необходимо уменьшить первый платеж. Измените параметры для расчета."); } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT1.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT1.cs index 601954b..601be1a 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT1.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT1.cs @@ -1,5 +1,4 @@ using System; -using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Base.Interfaces.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT3.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT3.cs index dec3743..900f652 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT3.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumColumn/SumColumnVT3.cs @@ -1,5 +1,4 @@ using System; -using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; @@ -8,8 +7,8 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class SumColumnVT3 : BaseSumColumn { - private Constants.Calculation _constants; - private BaseColumn techNextSumRepaymentColumn; + private readonly Constants.Calculation _constants; + private readonly BaseColumn techNextSumRepaymentColumn; public SumColumnVT3(int count, BaseColumn dateTempColumn, PreparedValues preparedValues, NextValues.NextValues nextValues, TablePaymentsRow[] currentTablePayments, @@ -29,9 +28,10 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next Values[0] = -(_nextValues.BaseCost.Value + _preparedValues.FuelCardSum); Values[1] = _currentTablePayments[0].SumPayment + _preparedValues.SubsidySum; for (var i = 2; i < Values.Length; i++) - { if (i < _preparedValues.EditPaymentNumber) + { Values[i] = _currentTablePayments[i - 1].SumPayment; + } else if (i == _preparedValues.EditPaymentNumber) { if (_preparedValues.ChangeRepayment == false) @@ -40,14 +40,17 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next else Values[i] = techNextSumRepaymentColumn.GetValue(i) / (decimal) (1 + _constants.VatValue); - if (_preparedValues.LastPaymentFix == true) + if (_preparedValues.LastPaymentFix) Values[i] -= _currentTablePayments[^1].SumPayment; } - else if (_preparedValues.LastPaymentFix == true) + else if (_preparedValues.LastPaymentFix) + { Values[i] = _currentTablePayments[^1].SumPayment; + } else + { Values[i] = Values[_preparedValues.EditPaymentNumber]; - } + } } public void ComputeValues() diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCreditColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCreditColumn.cs index 94af44c..6841ba2 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCreditColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCreditColumn.cs @@ -15,20 +15,14 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next , BaseColumn nextSumColumn) { Values[1] = Values[2] = (nextValues.BaseCost.Value - nextSumColumn.GetValue(1)) * - (1 + (decimal)constants.VatValue); + (1 + (decimal) constants.VatValue); for (var i = 3; i < Values.Length; i++) - { if (GetValue(i - 1) > 0) - { Values[i] = GetValue(i - 1) - GetValue(2) / preparedValues.LoanRatePeriod; - } else - { Values[i] = 0; - } - } } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCurrentNegativeColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCurrentNegativeColumn.cs index 55a3c33..0485b23 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCurrentNegativeColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumCurrentNegativeColumn.cs @@ -4,7 +4,6 @@ using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; using EvoCalculator.Core.Tools.Array; using EvoCalculator.Core.Tools.GroupColumns; -using EvoCalculator.Core.Tools.GroupColumns.Models; namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumRepaymentColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumRepaymentColumn.cs index d81167c..76e92d7 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumRepaymentColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumRepaymentColumn.cs @@ -12,10 +12,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class SumRepaymentColumn : BaseColumn { - public SumRepaymentColumn() - { - } - public void ComputeValues(PreparedValues preparedValues , TablePaymentsRow[] currentTablePayments , BaseColumn nextSumCurrentNegativeColumn @@ -43,18 +39,18 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next nextSumCurrentNegativeColumn.GetValues(1).Select(x => -x).ToArray()) , GroupColumns.Create(nextDateTempColumn.GetValues(1), nextSumCurrentTlmColumn.GetValues(1) - .Select(x => -x * (1 + (decimal)constants.VatValue))) + .Select(x => -x * (1 + (decimal) constants.VatValue))) , GroupColumns.Create(nextCashflowMsfoForNiColumn.Dates.Skip(1), nextSumCurrentInterestColumn .GetValues(1) - .Select(x => -x * (1 + (decimal)constants.VatValue) * (decimal)preparedValues.Repayment)) + .Select(x => -x * (1 + (decimal) constants.VatValue) * (decimal) preparedValues.Repayment)) ); Values = Array.Concat( - new[] { 0m, 0 }, + new[] {0m, 0}, firstPart, GroupColumns.Split(secondPart.Skip(preparedValues.EditPaymentNumber - 1).SkipLast(1)).Values, - new[] { nextSumWithVatColumn.Values[^1] } + new[] {nextSumWithVatColumn.Values[^1]} ); } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/BaseSumWithVATColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/BaseSumWithVATColumn.cs index 9d98f2e..b5a9e93 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/BaseSumWithVATColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/BaseSumWithVATColumn.cs @@ -1,5 +1,4 @@ -using System; -using System.Linq; +using System.Linq; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; @@ -9,11 +8,11 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class BaseSumWithVATColumn : BaseColumnWithSum { - protected PreparedValues _preparedValues; - protected BaseSumColumn _nextSumColumn; - protected TablePaymentsRow[] _currentTablePayments; - protected VATColumn _nextVATColumn; protected Constants.Calculation _constants; + protected TablePaymentsRow[] _currentTablePayments; + protected BaseSumColumn _nextSumColumn; + protected VATColumn _nextVATColumn; + protected PreparedValues _preparedValues; public BaseSumWithVATColumn(int count, PreparedValues preparedValues, BaseSumColumn nextSumColumn, TablePaymentsRow[] currentTablePayments, VATColumn nextVatColumn, @@ -29,15 +28,13 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next protected void FillValues() { Values[1] = _currentTablePayments[0].SumWithVATPayment + - _preparedValues.SubsidySum * (decimal)(1 + _constants.VatValue); + _preparedValues.SubsidySum * (decimal) (1 + _constants.VatValue); for (var i = 2; i < Values.Length; i++) - { if (i < _preparedValues.EditPaymentNumber) Values[i] = _currentTablePayments[i - 1].SumWithVATPayment; else Values[i] = _nextSumColumn.GetValue(i) + _nextVATColumn.GetValue(i); - } Values[0] = Sum; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/SumWithVATColumnVT2.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/SumWithVATColumnVT2.cs index 4aee077..46bd63f 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/SumWithVATColumnVT2.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/SumWithVATColumn/SumWithVATColumnVT2.cs @@ -7,6 +7,8 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class SumWithVATColumnVT2 : BaseSumWithVATColumn, IGoalSeekAlgorithm { + private readonly NextValues.NextValues _nextValues; + public SumWithVATColumnVT2(int count, PreparedValues preparedValues, BaseSumColumn nextSumColumn, TablePaymentsRow[] currentTablePayments, VATColumn nextVatColumn, Constants.Calculation constants, NextValues.NextValues nextValues) : base(count, preparedValues, nextSumColumn, currentTablePayments, @@ -15,8 +17,6 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next _nextValues = nextValues; } - private readonly NextValues.NextValues _nextValues; - public decimal Calculate(decimal inputVariable) { _nextSumColumn.ComputeValues(inputVariable); diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMCostColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMCostColumn.cs index d31969d..f32fdd0 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMCostColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMCostColumn.cs @@ -10,13 +10,13 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { public class TLMCostColumn : BaseColumnWithSum { - public DateTime[] Dates { get; set; } - public TLMCostColumn(int count, DateTime[] dates) : base(count) { Dates = dates; } + public DateTime[] Dates { get; set; } + public void ComputeValues( PreparedValues preparedValues , ChangingValue tableTLMTracker) @@ -63,7 +63,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next { if (Values.Length != Dates.Length) throw new Exception( - $"Ошибка во время расчета столбца {this.GetType().Name}: не совпадает длина массива значений"); + $"Ошибка во время расчета столбца {GetType().Name}: не совпадает длина массива значений"); } } } \ No newline at end of file diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMDateColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMDateColumn.cs index 3e340e6..779682e 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMDateColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMDateColumn.cs @@ -19,9 +19,9 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next var year = currentDate.Year; var month = currentDate.Month; var day = DateTime.DaysInMonth(year, month); - + Values[i] = new DateTime(year, month, day); - + currentDate = currentDate.AddMonths(1); i++; } diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMGrColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMGrColumn.cs index 53a6aa0..19330ae 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMGrColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/TLMGrColumn.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next , GroupColumns.Split(groupTLMGrColumn).Values); Values[0] = Sum; } - + public void PostCheck() { new CheckTools().CheckColumnForLessThanZeroValue(Values); diff --git a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/VATColumn.cs b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/VATColumn.cs index 187538b..0fad5dd 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Columns/Next/VATColumn.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Columns/Next/VATColumn.cs @@ -19,14 +19,12 @@ namespace EvoCalculator.Core.PostCalculation.v1.Columns.Next , TablePaymentsRow[] currentTablePayments , Constants.Calculation constants) { - Values[1] = currentTablePayments[0].VATPayment + preparedValues.SubsidySum * (decimal)constants.VatValue; + Values[1] = currentTablePayments[0].VATPayment + preparedValues.SubsidySum * (decimal) constants.VatValue; for (var i = 2; i < Values.Length; i++) - { if (i < preparedValues.EditPaymentNumber) Values[i] = currentTablePayments[i - 1].VATPayment; else - Values[i] = Math.Round(nextSumColumn.GetValue(i) * (decimal)constants.VatValue, 2); - } + Values[i] = Math.Round(nextSumColumn.GetValue(i) * (decimal) constants.VatValue, 2); } public void PostCheck() diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateByIRRAndSum.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateByIRRAndSum.cs index 633e3f7..92aa0fa 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateByIRRAndSum.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateByIRRAndSum.cs @@ -52,7 +52,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var techNextDateColumn = new DateColumnVT2(preparedValues.Nmper.Next + 1); techNextDateColumn.ComputeValues(preparedValues, currentTablePayments); - var techNextDateTempColumn = new Columns.Next.DateTempColumn(preparedValues.Nmper.Next + 1); + var techNextDateTempColumn = new DateTempColumn(preparedValues.Nmper.Next + 1); techNextDateTempColumn.ComputeValues(preparedValues, techNextDateColumn); @@ -82,7 +82,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var techNextSumColumn = new SumColumnVT1(preparedValues.Nmper.Next + 1, techNextDateTempColumn, preparedValues, nextValues, currentTablePayments, nextTablePayments); - techNextSumColumn.ComputeValues((decimal)currentSumColumn.IRR); + techNextSumColumn.ComputeValues((decimal) currentSumColumn.IRR); var techNextVATColumn = new VATColumn(preparedValues.Nmper.Next + 1); techNextVATColumn.ComputeValues(preparedValues, techNextSumColumn, currentTablePayments, constants); @@ -100,7 +100,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var nextDateColumn = new DateColumnVT1(preparedValues.Nmper.Next + 1); nextDateColumn.ComputeValues(preparedValues, currentTablePayments); - var nextDateTempColumn = new Columns.Next.DateTempColumn(preparedValues.Nmper.Next + 1); + var nextDateTempColumn = new DateTempColumn(preparedValues.Nmper.Next + 1); nextDateTempColumn.ComputeValues(preparedValues, nextDateColumn); @@ -224,7 +224,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers */ - return new ManagerResult() + return new ManagerResult { NextValues = nextValues.GetValues(), PreparedValues = preparedValues, diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateDefault.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateDefault.cs index d591bb6..119c2dc 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateDefault.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/CalculateDefault.cs @@ -6,6 +6,7 @@ using EvoCalculator.Core.Models.PostCalculation.Models.Request; using EvoCalculator.Core.PostCalculation.v1.Columns.Current; using EvoCalculator.Core.PostCalculation.v1.Columns.Next; using EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper; +using DateTempColumn = EvoCalculator.Core.PostCalculation.v1.Columns.Current.DateTempColumn; namespace EvoCalculator.Core.PostCalculation.v1.Managers { @@ -35,7 +36,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers currentDateColumn.ComputeValues(currentTablePayments); var currentDateTempColumn = - new Columns.Current.DateTempColumn(preparedValues.Nmper.Current + 1); + new DateTempColumn(preparedValues.Nmper.Current + 1); currentDateTempColumn.ComputeValues(currentDateColumn); var currentSumColumn = new SumColumn(preparedValues.Nmper.Current + 1, currentDateTempColumn); @@ -83,7 +84,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var nextSumColumn = new SumColumnVT1(preparedValues.Nmper.Next + 1, nextDateTempColumn, preparedValues, nextValues, currentTablePayments, nextTablePayments); - nextSumColumn.ComputeValues((decimal)currentSumColumn.IRR); + nextSumColumn.ComputeValues((decimal) currentSumColumn.IRR); nextSumColumn.PostCheck(); nextSumColumn.RoundValues(); diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/EarlyRedemption.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/EarlyRedemption.cs index c5fa720..3950bda 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/EarlyRedemption.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/EarlyRedemption.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.Linq; -using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Manager; using EvoCalculator.Core.Models.PostCalculation.Models.Request; using EvoCalculator.Core.PostCalculation.v1.Columns.Next; @@ -35,7 +34,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var techNextDateColumn = new DateColumnVT2(preparedValues.Nmper.Current + 1); techNextDateColumn.ComputeValues(preparedValues, currentTablePayments); - var techNextDateTempColumn = new Columns.Next.DateTempColumn(preparedValues.Nmper.Current + 1); + var techNextDateTempColumn = new DateTempColumn(preparedValues.Nmper.Current + 1); techNextDateTempColumn.ComputeValues(preparedValues, techNextDateColumn); @@ -137,7 +136,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var nextDateColumn = new DateColumnVT1(preparedValues.Nmper.Next + 1); nextDateColumn.ComputeValues(preparedValues, currentTablePayments); - var nextDateTempColumn = new Columns.Next.DateTempColumn(preparedValues.Nmper.Next + 1); + var nextDateTempColumn = new DateTempColumn(preparedValues.Nmper.Next + 1); nextDateTempColumn.ComputeValues(preparedValues, nextDateColumn); @@ -264,7 +263,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers */ - return new ManagerResult() + return new ManagerResult { NextValues = nextValues.GetValues(), PreparedValues = preparedValues, diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithChangingTheTerm.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithChangingTheTerm.cs index 938aace..4799cf5 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithChangingTheTerm.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithChangingTheTerm.cs @@ -83,7 +83,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var techNextSumColumn = new SumColumnVT1(preparedValues.Nmper.Next + 1, techNextDateTempColumn, preparedValues, nextValues, currentTablePayments, nextTablePayments); - techNextSumColumn.ComputeValues((decimal)currentSumColumn.IRR); + techNextSumColumn.ComputeValues((decimal) currentSumColumn.IRR); var techNextVATColumn = new VATColumn(preparedValues.Nmper.Next + 1); techNextVATColumn.ComputeValues(preparedValues, techNextSumColumn, currentTablePayments, constants); @@ -227,7 +227,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers */ - return new ManagerResult() + return new ManagerResult { NextValues = nextValues.GetValues(), PreparedValues = preparedValues, diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithoutChangingTheTerm.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithoutChangingTheTerm.cs index 46fd2ff..71d10a8 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithoutChangingTheTerm.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/PERWithoutChangingTheTerm.cs @@ -6,6 +6,7 @@ using EvoCalculator.Core.Models.PostCalculation.Models.Request; using EvoCalculator.Core.PostCalculation.v1.Columns.Current; using EvoCalculator.Core.PostCalculation.v1.Columns.Next; using EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper; +using DateTempColumn = EvoCalculator.Core.PostCalculation.v1.Columns.Current.DateTempColumn; namespace EvoCalculator.Core.PostCalculation.v1.Managers { @@ -35,7 +36,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers currentDateColumn.ComputeValues(currentTablePayments); var currentDateTempColumn = - new Columns.Current.DateTempColumn(preparedValues.Nmper.Current + 1); + new DateTempColumn(preparedValues.Nmper.Current + 1); currentDateTempColumn.ComputeValues(currentDateColumn); var currentSumColumn = new SumColumn(preparedValues.Nmper.Current + 1, currentDateTempColumn); @@ -83,7 +84,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers var techNextSumColumn = new SumColumnVT1(preparedValues.Nmper.Next + 1, nextDateTempColumn, preparedValues, nextValues, currentTablePayments, nextTablePayments); - techNextSumColumn.ComputeValues((decimal)currentSumColumn.IRR); + techNextSumColumn.ComputeValues((decimal) currentSumColumn.IRR); var techNextVATColumn = new VATColumn(preparedValues.Nmper.Next + 1); techNextVATColumn.ComputeValues(preparedValues, techNextSumColumn, currentTablePayments, constants); diff --git a/EvoCalculator.Core.PostCalculation/v1/Managers/lib/Helper/TLMLength.cs b/EvoCalculator.Core.PostCalculation/v1/Managers/lib/Helper/TLMLength.cs index 205da6c..6b707c8 100644 --- a/EvoCalculator.Core.PostCalculation/v1/Managers/lib/Helper/TLMLength.cs +++ b/EvoCalculator.Core.PostCalculation/v1/Managers/lib/Helper/TLMLength.cs @@ -1,8 +1,8 @@ using System; using EvoCalculator.Core.Base.Columns; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; -using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.lib; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; +using EvoCalculator.Core.Tools; namespace EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper { @@ -13,7 +13,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper public DateTime EndDate { get; set; } } - public partial class Helper + public class Helper { public TLMData GetTLMData(PreparedValues preparedValues , TableTLMTrackerRow[] currentTableTLMTracker @@ -26,7 +26,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper DateTime startDate; DateTime endDate; - if (preparedValues.ChangeTrackerTLM == true) + if (preparedValues.ChangeTrackerTLM) { startDate = currentTableTLMTracker?[0]?.DateTLM ?? preparedValues.EditPaymentDate.Next; endDate = nextTableTLMTracker != null @@ -39,7 +39,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.Managers.lib.Helper endDate = nextDateColumn.Values[^1]; } - var monthsNumber = Tools.Dates.GetMonthDifference(startDate, endDate); + var monthsNumber = Dates.GetMonthDifference(startDate, endDate); return new TLMData { diff --git a/EvoCalculator.Core.PostCalculation/v1/NextValues/AcquisitionExpenses.cs b/EvoCalculator.Core.PostCalculation/v1/NextValues/AcquisitionExpenses.cs index 67b5394..c17e415 100644 --- a/EvoCalculator.Core.PostCalculation/v1/NextValues/AcquisitionExpenses.cs +++ b/EvoCalculator.Core.PostCalculation/v1/NextValues/AcquisitionExpenses.cs @@ -38,11 +38,9 @@ namespace EvoCalculator.Core.PostCalculation.v1.NextValues var nextCostInsurance = 0m; if (nextTableInsurance != null) - { nextCostInsurance = nextTableInsurance .Where(x => x.TypeRiskInsurance is "KASKO" or "OSAGO" && x.PeriodNumberInsurance == 1) .Sum(x => x.CostInsurance); - } Value = preparedValues.PlPrice.Next diff --git a/EvoCalculator.Core.PostCalculation/v1/NextValues/BaseCost.cs b/EvoCalculator.Core.PostCalculation/v1/NextValues/BaseCost.cs index dca017a..6b1bd9d 100644 --- a/EvoCalculator.Core.PostCalculation/v1/NextValues/BaseCost.cs +++ b/EvoCalculator.Core.PostCalculation/v1/NextValues/BaseCost.cs @@ -45,11 +45,9 @@ namespace EvoCalculator.Core.PostCalculation.v1.NextValues var nextCostInsurance = 0m; if (nextTableInsurance != null) - { nextCostInsurance = nextTableInsurance .Where(x => x.TypeRiskInsurance is "KASKO" or "OSAGO") .Sum(x => x.CostInsurance); - } Value = (preparedValues.PlPrice.Next + nextCostInsurance diff --git a/EvoCalculator.Core.PostCalculation/v1/NextValues/NextValues.cs b/EvoCalculator.Core.PostCalculation/v1/NextValues/NextValues.cs index 890fe59..b958bcd 100644 --- a/EvoCalculator.Core.PostCalculation/v1/NextValues/NextValues.cs +++ b/EvoCalculator.Core.PostCalculation/v1/NextValues/NextValues.cs @@ -2,12 +2,12 @@ { public class NextValues { - public BaseCost BaseCost; public AcquisitionExpenses AcquisitionExpenses; + public BaseCost BaseCost; public NiAtInception NiAtInception; - public SumTotal SumTotal; - public Nmper Nmper; public NiAtInceptionMSFO NiAtInceptionMSFO; + public Nmper Nmper; + public SumTotal SumTotal; public NextValues() { diff --git a/EvoCalculator.Core.PostCalculation/v1/NextValues/NiAtInception.cs b/EvoCalculator.Core.PostCalculation/v1/NextValues/NiAtInception.cs index 15e727f..405c7de 100644 --- a/EvoCalculator.Core.PostCalculation/v1/NextValues/NiAtInception.cs +++ b/EvoCalculator.Core.PostCalculation/v1/NextValues/NiAtInception.cs @@ -5,7 +5,7 @@ namespace EvoCalculator.Core.PostCalculation.v1.NextValues { public class NiAtInception : BasePostValue { - public void ComputeValue(decimal acquisitionExpenses,TablePaymentsRow[] currentTablePayments) + public void ComputeValue(decimal acquisitionExpenses, TablePaymentsRow[] currentTablePayments) { Value = acquisitionExpenses - currentTablePayments[0].SumPayment; } diff --git a/EvoCalculator.Core.Tests/ArrayComparer.cs b/EvoCalculator.Core.Tests/ArrayComparer.cs index 8773550..171b517 100644 --- a/EvoCalculator.Core.Tests/ArrayComparer.cs +++ b/EvoCalculator.Core.Tests/ArrayComparer.cs @@ -42,7 +42,7 @@ namespace EvoCalculator.Core.Tests public bool Equals(decimal x, decimal y) { - return Math.Abs(x - y) < (decimal)_tolerance; + return Math.Abs(x - y) < (decimal) _tolerance; } public int GetHashCode(decimal obj) diff --git a/EvoCalculator.Core.Tests/Calculation/v1/Columns/CashflowNSIB.cs b/EvoCalculator.Core.Tests/Calculation/v1/Columns/CashflowNSIB.cs index 75faad6..dfaf6fa 100644 --- a/EvoCalculator.Core.Tests/Calculation/v1/Columns/CashflowNSIB.cs +++ b/EvoCalculator.Core.Tests/Calculation/v1/Columns/CashflowNSIB.cs @@ -190,7 +190,7 @@ namespace EvoCalculator.Core.Tests.Calculation.v1.Columns var cashflowNsibColumn = new CashflowNSIBColumn(preparedValues.Nmper + 1, dateTempColumn, nsibBruttoGrColumn, nsibExpensesColumn); - cashflowNsibColumn.ComputeValues((decimal)cashflowLeasingColumn.IRR); + cashflowNsibColumn.ComputeValues((decimal) cashflowLeasingColumn.IRR); var expected = new[] diff --git a/EvoCalculator.Core.Tests/Calculation/v1/Columns/SumTest.cs b/EvoCalculator.Core.Tests/Calculation/v1/Columns/SumTest.cs index ed1ce3f..14378ca 100644 --- a/EvoCalculator.Core.Tests/Calculation/v1/Columns/SumTest.cs +++ b/EvoCalculator.Core.Tests/Calculation/v1/Columns/SumTest.cs @@ -466,4 +466,5 @@ // Assert.Equal(expected, values, new DecimalArrayComparer(100)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v1/Columns/TaxColumnTests.cs b/EvoCalculator.Core.Tests/Calculation/v1/Columns/TaxColumnTests.cs index abc4db2..d53df34 100644 --- a/EvoCalculator.Core.Tests/Calculation/v1/Columns/TaxColumnTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v1/Columns/TaxColumnTests.cs @@ -454,4 +454,5 @@ // Assert.Equal(expected, incomeTaxColumn.Values, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v1/Columns/VATColumnTests.cs b/EvoCalculator.Core.Tests/Calculation/v1/Columns/VATColumnTests.cs index 872c415..6fe1768 100644 --- a/EvoCalculator.Core.Tests/Calculation/v1/Columns/VATColumnTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v1/Columns/VATColumnTests.cs @@ -99,4 +99,5 @@ // Assert.Equal(expected, res, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowLeasingTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowLeasingTests.cs index 72be25e..c01e222 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowLeasingTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowLeasingTests.cs @@ -331,4 +331,5 @@ // Assert.Equal(expected, cashflowLeasingColumn.Values, new DecimalArrayComparer(0.01)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowMSFOTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowMSFOTests.cs index e9cfd09..5009801 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowMSFOTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowMSFOTests.cs @@ -616,4 +616,5 @@ // Assert.Equal(expected, cashflowMsfoColumn.Values, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowNPV.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowNPV.cs index 27401fe..d760a77 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowNPV.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowNPV.cs @@ -489,4 +489,5 @@ // Assert.Equal(expected, cashflowNpvColumn.Values, new DecimalArrayComparer(0.01)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowTests.cs index 9779b06..1174f00 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CashflowTests.cs @@ -230,4 +230,5 @@ // Assert.Equal(expected, cashflowColumn.Values, new DecimalArrayComparer(0.01)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CreditColumnTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CreditColumnTests.cs index a5f5dd8..3e24100 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/CreditColumnTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/CreditColumnTests.cs @@ -57,7 +57,7 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns 816666.666666663m, 612499.999999997m, 408333.33333333m, - 204166.666666663m, + 204166.666666663m } }; @@ -106,7 +106,7 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns -3572.91666666665m, -2381.94444444443m, -1190.9722222222m, - 1.93540472537279E-11m, + 1.93540472537279E-11m }; diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/DirectorBonusSum.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/DirectorBonusSum.cs index e455436..a69dc43 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/DirectorBonusSum.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/DirectorBonusSum.cs @@ -18,14 +18,13 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns SalaryRate = 0.3, MarketRate = 1.00, DistrictRate = 1.07, - DirectorBonusNsib = 6000, - RegionalDirectorBonusNsib = 10000 - + DirectorBonusNsib = 6000, + RegionalDirectorBonusNsib = 10000 }; - var postValues = new PostValues() + var postValues = new PostValues { - BonusBase = new BonusBase() + BonusBase = new BonusBase { Value = 5940000m } diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/ExpensesTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/ExpensesTests.cs index ee5ead9..e403894 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/ExpensesTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/ExpensesTests.cs @@ -1,5 +1,4 @@ -using System; -using EvoCalculator.Core.Calculation.v1.Columns; +using EvoCalculator.Core.Calculation.v1.Columns; using EvoCalculator.Core.Calculation.v2.Columns; using EvoCalculator.Core.Models.Calculation.Models.Prepared; using Xunit; @@ -180,7 +179,7 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns var gpsExpensesColumn = new GPSExpensesColumn(preparedValues.Nmper + 1) { - Values = new Decimal[] + Values = new decimal[] { 0, 0, diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/NPVBonusExpensesTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/NPVBonusExpensesTests.cs index 1bb53d2..fadedf3 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/NPVBonusExpensesTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/NPVBonusExpensesTests.cs @@ -1,5 +1,5 @@ -using EvoCalculator.Core.Calculation.v2.Columns; -using EvoCalculator.Core.Calculation.v1.PostValues; +using EvoCalculator.Core.Calculation.v1.PostValues; +using EvoCalculator.Core.Calculation.v2.Columns; using EvoCalculator.Core.Models.Calculation.Models.Prepared; using Xunit; using PostValues = EvoCalculator.Core.Calculation.v2.PostValues.PostValues; @@ -25,9 +25,9 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns }; - var postValues = new PostValues() + var postValues = new PostValues { - BonusBase = new BonusBase() + BonusBase = new BonusBase { Value = 5840000.00m } @@ -68,6 +68,5 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns Assert.Equal(expected, npvBonusExpensesColumn.Values, new DecimalArrayComparer()); } - } } \ No newline at end of file diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SubsidyExpensesTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SubsidyExpensesTests.cs index 6b0dc5a..2ec6a7a 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SubsidyExpensesTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SubsidyExpensesTests.cs @@ -46,7 +46,7 @@ namespace EvoCalculator.Core.Tests.Calculation.v2.Columns 0, 0, 0, - 0, + 0 }; diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumCreditColumnTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumCreditColumnTests.cs index ef58d43..3ca4d70 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumCreditColumnTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumCreditColumnTests.cs @@ -107,4 +107,5 @@ // Assert.Equal(expected, sumCreditColumn.Values, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumTest.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumTest.cs index c261bd2..2d234b6 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumTest.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/SumTest.cs @@ -465,4 +465,5 @@ // Assert.Equal(expected, values, new DecimalArrayComparer(100)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/Calculation/v2/Columns/TaxColumnTests.cs b/EvoCalculator.Core.Tests/Calculation/v2/Columns/TaxColumnTests.cs index 2c87cb6..b23c590 100644 --- a/EvoCalculator.Core.Tests/Calculation/v2/Columns/TaxColumnTests.cs +++ b/EvoCalculator.Core.Tests/Calculation/v2/Columns/TaxColumnTests.cs @@ -477,4 +477,5 @@ // Assert.Equal(expected, incomeTaxColumn.Values, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj b/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj index 07ea805..e4c53ca 100644 --- a/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj +++ b/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj @@ -9,28 +9,28 @@ - - - + + + - all - runtime; build; native; contentfiles; analyzers; buildtransitive + all + runtime; build; native; contentfiles; analyzers; buildtransitive - all - runtime; build; native; contentfiles; analyzers; buildtransitive + all + runtime; build; native; contentfiles; analyzers; buildtransitive - - - - + + + + - + diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOColumnTests.cs index bba99ec..50f941b 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOColumnTests.cs @@ -25,7 +25,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var nextValues = new NextValues { - AcquisitionExpenses = new AcquisitionExpenses() + AcquisitionExpenses = new AcquisitionExpenses { Value = 400000 } @@ -83,7 +83,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns PeriodNumberInsurance = 2, DateStartPeriodInsurance = new DateTime(2022, 01, 30), CostInsurance = 9999 - }, + } } }; diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinal2Tests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinal2Tests.cs index 5f1a56d..18d8310 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinal2Tests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinal2Tests.cs @@ -31,7 +31,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var nextCashflowMsfoFinalColumn = new CashflowMSFOFinalColumn { - Values = new decimal[] + Values = new[] { -408000, 300000, diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinalTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinalTests.cs index 00465e2..6eb8979 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinalTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOFinalTests.cs @@ -31,7 +31,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var nextCashflowMsfoColumn = new CashflowMSFOColumn { - Values = new decimal[] + Values = new[] { -408000, 300000, diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOForNIColumn.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOForNIColumn.cs index 65af978..6ab77d1 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOForNIColumn.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/CashflowMSFOForNIColumn.cs @@ -13,12 +13,12 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { var preparedValues = new PreparedValues { - FuelCardSum = 8000, + FuelCardSum = 8000 }; var nextValues = new NextValues { - AcquisitionExpenses = new AcquisitionExpenses { Value = 400000 } + AcquisitionExpenses = new AcquisitionExpenses {Value = 400000} }; var nextDateTempColumn = new DateTempColumn(0) @@ -36,7 +36,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns }; - var cashflowMSFOColumn = new CashflowMSFOColumn() + var cashflowMSFOColumn = new CashflowMSFOColumn { Dates = new[] { @@ -117,7 +117,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 05, 12), new DateTime(2021, 06, 12), new DateTime(2022, 01, 30), - new DateTime(2023, 01, 31), + new DateTime(2023, 01, 31) }; var expectedValues = new[] diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/DateColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/DateColumnTests.cs index 6db4811..94b5a64 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/DateColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/DateColumnTests.cs @@ -17,10 +17,10 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns EditPaymentNumber = 5, EditPaymentDate = new ChangingValue { - Next = new DateTime(2021, 05, 22), + Next = new DateTime(2021, 05, 22) }, MonthOffset = 0, - Nmper = new ChangingValue() + Nmper = new ChangingValue { Next = 10 } @@ -32,44 +32,44 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { new TablePaymentsRow { - DatePayment = new DateTime(2021, 1, 30), + DatePayment = new DateTime(2021, 1, 30) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 02, 15), + DatePayment = new DateTime(2021, 02, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 03, 15), + DatePayment = new DateTime(2021, 03, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 04, 15), + DatePayment = new DateTime(2021, 04, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 05, 15), + DatePayment = new DateTime(2021, 05, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 06, 15), + DatePayment = new DateTime(2021, 06, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 07, 15), + DatePayment = new DateTime(2021, 07, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 08, 15), + DatePayment = new DateTime(2021, 08, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 09, 15), + DatePayment = new DateTime(2021, 09, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 10, 15), - }, + DatePayment = new DateTime(2021, 10, 15) + } } }; @@ -85,7 +85,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 07, 22), new DateTime(2021, 08, 22), new DateTime(2021, 09, 22), - new DateTime(2021, 10, 22), + new DateTime(2021, 10, 22) }; var dateColumn = new DateColumnVT1(preparedValues.Nmper.Next + 1); @@ -101,12 +101,12 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var preparedValues = new PreparedValues { EditPaymentNumber = 5, - EditPaymentDate = new ChangingValue() + EditPaymentDate = new ChangingValue { - Next = new DateTime(2021, 05, 15), + Next = new DateTime(2021, 05, 15) }, MonthOffset = 3, - Nmper = new ChangingValue() + Nmper = new ChangingValue { Next = 10 } @@ -118,44 +118,44 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { new TablePaymentsRow { - DatePayment = new DateTime(2021, 1, 30), + DatePayment = new DateTime(2021, 1, 30) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 02, 15), + DatePayment = new DateTime(2021, 02, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 03, 15), + DatePayment = new DateTime(2021, 03, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 04, 15), + DatePayment = new DateTime(2021, 04, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 05, 15), + DatePayment = new DateTime(2021, 05, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 06, 15), + DatePayment = new DateTime(2021, 06, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 07, 15), + DatePayment = new DateTime(2021, 07, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 08, 15), + DatePayment = new DateTime(2021, 08, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 09, 15), + DatePayment = new DateTime(2021, 09, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 10, 15), - }, + DatePayment = new DateTime(2021, 10, 15) + } } }; @@ -171,7 +171,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 10, 15), new DateTime(2021, 11, 15), new DateTime(2021, 12, 15), - new DateTime(2022, 01, 15), + new DateTime(2022, 01, 15) }; var dateColumn = new DateColumnVT1(preparedValues.Nmper.Next + 1); @@ -187,12 +187,12 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var preparedValues = new PreparedValues { EditPaymentNumber = 5, - EditPaymentDate = new ChangingValue() + EditPaymentDate = new ChangingValue { - Next = new DateTime(2021, 05, 30), + Next = new DateTime(2021, 05, 30) }, MonthOffset = 0, - Nmper = new ChangingValue() + Nmper = new ChangingValue { Next = 16 } @@ -204,44 +204,44 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { new TablePaymentsRow { - DatePayment = new DateTime(2021, 1, 30), + DatePayment = new DateTime(2021, 1, 30) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 02, 15), + DatePayment = new DateTime(2021, 02, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 03, 15), + DatePayment = new DateTime(2021, 03, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 04, 15), + DatePayment = new DateTime(2021, 04, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 05, 15), + DatePayment = new DateTime(2021, 05, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 06, 15), + DatePayment = new DateTime(2021, 06, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 07, 15), + DatePayment = new DateTime(2021, 07, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 08, 15), + DatePayment = new DateTime(2021, 08, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 09, 15), + DatePayment = new DateTime(2021, 09, 15) }, new TablePaymentsRow { - DatePayment = new DateTime(2021, 10, 15), - }, + DatePayment = new DateTime(2021, 10, 15) + } } }; @@ -263,7 +263,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2022, 01, 30), new DateTime(2022, 02, 28), new DateTime(2022, 03, 28), - new DateTime(2022, 04, 28), + new DateTime(2022, 04, 28) }; var dateColumn = new DateColumnVT1(preparedValues.Nmper.Next + 1); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/IRRGrColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/IRRGrColumnTests.cs index 3c961d6..d99f01b 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/IRRGrColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/IRRGrColumnTests.cs @@ -11,7 +11,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { var cashflowMSFOColumn = new CashflowMSFOColumn { - Values = new decimal[] + Values = new[] { -1687895.00m, 714902.22m, @@ -43,7 +43,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 9, 11), new DateTime(2021, 10, 11), new DateTime(2021, 11, 11), - new DateTime(2021, 12, 11), + new DateTime(2021, 12, 11) } }; @@ -64,7 +64,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 9, 11), new DateTime(2021, 10, 11), new DateTime(2021, 11, 11), - new DateTime(2021, 12, 11), + new DateTime(2021, 12, 11) } }; @@ -86,7 +86,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 0.0215793698321729, 0.0208760460037556, 0.0215793698321729, - 0.0208760460037556, + 0.0208760460037556 }; diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NIColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NIColumnTests.cs index a03c45b..7668236 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NIColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NIColumnTests.cs @@ -26,7 +26,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 9, 11), new DateTime(2021, 10, 11), new DateTime(2021, 11, 11), - new DateTime(2021, 12, 11), + new DateTime(2021, 12, 11) }, Values = new[] { @@ -43,7 +43,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 91964.777955m, 91964.777955m, 91964.777955m, - -680.222045m, + -680.222045m } }; @@ -65,7 +65,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 0.0215793698321729, 0.0208760460037556, 0.0215793698321729, - 0.0208760460037556, + 0.0208760460037556 } }; @@ -84,7 +84,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 177626.5565345m, 89369.9187452032m, -666.312681322815m, - -0.000610510996352787m, + -0.000610510996352787m }; var NIColumn = new NIColumn(nextCashflowMSFOForNiColumn.Dates.Length); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NSIBBruttoGrColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NSIBBruttoGrColumnTests.cs index 8e57ba1..97b22ab 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NSIBBruttoGrColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/NSIBBruttoGrColumnTests.cs @@ -39,7 +39,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 125000, 125000, 125000, - 125000, + 125000 } }; @@ -115,7 +115,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new TablePaymentsRow { NSIBBruttoPayment = 2000 - }, + } } }; @@ -138,7 +138,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 2500, 2500, 2500, - 2500, + 2500 }; diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumColumnTests.cs index 253ba93..8fe2e05 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumColumnTests.cs @@ -2,9 +2,11 @@ using EvoCalculator.Core.Models.PostCalculation.Models.Prepared; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.lib; using EvoCalculator.Core.Models.PostCalculation.Models.Prepared.PreparedTables; +using EvoCalculator.Core.PostCalculation.v1.Columns.Current; using EvoCalculator.Core.PostCalculation.v1.Columns.Next; using EvoCalculator.Core.PostCalculation.v1.NextValues; using Xunit; +using DateTempColumn = EvoCalculator.Core.PostCalculation.v1.Columns.Next.DateTempColumn; namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { @@ -16,7 +18,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var preparedValues = new PreparedValues { EditPaymentNumber = 5, - EditPaymentDate = new ChangingValue() + EditPaymentDate = new ChangingValue { Next = new DateTime(2021, 11, 06) }, @@ -31,7 +33,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var nextValues = new NextValues { - BaseCost = new BaseCost() + BaseCost = new BaseCost { Value = 662500m } @@ -59,12 +61,12 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2022, 09, 06), new DateTime(2022, 10, 06), new DateTime(2022, 11, 06), - new DateTime(2022, 12, 06), + new DateTime(2022, 12, 06) } }; - var tablePayment = new ChangingValue() + var tablePayment = new ChangingValue { Current = new[] { @@ -72,110 +74,110 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { NumberPayment = 1, SumPayment = 329125m, - DatePayment = new DateTime(2021, 07, 06), + DatePayment = new DateTime(2021, 07, 06) }, new TablePaymentsRow { NumberPayment = 2, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 08, 06), + DatePayment = new DateTime(2021, 08, 06) }, new TablePaymentsRow { NumberPayment = 3, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 09, 06), + DatePayment = new DateTime(2021, 09, 06) }, new TablePaymentsRow { NumberPayment = 4, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 10, 06), + DatePayment = new DateTime(2021, 10, 06) }, new TablePaymentsRow { NumberPayment = 5, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 11, 06), + DatePayment = new DateTime(2021, 11, 06) }, new TablePaymentsRow { NumberPayment = 6, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 12, 06), + DatePayment = new DateTime(2021, 12, 06) }, new TablePaymentsRow { NumberPayment = 7, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 01, 06), + DatePayment = new DateTime(2022, 01, 06) }, new TablePaymentsRow { NumberPayment = 8, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 02, 06), + DatePayment = new DateTime(2022, 02, 06) }, new TablePaymentsRow { NumberPayment = 9, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 03, 06), + DatePayment = new DateTime(2022, 03, 06) }, new TablePaymentsRow { NumberPayment = 10, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 04, 06), + DatePayment = new DateTime(2022, 04, 06) }, new TablePaymentsRow { NumberPayment = 11, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 05, 06), + DatePayment = new DateTime(2022, 05, 06) }, new TablePaymentsRow { NumberPayment = 12, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 06, 06), + DatePayment = new DateTime(2022, 06, 06) }, new TablePaymentsRow { NumberPayment = 13, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 07, 06), + DatePayment = new DateTime(2022, 07, 06) }, new TablePaymentsRow { NumberPayment = 14, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 08, 06), + DatePayment = new DateTime(2022, 08, 06) }, new TablePaymentsRow { NumberPayment = 15, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 09, 06), + DatePayment = new DateTime(2022, 09, 06) }, new TablePaymentsRow { NumberPayment = 16, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 10, 06), + DatePayment = new DateTime(2022, 10, 06) }, new TablePaymentsRow { NumberPayment = 17, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 11, 06), + DatePayment = new DateTime(2022, 11, 06) }, new TablePaymentsRow { NumberPayment = 18, SumPayment = 833.33m, - DatePayment = new DateTime(2022, 12, 06), - }, + DatePayment = new DateTime(2022, 12, 06) + } }, Next = new[] { @@ -183,8 +185,8 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; @@ -211,15 +213,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2022, 09, 06), new DateTime(2022, 10, 06), new DateTime(2022, 11, 06), - new DateTime(2022, 12, 06), + new DateTime(2022, 12, 06) } }; var currentSumColumn = - new EvoCalculator.Core.PostCalculation.v1.Columns.Current.SumColumn(0, currentDateColumn) + new SumColumn(0, currentDateColumn) { - Values = new decimal[] + Values = new[] { -662500.00m, 329125.00m, @@ -243,7 +245,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns } }; - var expected = new decimal[] + var expected = new[] { -662500.00m, 329125.00m, @@ -280,7 +282,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var preparedValues = new PreparedValues { EditPaymentNumber = 5, - EditPaymentDate = new ChangingValue() + EditPaymentDate = new ChangingValue { Next = new DateTime(2021, 11, 06) }, @@ -295,7 +297,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns var nextValues = new NextValues { - BaseCost = new BaseCost() + BaseCost = new BaseCost { Value = 662500m } @@ -323,12 +325,12 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2022, 12, 06), new DateTime(2023, 01, 06), new DateTime(2023, 02, 06), - new DateTime(2023, 03, 06), + new DateTime(2023, 03, 06) } }; - var tablePayment = new ChangingValue() + var tablePayment = new ChangingValue { Current = new[] { @@ -336,110 +338,110 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { NumberPayment = 1, SumPayment = 329125m, - DatePayment = new DateTime(2021, 07, 06), + DatePayment = new DateTime(2021, 07, 06) }, new TablePaymentsRow { NumberPayment = 2, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 08, 06), + DatePayment = new DateTime(2021, 08, 06) }, new TablePaymentsRow { NumberPayment = 3, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 09, 06), + DatePayment = new DateTime(2021, 09, 06) }, new TablePaymentsRow { NumberPayment = 4, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 10, 06), + DatePayment = new DateTime(2021, 10, 06) }, new TablePaymentsRow { NumberPayment = 5, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 11, 06), + DatePayment = new DateTime(2021, 11, 06) }, new TablePaymentsRow { NumberPayment = 6, SumPayment = 25855.56m, - DatePayment = new DateTime(2021, 12, 06), + DatePayment = new DateTime(2021, 12, 06) }, new TablePaymentsRow { NumberPayment = 7, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 01, 06), + DatePayment = new DateTime(2022, 01, 06) }, new TablePaymentsRow { NumberPayment = 8, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 02, 06), + DatePayment = new DateTime(2022, 02, 06) }, new TablePaymentsRow { NumberPayment = 9, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 03, 06), + DatePayment = new DateTime(2022, 03, 06) }, new TablePaymentsRow { NumberPayment = 10, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 04, 06), + DatePayment = new DateTime(2022, 04, 06) }, new TablePaymentsRow { NumberPayment = 11, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 05, 06), + DatePayment = new DateTime(2022, 05, 06) }, new TablePaymentsRow { NumberPayment = 12, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 06, 06), + DatePayment = new DateTime(2022, 06, 06) }, new TablePaymentsRow { NumberPayment = 13, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 07, 06), + DatePayment = new DateTime(2022, 07, 06) }, new TablePaymentsRow { NumberPayment = 14, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 08, 06), + DatePayment = new DateTime(2022, 08, 06) }, new TablePaymentsRow { NumberPayment = 15, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 09, 06), + DatePayment = new DateTime(2022, 09, 06) }, new TablePaymentsRow { NumberPayment = 16, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 10, 06), + DatePayment = new DateTime(2022, 10, 06) }, new TablePaymentsRow { NumberPayment = 17, SumPayment = 25855.56m, - DatePayment = new DateTime(2022, 11, 06), + DatePayment = new DateTime(2022, 11, 06) }, new TablePaymentsRow { NumberPayment = 18, SumPayment = 833.33m, - DatePayment = new DateTime(2022, 12, 06), - }, + DatePayment = new DateTime(2022, 12, 06) + } }, Next = new[] { @@ -457,7 +459,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns { NumberPayment = 7, SumPayment = 25000m - }, + } } }; @@ -484,15 +486,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2022, 09, 06), new DateTime(2022, 10, 06), new DateTime(2022, 11, 06), - new DateTime(2022, 12, 06), + new DateTime(2022, 12, 06) } }; var currentSumColumn = - new EvoCalculator.Core.PostCalculation.v1.Columns.Current.SumColumn(0, currentDateColumn) + new SumColumn(0, currentDateColumn) { - Values = new decimal[] + Values = new[] { -662500.00m, 329125.00m, @@ -516,7 +518,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns } }; - var expected = new decimal[] + var expected = new[] { -662500.00m, 329125.00m, diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentNegativeTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentNegativeTests.cs index aa9abae..6201961 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentNegativeTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentNegativeTests.cs @@ -11,7 +11,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns [Fact] public void SumCurrentNegativeTest1() { - var tableInsurance = new ChangingValue() + var tableInsurance = new ChangingValue { Next = new[] { @@ -49,8 +49,8 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns PeriodNumberInsurance = 2, DateStartPeriodInsurance = new DateTime(2022, 01, 30), CostInsurance = 9999 - }, - }, + } + } }; var dateTempColumn = new DateTempColumn(0) @@ -90,7 +90,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 0m, 0m, 0m, - 0m, + 0m }; Assert.Equal(expected, sumCurrentNegativeColumn.Values); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTLMTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTLMTests.cs index e2c6ba6..7ad5606 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTLMTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTLMTests.cs @@ -97,7 +97,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 3000m, 2000m, 1000m, - 0m, + 0m }; var sumCurrentTLMColumn = new SumCurrentTLMColumn(nextDateColumn.Values.Length); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTests.cs index 3108ade..941c48b 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumCurrentTests.cs @@ -52,4 +52,5 @@ // Assert.Equal(expected, sumCurrentColumn.Values, new DecimalArrayComparer()); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumRepaymentTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumRepaymentTests.cs index a6685f5..2e407b5 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumRepaymentTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/SumRepaymentTests.cs @@ -275,4 +275,5 @@ // Assert.Equal(expected, sumRepaymentColumn.Values, new DecimalArrayComparer(0.01)); // } // } -// } \ No newline at end of file +// } + diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/TLMGrColumnTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/TLMGrColumnTests.cs index 113bc47..7477c3f 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/TLMGrColumnTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Columns/TLMGrColumnTests.cs @@ -25,7 +25,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 11, 1), new DateTime(2021, 12, 1), new DateTime(2022, 01, 1), - new DateTime(2022, 04, 1), + new DateTime(2022, 04, 1) } }; @@ -41,7 +41,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns new DateTime(2021, 09, 30), new DateTime(2021, 10, 31), new DateTime(2021, 11, 30), - new DateTime(2021, 12, 31), + new DateTime(2021, 12, 31) } }; @@ -58,7 +58,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 200m, 200m, 200m, - 200m, + 200m } }; @@ -80,7 +80,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Columns 200m, 200m, 0m, - 0m, + 0m }; diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByIRRAndSumTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByIRRAndSumTests.cs index 4f4cfd4..8706d35 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByIRRAndSumTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByIRRAndSumTests.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2021, 11, 06), - Next = new DateTime(2021, 11, 28), + Next = new DateTime(2021, 11, 28) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -37,7 +37,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -109,7 +109,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -174,7 +174,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -183,7 +183,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -192,7 +192,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -201,7 +201,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -210,7 +210,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -219,7 +219,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -228,7 +228,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -237,7 +237,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -246,7 +246,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -255,7 +255,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -264,7 +264,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -274,7 +274,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, + } }, Next = new[] { @@ -282,15 +282,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.CalculateByIRRAndSum(requestCalculation); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByTotalExpectedTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByTotalExpectedTests.cs index f4acf6e..e9f06fb 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByTotalExpectedTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateByTotalExpectedTests.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2021, 11, 06), - Next = new DateTime(2021, 11, 06), + Next = new DateTime(2021, 11, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -37,7 +37,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -109,7 +109,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -174,7 +174,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -183,7 +183,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -192,7 +192,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -201,7 +201,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -210,7 +210,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -219,7 +219,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -228,7 +228,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -237,7 +237,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -246,7 +246,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -255,7 +255,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -264,7 +264,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -274,7 +274,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, + } }, Next = new[] { @@ -282,15 +282,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.CalculateByTotalExpected(requestCalculation); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateDefaultTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateDefaultTests.cs index ae47a6c..5d44a69 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateDefaultTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/CalculateDefaultTests.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2021, 11, 06), - Next = new DateTime(2021, 11, 06), + Next = new DateTime(2021, 11, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -37,7 +37,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -109,7 +109,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -174,7 +174,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -183,7 +183,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -192,7 +192,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -201,7 +201,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -210,7 +210,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -219,7 +219,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -228,7 +228,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -237,7 +237,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -246,7 +246,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -255,7 +255,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -264,7 +264,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -274,7 +274,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, + } }, Next = new[] { @@ -282,15 +282,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.CalculateDefault(requestCalculation); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/EarlyRedemption.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/EarlyRedemption.cs index afd54b1..ea63cd5 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/EarlyRedemption.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/EarlyRedemption.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2022, 03, 06), - Next = new DateTime(2022, 03, 06), + Next = new DateTime(2022, 03, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -38,7 +38,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -110,7 +110,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -175,7 +175,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -184,7 +184,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -193,7 +193,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -202,7 +202,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -211,7 +211,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -220,7 +220,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -229,7 +229,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -238,7 +238,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -247,7 +247,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -256,7 +256,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -265,7 +265,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -275,18 +275,18 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, - }, + } + } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.EarlyRedemption(requestCalculation); - + Assert.Null(res.Errors); } @@ -307,7 +307,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2022, 03, 06), - Next = new DateTime(2022, 03, 06), + Next = new DateTime(2022, 03, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -318,7 +318,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.35, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -390,7 +390,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -455,7 +455,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -464,7 +464,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -473,7 +473,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -482,7 +482,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -491,7 +491,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -500,7 +500,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -509,7 +509,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -518,7 +518,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -527,7 +527,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -536,7 +536,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -545,7 +545,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -555,14 +555,14 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, - }, + } + } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.EarlyRedemption(requestCalculation); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithChangingTheTermTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithChangingTheTermTests.cs index b9fa6ce..f65c09b 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithChangingTheTermTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithChangingTheTermTests.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2021, 11, 06), - Next = new DateTime(2021, 11, 06), + Next = new DateTime(2021, 11, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -37,7 +37,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -109,7 +109,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -174,7 +174,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -183,7 +183,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -192,7 +192,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -201,7 +201,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -210,7 +210,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -219,7 +219,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -228,7 +228,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -237,7 +237,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -246,7 +246,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -255,7 +255,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -264,7 +264,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -274,7 +274,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, + } }, Next = new[] { @@ -282,15 +282,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.PERWithChangingTheTerm(requestCalculation); diff --git a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithoutChangingTheTermTests.cs b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithoutChangingTheTermTests.cs index 5da1578..dabbee2 100644 --- a/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithoutChangingTheTermTests.cs +++ b/EvoCalculator.Core.Tests/PostCalculation/v1/Managers/PERWithoutChangingTheTermTests.cs @@ -27,7 +27,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers EditPaymentDate = new ChangingValue { Current = new DateTime(2021, 11, 06), - Next = new DateTime(2021, 11, 06), + Next = new DateTime(2021, 11, 06) }, ChangeTrackerTLM = false, MonthOffset = 0, @@ -37,7 +37,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers Repayment = 0.25, LoanRate = 0.0925, LoanRatePeriod = 36, - BalanceHolder = new ChangingValue() + BalanceHolder = new ChangingValue { Current = 100000000, Next = 100000000 @@ -109,7 +109,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers NiAtInception = 333375m }; - var tablePayments = new ChangingValue() + var tablePayments = new ChangingValue { Current = new[] { @@ -174,7 +174,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 01, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 329408.95m, + RepaymentPayment = 329408.95m }, new TablePaymentsRow { @@ -183,7 +183,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 02, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 300661.52m, + RepaymentPayment = 300661.52m }, new TablePaymentsRow { @@ -192,7 +192,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 03, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 271516.70m, + RepaymentPayment = 271516.70m }, new TablePaymentsRow { @@ -201,7 +201,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 04, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 242370.78m, + RepaymentPayment = 242370.78m }, new TablePaymentsRow { @@ -210,7 +210,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 05, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 212963.69m, + RepaymentPayment = 212963.69m }, new TablePaymentsRow { @@ -219,7 +219,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 06, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 183396.10m, + RepaymentPayment = 183396.10m }, new TablePaymentsRow { @@ -228,7 +228,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 07, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 153566.84m, + RepaymentPayment = 153566.84m }, new TablePaymentsRow { @@ -237,7 +237,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 08, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 123547.94m, + RepaymentPayment = 123547.94m }, new TablePaymentsRow { @@ -246,7 +246,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 09, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 93292.15m, + RepaymentPayment = 93292.15m }, new TablePaymentsRow { @@ -255,7 +255,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 10, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 62773.90m, + RepaymentPayment = 62773.90m }, new TablePaymentsRow { @@ -264,7 +264,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers DatePayment = new DateTime(2022, 11, 06), VATPayment = 5171.11m, SumWithVATPayment = 31036.67m, - RepaymentPayment = 32018.47m, + RepaymentPayment = 32018.47m }, new TablePaymentsRow { @@ -274,7 +274,7 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers VATPayment = 166.67m, SumWithVATPayment = 1000m, RepaymentPayment = 1000m - }, + } }, Next = new[] { @@ -282,15 +282,15 @@ namespace EvoCalculator.Core.Tests.PostCalculation.v1.Managers { NumberPayment = 5, SumPayment = 77566.68m, - DatePayment = new DateTime(2021, 11, 06), - }, + DatePayment = new DateTime(2021, 11, 06) + } } }; - var requestCalculation = new RequestCalculation() + var requestCalculation = new RequestCalculation { PreparedValues = preparedValues, - TablePayments = tablePayments, + TablePayments = tablePayments }; var res = CalculateManager.PERWithoutChangingTheTerm(requestCalculation); diff --git a/EvoCalculator.Core.Tools/Array/Concat.cs b/EvoCalculator.Core.Tools/Array/Concat.cs index 9fbb91b..56e7247 100644 --- a/EvoCalculator.Core.Tools/Array/Concat.cs +++ b/EvoCalculator.Core.Tools/Array/Concat.cs @@ -3,9 +3,12 @@ using System.Linq; namespace EvoCalculator.Core.Tools.Array { - public static partial class Array + public static class Array { - public static T[] Concat(params IEnumerable[] arrays) => arrays.Aggregate(System.Array.Empty(), - (current, arr) => current.Concat(arr).ToArray()); + public static T[] Concat(params IEnumerable[] arrays) + { + return arrays.Aggregate(System.Array.Empty(), + (current, arr) => current.Concat(arr).ToArray()); + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Tools/EvoCalculator.Core.Tools.csproj b/EvoCalculator.Core.Tools/EvoCalculator.Core.Tools.csproj index 7d23172..e435081 100644 --- a/EvoCalculator.Core.Tools/EvoCalculator.Core.Tools.csproj +++ b/EvoCalculator.Core.Tools/EvoCalculator.Core.Tools.csproj @@ -6,7 +6,7 @@ - + diff --git a/EvoCalculator.Core.Tools/GroupColumns/Create.cs b/EvoCalculator.Core.Tools/GroupColumns/Create.cs index 7595cb7..77ae8c0 100644 --- a/EvoCalculator.Core.Tools/GroupColumns/Create.cs +++ b/EvoCalculator.Core.Tools/GroupColumns/Create.cs @@ -7,9 +7,11 @@ namespace EvoCalculator.Core.Tools.GroupColumns public static partial class GroupColumns { public static List> Create(IEnumerable dates, - IEnumerable values) => - dates + IEnumerable values) + { + return dates .Select((x, i) => new KeyValuePair(x, values.ElementAtOrDefault(i))) .ToList(); + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Tools/GroupColumns/Merge.cs b/EvoCalculator.Core.Tools/GroupColumns/Merge.cs index d300e35..b8830aa 100644 --- a/EvoCalculator.Core.Tools/GroupColumns/Merge.cs +++ b/EvoCalculator.Core.Tools/GroupColumns/Merge.cs @@ -7,8 +7,9 @@ namespace EvoCalculator.Core.Tools.GroupColumns public static partial class GroupColumns { public static List> - Merge(params List>[] pairs) => - pairs.Length switch + Merge(params List>[] pairs) + { + return pairs.Length switch { > 1 => pairs .SelectMany(pair => pair) @@ -16,5 +17,6 @@ namespace EvoCalculator.Core.Tools.GroupColumns .ToList(), _ => pairs.FirstOrDefault() }; + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Tools/GroupColumns/Models/GroupColumn.cs b/EvoCalculator.Core.Tools/GroupColumns/Models/GroupColumn.cs index 5bbf5c6..17b1424 100644 --- a/EvoCalculator.Core.Tools/GroupColumns/Models/GroupColumn.cs +++ b/EvoCalculator.Core.Tools/GroupColumns/Models/GroupColumn.cs @@ -1,5 +1,4 @@ using System; -using System.Collections.Generic; namespace EvoCalculator.Core.Tools.GroupColumns.Models { diff --git a/EvoCalculator.Core.Tools/GroupColumns/Models/SumRules.cs b/EvoCalculator.Core.Tools/GroupColumns/Models/SumRules.cs index dcc59da..e6d2a29 100644 --- a/EvoCalculator.Core.Tools/GroupColumns/Models/SumRules.cs +++ b/EvoCalculator.Core.Tools/GroupColumns/Models/SumRules.cs @@ -5,7 +5,7 @@ Min = 100000000, Max = 100000001, MinInGroup = 100000002, - MaxInGroup = 100000003, + MaxInGroup = 100000003 } public enum ValueRule diff --git a/EvoCalculator.Core.Tools/GroupColumns/Split.cs b/EvoCalculator.Core.Tools/GroupColumns/Split.cs index 574cc0e..e4a0a7b 100644 --- a/EvoCalculator.Core.Tools/GroupColumns/Split.cs +++ b/EvoCalculator.Core.Tools/GroupColumns/Split.cs @@ -7,11 +7,12 @@ namespace EvoCalculator.Core.Tools.GroupColumns { public static partial class GroupColumns { - public static GroupColumn Split(IEnumerable> groupColumn) => - new() + public static GroupColumn Split(IEnumerable> groupColumn) + { + return new() { - Dates = groupColumn.Select(x => x.Key).ToArray() - , Values = groupColumn.Select(x => x.Value).ToArray() + Dates = groupColumn.Select(x => x.Key).ToArray(), Values = groupColumn.Select(x => x.Value).ToArray() }; + } } } \ No newline at end of file diff --git a/EvoCalculator.Core.Tools/Validation/ValidatePreparedValues.cs b/EvoCalculator.Core.Tools/Validation/ValidatePreparedValues.cs index 73685ca..5cbebb0 100644 --- a/EvoCalculator.Core.Tools/Validation/ValidatePreparedValues.cs +++ b/EvoCalculator.Core.Tools/Validation/ValidatePreparedValues.cs @@ -3,7 +3,7 @@ using EvoCalculator.Core.Models.Calculation.Models.Prepared; namespace EvoCalculator.Core.Tools.Validation { - public partial class Validation + public class Validation { public List ValidatePreparedValues(PreparedValues preparedValues) { diff --git a/EvoCalculator.Core/Controllers/PostCalculation/v1/PostCalculationController.cs b/EvoCalculator.Core/Controllers/PostCalculation/v1/PostCalculationController.cs index ad93a24..0b00061 100644 --- a/EvoCalculator.Core/Controllers/PostCalculation/v1/PostCalculationController.cs +++ b/EvoCalculator.Core/Controllers/PostCalculation/v1/PostCalculationController.cs @@ -18,7 +18,7 @@ namespace EvoCalculator.Core.Controllers.PostCalculation.v1 { // TEMP requestCalculation.TableInsurance.Next = requestCalculation.TableInsurance.Current; - + var result = requestCalculation.PreparedValues.CalcType switch { 100000001 => CalculateManager.CalculateByTotalExpected(requestCalculation), @@ -29,7 +29,7 @@ namespace EvoCalculator.Core.Controllers.PostCalculation.v1 _ => CalculateManager.CalculateDefault(requestCalculation) }; - var hasErrors = result.Errors is { Count: > 0 }; + var hasErrors = result.Errors is {Count: > 0}; var statusCode = hasErrors ? 500 : 200; return StatusCode(statusCode, JsonConvert.SerializeObject( diff --git a/EvoCalculator.Core/EvoCalculator.Core.csproj b/EvoCalculator.Core/EvoCalculator.Core.csproj index 14a675d..d870f40 100644 --- a/EvoCalculator.Core/EvoCalculator.Core.csproj +++ b/EvoCalculator.Core/EvoCalculator.Core.csproj @@ -6,15 +6,15 @@ - - - + + + - - - + + +