public ActionResult Editar(int id, int projetoDigitalId)
        {
            if (!_caracterizacaoValidar.Basicas(id))
            {
                return(RedirectToAction("Operar", "ProjetoDigital", Validacao.QueryParamSerializer(new { id = projetoDigitalId, area = "" })));
            }

            if (!_validar.Acessar(id, projetoDigitalId))
            {
                return(RedirectToAction("", "Caracterizacao", new { id = id, projetoDigitalId = projetoDigitalId, Msg = Validacao.QueryParam() }));
            }

            BarragemDispensaLicenca caracterizacao = _bus.ObterPorEmpreendimento(id);
            AtividadeInternoBus     atividadeBus   = new AtividadeInternoBus();

            BarragemDispensaLicencaVM vm = new BarragemDispensaLicencaVM(
                caracterizacao,
                atividadeBus.ObterAtividadePorCodigo((int)eAtividadeCodigo.BarragemDeAte1HaLâminaDaguaAte10000M3DeVolumeArmazenado),
                ListaCredenciadoBus.BarragemDispensaLicencaFinalidadeAtividade,
                ListaCredenciadoBus.BarragemDispensaLicencaFormacaoRT,
                ListaCredenciadoBus.BarragemDispensaLicencaBarragemTipo,
                ListaCredenciadoBus.BarragemDispensaLicencaFase,
                ListaCredenciadoBus.BarragemDispensaLicencaMongeTipo,
                ListaCredenciadoBus.BarragemDispensaLicencaVertedouroTipo
                );

            return(View(vm));
        }
        public bool ResponsavelTecnicoValidar(List <ResponsavelTecnico> responsaveisTecnicos, List <Atividade> atividades)
        {
            Atividade atividade = _atividadeBus.ObterAtividadePorCodigo((int)eAtividadeCodigo.BarragemDeAte1HaLâminaDaguaAte10000M3DeVolumeArmazenado);

            if (atividades.Any(x => x.Id == atividade.Id) && (responsaveisTecnicos == null || responsaveisTecnicos.Count <= 0))
            {
                Validacao.Add(Mensagem.Requerimento.AtividadeResponsavelTecnicoObrigatorio(atividade.NomeAtividade));
                return(false);
            }

            for (int i = 0; i < responsaveisTecnicos.Count; i++)
            {
                ResponsavelTecnico responsavel = responsaveisTecnicos[i];

                if (string.IsNullOrEmpty(responsavel.NomeRazao))
                {
                    Validacao.Add(Msg.ResponsavelNomeRazaoObrigatorio(i));
                }

                if (string.IsNullOrEmpty(responsavel.CpfCnpj))
                {
                    Validacao.Add(Msg.ResponsavelCpfCnpjObrigatorio(i));
                }

                if (responsavel.Funcao <= 0)
                {
                    Validacao.Add(Msg.ResponsavelFuncaoObrigatorio(i));
                }

                if (string.IsNullOrEmpty(responsavel.NumeroArt))
                {
                    Validacao.Add(Msg.ResponsavelARTObrigatorio(i));
                }

                if (!_busPessoa.ExisteProfissao(responsavel.Id))
                {
                    Validacao.Add(Mensagem.ResponsavelTecnico.ResponsavelNaoPossuiProfissao(responsavel.NomeRazao));
                }
            }
            return(Validacao.EhValido);
        }