public ActionResult ObterFinalizar(int id)
        {
            RequerimentoVM vm = new RequerimentoVM(_busRequerimento.ObterFinalizar(id));

            vm.IsAbaFinalizar = true;
            vm.CarregarListas(ListaCredenciadoBus.ResponsavelFuncoes, ListaCredenciadoBus.AgendamentoVistoria);

            return(PartialView("Finalizar", vm));
        }
        public ActionResult ImprimirDocumentos(int id)
        {
            ProjetoDigital projetoDigital = _bus.Obter(id);

            RequerimentoCredenciadoBus requerimentoBus = new RequerimentoCredenciadoBus();

            if (requerimentoBus.RequerimentoDeclaratorio(projetoDigital.RequerimentoId))
            {
                Validacao.Add(Mensagem.ProjetoDigital.ImprimirDocumentosDesativado);
                return(RedirectToAction("Operar", "ProjetoDigital", Validacao.QueryParamSerializer(new { id = id })));
            }

            if (projetoDigital.Situacao == (int)eProjetoDigitalSituacao.AguardandoCorrecao)
            {
                Validacao.Add(Mensagem.ProjetoDigital.PossuiPendenciasCorrecao);
                return(RedirectToAction("Operar", "ProjetoDigital", Validacao.QueryParamSerializer(new { id = id })));
            }

            RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus();
            Requerimento requerimento = requerimentoCredenciadoBus.ObterFinalizar(projetoDigital.RequerimentoId);

            ProjetoDigitalImprimirDocumentosVM vm = new ProjetoDigitalImprimirDocumentosVM();

            vm.ProjetoDigital = projetoDigital;

            ProjetoGeograficoBus projetoGeoBus = new ProjetoGeograficoBus();

            foreach (var item in projetoDigital.Dependencias)
            {
                if (item.DependenciaTipo == (int)eCaracterizacaoDependenciaTipo.ProjetoGeografico)
                {
                    List <ArquivoProjeto> arquivos = projetoGeoBus.ObterArquivosHistorico(item.DependenciaId, item.DependenciaTid);
                    item.Id = (arquivos.SingleOrDefault(x => x.Tipo == (int)eProjetoGeograficoArquivoTipo.Croqui) ?? new ArquivoProjeto()).Id.GetValueOrDefault();
                }
                else
                {
                    item.Id = 0;
                }
            }

            vm.DocumentosGeradosVM.CarregarDocumentos(requerimento, projetoDigital);

            return(View(vm));
        }
        public ActionResult Enviar(int id, bool modoVisualizar = false)
        {
            ProjetoDigital projetoDigital = _bus.Obter(id);

            if (!modoVisualizar && !_validar.EnviarBasicas(projetoDigital, true))
            {
                return(RedirectToAction("Operar", "ProjetoDigital", Validacao.QueryParamSerializer(new { id = id })));
            }

            RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus();
            Requerimento requerimento = requerimentoCredenciadoBus.ObterFinalizar(projetoDigital.RequerimentoId);

            ProjetoDigitalEnviarVM vm = new ProjetoDigitalEnviarVM()
            {
                ModoVisualizar = modoVisualizar,
                ProjetoDigital = projetoDigital,
                RequerimentoVM = new RequerimentoVM(requerimento, true)
            };

            ProjetoGeograficoBus projetoGeoBus = new ProjetoGeograficoBus();

            foreach (var item in projetoDigital.Dependencias)
            {
                if (item.DependenciaTipo == (int)eCaracterizacaoDependenciaTipo.ProjetoGeografico)
                {
                    List <ArquivoProjeto> arquivos = projetoGeoBus.ObterArquivosHistorico(item.DependenciaId, item.DependenciaTid);
                    item.Id = (arquivos.SingleOrDefault(x => x.Tipo == (int)eProjetoGeograficoArquivoTipo.Croqui) ?? new ArquivoProjeto()).Id.GetValueOrDefault();
                }
                else
                {
                    item.Id = 0;
                }
            }

            vm.RequerimentoVM.IsAbaFinalizar = true;
            vm.RequerimentoVM.CarregarListas(ListaCredenciadoBus.ResponsavelFuncoes, new List <AgendamentoVistoria>());
            vm.DocumentosGeradosVM.CarregarDocumentos(requerimento, projetoDigital);

            return(View(vm));
        }