public RegularizacaoFundiariaVM(RegularizacaoFundiaria regularizacao, List <RelacaoTrabalho> relacoesTrabalho, List <Lista> limite, List <Lista> regularizacaoTipo, List <UsoAtualSoloLst> tipoUso, List <Lista> homologacoes, bool isVisualizar = false) { Caracterizacao = regularizacao; IsVisualizar = isVisualizar; Opcao opcaoAux = null; string homologacaoSelecionada = string.Empty; string limiteSelecionado = string.Empty; if (Caracterizacao != null) { homologacaoSelecionada = MontarRadioCheck(eTipoOpcao.TerrenoDevoluto).Outro; opcaoAux = MontarRadioCheck(eTipoOpcao.SobrepoeSeDivisa); if (Convert.ToBoolean(opcaoAux.Valor)) { limiteSelecionado = opcaoAux.Outro; } } RelacoesTrabalho = relacoesTrabalho; Homologacoes = ViewModelHelper.CriarSelectList(homologacoes, true, selecionado: homologacaoSelecionada); TipoLimite = ViewModelHelper.CriarSelectList(limite, true, selecionado: limiteSelecionado); TipoUso = ViewModelHelper.CriarSelectList(tipoUso, true); TipoRegularizacao = ViewModelHelper.CriarSelectList(regularizacaoTipo, true); }
public RegularizacaoFundiariaPDF(RegularizacaoFundiaria regularizacao) { foreach (Posse posse in regularizacao.Posses) { Posses.Add(new PossePDF(posse, regularizacao.Matriculas)); } }
public RegularizacaoFundiaria MergiarGeo(RegularizacaoFundiaria caracterizacaoAtual) { RegularizacaoFundiaria regularizacaoGeo = ObterDadosGeo(caracterizacaoAtual.EmpreendimentoId); caracterizacaoAtual.Dependencias = _busCaracterizacao.ObterDependenciasAtual(caracterizacaoAtual.EmpreendimentoId, eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao); List <Posse> removerPosse = new List <Posse>(); foreach (Posse posseAtual in caracterizacaoAtual.Posses) { if (!regularizacaoGeo.Posses.Exists(x => posseAtual.Identificacao == x.Identificacao)) { removerPosse.Add(posseAtual); } } caracterizacaoAtual.Posses.RemoveAll(x => removerPosse.Exists(y => y.Identificacao == x.Identificacao));; foreach (Posse posse in regularizacaoGeo.Posses) { if (!caracterizacaoAtual.Posses.Exists(x => x.Identificacao == posse.Identificacao)) { caracterizacaoAtual.Posses.Add(posse); } else { Posse posseAtual = caracterizacaoAtual.Posses.Single(x => x.Identificacao == posse.Identificacao); posseAtual.ComprovacaoTexto = posse.ComprovacaoTexto; posseAtual.AreaCroqui = posse.AreaCroqui; posseAtual.Zona = posse.Zona; } } return(caracterizacaoAtual); }
public RegularizacaoFundiaria ObterPorEmpreendimento(int empreendimento, bool simplificado = false, BancoDeDados banco = null) { RegularizacaoFundiaria caracterizacao = null; try { caracterizacao = _da.ObterPorEmpreendimento(empreendimento, simplificado, banco); caracterizacao.Dependencias = _busCaracterizacao.ObterDependencias(caracterizacao.Id, eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao, banco); int zona = (int)_busCaracterizacao.ObterEmpreendimentoSimplificado(empreendimento).ZonaLocalizacao; caracterizacao.Posses.ForEach(x => { x.Zona = zona; }); caracterizacao.Posses = caracterizacao.Posses.OrderBy(x => x.Identificacao).ToList(); caracterizacao.Matriculas = _busDominialidade.ObterPorEmpreendimento(empreendimento).Dominios.Where(x => x.Tipo == eDominioTipo.Matricula).ToList(); } catch (Exception exc) { Validacao.AddErro(exc); } return(caracterizacao); }
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 Editar(RegularizacaoFundiaria caracterizacao) { string textoMerge = _caracterizacaoValidar.DependenciasAlteradas( caracterizacao.EmpreendimentoId, (int)eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao, caracterizacao.Dependencias); if (!string.IsNullOrEmpty(textoMerge)) { return(Json(new { @TextoMerge = textoMerge }, JsonRequestBehavior.AllowGet)); } _bus.Salvar(caracterizacao); var msg = Validacao.Erros.Find(x => x.Texto == Mensagem.Caracterizacao.SegmentoEmpreendimentoAlterado.Texto); if (msg != null) { return(Json(new { @TextoMerge = Mensagem.Caracterizacao.SegmentoEmpreendimentoAlterado.Texto }, JsonRequestBehavior.AllowGet)); } return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @UrlRedirecionar = Url.Action("", "Caracterizacao", new { id = caracterizacao.EmpreendimentoId, Msg = Validacao.QueryParam() }) }, JsonRequestBehavior.AllowGet)); }
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 bool ValidarProjetoGeo(int empreendimento) { RegularizacaoFundiariaBus bus = new RegularizacaoFundiariaBus(); RegularizacaoFundiaria caracterizacao = bus.ObterDadosGeo(empreendimento); caracterizacao.EmpreendimentoId = empreendimento; if (Acessar(caracterizacao)) { return(true); } return(false); }
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 bool Salvar(RegularizacaoFundiaria caracterizacao) { try { if (_validar.Salvar(caracterizacao)) { caracterizacao.Posses.ForEach(x => { x.UsoAtualSolo.ForEach(y => { if (TiposUsos.Exists(uso => uso.Id == y.TipoDeUso)) { y.TipoDeUsoGeo = TiposUsos.First(tiposusos => tiposusos.Id == y.TipoDeUso).TipoGeo; } }); }); GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { bancoDeDados.IniciarTransacao(); _da.Salvar(caracterizacao, bancoDeDados); #region Gerencia as dependências da caracterização _busCaracterizacao.Dependencias(new Caracterizacao() { Id = caracterizacao.Id, Tipo = eCaracterizacao.RegularizacaoFundiaria, DependenteTipo = eCaracterizacaoDependenciaTipo.Caracterizacao, Dependencias = caracterizacao.Dependencias }, bancoDeDados); #endregion Validacao.Add(Mensagem.RegularizacaoFundiaria.Salvar); bancoDeDados.Commit(); } } } catch (Exception e) { Validacao.AddErro(e); } return(Validacao.EhValido); }
public bool Acessar(RegularizacaoFundiaria caracterizacao, bool isVisualizar = false) { if (!_caracterizacaoValidar.Basicas(caracterizacao.EmpreendimentoId, isVisualizar)) { return(false); } if (!_caracterizacaoValidar.Dependencias(caracterizacao.EmpreendimentoId, (int)eCaracterizacao.RegularizacaoFundiaria)) { return(false); } if (caracterizacao.Posses == null || caracterizacao.Posses.Count <= 0) { Validacao.Add(Mensagem.RegularizacaoFundiaria.PossesObrigatorio); } return(Validacao.EhValido); }
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 RegularizacaoFundiaria ObterDadosGeo(int empreendimento, BancoDeDados banco = null) { RegularizacaoFundiaria caracterizacao = new RegularizacaoFundiaria(); try { Dominialidade dominialidade = _busDominialidade.ObterPorEmpreendimento(empreendimento); int zona = (int)_busCaracterizacao.ObterEmpreendimentoSimplificado(empreendimento).ZonaLocalizacao; caracterizacao.Posses = ObterPosses(empreendimento, zona); caracterizacao.Matriculas = dominialidade.Dominios.Where(x => x.Tipo == eDominioTipo.Matricula).ToList(); return(caracterizacao); } catch (Exception exc) { Validacao.AddErro(exc); } return(null); }
public bool Salvar(RegularizacaoFundiaria caracterizacao) { List <string> regularizacoesInvalidas = new List <string>(); foreach (Posse posse in caracterizacao.Posses) { if (!Posse(posse, caracterizacao.EmpreendimentoId)) { regularizacoesInvalidas.Add(posse.Identificacao); } } Validacao.Erros.Clear(); if (!Acessar(caracterizacao)) { return(false); } if (caracterizacao.Id <= 0) { if ((_da.ObterPorEmpreendimento(caracterizacao.EmpreendimentoId) ?? new RegularizacaoFundiaria()).Id > 0) { Validacao.Add(Mensagem.Caracterizacao.EmpreendimentoCaracterizacaoJaCriada); return(false); } } if (regularizacoesInvalidas.Count > 0) { foreach (var item in regularizacoesInvalidas) { Validacao.Add(Mensagem.RegularizacaoFundiaria.RegularizacaoInvalida(item)); } } return(Validacao.EhValido); }
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)); }
public RegularizacaoFundiariaVM(RegularizacaoFundiaria regularizacao, bool isVisualizar = false) { Caracterizacao = regularizacao; IsVisualizar = isVisualizar; }