public ActionResult Visualizar(int id)
        {
            RegularizacaoFundiaria caracterizacao = _bus.ObterPorEmpreendimento(id);
            string textoMerge = _caracterizacaoValidar.DependenciasAlteradas(
                caracterizacao.EmpreendimentoId,
                (int)eCaracterizacao.RegularizacaoFundiaria,
                eCaracterizacaoDependenciaTipo.Caracterizacao,
                caracterizacao.Dependencias, true);

            if (string.IsNullOrEmpty(textoMerge) && _validar.EmpreendimentoZonaAlterada(id))
            {
                textoMerge = Mensagem.Caracterizacao.SegmentoEmpreendimentoAlterado.Texto;
            }

            if (!string.IsNullOrEmpty(textoMerge))
            {
                caracterizacao = _bus.MergiarGeo(caracterizacao);
            }

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

            RegularizacaoFundiariaVM vm = new RegularizacaoFundiariaVM(caracterizacao, true);

            vm.TextoMerge = textoMerge;
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;

            return(View(vm));
        }
        public ActionResult VisualizarPosse(int id, int empreendimento, Posse posse, List <Dominio> matriculas)
        {
            RegularizacaoFundiaria caracterizacao = new RegularizacaoFundiaria();

            caracterizacao.Matriculas = matriculas ?? new List <Dominio>();
            caracterizacao.Posse      = posse;

            RegularizacaoFundiariaVM vm = new RegularizacaoFundiariaVM(caracterizacao, _listaBus.RegularizacaoFundiariaRelacaoTrabalho, _listaBus.RegularizacaoFundiariaTipoLimite, _listaBus.RegularizacaoFundiariaTipoRegularizacao, _listaBus.RegularizacaoFundiariaTipoUso, _listaBus.RegularizacaoFundiariaHomologacao, true);

            return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @Html = ViewModelHelper.RenderPartialViewToString(ControllerContext, "RegularizacaoFundiariaPartial", vm) }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult GeoMergiar(RegularizacaoFundiaria caracterizacao)
        {
            RegularizacaoFundiariaVM vm = new RegularizacaoFundiariaVM(_bus.MergiarGeo(caracterizacao));

            return(Json(new
            {
                @EhValido = Validacao.EhValido,
                @Msg = Validacao.Erros,
                @Html = ViewModelHelper.RenderPartialViewToString(ControllerContext, "RegularizacaoFundiariaLista", vm),
                @Dependencias = ViewModelHelper.Json(vm.Caracterizacao.Dependencias)
            }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Editar(int id)
        {
            if (!_caracterizacaoValidar.Basicas(id))
            {
                return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer()));
            }

            RegularizacaoFundiaria caracterizacao = _bus.ObterPorEmpreendimento(id);
            string textoMerge = _caracterizacaoValidar.DependenciasAlteradas(
                caracterizacao.EmpreendimentoId,
                (int)eCaracterizacao.RegularizacaoFundiaria,
                eCaracterizacaoDependenciaTipo.Caracterizacao,
                caracterizacao.Dependencias);

            if (string.IsNullOrEmpty(textoMerge) && _validar.EmpreendimentoZonaAlterada(id))
            {
                textoMerge = Mensagem.Caracterizacao.SegmentoEmpreendimentoAlterado.Texto;
            }

            if (!string.IsNullOrEmpty(textoMerge))
            {
                caracterizacao = _bus.MergiarGeo(caracterizacao);
            }

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

            RegularizacaoFundiariaVM vm = new RegularizacaoFundiariaVM(
                caracterizacao,
                _listaBus.RegularizacaoFundiariaRelacaoTrabalho,
                _listaBus.RegularizacaoFundiariaTipoLimite,
                _listaBus.RegularizacaoFundiariaTipoRegularizacao,
                _listaBus.RegularizacaoFundiariaTipoUso,
                _listaBus.RegularizacaoFundiariaHomologacao,
                _listaBus.DominialidadeComprovacoes);

            vm.TextoMerge = textoMerge;
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            return(View(vm));
        }
        public ActionResult Criar(int id)
        {
            if (!_caracterizacaoValidar.Basicas(id))
            {
                return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer()));
            }

            RegularizacaoFundiaria caracterizacao = _bus.ObterDadosGeo(id);

            caracterizacao.EmpreendimentoId = id;

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

            caracterizacao.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(id, eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao);

            RegularizacaoFundiariaVM vm = new RegularizacaoFundiariaVM(caracterizacao);

            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;

            return(View(vm));
        }