From 0440c722a221b8068bbf388c1c0c51f0faff0451 Mon Sep 17 00:00:00 2001 From: Lucas Faria Mendes Date: Mon, 30 Mar 2026 14:17:46 -0300 Subject: some dlls --- .../Gestor.Model.Domain.Seguros/Estipulante.cs | 282 +++++++++++++++++++++ 1 file changed, 282 insertions(+) create mode 100644 Gestor.Model/Gestor.Model.Domain.Seguros/Estipulante.cs (limited to 'Gestor.Model/Gestor.Model.Domain.Seguros/Estipulante.cs') diff --git a/Gestor.Model/Gestor.Model.Domain.Seguros/Estipulante.cs b/Gestor.Model/Gestor.Model.Domain.Seguros/Estipulante.cs new file mode 100644 index 0000000..50e418a --- /dev/null +++ b/Gestor.Model/Gestor.Model.Domain.Seguros/Estipulante.cs @@ -0,0 +1,282 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Runtime.CompilerServices; +using Gestor.Model.Attributes; +using Gestor.Model.Common; +using Gestor.Model.Domain.Generic; +using Gestor.Model.Helper; +using Gestor.Model.Resources; +using Gestor.Model.Validation; +using Newtonsoft.Json; + +namespace Gestor.Model.Domain.Seguros; + +public class Estipulante : EnderecoBase, IDomain, INotifyPropertyChanged +{ + private bool _selecionado; + + private string _nome; + + private string _documento; + + private string _primeiroPrefixo; + + private string _primeiroTelefone; + + private string _segundoPrefixo; + + private string _segundoTelefone; + + private string _email; + + private string _observacao; + + public bool Selecionado + { + get + { + return _selecionado; + } + set + { + if (value != _selecionado) + { + _selecionado = value; + OnPropertyChanged("Selecionado"); + } + } + } + + public long IdEmpresa { get; set; } + + [Log(true)] + [Name(true)] + public string Nome + { + get + { + return _nome?.ToUpper(); + } + set + { + _nome = value; + } + } + + [Log(true)] + public string Documento + { + get + { + return _documento?.ToUpper().Trim(); + } + set + { + _documento = value; + } + } + + [Log(true)] + [Description("TIPO TELEFONE")] + public TipoTelefone? PrimeiroTipo { get; set; } + + [Log(true)] + [Description("PREFIXO")] + public string PrimeiroPrefixo + { + get + { + return _primeiroPrefixo?.ToUpper().Trim(); + } + set + { + _primeiroPrefixo = value; + } + } + + [Log(true)] + [Description("TELEFONE")] + public string PrimeiroTelefone + { + get + { + return _primeiroTelefone?.ToUpper().Trim(); + } + set + { + _primeiroTelefone = value; + } + } + + [Log(true)] + [Description("TIPO TELEFONE")] + public TipoTelefone? SegundoTipo { get; set; } + + [Log(true)] + [Description("PREFIXO")] + public string SegundoPrefixo + { + get + { + return _segundoPrefixo?.ToUpper().Trim(); + } + set + { + _segundoPrefixo = value; + } + } + + [Log(true)] + [Description("TELEFONE")] + public string SegundoTelefone + { + get + { + return _segundoTelefone?.ToUpper().Trim(); + } + set + { + _segundoTelefone = value; + } + } + + [Log(true)] + public string Email + { + get + { + return _email?.ToLower().Trim(); + } + set + { + _email = value; + } + } + + [Log(true)] + public string Observacao + { + get + { + return _observacao?.ToUpper(); + } + set + { + _observacao = value; + } + } + + [Log(true)] + public bool Ativo { get; set; } + + [JsonIgnore] + public Func>> ValidationEvent => Validate; + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) + { + this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + } + + public List> Validate() + { + List> list = ValidationHelper.AddValue(); + if (string.IsNullOrEmpty(Nome)) + { + list.AddValue("Nome", Messages.Obrigatorio); + } + else if (Nome.Length > 100) + { + list.AddValue("Nome", string.Format(Messages.MaiorQueLimite, 100)); + } + if (!string.IsNullOrEmpty(Documento) && !Documento.ValidacaoDocumento()) + { + list.AddValue("Documento", Messages.Invalido); + } + if (!string.IsNullOrWhiteSpace(PrimeiroPrefixo) && !PrimeiroPrefixo.ValidacaoPrefixo()) + { + list.AddValue("PrimeiroPrefixo|PRIMEIRO DDD", Messages.Invalido); + } + if (!string.IsNullOrWhiteSpace(PrimeiroTelefone) && !PrimeiroTelefone.ValidacaoTelefone()) + { + list.AddValue("PrimeiroTelefone|PRIMEIRO TELEFONE", Messages.Invalido); + } + if (!string.IsNullOrWhiteSpace(SegundoPrefixo) && !SegundoPrefixo.ValidacaoPrefixo()) + { + list.AddValue("SegundoPrefixo|SEGUNDO DDD", Messages.Invalido); + } + if (!string.IsNullOrWhiteSpace(SegundoTelefone) && !SegundoTelefone.ValidacaoTelefone()) + { + list.AddValue("SegundoTelefone|SEGUNDO TELEFONE", Messages.Invalido); + } + if (!string.IsNullOrEmpty(Email) && Email.Length > 100) + { + list.AddValue("Email|E-MAIL", string.Format(Messages.MaiorQueLimite, 100)); + } + if (!string.IsNullOrEmpty(Email) && !Email.ValidacaoEmail()) + { + list.AddValue("Email|E-MAIL", Messages.Invalido); + } + if (!string.IsNullOrEmpty(base.Cep) && !base.Cep.ValidacaoCep()) + { + list.AddValue("Cep|CEP", Messages.Invalido); + } + if (!string.IsNullOrEmpty(base.Estado) && !base.Estado.ValidacaoEstado()) + { + list.AddValue("Estado|ESTADO", Messages.Invalido); + } + return list; + } + + public List Log() + { + List list = new List(); + TupleList tupleList = new TupleList(); + ObservableCollection> obj = new ObservableCollection> + { + new Tuple("NOME", string.IsNullOrWhiteSpace(Nome) ? "" : Nome, ""), + new Tuple("CPF", string.IsNullOrWhiteSpace(Documento) ? "" : Documento, ""), + new Tuple("ATIVO", Ativo ? "SIM" : "NÃO", "") + }; + object item; + if (PrimeiroTipo.HasValue) + { + TipoTelefone? primeiroTipo = PrimeiroTipo; + item = (primeiroTipo.HasValue ? primeiroTipo.GetValueOrDefault().GetDescription() : null); + } + else + { + item = ""; + } + obj.Add(new Tuple("PRIMEIRO TIPO", (string)item, "")); + obj.Add(new Tuple("PRIMEIRO PREFIXO", string.IsNullOrWhiteSpace(PrimeiroPrefixo) ? "" : PrimeiroPrefixo, "")); + obj.Add(new Tuple("PRIMEIRO TELEFONE", string.IsNullOrWhiteSpace(PrimeiroTelefone) ? "" : PrimeiroTelefone, "")); + object item2; + if (SegundoTipo.HasValue) + { + TipoTelefone? primeiroTipo = SegundoTipo; + item2 = (primeiroTipo.HasValue ? primeiroTipo.GetValueOrDefault().GetDescription() : null); + } + else + { + item2 = ""; + } + obj.Add(new Tuple("SEGUNDO TIPO", (string)item2, "")); + obj.Add(new Tuple("SEGUNDO PREFIXO", string.IsNullOrWhiteSpace(SegundoPrefixo) ? "" : SegundoPrefixo, "")); + obj.Add(new Tuple("SEGUNDO TELEFONE", string.IsNullOrWhiteSpace(SegundoTelefone) ? "" : SegundoTelefone, "")); + obj.Add(new Tuple("E-MAIL", string.IsNullOrWhiteSpace(Email) ? "" : Email, "")); + obj.Add(new Tuple("CEP", string.IsNullOrWhiteSpace(base.Cep) ? "" : base.Cep, "")); + obj.Add(new Tuple("ENDEREÇO", string.IsNullOrWhiteSpace(base.Endereco) ? "" : base.Endereco, "")); + obj.Add(new Tuple("NÚMERO", string.IsNullOrWhiteSpace(base.Numero) ? "" : base.Numero, "")); + obj.Add(new Tuple("COMPLEMENTO", string.IsNullOrWhiteSpace(base.Complemento) ? "" : base.Complemento, "")); + obj.Add(new Tuple("BAIRRO", string.IsNullOrWhiteSpace(base.Bairro) ? "" : base.Bairro, "")); + obj.Add(new Tuple("CIDADE", string.IsNullOrWhiteSpace(base.Cidade) ? "" : base.Cidade, "")); + obj.Add(new Tuple("ESTADO", string.IsNullOrWhiteSpace(base.Estado) ? "" : base.Estado, "")); + tupleList.Tuples = obj; + list.Add(tupleList); + return list; + } +} -- cgit v1.2.3