public EmpreendimentoCredenciadoValidar()
        {
            _configSys = new GerenciadorConfiguracao <ConfiguracaoSistema>(new ConfiguracaoSistema());
            _da        = new EmpreendimentoCredenciadoDa();
            Msg        = new EmpreendimentoMsg();
            _busPessoa = new PessoaCredenciadoBus();

            endMsg           = new EnderecosMsg();
            objPaiNome       = "Empreendimento";
            lstEnderecosNome = "Enderecos";
        }
        public RequerimentoCredenciadoValidar()
        {
            _configSys = new GerenciadorConfiguracao <ConfiguracaoSistema>(new ConfiguracaoSistema());
            _da        = new RequerimentoCredenciadoDa();

            _busPessoa            = new PessoaCredenciadoBus();
            _atividadeConfigurada = new AtividadeConfiguracaoInternoBus();
            _roteiroBus           = new RoteiroInternoBus();
            _atividadeBus         = new AtividadeInternoBus();
            _tituloModeloBus      = new TituloModeloInternoBus();
            _checkListRoteiroBus  = new ChecagemRoteiroInternoBus();
        }
        public Empreendimento ObterEmpreendimento(int id, int internoId = 0, bool simplificado = false)
        {
            Empreendimento empreendimento;
            Pessoa         aux;

            if (id > 0)
            {
                empreendimento = Obter(id, simplificado);
            }
            else
            {
                EmpreendimentoInternoBus busInterno = new EmpreendimentoInternoBus();

                if (simplificado)
                {
                    empreendimento = busInterno.ObterSimplificado(internoId);
                }
                else
                {
                    empreendimento = busInterno.Obter(internoId);
                }

                PessoaCredenciadoBus pessoaCredenciadoBus = new PessoaCredenciadoBus();

                foreach (Responsavel responsavel in empreendimento.Responsaveis)
                {
                    aux = pessoaCredenciadoBus.Obter(responsavel.CpfCnpj, simplificado: true, credenciadoId: User.FuncionarioId);

                    if (aux.Id > 0)
                    {
                        responsavel.Id        = aux.Id;
                        responsavel.InternoId = aux.InternoId.GetValueOrDefault();
                        responsavel.NomeRazao = aux.NomeRazaoSocial;
                    }
                    else
                    {
                        responsavel.InternoId = responsavel.Id.GetValueOrDefault();
                        responsavel.Id        = 0;
                    }
                }

                foreach (var item in empreendimento.Enderecos)
                {
                    item.Id = 0;
                }

                empreendimento.InternoId = empreendimento.Id;
                empreendimento.Id        = 0;
            }

            return(empreendimento);
        }
Пример #4
0
 public CredenciadoBus(CredenciadoValidar credenciadoValidar)
 {
     _configSys            = new GerenciadorConfiguracao <ConfiguracaoSistema>(new ConfiguracaoSistema());
     _config               = new GerenciadorConfiguracao <ConfiguracaoCredenciado>(new ConfiguracaoCredenciado());
     _configUsuario        = new GerenciadorConfiguracao <ConfiguracaoUsuario>(new ConfiguracaoUsuario());
     _validar              = credenciadoValidar;
     _pessoaInternoBus     = new PessoaInternoBus();
     _pessoaCredenciadoBus = new PessoaCredenciadoBus();
     _emailBus             = new EmailBus(UsuarioInterno);
     _busUsuario           = new UsuarioBus(HistoricoAplicacao.CREDENCIADO, UsuarioCredenciado);
     _da            = new CredenciadoDa(UsuarioCredenciado);
     _validarPessoa = new PessoaCredenciadoValidar();
 }
Пример #5
0
        public Pessoa Importar(Pessoa pessoa, BancoDeDados banco = null, bool conjuge = false)
        {
            try
            {
                int id   = pessoa.Id;
                int conj = (pessoa.IsFisica)? pessoa.Fisica.ConjugeId.GetValueOrDefault():0;
                PessoaCredenciadoBus _busPessoaCredenciado = new PessoaCredenciadoBus();
                List <Pessoa>        representantes        = pessoa.Juridica.Representantes;
                pessoa = _busPessoaCredenciado.Obter(pessoa.Id);
                pessoa.Juridica.Representantes = representantes;
                pessoa.Id               = ObterId(pessoa.CPFCNPJ);
                pessoa.Endereco.Id      = 0;
                pessoa.Fisica.ConjugeId = conj;

                if (conjuge)
                {
                    conj = pessoa.Fisica.ConjugeId.GetValueOrDefault();
                    pessoa.Fisica.ConjugeId = 0;
                }

                if (pessoa.Id == 0)
                {
                    pessoa.Fisica.ConjugeId = 0;
                    _da.Criar(pessoa, banco);
                }
                else
                {
                    _da.Editar(pessoa, banco);
                }

                if (conjuge)
                {
                    pessoa.Fisica.ConjugeId = conj;
                }

                pessoa.InternoId = pessoa.Id;
                pessoa.Id        = id;
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }
            return(pessoa);
        }
