using System; using System.Collections.Generic; using Gestor.Model.Domain.Generic; using Gestor.Model.Helper; using Gestor.Model.Resources; using Newtonsoft.Json; namespace Gestor.Model.Domain.Seguros; public class CoberturaGranizo : DomainBase, IDomain { private string _variedade; private string _quadra; public Item Item { get; set; } public Granizo Granizo { get; set; } public string Variedade { get { return _variedade?.ToUpper(); } set { _variedade = value; } } public string Quadra { get { return _quadra?.ToUpper(); } set { _quadra = value; } } public decimal? Produtividade { get; set; } public decimal? Lmi { get; set; } public decimal? Premio { get; set; } public decimal? Area { get; set; } public DateTime? Plantio { get; set; } [JsonIgnore] public Func>> ValidationEvent => Validate; public List> Validate() { List> list = ValidationHelper.AddValue(); if (Plantio.HasValue && (DateTime.Compare(Plantio.Value, new DateTime(1753, 1, 1)) < 0 || DateTime.Compare(Plantio.Value, new DateTime(9999, 12, 31)) > 0)) { list.AddValue("Plantio", string.Format(Messages.DataInvalida)); } if (string.IsNullOrWhiteSpace(Variedade) && Variedade.Length > 60) { list.AddValue("Variedade", string.Format(Messages.MaiorQueLimite, 60)); } if (string.IsNullOrWhiteSpace(Quadra) && Quadra.Length > 30) { list.AddValue("Quadra", string.Format(Messages.MaiorQueLimite, 30)); } return list; } }