using System.Collections.Generic; using EvoCalculator.Core.Models.Calculation.Models.Prepared; namespace EvoCalculator.Core.Tools.Validation { public partial class Validation { public List ValidatePreparedValues(PreparedValues preparedValues) { var errors = new List(); if (preparedValues.AcceptSum <= 0) errors.Add("Стоимость ПЛ с учетом скидки не указана или меньше или равна 0"); if (preparedValues.Nmper <= 0) errors.Add("Некорректно указан Срок лизинга"); if (preparedValues.IrrExpected <= 0 && preparedValues.Discount <= 0 && preparedValues.ComissionRub <= 0) errors.Add( "Невозможно посчитать график с IRR=0, необходимо указать или Скидку поставщика или Комиссию"); if (preparedValues.PaymentDateNew < preparedValues.DogDate) errors.Add( "Некорректно указана Дата второго платежа, она не может быть раньше Даты заключения ДЛ"); if (preparedValues.PaymentDateNew == null) if (preparedValues.FirstPaymentSum / preparedValues.AcceptSum >= 0.500001m) errors.Add( "Первый платеж по графику более 50% от стоимости ПЛ с учетом скидки. Необходимо уменьшить первый платеж"); return errors; } } }