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;
        }