using Gestor.Model.Common; using Gestor.Model.Domain.Common; 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 SeguradoraContato : TelefoneBase, IDomain { private string _nome; private string _email; public string Email { get { string str = this._email; if (str != null) { return str.ToLower(); } return null; } set { this._email = value; } } public Gestor.Model.Domain.Common.Empresa Empresa { get; set; } public string NomeContato { get { return this._nome; } set { this._nome = value; } } public Gestor.Model.Domain.Seguros.Seguradora Seguradora { get; set; } public TipoContatoSeguradora TipoContato { get; set; } [JsonIgnore] public Func>> ValidationEvent { get { SeguradoraContato seguradoraContato = this; return new Func>>(seguradoraContato.Validate); } } public SeguradoraContato() { } public List> Validate() { List> keyValuePairs = base.ValidateBase(true); if (string.IsNullOrWhiteSpace(this.NomeContato) && this.TipoContato == TipoContatoSeguradora.Contato) { keyValuePairs.AddValue("NomeContato|NOME CONTATO", Messages.Obrigatorio, true); } return keyValuePairs; } } }