public ActionResult Carregar(ProjetoGeograficoVM vm, bool mostrarModalDependencias = true, bool isVisualizar = false) { Empreendimento emp = _busEmpreendimento.Obter(vm.Projeto.EmpreendimentoId); if (emp.Coordenada.EastingUtm.GetValueOrDefault() <= 0 || emp.Coordenada.NorthingUtm.GetValueOrDefault() <= 0) { Validacao.Add(Mensagem.ProjetoGeografico.CoordenadaObrigatoria); return(RedirectToAction("", "Caracterizacao", new { id = vm.Projeto.EmpreendimentoId, Msg = Validacao.QueryParam() })); } if (!isVisualizar && !_caracterizacaoValidar.Dependencias(vm.Projeto.EmpreendimentoId, vm.Projeto.CaracterizacaoId, validarProjetoGeoProprio: false)) { return(RedirectToAction("", "Caracterizacao", new { id = vm.Projeto.EmpreendimentoId, Msg = Validacao.QueryParam() })); } eCaracterizacao tipo = (eCaracterizacao)vm.Projeto.CaracterizacaoId; vm.CaracterizacaoTipo = vm.Projeto.CaracterizacaoId; vm.ArquivoEnviadoTipo = (int)eProjetoGeograficoArquivoTipo.ArquivoEnviado; vm.ArquivoEnviadoFilaTipo = (tipo == eCaracterizacao.Dominialidade) ? (int)eFilaTipoGeo.Dominialidade : (int)eFilaTipoGeo.Atividade; vm.NiveisPrecisao = ViewModelHelper.CriarSelectList(_bus.ObterNiveisPrecisao()); vm.SistemaCoordenada = ViewModelHelper.CriarSelectList(_bus.ObterSistemaCoordenada()); vm.Projeto.EmpreendimentoEasting = emp.Coordenada.EastingUtm.Value; vm.Projeto.EmpreendimentoNorthing = emp.Coordenada.NorthingUtm.Value; vm.Projeto.CaracterizacaoTexto = (_listaBus.Caracterizacoes.SingleOrDefault(x => x.Id == vm.Projeto.CaracterizacaoId) ?? new CaracterizacaoLst()).Texto; vm.Projeto.SistemaCoordenada = ConcatenarSistemaCoordenada(emp); vm.Dependentes = _caracterizacaoBus.Dependentes(vm.Projeto.EmpreendimentoId, tipo, eCaracterizacaoDependenciaTipo.ProjetoGeografico); vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; vm.UrlBaixarOrtofoto = _config.Obter <string>(ConfiguracaoSistema.KeyUrlGeoBasesWebServices) + "/Arquivo/DownloadArquivoOrtoFoto"; vm.UrlValidarOrtofoto = _config.Obter <string>(ConfiguracaoSistema.KeyUrlGeoBasesWebServices) + "/Arquivo/ValidarChaveArquivoOrtoFoto"; vm.UrlsArquivo = ViewModelHelper.Json(ObterUrlsArquivo()); #region Verificar o Redirecionamento vm.UrlAvancar = CaracterizacaoVM.GerarUrl(vm.Projeto.EmpreendimentoId, vm.isCadastrarCaracterizacao, (eCaracterizacao)tipo); List <DependenciaLst> dependencias = _caracterizacaoConfig.Obter <List <DependenciaLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoesDependencias); if (dependencias.Exists(x => x.DependenteTipo == (int)tipo && x.TipoDetentorId == (int)eCaracterizacaoDependenciaTipo.DescricaoLicenciamentoAtividade)) { String url = "Visualizar"; PermissaoValidar permissaoValidar = new PermissaoValidar(); if (permissaoValidar.ValidarAny(new[] { ePermissao.DescricaoLicenciamentoAtividadeCriar, ePermissao.DescricaoLicenciamentoAtividadeEditar }, false)) { url = "Criar"; } vm.UrlAvancar = Url.Action(url, "DescricaoLicenciamentoAtividade", new { empreendimento = vm.Projeto.EmpreendimentoId, tipo = (int)tipo, isCadastrarCaracterizacao = vm.isCadastrarCaracterizacao }); } #endregion if (vm.Projeto.Dependencias == null || vm.Projeto.Dependencias.Count == 0) { vm.Projeto.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(vm.Projeto.EmpreendimentoId, tipo, eCaracterizacaoDependenciaTipo.ProjetoGeografico); } if (vm.Projeto.Id > 0 && mostrarModalDependencias) { vm.TextoMerge = _caracterizacaoValidar.DependenciasAlteradas( vm.Projeto.EmpreendimentoId, vm.Projeto.CaracterizacaoId, eCaracterizacaoDependenciaTipo.ProjetoGeografico, vm.Projeto.Dependencias, isVisualizar); } vm.Projeto.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(vm.Projeto.EmpreendimentoId, tipo, eCaracterizacaoDependenciaTipo.ProjetoGeografico); //Busca as dependencias desse projeto geográfico _bus.ObterDependencias(vm.Projeto, true); if (vm.Projeto.Id > 0) { vm.CarregarVMs(); } return(View("ProjetoGeografico", vm)); }