Пример #6
0
        public ActionResult ObterPessoa(int id, string cnpfCnpj, bool isVisualizar = false, List <Pessoa> pessoas = null)
        {
            RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus();
            Requerimento requerimento = requerimentoCredenciadoBus.ObterSimplificado(id);

            SalvarVM             vm             = new SalvarVM();
            PessoaCredenciadoBus credenciadoBus = new PessoaCredenciadoBus();
            Pessoa credenciado = credenciadoBus.Obter(cnpfCnpj, credenciadoId: requerimento.CredenciadoId);

            if (credenciado.Id > 0 && pessoas != null && pessoas.Exists(x => x.CPFCNPJ == credenciado.CPFCNPJ))
            {
                vm.PessoaCredenciado = credenciado.GerarLista();
            }

            vm.Pessoa.SelecaoTipo = (int)eExecutorTipo.Credenciado;
            vm.Pessoa.CPFCNPJ     = cnpfCnpj;

            return(PartialView("PessoaComparar", vm));
        }
        public bool Salvar(Empreendimento empreendimento)
        {
            try
            {
                if (_validar.Salvar(empreendimento))
                {
                    Mensagem erros = VerificarLocalizacaoEmpreendimento(empreendimento.Coordenada.EastingUtmTexto, empreendimento.Coordenada.NorthingUtmTexto, empreendimento.Enderecos[0].EstadoId, empreendimento.Enderecos[0].MunicipioId);
                    if (erros.Texto != null)
                    {
                        Validacao.Add(erros);
                        return(Validacao.EhValido);
                    }

                    empreendimento.CredenciadoId = User.FuncionarioId;

                    if (empreendimento.InternoId.GetValueOrDefault() > 0)
                    {
                        empreendimento.InternoTid = new EmpreendimentoInternoBus().ObterSimplificado(empreendimento.InternoId.Value).Tid;
                    }

                    if (empreendimento.Coordenada.Tipo.Id > 0)
                    {
                        empreendimento.Coordenada.Datum.Sigla = ListaCredenciadoBus.Datuns.SingleOrDefault(x => Equals(x.Id, empreendimento.Coordenada.Datum.Id)).Sigla;
                    }

                    #region Utilizar o mesmo endereço de localização

                    if (empreendimento.Enderecos.Count == 1)
                    {
                        Endereco enderecoLocalizacao = empreendimento.Enderecos.First();

                        Endereco endereco = new Endereco();
                        endereco.Correspondencia     = 1;
                        endereco.Cep                 = enderecoLocalizacao.Cep;
                        endereco.Logradouro          = enderecoLocalizacao.Logradouro;
                        endereco.Bairro              = enderecoLocalizacao.Bairro;
                        endereco.EstadoId            = enderecoLocalizacao.EstadoId;
                        endereco.MunicipioId         = enderecoLocalizacao.MunicipioId;
                        endereco.Numero              = enderecoLocalizacao.Numero;
                        endereco.DistritoLocalizacao = enderecoLocalizacao.DistritoLocalizacao;
                        endereco.Complemento         = enderecoLocalizacao.Complemento;

                        empreendimento.Enderecos.Add(endereco);
                    }

                    #endregion

                    GerenciadorTransacao.ObterIDAtual();

                    using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado))
                    {
                        bancoDeDados.IniciarTransacao();
                        PessoaCredenciadoBus pessoaCredenciadoBus = new PessoaCredenciadoBus();
                        Pessoa          aux;
                        List <Mensagem> mensagens = new List <Mensagem>();

                        foreach (Responsavel responsavel in empreendimento.Responsaveis)
                        {
                            if (responsavel.Id <= 0)
                            {
                                aux = pessoaCredenciadoBus.ObterPessoa(interno: responsavel.InternoId);
                                Pessoa pessoaCredenciado = pessoaCredenciadoBus.Obter(aux.CPFCNPJ, bancoDeDados, simplificado: true, credenciadoId: User.FuncionarioId);

                                aux.Id = pessoaCredenciado.Id;
                                pessoaCredenciadoBus.Salvar(aux, bancoDeDados);

                                responsavel.Id = aux.Id;

                                if (!Validacao.EhValido)
                                {
                                    mensagens.Add(Mensagem.Pessoa.DadosRepresentanteIncompleto(aux.NomeRazaoSocial));
                                }
                            }
                        }

                        if (!Validacao.EhValido)
                        {
                            mensagens.ForEach(msg =>
                            {
                                msg.Texto = msg.Texto.Replace("representante", "responsável");
                            });

                            Validacao.Erros = mensagens;
                            bancoDeDados.Rollback();
                            return(false);
                        }

                        _da.Salvar(empreendimento, bancoDeDados);

                        #region Solicitação de CAR

                        CARSolicitacaoBus carSolicitacaoBus = new CARSolicitacaoBus();
                        CARSolicitacao    carSolicitacao    = new CARSolicitacao();
                        carSolicitacao.Empreendimento.Id = empreendimento.Id;
                        //carSolicitacaoBus.AlterarSituacao(carSolicitacao, new CARSolicitacao() { SituacaoId = (int)eCARSolicitacaoSituacao.Invalido }, bancoDeDados);

                        #endregion

                        bancoDeDados.Commit();
                    }
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(Validacao.EhValido);
        }
