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 Cobertura : DomainBase, IDomain { private string _observacao; public Item Item { get; set; } public CoberturaPadrao CoberturaPadrao { get; set; } public decimal Franquia { get; set; } public decimal Premio { get; set; } public decimal Lmi { get; set; } public string Observacao { get { return _observacao?.ToUpper(); } set { _observacao = ((string.IsNullOrWhiteSpace(value) && CoberturaPadrao != null) ? CoberturaPadrao.Descricao : value); } } [JsonIgnore] public Func>> ValidationEvent => Validate; public List> Validate() { List> list = ValidationHelper.AddValue(); if ((Lmi != 0m || Premio != 0m || Franquia != 0m) && string.IsNullOrWhiteSpace(Observacao)) { list.AddValue("Observacao", Messages.Obrigatorio); } return list; } }