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

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

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

            SilviculturaATVVM vm = new SilviculturaATVVM(caracterizacao, _listaBus.SilviculturaAtvCoberturaExitente, _listaBus.CaracterizacaoGeometriaTipo, _listaBus.SilviculturaAtvCaracteristicaFomento, true);

            vm.TextoMerge = textoMerge;
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            vm.TextoAbrirModal = _validar.AbrirModalAcessar(caracterizacao);

            vm.TemARL             = true;
            vm.TemARLDesconhecida = false;

            return(View(vm));
        }
        public ActionResult GeoMergiar(SilviculturaATV silvicultura)
        {
            SilviculturaATVVM vm = new SilviculturaATVVM(_bus.MergiarGeo(silvicultura), _listaBus.SilviculturaAtvCoberturaExitente, _listaBus.CaracterizacaoGeometriaTipo, _listaBus.SilviculturaAtvCaracteristicaFomento);

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

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

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

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

            SilviculturaATVVM vm = new SilviculturaATVVM(caracterizacao, _listaBus.SilviculturaAtvCoberturaExitente, _listaBus.CaracterizacaoGeometriaTipo, _listaBus.SilviculturaAtvCaracteristicaFomento);

            vm.TextoMerge = textoMerge;
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            vm.TextoAbrirModal = _validar.AbrirModalAcessar(caracterizacao);

            var emp         = _empBus.Obter(id);
            var enderecoEmp = emp.Enderecos.Find(x => x.ZonaLocalizacaoId == (int)eEmpreendimentoLocalizacao.ZonaRural);

            if (enderecoEmp != null)
            {
                if (!string.IsNullOrEmpty(textoMerge))
                {
                    vm.TemARL             = _bus.TemARL(id);
                    vm.TemARLDesconhecida = _bus.TemARLDesconhecida(id);
                }
            }
            else
            {
                vm.TemARL             = true;
                vm.TemARLDesconhecida = false;
            }

            return(View(vm));
        }
        public ActionResult Criar(int id)
        {
            if (!_caracterizacaoValidar.Basicas(id))
            {
                return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer()));
            }

            SilviculturaATV caracterizacao = _bus.ObterDadosGeo(id);

            caracterizacao.EmpreendimentoId = id;

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

            caracterizacao.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(id, eCaracterizacao.SilviculturaATV, eCaracterizacaoDependenciaTipo.Caracterizacao);
            SilviculturaATVVM vm = new SilviculturaATVVM(caracterizacao, _listaBus.SilviculturaAtvCoberturaExitente, _listaBus.CaracterizacaoGeometriaTipo, _listaBus.SilviculturaAtvCaracteristicaFomento);

            /*var areaTotal = vm.ObterArea(eSilviculturaAreaATV.AA_TOTAL_FLORESTA);
             * areaTotal.Valor = vm.ObterArea(eSilviculturaAreaATV.AVN).Valor + vm.ObterArea(eSilviculturaAreaATV.AA_FLORESTA_PLANTADA).Valor;
             * areaTotal.ValorTexto = areaTotal.Valor.ToStringTrunc();*/

            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            vm.TextoAbrirModal = _validar.AbrirModalAcessar(caracterizacao);

            var emp         = _empBus.Obter(id);
            var enderecoEmp = emp.Enderecos.Find(x => x.ZonaLocalizacaoId == (int)eEmpreendimentoLocalizacao.ZonaRural);

            if (enderecoEmp != null)
            {
                vm.TemARL             = _bus.TemARL(id);
                vm.TemARLDesconhecida = _bus.TemARLDesconhecida(id);
            }
            else
            {
                vm.TemARL             = true;
                vm.TemARLDesconhecida = false;
            }

            return(View(vm));
        }