using Gestor.Model.Attributes; using Gestor.Model.Domain.Generic; using Gestor.Model.Domain.Seguros; using Gestor.Model.Helper; using Gestor.Model.Resources; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Runtime.CompilerServices; namespace Gestor.Model.Domain.Financeiro { public class Centro : DomainBase, IDomain { private string _descricao; [Log(true)] public bool Ativo { get; set; } [Description("DESCRIÇÃO")] [Log(true)] [Name(true)] public string Descricao { get { string str = this._descricao; if (str != null) { return str.ToUpper(); } return null; } set { this._descricao = value; } } public long IdEmpresa { get; set; } = (long)1; public bool Selecionado { get; set; } [JsonIgnore] public Func>> ValidationEvent { get { Centro centro = this; return new Func>>(centro.Validate); } } public Centro() { } public List Log() { return new List() { new TupleList() { Tuples = new ObservableCollection>() { new Tuple("NOME", (string.IsNullOrWhiteSpace(this.Descricao) ? "" : this.Descricao), ""), new Tuple("ATIVO", (this.Ativo ? "SIM" : "NÃO"), "") } } }; } public List> Validate() { List> keyValuePairs = ValidationHelper.AddValue(); if (string.IsNullOrWhiteSpace(this.Descricao)) { keyValuePairs.AddValue("Descricao", Messages.Obrigatorio, true); } return keyValuePairs; } } }