public UnidadeNegocio(IOrganogramaRepositorios repositorios, IClientAccessToken clientAccessToken)
        {
            unitOfWork                         = repositorios.UnitOfWork;
            repositorioUnidades                = repositorios.Unidades;
            repositorioEnderecos               = repositorios.Enderecos;
            repositorioContatos                = repositorios.Contatos;
            repositorioContatosUnidades        = repositorios.ContatosUnidades;
            repositorioEmails                  = repositorios.Emails;
            repositorioEmailsUnidades          = repositorios.EmailsUnidades;
            repositorioHistoricos              = repositorios.Historicos;
            repositorioIdentificadoresExternos = repositorios.IdentificadoresExternos;
            repositorioMunicipios              = repositorios.Municipios;
            repositorioOrganizcoes             = repositorios.Organizacoes;
            repositorioSites                   = repositorios.Sites;
            repositorioSitesUnidades           = repositorios.SitesUnidades;


            unidadeValidacao     = new UnidadeValidacao(repositorioUnidades, repositorios.TiposUnidades, repositorios.Organizacoes);
            tipoUnidadeValidacao = new TipoUnidadeValidacao(repositorios.TiposUnidades);
            organizacaoValidacao = new OrganizacaoValidacao(repositorios.Organizacoes);
            enderecoValidacao    = new EnderecoValidacao(repositorios.Enderecos, repositorios.Municipios);
            contatoValidacao     = new ContatoValidacao(repositorios.Contatos, repositorios.TiposContatos);
            emailValidacao       = new EmailValidacao();
            siteValidacao        = new SiteValidacao();

            _clientAccessToken = clientAccessToken;
        }
        public OrganizacaoNegocio(IOrganogramaRepositorios repositorios, ICurrentUserProvider currentUser, IClientAccessToken clientAccessToken)
        {
            this.repositorios                  = repositorios;
            unitOfWork                         = repositorios.UnitOfWork;
            repositorioOrganizacoes            = repositorios.Organizacoes;
            repositorioContatos                = repositorios.Contatos;
            repositorioContatosOrganizacoes    = repositorios.ContatosOrganizacoes;
            repositorioEmails                  = repositorios.Emails;
            repositorioEmailsOrganizacoes      = repositorios.EmailsOrganizacoes;
            repositorioEnderecos               = repositorios.Enderecos;
            repositorioHistoricos              = repositorios.Historicos;
            repositorioIdentificadoresExternos = repositorios.IdentificadoresExternos;
            repositorioMunicipios              = repositorios.Municipios;
            repositorioSites                   = repositorios.Sites;
            repositorioSitesOrganizacoes       = repositorios.SitesOrganizacoes;
            repositorioUnidades                = repositorios.Unidades;

            validacao                = new OrganizacaoValidacao(repositorioOrganizacoes);
            cnpjValidacao            = new CnpjValidacao(repositorioOrganizacoes);
            contatoValidacao         = new ContatoValidacao(repositorios.Contatos, repositorios.TiposContatos);
            emailValidacao           = new EmailValidacao();
            enderecoValidacao        = new EnderecoValidacao(repositorios.Enderecos, repositorios.Municipios);
            esferaValidacao          = new EsferaOrganizacaoValidacao(repositorios.EsferasOrganizacoes);
            poderValidacao           = new PoderValidacao(repositorios.Poderes);
            siteValidacao            = new SiteValidacao();
            tipoOrganizacaoValidacao = new TipoOrganizacaoValidacao(repositorios.TiposOrganizacoes);

            _currentUser       = currentUser;
            _clientAccessToken = clientAccessToken;
        }
Esempio n. 3
0
        public Usuario Cadastrar(Usuario usuario)
        {
            _logger.LogDebug("Cadastrar");

            var usuarioCadastrado = _repositorio.VerificarExistencia(usuario.Email, usuario.NuDocumento);

            if (usuarioCadastrado)
            {
                _logger.LogDebug("Usuário já cadastrado");
                throw new BusinessException(_resource.GetString("USER_EXISTING"));
            }

            usuario.Senha = EncriptarSenha(usuario.Senha);

            var resultado = _repositorio.Cadastrar(usuario);

            if (resultado != null)
            {
                var validacao = new EmailValidacao
                {
                    Id        = Guid.NewGuid(),
                    UsuarioId = resultado.Id,
                    Valido    = false
                };

                var idValidacao = _validacaoRepositorio.CriarValidador(validacao);
                _emailRepositorio.NotificarCadastro(usuario.Email, usuario.Nome, idValidacao);
            }

            _logger.LogDebug($"Cadastrar: {resultado} usuário cadastrado");

            return(resultado);
        }
Esempio n. 4
0
        public Guid CriarValidador(EmailValidacao validacao)
        {
            try
            {
                _contexto.Add(validacao);
                _contexto.SaveChanges();
            }
            catch (DbUpdateException ex)
            {
                _logger.LogError(ex, $"CriarValidador: {ex.Message}");
                throw;
            }

            return(validacao.Id);
        }
Esempio n. 5
0
 public bool IsSatisfiedBy(Beneficiario beneficiario)
 {
     return(EmailValidacao.Validate(beneficiario.Email));
 }