Exemple #1
0
        public bool Excluir(int empreendimento)
        {
            if (!EmPosse(empreendimento))
            {
                Validacao.Add(Mensagem.Empreendimento.Posse);
                return(Validacao.EhValido);
            }

            List <String> requerimentosAssociados = _da.VerificarEmpreendimentoRequerimento(empreendimento);

            if (requerimentosAssociados.Count > 0)
            {
                foreach (String numero in requerimentosAssociados)
                {
                    Validacao.Add(Mensagem.Empreendimento.EmpreedimentoAssociado("requerimento", numero));
                }
            }

            CaracterizacaoBus caractBus = new CaracterizacaoBus();

            IEnumerable <Dependencia> lstDepDominialidade = caractBus.ObterDependenciasAtual(empreendimento, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao)
                                                            .Where(x => x.DependenciaId > 0);

            if (lstDepDominialidade != null && lstDepDominialidade.Count() > 0)
            {
                List <DependenciaLst> dependentes = caractBus.CaracterizacaoConfig.Obter <List <DependenciaLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoesDependencias);
                Validacao.Add(Mensagem.Empreendimento.AssociadoDependencias(lstDepDominialidade.Select(x => dependentes.First(lstDep => lstDep.TipoId == x.DependenciaTipo).TipoTexto).ToList()));
            }

            List <Caracterizacao> lstCaractCadastradas = caractBus.ObterCaracterizacoesEmpreendimento(empreendimento) ?? new List <Caracterizacao>();

            lstCaractCadastradas = lstCaractCadastradas.Where(x => x.Id > 0).ToList();

            List <CaracterizacaoLst> caracterizacoes = caractBus.CaracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes);

            if (lstCaractCadastradas.Count > 0)
            {
                Validacao.Add(Mensagem.Empreendimento.AssociadoCaracterizacoes(lstCaractCadastradas.Select(x => caracterizacoes.Single(c => c.Id == (int)x.Tipo).Texto).ToList()));
            }

            List <String> listString = null;

            //Associado ao Documento
            listString = _da.VerificarEmpreendimentoDocumento(empreendimento);
            if (listString != null && listString.Count > 0)
            {
                listString.ForEach(x => Validacao.Add(Msg.AssociadoDocumento(x)));
            }

            //Associado ao Processo
            listString = _da.VerificarEmpreendimentoProcesso(empreendimento);
            if (listString != null && listString.Count > 0)
            {
                listString.ForEach(x => Validacao.Add(Msg.AssociadoProcesso(x)));
            }

            //Associado ao Título
            listString = _da.VerificarEmpreendimentoTitulo(empreendimento);
            if (listString != null && listString.Count > 0)
            {
                listString.ForEach(x => Validacao.Add(Msg.AssociadoTitulo(x)));
            }

            //Associado a Fiscalização
            listString = _da.VerificarEmpreendimentoFiscalizacoes(empreendimento);
            if (listString != null && listString.Count > 0)
            {
                listString.ForEach(x => Validacao.Add(Msg.AssociadoFiscalizacao(x)));
            }

            return(Validacao.EhValido);
        }