using System.Collections.Generic; using EvoCalculator.Core.Models.Calculation.Models.Request; namespace EvoCalculator.Core.Calculation { public class Validation { public object ValidatePreparedData(RequestCalculation requestCalculation) { var preparedValues = requestCalculation.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 (errors.Count > 0) return new { errors }; return null; } } }