public ActionResult EditarExploracaoFlorestal(int id) { var exploracaoFlorestal = _bus.ObterPorId(id, false); if (!_caracterizacaoValidar.Basicas(exploracaoFlorestal.EmpreendimentoId)) { return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer())); } if (!_validar.Acessar(exploracaoFlorestal.EmpreendimentoId)) { return(RedirectToAction("", "Caracterizacao", new { id = exploracaoFlorestal.EmpreendimentoId, Msg = Validacao.QueryParam() })); } var vmList = new ExploracaoFlorestalListVM(); vmList.Dependencias = exploracaoFlorestal.Dependencias; var textoMerge = _caracterizacaoValidar.DependenciasAlteradas(exploracaoFlorestal.EmpreendimentoId, (int)eCaracterizacao.ExploracaoFlorestal, eCaracterizacaoDependenciaTipo.Caracterizacao, vmList.Dependencias); if (!string.IsNullOrEmpty(textoMerge)) { exploracaoFlorestal = _bus.MergiarGeo(exploracaoFlorestal); } ExploracaoFlorestalVM vm = new ExploracaoFlorestalVM(exploracaoFlorestal, _listaBus.ExploracaoFlorestalFinalidadesExploracoes, _listaBus.ExploracaoFlorestalClassificacoesVegetais, _listaBus.ExploracaoFlorestalExploracoesTipos, _listaBus.CaracterizacaoProdutosExploracao, _listaBus.CaracterizacaoDestinacaoMaterialLenhoso, _listaBus.TipoExploracaoFlorestal); vmList.ExploracaoFlorestalVM.Add(vm); return(View(vmList)); }
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() })); } InformacaoCorte caracterizacao = _bus.ObterPorEmpreendimento(id); string textoMerge = _caracterizacaoValidar.DependenciasAlteradas( caracterizacao.EmpreendimentoId, (int)eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao, caracterizacao.Dependencias); if (!string.IsNullOrEmpty(textoMerge)) { caracterizacao = _bus.MergiarGeo(caracterizacao); } InformacaoCorteVM vm = new InformacaoCorteVM(caracterizacao); vm.TextoMerge = textoMerge; vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; return(View(vm)); }
public bool Salvar(IEspecificidade especificidade) { AutorizacaoQueimaControlada esp = especificidade as AutorizacaoQueimaControlada; EspecificidadeDa _da = new EspecificidadeDa(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); List <Caracterizacao> caracterizacoes = caracterizacaoBus.ObterCaracterizacoesEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()); List <Dependencia> dependencias = new List <Dependencia>(); String caracterizacoesAlteradas = String.Empty; int idCaracterizacao; RequerimentoAtividade(esp, false, true); Destinatario(especificidade.ProtocoloReq.Id, esp.Destinatario, "Autorizacao_Destinatario"); if ((esp.TitulosAssociado.FirstOrDefault() ?? new TituloAssociadoEsp()).Id <= 0) { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.LaudoVistoriaObrigatorio); } else if (_daEspecificidade.ObterTituloAssociado(esp.TitulosAssociado.FirstOrDefault().Id).Situacao != (int)eTituloSituacao.Concluido) { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.LaudoVIstoriaDeveEstarConcluiddo); } idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.Dominialidade); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.CaracterizacaoDeveEstarValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.Dominialidade).Nome)); } } else { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.DominialidadeInexistente); } idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.QueimaControlada); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.QueimaControlada, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.QueimaControlada, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.CaracterizacaoDeveEstarValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.QueimaControlada).Nome)); } } else { Validacao.Add(Mensagem.AutorizacaoQueimaControlada.QueimaInexistente); } if (caracterizacoesAlteradas != String.Empty) { Validacao.Add(Mensagem.Caracterizacao.CaracterizacaoAlterada); } return(Validacao.EhValido); }
public ActionResult Criar(int empreendimento, int tipo, bool isCadastrarCaracterizacao) { if (!_caracterizacaoValidar.Dependencias(empreendimento, tipo)) { return(RedirectToAction("", "Caracterizacao", new { id = empreendimento, Msg = Validacao.QueryParam() })); } DescricaoLicenciamentoAtividadeVM vm = new DescricaoLicenciamentoAtividadeVM(); DescricaoLicenciamentoAtividade dscLicAtividade = _bus.ObterPorEmpreendimento(empreendimento, (eCaracterizacao)tipo); dscLicAtividade = _bus.ObterDadosGeo(empreendimento, (eCaracterizacao)tipo, dscLicAtividade); if (dscLicAtividade.Id == 0) { dscLicAtividade.Tipo = tipo; } vm.CaracterizacaoTipoTexto = _caracterizacaoBus.ObterCaracterizacoesEmpreendimento(empreendimento).SingleOrDefault(x => (int)x.Tipo == tipo).Nome; dscLicAtividade.EmpreendimentoId = empreendimento; vm.DscLicAtividade = dscLicAtividade; vm.IsCadastrarCaracterizacao = isCadastrarCaracterizacao; vm.ResponsaveisEmpreendimento = ViewModelHelper.CriarSelectList(_bus.ObterResponsaveis(empreendimento)); vm.FontesAbastecimentoAguaTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvFontesAbastecimentoAguaTipo); vm.PontosLancamentoEfluenteTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvPontosLancamentoEfluenteTipo); vm.OutorgaAguaTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvOutorgaAguaTipo); vm.FontesGeracaoTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvFontesGeracaoTipo); vm.UnidadeTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvUnidadeTipo); vm.CombustivelTipo = ViewModelHelper.CriarSelectList(_listaBus.DscLicAtvCombustivelTipo); vm.VegetacaoAreaUtil = _listaBus.DscLicAtvVegetacaoAreaUtil; vm.Acondicionamento = _listaBus.DscLicAtvAcondicionamento; vm.Estocagem = _listaBus.DscLicAtvEstocagem; vm.Tratamento = _listaBus.DscLicAtvTratamento; vm.DestinoFinal = _listaBus.DscLicAtvDestinoFinal; if (vm.DscLicAtividade.Id > 0) { vm.DscLicAtividade.Dependencias = _caracterizacaoBus.ObterDependencias(vm.DscLicAtividade.Id, vm.DscLicAtividade.GetTipo, eCaracterizacaoDependenciaTipo.DescricaoLicenciamentoAtividade); vm.TextoMerge = _caracterizacaoValidar.DependenciasAlteradas( vm.DscLicAtividade.EmpreendimentoId, vm.DscLicAtividade.Tipo, eCaracterizacaoDependenciaTipo.DescricaoLicenciamentoAtividade, vm.DscLicAtividade.Dependencias); vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; } if (vm.ResponsaveisEmpreendimento != null && vm.ResponsaveisEmpreendimento.Count == 2) { vm.DscLicAtividade.RespAtividade = Int32.Parse(vm.ResponsaveisEmpreendimento.First(x => int.Parse(x.Value) > 0).Value); } vm.UrlAvancar = CaracterizacaoVM.GerarUrl(empreendimento, isCadastrarCaracterizacao, (eCaracterizacao)tipo); return(View("Criar", vm)); }
public List <CaracterizacaoLst> ObterCaracterizacoes(int empreendimento) { List <CaracterizacaoLst> caracterizacoesRetorno = new List <CaracterizacaoLst>(); List <CaracterizacaoLst> caracterizacoes = _caracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes); caracterizacoes = caracterizacoes.Where(x => x.Id == (int)eCaracterizacao.ExploracaoFlorestal || x.Id == (int)eCaracterizacao.QueimaControlada || x.Id == (int)eCaracterizacao.Silvicultura).ToList(); int caracterizacao = 0; CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); foreach (CaracterizacaoLst item in caracterizacoes) { caracterizacao = caracterizacaoBus.Existe(empreendimento, (eCaracterizacao)item.Id); if (caracterizacao <= 0) { continue; } List <Dependencia> dependencias = caracterizacaoBus.ObterDependencias(caracterizacao, (eCaracterizacao)item.Id, eCaracterizacaoDependenciaTipo.Caracterizacao); string retorno = caracterizacaoValidar.DependenciasAlteradas(empreendimento, item.Id, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias); if (!string.IsNullOrEmpty(retorno)) { continue; } caracterizacoesRetorno.Add(item); } return(caracterizacoesRetorno); }
internal bool AssociarDependencias(ProjetoDigital projetoDigital) { Dependencia caracterizacao = projetoDigital.Dependencias.FirstOrDefault(x => x.DependenciaTipo == (int)eCaracterizacaoDependenciaTipo.Caracterizacao) ?? new Dependencia(); List <Dependencia> dependencias = _busCaracterizacao.ObterDependencias( caracterizacao.DependenciaId, (eCaracterizacao)caracterizacao.DependenciaCaracterizacao, eCaracterizacaoDependenciaTipo.Caracterizacao); string retorno = _validarCaracterizacao.DependenciasAlteradas( projetoDigital.EmpreendimentoId.GetValueOrDefault(), caracterizacao.DependenciaCaracterizacao, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias); if (!string.IsNullOrEmpty(retorno)) { Validacao.Add(Mensagem.ProjetoDigital.AssociadaProjetoDigitalCaracterizacaoInvalida); } else { if ((eCaracterizacao)caracterizacao.DependenciaCaracterizacao == eCaracterizacao.UnidadeProducao) { ICaracterizacaoBus caracterizacaoBus = CaracterizacaoBusFactory.Criar(eCaracterizacao.UnidadeProducao); caracterizacaoBus.ValidarAssociar(caracterizacao.DependenciaId, projetoDigital.Id); } } return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { LaudoVistoriaFundiaria esp = especificidade as LaudoVistoriaFundiaria; CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); LaudoVistoriaFundiariaBus busLaudo = new LaudoVistoriaFundiariaBus(); List <Dependencia> dependencias = new List <Dependencia>(); //Genéricas RequerimentoAtividade(esp, false, true); if (esp.Destinatario <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.DestinatarioObrigatorio); } if (esp.RegularizacaoDominios.Count <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.RegularizacaoDominioObrigatorio); } int idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.RegularizacaoFundiaria); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.RegularizacaoFundiariaInvalida); } } else { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.RegularizacaoFundiariaObrigatorio); } #region Regularizacao fundiaria List <Int32> idsPossesRegularizacao = busLaudo.ObterPossesRegularizacao(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()).Select(x => Convert.ToInt32(x.Id)).ToList(); esp.RegularizacaoDominios.ForEach(x => { if (!idsPossesRegularizacao.Contains(x.DominioId)) { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.RegularizacaoDominioInexistente); } }); #endregion ValidacoesGenericasBus.DataMensagem(esp.DataVistoria, "Laudo_DataVistoria_DataTexto", "vistoria"); if (busLaudo.ExistePecaTecnica(esp.Atividades.First().Id, esp.ProtocoloReq.Id) <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFundiariaMsg.PecaTecnicaObrigatorio(esp.Atividades.First().NomeAtividade)); } return(Validacao.EhValido); }
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() })); } Barragem barragem = _bus.ObterPorEmpreendimento(id); string textoMerge = _caracterizacaoValidar.DependenciasAlteradas( barragem.EmpreendimentoId, (int)eCaracterizacao.Barragem, eCaracterizacaoDependenciaTipo.Caracterizacao, barragem.Dependencias); BarragemVM vm = new BarragemVM(); vm.Barragem = barragem; vm.Atividades = ViewModelHelper.CriarSelectList(_listaBus.AtividadesSolicitada.Where(x => x.Id == barragem.AtividadeId).ToList(), true, true, selecionado: barragem.AtividadeId.ToString()); vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; vm.TextoMerge = textoMerge; var emp = _empBus.Obter(id); var enderecoEmp = emp.Enderecos.Find(x => x.ZonaLocalizacaoId == 2 /*Rural*/); if (enderecoEmp != null) { vm.TemARL = _bus.TemARL(id); vm.TemARLDesconhecida = _bus.TemARLDesconhecida(id); } else { vm.TemARL = true; vm.TemARLDesconhecida = false; } return(View(vm)); }
public bool Salvar(IEspecificidade especificidade) { #region Variáveis OutrosInformacaoCorteDa _da = new OutrosInformacaoCorteDa(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = new List <Dependencia>(); OutrosInformacaoCorte esp = especificidade as OutrosInformacaoCorte; List <Caracterizacao> caracterizacoes = caracterizacaoBus.ObterCaracterizacoesEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()); int idCaracterizacao; #endregion RequerimentoAtividade(esp); Destinatario(esp.ProtocoloReq.Id, esp.Destinatario, "Outros_Destinatarios"); // Atividade Informação de corte if (esp.Atividades[0].Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.InformacaoDeCorte)) { Validacao.Add(Mensagem.OutrosInformacaoCorte.AtividadeInvalida(esp.Atividades[0].NomeAtividade)); } idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.InformacaoCorte); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.OutrosInformacaoCorte.CaracterizacaoValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.InformacaoCorte).Nome)); } } else { Validacao.Add(Mensagem.OutrosInformacaoCorte.CaracterizacaoCadastrada); } if (esp.InformacaoCorte == 0) { Validacao.Add(Mensagem.OutrosInformacaoCorte.InformacaoCorteObrigatorio); } else if (!_da.IsInformacaoCorteCadastrado(esp.InformacaoCorte)) { Validacao.Add(Mensagem.OutrosInformacaoCorte.InformacaoCorteInexistente); } else if (_da.IsInformacaoCorteAssociado(esp.InformacaoCorte, esp.Id)) { Validacao.Add(Mensagem.OutrosInformacaoCorte.InformacaoCorteAssociado); } return(Validacao.EhValido); }
public ActionResult Criar(PatioLavagem caracterizacao) { string textoMerge = _caracterizacaoValidar.DependenciasAlteradas( caracterizacao.EmpreendimentoId, (int)eCaracterizacao.PatioLavagem, eCaracterizacaoDependenciaTipo.Caracterizacao, caracterizacao.Dependencias); if (!string.IsNullOrEmpty(textoMerge)) { return(Json(new { @TextoMerge = textoMerge }, JsonRequestBehavior.AllowGet)); } _bus.Salvar(caracterizacao); return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @UrlRedirecionar = Url.Action("", "Caracterizacao", new { id = caracterizacao.EmpreendimentoId, Msg = Validacao.QueryParam() }) }, JsonRequestBehavior.AllowGet)); }
public bool Salvar(CARSolicitacao entidade) { if (!_protocoloDa.EmPosse(entidade.Protocolo.Id.GetValueOrDefault())) { Validacao.Add(Mensagem.CARSolicitacao.ProtocoloPosse); return(false); } if (entidade.SituacaoId <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoSituacaoObrigatoria); } if (entidade.Protocolo == null || entidade.Protocolo.Id.GetValueOrDefault(0) <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoProtocoloObrigatorio); } if (entidade.Requerimento.Id <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoRequerimentoObrigatorio); } _requerimentoValidar.Existe(entidade.Requerimento.Id); if (entidade.SituacaoId == (int)eCARSolicitacaoSituacao.EmCadastro) { if (entidade.Protocolo.Id.GetValueOrDefault() != entidade.ProtocoloSelecionado.Id.GetValueOrDefault()) { if (!_da.ExisteProtocoloAssociado(entidade.Protocolo.Id.GetValueOrDefault(), entidade.ProtocoloSelecionado.Id.GetValueOrDefault())) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoRequerimentoDesassociadoProtocolo(entidade.Requerimento.Numero.ToString())); } } String numeroProtocoloPai = _da.ObterNumeroProtocoloPai(entidade.Protocolo.Id.GetValueOrDefault(0)); if (!String.IsNullOrWhiteSpace(numeroProtocoloPai)) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoProtocoloApensadoEmOutroProcesso(numeroProtocoloPai)); } } #region Atividade if (entidade.Atividade.Id <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoAtividadeObrigatoria); } else { if (entidade.Atividade.Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.CadastroAmbientalRural)) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoAtividadeInvalida); } } #endregion Atividade #region Validar Dados do Titulo String tituloSituacao = _da.ObterSituacaoTituloCARExistente(entidade.Empreendimento.Id); if (!String.IsNullOrWhiteSpace(tituloSituacao)) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoPossuiTitulo(tituloSituacao)); return(false); } #endregion Validar Dados do Titulo #region Empreendimento if (!entidade.Empreendimento.Codigo.HasValue) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoEmpreendimentoCodigoObrigatorio); } if (entidade.Empreendimento.Id <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoEmpreendimentoObrigatorio); } else { String situacao = _da.EmpreendimentoPossuiSolicitacao(entidade.Id, entidade.Empreendimento.Id); if (!String.IsNullOrEmpty(situacao)) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoJaPossuiSolicitacao(situacao)); return(Validacao.EhValido); } situacao = _carSolicitacaoCredenciadoBus.EmpreendimentoPossuiSolicitacao(entidade.Empreendimento.Id); if (!String.IsNullOrEmpty(situacao)) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoJaPossuiSolicitacao(situacao)); return(Validacao.EhValido); } entidade.Empreendimento.CNPJ = _da.ObterCNPJEmpreendimento(entidade.Empreendimento.Id); if (!String.IsNullOrWhiteSpace(entidade.Empreendimento.CNPJ)) { situacao = _carSolicitacaoCredenciadoBus.EmpreendimentoPossuiSolicitacao(entidade.Empreendimento.CNPJ); if (!String.IsNullOrEmpty(situacao)) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoJaPossuiSolicitacao(situacao)); return(Validacao.EhValido); } } } #endregion Empreendimento #region Validar Dados da Caracterizacao if (_da.EmpreendimentoProjetoGeograficoDominialidadeNaoFinalizado(entidade.Empreendimento.Id)) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoProjetoGeograficoDominialidadeNaoFinalizado); } else { int idCaracterizacao = 0; List <Dependencia> dependencias; idCaracterizacao = _caracterizacaoBus.Existe(entidade.Empreendimento.Id, eCaracterizacao.Dominialidade); if (idCaracterizacao > 0) { dependencias = _caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (_caracterizacaoValidar.DependenciasAlteradas(entidade.Empreendimento.Id, (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoDominialidadeInvalida); } } else { Validacao.Add(Mensagem.CARSolicitacao.EmpreendimentoDominialidadeInexistente); } } #endregion Validar Dados da Caracterizacao if (entidade.Declarante.Id <= 0) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoDeclaranteObrigatorio); } return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { TermoCPFARLDa _da = new TermoCPFARLDa(); EspecificidadeDa _daEspecificidade = new EspecificidadeDa(); DominialidadeDa _daDominialidade = new DominialidadeDa(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = new List <Dependencia>(); TermoCPFARL esp = especificidade as TermoCPFARL; List <Caracterizacao> caracterizacoes = caracterizacaoBus.ObterCaracterizacoesEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()); List <PessoaLst> destinatarios = _daEspecificidade.ObterInteressados(esp.ProtocoloReq.Id); List <ReservaLegal> reservas; int idCaracterizacao; int tipo; RequerimentoAtividade(esp); if (esp.Atividades[0].Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.ReservaLegal)) { Validacao.Add(Mensagem.TermoCPFARLMsg.AtividadeInvalida(esp.Atividades[0].NomeAtividade)); } if (esp.Destinatarios.Count == 0) { Validacao.Add(Mensagem.Especificidade.DestinatarioObrigatorio("Termo_Destinatario")); } else { esp.Destinatarios.ForEach(x => { if (destinatarios.SingleOrDefault(y => y.Id == x.Id) == null) { Validacao.Add(Mensagem.Especificidade.DestinatarioDesassociado("Termo_Destinatario", x.Nome)); } else { tipo = _daEspecificidade.ObterDadosPessoa(x.Id).Tipo; if (tipo == 3 || tipo == 4) { Validacao.Add(Mensagem.TermoCPFARLMsg.DestinatarioNaoPermitido); } } }); } idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.Dominialidade); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.TermoCPFARLMsg.CaracterizacaoDeveEstarValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.Dominialidade).Nome)); } else { reservas = new List <ReservaLegal>(); Dominialidade dominialidade = _daDominialidade.ObterPorEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(0)); dominialidade.Dominios.ForEach(x => { x.ReservasLegais.ForEach(reserva => { reservas.Add(reserva); }); }); if (reservas == null || reservas.Count == 0) { Validacao.Add(Mensagem.TermoCPFARLMsg.ArlInexistente); } else { if (reservas.Exists(x => x.SituacaoVegetalId == (int)eReservaLegalSituacaoVegetal.NaoCaracterizada || x.SituacaoVegetalId == (int)eReservaLegalSituacaoVegetal.EmUso)) { Validacao.Add(Mensagem.TermoCPFARLMsg.ARLSituacaoVegetalInvalida); } if (reservas.Exists(x => x.SituacaoId != (int)eReservaLegalSituacao.Proposta)) { Validacao.Add(Mensagem.TermoCPFARLMsg.DominioSituacaoInvalida); } if (reservas.Exists(x => x.LocalizacaoId == (int)eReservaLegalLocalizacao.CompensacaoMatriculaCedente || x.LocalizacaoId == (int)eReservaLegalLocalizacao.CompensacaoMatriculaReceptora || x.LocalizacaoId == (int)eReservaLegalLocalizacao.CompensacaoEmpreendimentoCedente || x.LocalizacaoId == (int)eReservaLegalLocalizacao.CompensacaoEmpreendimentoReceptora)) { Validacao.Add(Mensagem.TermoCPFARLMsg.LocalizacaoInvalida); } } } } else { Validacao.Add(Mensagem.TermoCPFARLMsg.DominialidadeInexistente); } return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { CadastroAmbientalRuralTitulo esp = especificidade as CadastroAmbientalRuralTitulo; List <Dependencia> dependencias = new List <Dependencia>(); List <Caracterizacao> caracterizacoes = caracterizacaoBus.ObterCaracterizacoesEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()); int idCaracterizacao; RequerimentoAtividade(esp); if (Destinatario(especificidade.ProtocoloReq.Id, esp.Destinatario, "CadastroAmbientalRuralTitulo_Destinatario")) { if (!ValidarDestinatarioIsRepresentanteEmpreendimento(esp.ProtocoloReq.Id, esp.Destinatario)) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.DestinatarioNaoEstaAssociadoEmpreendimento); } } if (esp.Atividades[0].Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.CadastroAmbientalRural)) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.AtividadeInvalida); } else { String tituloNumero = _da.ObterNumeroTituloCARExistente(esp.Titulo.EmpreendimentoId.GetValueOrDefault(0)); if (!String.IsNullOrWhiteSpace(tituloNumero)) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.AtividadeJaAssociadaOutroTitulo(tituloNumero)); } } #region Caracterizacao idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.CadastroAmbientalRural); if (idCaracterizacao > 0) { if (especificidade.Titulo.EmpreendimentoId.GetValueOrDefault() > 0) { if (_da.EmpreendimentoCaracterizacaoCARNaoFinalizada(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault())) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.EmpreendimentoCaracterizacaoCARNaoFinalizada); return(Validacao.EhValido); } } dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.CadastroAmbientalRural, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.CadastroAmbientalRural, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.CaracterizacaoValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.CadastroAmbientalRural).Nome)); } } else { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.CaracterizacaoNaoCadastrada); } idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.Dominialidade); if (idCaracterizacao > 0) { if (_da.EmpreendimentoCaracterizacaoCARNaoFinalizada(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault())) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.EmpreendimentoCaracterizacaoCARNaoFinalizada); return(Validacao.EhValido); } dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.CaracterizacaoValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.Dominialidade).Nome)); } } else { Validacao.Add(Mensagem.CadastroAmbientalRuralTitulo.DominialidadeInexistente); } #endregion return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { #region Validacoes Genericas LaudoAuditoriaFomentoFlorestal esp = especificidade as LaudoAuditoriaFomentoFlorestal; RequerimentoAtividade(esp, false, true); Destinatario(especificidade.ProtocoloReq.Id, esp.Destinatario, "Laudo_Destinatario"); ValidacoesGenericasBus.DataMensagem(esp.DataVistoria, "Laudo_DataVistoria_DataTexto", "vistoria"); #endregion #region Objetivo if (String.IsNullOrWhiteSpace(esp.Objetivo)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.ObjetivoObrigatorio); } #endregion #region PlantioAPP if (!esp.PlantioAPP.HasValue) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioAPPObrigatorio); } else { if (esp.PlantioAPP.Value == 1) { if (!String.IsNullOrWhiteSpace(esp.PlantioAPPArea)) { Decimal aux = 0; if (!Decimal.TryParse(esp.PlantioAPPArea, out aux)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioAPPAreaInvalida); } if (aux <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioAPPAreaMaiorZero); } } else { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioAPPAreaObrigatoria); } } } #endregion #region PlantioMudasEspeciesFlorestNativas if (!esp.PlantioMudasEspeciesFlorestNativas.HasValue) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasObrigatorio); } else { if (esp.PlantioMudasEspeciesFlorestNativas.Value == 1) { if (!String.IsNullOrWhiteSpace(esp.PlantioMudasEspeciesFlorestNativasArea)) { Decimal aux = 0; if (!Decimal.TryParse(esp.PlantioMudasEspeciesFlorestNativasArea, out aux)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasAreaInvalida); } if (aux <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasAreaMaiorZero); } } else { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasAreaObrigatoria); } if (!String.IsNullOrWhiteSpace(esp.PlantioMudasEspeciesFlorestNativasQtd)) { Decimal aux = 0; if (!Decimal.TryParse(esp.PlantioMudasEspeciesFlorestNativasQtd, out aux)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasQtdInvalida); } if (aux <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasQtdMaiorZero); } } else { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PlantioMudasEspeciesFlorestNativasQtdObrigatoria); } } } #endregion #region PreparoSolo if (!esp.PreparoSolo.HasValue) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PreparoSoloObrigatorio); } else { if (esp.PreparoSolo.Value == 1) { if (!String.IsNullOrWhiteSpace(esp.PreparoSoloArea)) { Decimal aux = 0; if (!Decimal.TryParse(esp.PreparoSoloArea, out aux)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PreparoSoloAreaInvalida); } if (aux <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PreparoSoloAreaMaiorZero); } } else { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.PreparoSoloAreaObrigatoria); } } } #endregion #region Resultado if (esp.ResultadoTipo <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.ResultadoObrigatorio); } else { if (esp.ResultadoTipo == (int)eEspecificidadeResultado.NaoConforme) { if (String.IsNullOrWhiteSpace(esp.ResultadoQuais)) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.ResultadoQuaisObrigatorio); } } } #endregion #region Caracterizacao CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); int caracterizacao = caracterizacaoBus.Existe(esp.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.SilviculturaATV); if (caracterizacao <= 0) { Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.CaracterizacaoCadastrada); } else { CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = caracterizacaoBus.ObterDependencias(caracterizacao, eCaracterizacao.SilviculturaATV, eCaracterizacaoDependenciaTipo.Caracterizacao); string retorno = caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.SilviculturaATV, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias); if (!string.IsNullOrEmpty(retorno)) { List <CaracterizacaoLst> caracterizacoes = _caracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes); Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.CaracterizacaoInvalida(caracterizacoes.SingleOrDefault(x => x.Id == (int)eCaracterizacao.SilviculturaATV).Texto)); } } #endregion #region Atividade foreach (var atividade in esp.Atividades) { if (atividade.Id != 0 && atividade.Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.ImplantacaoAtividadeSilviculturaReferenteAoFomentoFlorestal)) { List <ProcessoAtividadeItem> atividades = _atividadeConfig.Obter <List <ProcessoAtividadeItem> >(ConfiguracaoProcesso.KeyAtividadesProcesso); Validacao.Add(Mensagem.LaudoAuditoriaFomentoFlorestal.AtividadeInvalida(atividades.SingleOrDefault(x => x.Id == atividade.Id).Texto)); } } #endregion return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { LaudoVistoriaFlorestal esp = especificidade as LaudoVistoriaFlorestal; RequerimentoAtividade(esp, apenasObrigatoriedade: true); Destinatario(especificidade.ProtocoloReq.Id, esp.Destinatario, "Laudo_Destinatario"); ValidacoesGenericasBus.DataMensagem(esp.DataVistoria, "Laudo_DataVistoria_DataTexto", "vistoria"); if (String.IsNullOrWhiteSpace(esp.Objetivo)) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.ObjetivoObrigatorio); } if (esp.Caracterizacao <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.CaracterizacaoObrigatoria); } else { CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); int caracterizacao = caracterizacaoBus.Existe(esp.Titulo.EmpreendimentoId.GetValueOrDefault(), (eCaracterizacao)esp.Caracterizacao); if (caracterizacao <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.CaracterizacaoCadastrada); } else { CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = caracterizacaoBus.ObterDependencias(caracterizacao, (eCaracterizacao)esp.Caracterizacao, eCaracterizacaoDependenciaTipo.Caracterizacao); string retorno = caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), esp.Caracterizacao, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias); if (!string.IsNullOrEmpty(retorno)) { List <CaracterizacaoLst> caracterizacoes = _caracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes); Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.CaracterizacaoInvalida(caracterizacoes.SingleOrDefault(x => x.Id == esp.Caracterizacao).Texto)); } } } if (String.IsNullOrWhiteSpace(esp.Consideracao)) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.ConsideracoesObrigatorio); } if (String.IsNullOrWhiteSpace(esp.ParecerDescricao)) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.ParecerTecnicoDescricaoObrigatorio); } if (esp.Conclusao <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFlorestalMsg.ConclusaoObrigatoria); } return(Validacao.EhValido); }
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)); }
public bool Salvar(IEspecificidade especificidade) { TermoCPFARLCR esp = especificidade as TermoCPFARLCR; TermoCPFARLCRDa termoCPFARLCRDa = new TermoCPFARLCRDa(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); DominialidadeDa dominialidadeDa = new DominialidadeDa(); EspecificidadeDa especificidadeDa = new EspecificidadeDa(); GerenciadorConfiguracao <ConfiguracaoCaracterizacao> caracterizacaoConfig = new GerenciadorConfiguracao <ConfiguracaoCaracterizacao>(new ConfiguracaoCaracterizacao()); string caracterizacaoTipo = caracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes).Single(x => x.Id == (int)eCaracterizacao.Dominialidade).Texto; List <PessoaLst> responsaveis = new List <PessoaLst>(); RequerimentoAtividade(esp, jaAssociado: false); #region Básicas if (esp.CedenteDominioID <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.CedenteDominioObrigatorio); } if (esp.CedenteARLCompensacao == null || esp.CedenteARLCompensacao.Count <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.CedenteARLCompensacaoObrigatoria); } else { if (esp.CedenteARLCompensacao.Any(x => esp.CedenteARLCompensacao.Count(y => y.Id == x.Id && y.Id > 0) > 1)) { Validacao.Add(Mensagem.TermoCPFARLCR.CedenteARLCompensacaoDuplicada); } } if (esp.CedenteResponsaveisEmpreendimento == null || esp.CedenteResponsaveisEmpreendimento.Count <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelEmpreendimentoObrigatorio("Cedente", "cedente")); } else { if (esp.CedenteResponsaveisEmpreendimento.Any(x => esp.CedenteResponsaveisEmpreendimento.Count(y => y.Id == x.Id && y.Id > 0) > 1)) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelEmpreendimentoDuplicado("Cedente", "cedente")); } } if (esp.ReceptorEmpreendimentoID <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ReceptorEmpreendimentoObrigatorio); } if (esp.ReceptorDominioID <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ReceptorDominioObrigatorio); } if (esp.ReceptorResponsaveisEmpreendimento == null || esp.ReceptorResponsaveisEmpreendimento.Count <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelEmpreendimentoObrigatorio("Receptor", "receptor")); } else { if (esp.ReceptorResponsaveisEmpreendimento.Any(x => esp.ReceptorResponsaveisEmpreendimento.Count(y => y.Id == x.Id && y.Id > 0) > 1)) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelEmpreendimentoDuplicado("Receptor", "receptor")); } } if (string.IsNullOrWhiteSpace(esp.NumeroAverbacao)) { Validacao.Add(Mensagem.TermoCPFARLCR.NumeroAverbacaoObrigatorio); } ValidacoesGenericasBus.DataMensagem(esp.DataEmissao, "DataEmissao", "emissão"); #endregion Básicas if (esp.Atividades.First().Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.ReservaLegal)) { Validacao.Add(Mensagem.TermoCPFARLCR.AtividadeInvalida(esp.Atividades[0].NomeAtividade)); } if (!Validacao.EhValido) { return(false); } #region Cedente Dominialidade dominialidadeCedente = dominialidadeDa.ObterPorEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(0)); dominialidadeCedente.Dependencias = caracterizacaoBus.ObterDependencias(dominialidadeCedente.Id, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (dominialidadeCedente == null || dominialidadeCedente.Id <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.DominialidadeInexistente("cedente", caracterizacaoTipo)); } else { string retorno = caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dominialidadeCedente.Dependencias); if (!string.IsNullOrEmpty(retorno)) { Validacao.Add(Mensagem.TermoCPFARLCR.CaracterizacaoDeveEstarValida("cedente", caracterizacaoTipo)); } else { List <ReservaLegal> reservas = dominialidadeCedente.Dominios.SelectMany(x => x.ReservasLegais).Where(x => esp.CedenteARLCompensacao.Select(y => y.Id).Any(y => y == x.Id)).ToList(); if (reservas.Any(x => !x.Compensada)) { Validacao.Add(Mensagem.TermoCPFARLCR.ARLCedenteTipoInvalida); } if (reservas.Any(x => x.SituacaoId != (int)eReservaLegalSituacao.Proposta)) { Validacao.Add(Mensagem.TermoCPFARLCR.ARLCedenteSituacaoInvalida); } if (reservas.Any(x => x.SituacaoVegetalId != (int)eReservaLegalSituacaoVegetal.Preservada && x.SituacaoVegetalId != (int)eReservaLegalSituacaoVegetal.EmRecuperacao)) { Validacao.Add(Mensagem.TermoCPFARLCR.ARLCedenteSituacaoVegetalInvalida); } if (!dominialidadeCedente.Dominios.Any(x => x.Id.GetValueOrDefault() == esp.CedenteDominioID)) { Validacao.Add(Mensagem.TermoCPFARLCR.DominioDessassociado("cedente")); } esp.CedenteARLCompensacao.ForEach(reserva => { ReservaLegal aux = reservas.SingleOrDefault(x => x.Id == reserva.Id); if (aux == null || aux.Id <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ReservaLegalDessassociadoCedente(reserva.Identificacao)); } else { if (aux.MatriculaId != esp.ReceptorDominioID) { Validacao.Add(Mensagem.TermoCPFARLCR.ReservaLegalDessassociadoReceptorDominio(reserva.Identificacao)); } } }); } } responsaveis = especificidadeDa.ObterEmpreendimentoResponsaveis(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(0)); esp.CedenteResponsaveisEmpreendimento.ForEach(resp => { PessoaLst aux = responsaveis.SingleOrDefault(x => x.Id == resp.Id); if (aux == null || aux.Id <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelDessassociado("cedente", resp.NomeRazao)); } }); #endregion Cedente #region Receptor Dominialidade dominialidadeReceptor = dominialidadeDa.ObterPorEmpreendimento(esp.ReceptorEmpreendimentoID); dominialidadeReceptor.Dependencias = caracterizacaoBus.ObterDependencias(dominialidadeReceptor.Id, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao); if (dominialidadeReceptor == null || dominialidadeReceptor.Id <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.DominialidadeInexistente("receptor", caracterizacaoTipo)); } else { string retorno = caracterizacaoValidar.DependenciasAlteradas(esp.ReceptorEmpreendimentoID, (int)eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao, dominialidadeReceptor.Dependencias); if (!string.IsNullOrEmpty(retorno)) { Validacao.Add(Mensagem.TermoCPFARLCR.CaracterizacaoDeveEstarValida("receptor", caracterizacaoTipo)); } else { if (!dominialidadeReceptor.Dominios.Any(x => x.Id.GetValueOrDefault() == esp.ReceptorDominioID)) { Validacao.Add(Mensagem.TermoCPFARLCR.DominioDessassociado("receptor")); } List <ReservaLegal> reservas = dominialidadeReceptor.Dominios.SelectMany(x => x.ReservasLegais).Where(x => esp.CedenteARLCompensacao.Select(y => y.Id).Any(y => y == x.IdentificacaoARLCedente)).ToList(); esp.CedenteARLCompensacao.ForEach(reserva => { if (!reservas.Any(x => x.IdentificacaoARLCedente == reserva.Id)) { Validacao.Add(Mensagem.TermoCPFARLCR.ReservaLegalDessassociadoReceptor(reserva.Identificacao)); } }); } } responsaveis = especificidadeDa.ObterEmpreendimentoResponsaveis(esp.ReceptorEmpreendimentoID); esp.ReceptorResponsaveisEmpreendimento.ForEach(resp => { PessoaLst aux = responsaveis.SingleOrDefault(x => x.Id == resp.Id); if (aux == null || aux.Id <= 0) { Validacao.Add(Mensagem.TermoCPFARLCR.ResponsavelDessassociado("receptor", resp.NomeRazao)); } }); #endregion Receptor List <TituloModeloLst> lista = termoCPFARLCRDa.ObterTitulosCedenteReceptor(esp.CedenteDominioID, esp.ReceptorDominioID); lista.ForEach(titulo => { if (titulo.Id != esp.Titulo.Id) { if (string.IsNullOrEmpty(titulo.Texto)) { Validacao.Add(Mensagem.TermoCPFARLCR.DominioPossuiTituloCadastrado(titulo.Situacao)); } else { Validacao.Add(Mensagem.TermoCPFARLCR.DominioPossuiTituloConcluido(titulo.Sigla, titulo.Texto, titulo.Situacao)); } } }); return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { LaudoVistoriaFomentoFlorestal esp = especificidade as LaudoVistoriaFomentoFlorestal; RequerimentoAtividade(esp, false, true); Destinatario(especificidade.ProtocoloReq.Id, esp.Destinatario, "Laudo_Destinatario"); ValidacoesGenericasBus.DataMensagem(esp.DataVistoria, "Laudo_DataVistoria_DataTexto", "vistoria"); if (String.IsNullOrWhiteSpace(esp.Objetivo)) { Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.ObjetivoObrigatorio); } if (String.IsNullOrWhiteSpace(esp.Consideracoes)) { Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.ConsideracoesObrigatorio); } if (String.IsNullOrWhiteSpace(esp.DescricaoParecer)) { Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.ParecerTecnicoObrigatorio); } if (esp.ConclusaoTipo <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.ConclusaoObrigatoria); } #region Caracterizacao CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); int caracterizacao = caracterizacaoBus.Existe(esp.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.SilviculturaATV); if (caracterizacao <= 0) { Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.CaracterizacaoCadastrada); } else { CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = caracterizacaoBus.ObterDependencias(caracterizacao, eCaracterizacao.SilviculturaATV, eCaracterizacaoDependenciaTipo.Caracterizacao); string retorno = caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.SilviculturaATV, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias); if (!string.IsNullOrEmpty(retorno)) { List <CaracterizacaoLst> caracterizacoes = _caracterizacaoConfig.Obter <List <CaracterizacaoLst> >(ConfiguracaoCaracterizacao.KeyCaracterizacoes); Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.CaracterizacaoInvalida(caracterizacoes.SingleOrDefault(x => x.Id == (int)eCaracterizacao.SilviculturaATV).Texto)); } } #endregion #region Atividade foreach (var atividade in esp.Atividades) { if (atividade.Id != 0 && atividade.Id != ConfiguracaoAtividade.ObterId((int)eAtividadeCodigo.ImplantacaoAtividadeSilviculturaReferenteAoFomentoFlorestal)) { List <ProcessoAtividadeItem> atividades = _atividadeConfig.Obter <List <ProcessoAtividadeItem> >(ConfiguracaoProcesso.KeyAtividadesProcesso); Validacao.Add(Mensagem.LaudoVistoriaFomentoFlorestal.AtividadeInvalida(atividades.SingleOrDefault(x => x.Id == atividade.Id).Texto)); } } #endregion return(Validacao.EhValido); }
public bool Salvar(IEspecificidade especificidade) { #region Variáveis OutrosLegitimacaoTerraDevolutaDa _da = new OutrosLegitimacaoTerraDevolutaDa(); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); CaracterizacaoValidar caracterizacaoValidar = new CaracterizacaoValidar(); List <Dependencia> dependencias = new List <Dependencia>(); OutrosLegitimacaoTerraDevoluta esp = especificidade as OutrosLegitimacaoTerraDevoluta; List <Caracterizacao> caracterizacoes = caracterizacaoBus.ObterCaracterizacoesEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()); int idCaracterizacao; string titulo = string.Empty; #endregion #region Requerimento //O requerimento <nº> não está mais associado ao processo <nº>. //A atividade <nome> não está mais associada ao processo. //A atividade <nome> deve estar na situação ‘em andamento’. //Este modelo de título não foi solicitado para a atividade <nome>’. RequerimentoAtividade(esp, apenasObrigatoriedade: true); #endregion #region Atividade //O modelo de título <nome do modelo> não pode ser utilizado para atividade <nome da atividade selecionada na especificidade do título>. if (!ConfiguracaoAtividade.ObterId(new[] { (int)eAtividadeCodigo.RegularizacaoFundiariaRural, (int)eAtividadeCodigo.RegularizacaoFundiariaUrbana, (int)eAtividadeCodigo.RegularizacaoFundiariaRuralOriundaDeProcessoDiscriminatorio, (int)eAtividadeCodigo.RegularizacaoFundiariaUrbanaOriundaDeProcessoDiscriminatorio }).Any(x => x == esp.Atividades[0].Id)) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.AtividadeInvalida(esp.Atividades[0].NomeAtividade)); } #endregion #region Destinatários if (esp.Destinatarios.Count == 0) { Validacao.Add(Mensagem.Especificidade.DestinatarioObrigatorio("Outros_Destinatarios")); } else { esp.Destinatarios.ForEach(x => { Destinatario(esp.ProtocoloReq.Id, x.Id, "Outros_Destinatarios"); }); } #endregion #region Caracterização //A caracterização de <nome da caracterização> deve estar cadastrada. //Para cadastrar este modelo de título é necessário ter os dados da caracterização <nome da caracterização dependente> válidos. idCaracterizacao = caracterizacaoBus.Existe(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), eCaracterizacao.RegularizacaoFundiaria); if (idCaracterizacao > 0) { dependencias = caracterizacaoBus.ObterDependencias(idCaracterizacao, eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao); if (caracterizacaoValidar.DependenciasAlteradas(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(), (int)eCaracterizacao.RegularizacaoFundiaria, eCaracterizacaoDependenciaTipo.Caracterizacao, dependencias) != String.Empty) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.CaracterizacaoValida(caracterizacoes.Single(x => x.Tipo == eCaracterizacao.RegularizacaoFundiaria).Nome)); } } else { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.CaracterizacaoCadastrada); } #endregion #region Posse if (esp.Dominio == 0) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.DominioObrigatorio); } else { if (!_da.IsDominioCadastrado(esp.Dominio)) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.DominioInexistente); } TituloEsp tituloAux = _da.IsDominioAssociado(esp.Dominio, esp.Titulo.Id); switch ((eTituloSituacao)tituloAux.SituacaoId) { case eTituloSituacao.Cadastrado: case eTituloSituacao.Emitido: case eTituloSituacao.Assinado: Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.PosseAssociadaSituacao(tituloAux.SituacaoTexto)); break; case eTituloSituacao.Concluido: case eTituloSituacao.Prorrogado: Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.PosseAssociadaNumero(tituloAux.Numero.Texto)); break; } } #endregion if (string.IsNullOrWhiteSpace(esp.ValorTerreno)) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.ValorTerrenoObrigatorio); } if (!esp.IsInalienabilidade.HasValue) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.IsInalienabilidadeObrigatorio); } if (esp.MunicipioGlebaId <= 0) { Validacao.Add(Mensagem.OutrosLegitimacaoTerraDevolutaMsg.MunicipioGlebaObrigatorio); } return(Validacao.EhValido); }