using Gestor.Model.Attributes; using Gestor.Model.Domain.Generic; using Gestor.Model.Helper; using Gestor.Model.Resources; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Runtime.CompilerServices; namespace Gestor.Model.Domain.Seguros { public class ClienteTelefone : TelefoneBase, IDomain { private string _observacao; public Gestor.Model.Domain.Seguros.Cliente Cliente { get; set; } [Log(true)] public string Observacao { get { string str = this._observacao; if (str != null) { return str.ToUpper(); } return null; } set { this._observacao = value; } } public int? Ordem { get; set; } [JsonIgnore] public Func>> ValidationEvent { get { ClienteTelefone clienteTelefone = this; return new Func>>(clienteTelefone.Validate); } } public ClienteTelefone() { } public List> Validate() { List> keyValuePairs = base.ValidateBase(true); if (!string.IsNullOrWhiteSpace(this.Observacao) && this.Observacao.Length > 30) { keyValuePairs.AddValue("Observacao", string.Format(Messages.MaiorQueLimite, 30), true); } if (string.IsNullOrWhiteSpace(base.Numero)) { keyValuePairs.AddValue("Numero", Messages.Obrigatorio, true); } if (string.IsNullOrWhiteSpace(base.Prefixo)) { keyValuePairs.AddValue("Prefixo", Messages.Obrigatorio, true); } if (!base.Tipo.HasValue) { keyValuePairs.AddValue("Tipo", Messages.Obrigatorio, true); } return keyValuePairs; } } }