Пример #8
0
 public PessoaController()
 {
     _bus        = new PessoaCredenciadoBus();
     _busInterno = new PessoaInternoBus();
     _validar    = new PessoaCredenciadoValidar();
 }
        public List <Pessoa> ObterPessoasRelacionadas(Requerimento requerimento)
        {
            List <Pessoa> pessoasRelacionadas = new List <Pessoa>();

            List <string> cpfCnpj = requerimento.Responsaveis
                                    .Where(x => x.Representantes != null)
                                    .SelectMany(x => x.Representantes)
                                    .Select(x => x.CPFCNPJ)
                                    .ToList();

            pessoasRelacionadas.AddRange(requerimento.Pessoas);

            //TODOS OS REPRESENTANTES PF DOS RESPONSAVEIS
            pessoasRelacionadas.AddRange(requerimento.Pessoas.Where(x => cpfCnpj.Exists(y => x.IsFisica && y == x.CPFCNPJ)));

            //INTERESSADO
            pessoasRelacionadas.Add(requerimento.Pessoas.Where(x => x.CPFCNPJ == requerimento.Interessado.CPFCNPJ).FirstOrDefault());

            //TODOS OS RESPONSAVEIS
            requerimento.Responsaveis.ForEach(r =>
            {
                pessoasRelacionadas.Add(requerimento.Pessoas.Where(x => x.CPFCNPJ == r.CpfCnpj).FirstOrDefault());
            });

            //TODOS OS RESPONSAVEIS DO EMPREEENDIMENTO
            //if (requerimento.Empreendimento.SelecaoTipo == (int)eExecutorTipo.Credenciado && requerimento.Empreendimento.Id > 0)
            //{
            //    EmpreendimentoCredenciadoBus empreendimentoCredenciadoBus = new EmpreendimentoCredenciadoBus();
            //    pessoasRelacionadas.AddRange(empreendimentoCredenciadoBus.ObterResponsaveis(requerimento.Empreendimento.Id));
            //}

            //TODOS OS REPRESENTANTES DOS RESPONSAVEIS DO EMPREEENDIMENTO
            if (requerimento.Empreendimento.SelecaoTipo == (int)eExecutorTipo.Credenciado && requerimento.Empreendimento.Id > 0)
            {
                PessoaCredenciadoBus         pessoaCredenciadoBus         = new PessoaCredenciadoBus();
                EmpreendimentoCredenciadoBus empreendimentoCredenciadoBus = new EmpreendimentoCredenciadoBus();
                var responsaveis = empreendimentoCredenciadoBus.ObterResponsaveis(requerimento.Empreendimento.Id);
                pessoasRelacionadas.AddRange(responsaveis);

                foreach (var responsavel in responsaveis)
                {
                    var pessoa = pessoaCredenciadoBus.Obter(responsavel.Id);
                    if (pessoa.IsJuridica)
                    {
                        foreach (var repre in pessoa.Juridica.Representantes)
                        {
                            pessoasRelacionadas.Add(pessoaCredenciadoBus.Obter(repre.Id));
                        }
                    }
                }
            }

            //Conjuge
            foreach (var item in requerimento.Pessoas.Where(x => x.Fisica.ConjugeId > 0).ToList())
            {
                if (item.SelecaoTipo == (int)eExecutorTipo.Credenciado)
                {
                    pessoasRelacionadas.Add(requerimento.Pessoas.FirstOrDefault(x => x.CPFCNPJ == item.Fisica.ConjugeCPF));
                }
            }

            //Agrupando
            pessoasRelacionadas = pessoasRelacionadas.Where(x => x != null).GroupBy(x => x.CPFCNPJ).Select(y => new Pessoa
            {
                Id              = y.First().Id,
                Tipo            = y.First().Tipo,
                InternoId       = y.First().InternoId,
                NomeRazaoSocial = y.First().NomeRazaoSocial,
                CPFCNPJ         = y.First().CPFCNPJ,
                Fisica          = y.First().Fisica,
            }).ToList();

            return(pessoasRelacionadas);
        }