internal bool Enviar(Requerimento requerimento, ProjetoDigital projeto) { if (!EnviarBasicas(projeto)) { return(false); } if (requerimento.Id <= 0) { Validacao.Add(Mensagem.ProjetoDigital.RequerimentoObrigatorio); } else if (requerimento.SituacaoId != (int)eRequerimentoSituacao.Finalizado) { Validacao.Add(Mensagem.ProjetoDigital.FinalizarSituacaoInvalida); } if (requerimento.Interessado.Id <= 0) { Validacao.Add(Mensagem.ProjetoDigital.InteressadoObrigatorio); } if (!Validacao.EhValido) { return(Validacao.EhValido); } _requerimentoCredenciadoValidar.Finalizar(requerimento); FinalizarCaracterizacoes(projeto); return(Validacao.EhValido); }
internal void Editar(ProjetoDigital projeto, BancoDeDados banco = null, bool gerarHistorico = false) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"update {0}tab_projeto_digital r set r.etapa = :etapa, r.situacao = :situacao, r.data_envio = null, r.empreendimento = :empreendimento, r.tid = :tid where r.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", projeto.Id, DbType.Int32); comando.AdicionarParametroEntrada("etapa", projeto.Etapa, DbType.Int32); comando.AdicionarParametroEntrada("situacao", projeto.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("empreendimento", (projeto.EmpreendimentoId.GetValueOrDefault() > 0 ? projeto.EmpreendimentoId : null), DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); if (gerarHistorico) { Historico.Gerar(projeto.Id, eHistoricoArtefato.projetodigital, eHistoricoAcao.atualizar, bancoDeDados); } bancoDeDados.Commit(); } }
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 void Recusar(ProjetoDigital projeto, BancoDeDados banco = null) { try { if (!_validar.Recusar(projeto)) { return; } using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); if (_busProjetoDigitalCredenciado.Recusar(projeto, bancoDeDados)) { _busProjetoDigitalCredenciado.ExcluirTemporario(projeto.Id); bancoDeDados.Commit(); } Validacao.Add(Mensagem.ProjetoDigital.RecusadoSucesso); } } catch (Exception exc) { Validacao.AddErro(exc); } }
internal void CriarTemporario(ProjetoDigital projeto, BancoDeDados banco) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"insert into tmp_projeto_digital ( id, tid, etapa_importacao, situacao_id, requerimento_id, requerimento_tid, empreendimento_id, empreendimento_tid, data_criacao, data_envio, credenciado_id, credenciado_tid, data_execucao) values (:id, :tid, :etapa_importacao, :situacao_id, :requerimento_id, :requerimento_tid, :empreendimento_id, :empreendimento_tid, :data_criacao, :data_envio, :credenciado_id, :credenciado_tid, sysdate)" ); comando.AdicionarParametroEntrada("id", projeto.Id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, projeto.Tid); comando.AdicionarParametroEntrada("etapa_importacao", (int)eProjetoDigitalEtapa.Requerimento, DbType.Int32); comando.AdicionarParametroEntrada("situacao_id", projeto.Situacao, DbType.Int32); comando.AdicionarParametroEntrada("requerimento_id", projeto.RequerimentoId, DbType.Int32); comando.AdicionarParametroEntrada("requerimento_tid", DbType.String, 36, projeto.RequerimentoTid); comando.AdicionarParametroEntrada("empreendimento_id", projeto.EmpreendimentoId, DbType.Int32); comando.AdicionarParametroEntrada("empreendimento_tid", DbType.String, 36, projeto.EmpreendimentoTid); comando.AdicionarParametroEntrada("credenciado_id", projeto.CredenciadoId, DbType.Int32); comando.AdicionarParametroEntrada("credenciado_tid", DbType.String, 36, projeto.CredenciadoTid); comando.AdicionarParametroEntrada("data_criacao", projeto.DataCriacao.Data, DbType.DateTime); comando.AdicionarParametroEntrada("data_envio", projeto.DataEnvio.Data, DbType.DateTime); bancoDeDados.ExecutarNonQuery(comando); bancoDeDados.Commit(); } }
public void Enviar(ProjetoDigital projeto) { try { projeto.Etapa = (int)eProjetoDigitalEtapa.ImprimirDocumentos; RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus(); Requerimento requerimento = requerimentoCredenciadoBus.Obter(projeto.RequerimentoId); requerimento.ProjetoDigitalId = projeto.Id; if (_validar.Enviar(requerimento, projeto)) { projeto.Situacao = (int)eProjetoDigitalSituacao.AguardandoImportacao; GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); _da.Enviar(projeto, bancoDeDados); SalvarTemporario(projeto, bancoDeDados); Validacao.Add(Mensagem.ProjetoDigital.Enviar); bancoDeDados.Commit(); } } } catch (Exception exc) { Validacao.AddErro(exc); } }
public ProjetoDigital Obter(int id, BancoDeDados banco = null, string tid = null) { ProjetoDigital projeto = new ProjetoDigital(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, EsquemaBanco)) { #region Projeto Digital if (String.IsNullOrWhiteSpace(tid)) { projeto = Obter(idProjeto: id, banco: bancoDeDados); } else { Comando comando = bancoDeDados.CriarComando(@"select count(r.id) existe from {0}tab_projeto_digital r where r.id = :id and r.tid = :tid", EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, tid); if (Convert.ToBoolean(bancoDeDados.ExecutarScalar(comando))) { projeto = Obter(idProjeto: id, banco: bancoDeDados); } else { projeto = ObterHistorico(id, tid, bancoDeDados); } } #endregion } return(projeto); }
public ProjetoDigital AlterarEtapa(int projetoDigitalId, eProjetoDigitalEtapa etapa, BancoDeDados banco = null) { try { ProjetoDigital projetoDigital = new ProjetoDigital(); GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); projetoDigital = Obter(idProjeto: projetoDigitalId, banco: bancoDeDados); if (projetoDigital != null && projetoDigital.Id > 0 && projetoDigital.Etapa != (int)etapa) { projetoDigital.Etapa = (int)etapa; Salvar(projetoDigital, bancoDeDados); bancoDeDados.Commit(); } } return(projetoDigital); } catch (Exception exc) { Validacao.AddErro(exc); } return(null); }
public ActionResult Editar(int id, int projetoDigitalId) { Requerimento requerimento = _busRequerimento.Obter(id); requerimento.ProjetoDigitalId = projetoDigitalId; ProjetoDigital projetoDigital = _busProjetoDigital.Obter(requerimento.ProjetoDigitalId, requerimento.Id); _busRequerimento.ValidarRoteiroRemovido(requerimento); if (Validacao.Erros.Count <= 0) { _busRequerimento.ValidarSituacaoVersaoRoteiro(requerimento.Roteiros); } _busRequerimento.ValidarEditar(requerimento); if (!Validacao.EhValido) { return(RedirectToAction("Index", "ProjetoDigital", Validacao.QueryParamSerializer())); } RequerimentoVM vm = new RequerimentoVM(requerimento); vm.CarregarListas(ListaCredenciadoBus.ResponsavelFuncoes, ListaCredenciadoBus.AgendamentoVistoria); return(View(vm)); }
internal void Criar(ProjetoDigital projeto, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"insert into {0}tab_projeto_digital a (id, tid, etapa, situacao, requerimento, data_criacao, credenciado) values ({0}seq_projeto_digital.nextval, :tid, :etapa, :situacao, :requerimento, sysdate, :credenciado) returning a.id into :id" , EsquemaBanco); comando.AdicionarParametroEntrada("etapa", (int)eProjetoDigitalEtapa.Requerimento, DbType.Int32); comando.AdicionarParametroEntrada("situacao", (int)eProjetoDigitalSituacao.EmElaboracao, DbType.Int32); comando.AdicionarParametroEntrada("requerimento", projeto.RequerimentoId, DbType.Int32); comando.AdicionarParametroEntrada("credenciado", projeto.CredenciadoId, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); projeto.Id = Convert.ToInt32(comando.ObterValorParametro("id")); Historico.Gerar(projeto.Id, eHistoricoArtefato.projetodigital, eHistoricoAcao.criar, bancoDeDados); bancoDeDados.Commit(); } }
public ActionResult DocumentosGerados(int id) { ProjetoDigital projetoDigital = _bus.Obter(id); RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus(); Requerimento requerimento = requerimentoCredenciadoBus.Obter(projetoDigital.RequerimentoId); 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; } } DocumentosGeradosVM vm = new DocumentosGeradosVM(); vm.MostrarTitulo = true; vm.CarregarDocumentos(requerimento, projetoDigital); return(PartialView("DocumentosGerados", vm)); }
public void AssociarDependencias(ProjetoDigital projetoDigital, BancoDeDados banco = null) { try { #region Configurar List <Caracterizacao> lista = new List <Caracterizacao>(); lista.Add(new Caracterizacao() { Tipo = (eCaracterizacao)projetoDigital.Dependencias.First().DependenciaCaracterizacao }); CaracterizacaoBus caracterizacaoBus = new CaracterizacaoBus(); lista = caracterizacaoBus.ObterCaracterizacoesAtuais(projetoDigital.EmpreendimentoId.GetValueOrDefault(), lista); Caracterizacao aux = lista.First(); projetoDigital.Dependencias.Clear(); projetoDigital.Dependencias.Add(new Dependencia() { DependenciaTipo = (int)eCaracterizacaoDependenciaTipo.Caracterizacao, DependenciaCaracterizacao = (int)aux.Tipo, DependenciaId = aux.Id, DependenciaTid = aux.Tid }); if (aux.ProjetoId > 0) { projetoDigital.Dependencias.Add(new Dependencia() { DependenciaTipo = (int)eCaracterizacaoDependenciaTipo.ProjetoGeografico, DependenciaCaracterizacao = (int)aux.Tipo, DependenciaId = aux.ProjetoId, DependenciaTid = aux.ProjetoTid }); } #endregion if (_validar.AssociarDependencias(projetoDigital)) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); _da.AssociarDependencias(projetoDigital, bancoDeDados); AlterarEtapa(projetoDigital.Id, eProjetoDigitalEtapa.Caracterizacao, bancoDeDados); Validacao.Add(Mensagem.ProjetoDigital.AssociadaProjetoDigital); bancoDeDados.Commit(); } } } catch (Exception exc) { Validacao.AddErro(exc); } }
public ProjetoDigital Salvar(ProjetoDigital projeto, BancoDeDados banco, bool gerarHistorico = false) { try { projeto.Situacao = (int)eProjetoDigitalSituacao.EmElaboracao; projeto.CredenciadoId = User.FuncionarioId; if (_validar.Salvar(projeto)) { projeto.CredenciadoId = User.FuncionarioId; GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); _da.Salvar(projeto, bancoDeDados, gerarHistorico); bancoDeDados.Commit(); } } } catch (Exception exc) { Validacao.AddErro(exc); } return(projeto); }
public ActionResult VisualizarCredenciado(int projetoDigitalId, int protocoloId = 0) { ProjetoDigitalCredenciadoBus _busProjetoDigitalCredenciado = new ProjetoDigitalCredenciadoBus(); ProjetoDigital projeto = _busProjetoDigitalCredenciado.Obter(projetoDigitalId); BarragemDispensaLicenca caracterizacao = _busCredenciado.ObterPorEmpreendimento(projeto.EmpreendimentoId.GetValueOrDefault(), projetoDigitalId); AtividadeBus atividadeBus = new AtividadeBus(); BarragemDispensaLicencaVM vm = new BarragemDispensaLicencaVM( caracterizacao, atividadeBus.ObterAtividadePorCodigo((int)eAtividadeCodigo.BarragemDeAte1HaLâminaDaguaAte10000M3DeVolumeArmazenado), _listaBus.BarragemDispensaLicencaFinalidadeAtividade, _listaBus.BarragemDispensaLicencaFormacaoRT, _listaBus.BarragemDispensaLicencaBarragemTipo, _listaBus.BarragemDispensaLicencaFase, _listaBus.BarragemDispensaLicencaMongeTipo, _listaBus.BarragemDispensaLicencaVertedouroTipo ); vm.ProtocoloId = protocoloId; vm.ProjetoDigitalId = projeto.Id; vm.RequerimentoId = projeto.RequerimentoId; vm.UrlRetorno = Url.Action("Analisar", "../AnaliseItens", new { protocoloId = protocoloId, requerimentoId = projeto.RequerimentoId }); return(View("Visualizar", vm)); }
public void Excluir(int projetoId) { try { ProjetoDigital projeto = Obter(projetoId); if (_validar.Excluir(projeto)) { GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); _da.Excluir(projetoId, bancoDeDados); RequerimentoCredenciadoBus requerimentoCredenciadoBus = new RequerimentoCredenciadoBus(); requerimentoCredenciadoBus.Excluir(projeto.RequerimentoId, bancoDeDados); bancoDeDados.Commit(); Validacao.Add(Mensagem.ProjetoDigital.Excluir); } } } catch (Exception exc) { Validacao.AddErro(exc); } }
internal void DesassociarDependencias(ProjetoDigital projeto, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando; if (projeto.EmpreendimentoId > 0) { comando = bancoDeDados.CriarComando(@"delete from {0}tab_proj_digital_dependencias d where exists (select 1 from {0}tab_projeto_digital p where p.id = d.projeto_digital_id and p.situacao in (1, 3)) and d.projeto_digital_id in (select p.id from {0}tab_projeto_digital p where p.empreendimento = :empreendimento) " , EsquemaBanco); comando.AdicionarParametroEntrada("empreendimento", projeto.EmpreendimentoId, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@"delete from {0}tab_proj_digital_dependencias d where exists (select 1 from {0}tab_projeto_digital p where p.id = d.projeto_digital_id and p.situacao in (1, 3))", EsquemaBanco); } comando.DbCommand.CommandText += comando.FiltroAnd("d.projeto_digital_id", "projeto_digital_id", projeto.Id); if (projeto.Dependencias != null && projeto.Dependencias.Count > 0) { comando.DbCommand.CommandText += comando.FiltroAnd("d.dependencia_caracterizacao", "dependencia_caracterizacao", projeto.Dependencias.First().DependenciaCaracterizacao); } bancoDeDados.ExecutarNonQuery(comando); bancoDeDados.Commit(); } }
public bool Importar(Requerimento requerimento, List <Pessoa> pessoasRelacionadas) { ProjetoDigitalCredenciadoBus projetoDigitalCredenciadoBus = new ProjetoDigitalCredenciadoBus(); ProjetoDigital projeto = projetoDigitalCredenciadoBus.Obter(idRequerimento: requerimento.Id); if (projeto.Situacao != (int)eProjetoDigitalSituacao.AguardandoImportacao) { Validacao.Add(Mensagem.ProjetoDigital.SituacaoImportar); return(false); } if (!_da.ValidarVersaoAtual(requerimento.Id, requerimento.Tid)) { Validacao.Add(Mensagem.ProjetoDigital.DadosDesatualizadoImportacao); return(false); } if (requerimento.Interessado.Id <= 0) { Validacao.Add(Mensagem.ProjetoDigital.InteressadoObrigatorio); return(false); } if (requerimento.Pessoas == null || requerimento.Pessoas.Count <= 0) { Validacao.Add(Mensagem.ProjetoDigital.InteressadoObrigatorio); } foreach (var item in requerimento.Pessoas.Where(x => x.IsFisica)) { if (item.SelecaoTipo == (int)eExecutorTipo.Credenciado && pessoasRelacionadas.Exists(x => x.Fisica.CPF == item.Fisica.CPF)) { var pessoaRel = _busPessoa.Obter(item.Fisica.CPF); if (pessoaRel != null && pessoaRel.Id > 0 && pessoaRel.Fisica.ConjugeCPF != item.Fisica.ConjugeCPF && pessoasRelacionadas.Count(x => x.Fisica.ConjugeCPF == item.Fisica.CPF) > 1) { Validacao.Add(Mensagem.ProjetoDigital.PessoaCredenciadoConflito); break; } } } if (requerimento.SetorId <= 0) { Validacao.Add(Mensagem.Requerimento.SetorObrigatorio); } requerimento.Atividades.ForEach(atividade => { if (atividade.SituacaoId == (int)eAtividadeSituacao.Desativada) { Validacao.Add(Mensagem.ProjetoDigital.AtividadeDesativada(atividade.NomeAtividade)); } }); return(Validacao.EhValido); }
internal void AlterarSituacao(int requerimentoId, eProjetoDigitalSituacao eProjetoDigitalSituacao, BancoDeDados bancoCredenciado = null) { ProjetoDigital projetoDigital = _busProjetoDigitalCredenciado.Obter(idRequerimento: requerimentoId, bancoCredenciado: bancoCredenciado); projetoDigital.Situacao = (int)eProjetoDigitalSituacao; _busProjetoDigitalCredenciado.AlterarSituacao(projetoDigital, banco: bancoCredenciado); }
public ActionResult ImprimirDocumentos(ProjetoDigital projeto) { _bus.ImprimirDocumentos(projeto); string urlRedirecionar = Url.Action("Operar", "ProjetoDigital", Validacao.QueryParamSerializer(new { acaoId = projeto.Id })); return(Json(new { EhValido = Validacao.EhValido, Msg = Validacao.Erros, UrlRedirecionar = urlRedirecionar }, JsonRequestBehavior.AllowGet)); }
public void Finalizar(Requerimento requerimento) { try { #region Projeto Digital ProjetoDigitalCredenciadoBus projetoDigitalCredenciadoBus = new ProjetoDigitalCredenciadoBus(); ProjetoDigital projetoDigital = projetoDigitalCredenciadoBus.Obter(idRequerimento: requerimento.Id); requerimento.ProjetoDigitalId = projetoDigital.Id; #endregion requerimento = Obter(requerimento.Id); Mensagem msgSucesso; if (IsRequerimentoRegularizacaoFundiaria(requerimento.Atividades.First())) { msgSucesso = Mensagem.ProjetoDigital.AtividadeSemCaracterizacao(requerimento.Atividades.First().NomeAtividade); projetoDigital.Etapa = (int)eProjetoDigitalEtapa.Envio; } else { msgSucesso = Mensagem.Requerimento.FinalizarCredenciado(requerimento.Numero); projetoDigital.Etapa = (int)eProjetoDigitalEtapa.Caracterizacao; } requerimento.SituacaoId = (int)eRequerimentoSituacao.Finalizado; if (_validar.Finalizar(requerimento)) { GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); _da.Editar(requerimento); projetoDigitalCredenciadoBus.Salvar(projetoDigital, bancoDeDados, true); if (Validacao.EhValido) { Validacao.Add(msgSucesso); bancoDeDados.Commit(); } else { bancoDeDados.Rollback(); } } } } catch (Exception exc) { Validacao.AddErro(exc); } }
public bool AssociarEmpreendimento(Requerimento requerimento) { try { Requerimento req = Obter(requerimento.Id); req.Empreendimento = requerimento.Empreendimento; req.SituacaoId = (int)eRequerimentoSituacao.EmAndamento; if (!_validar.AssociarEmpreendimento(req)) { return(Validacao.EhValido); } GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); _da.Editar(req, bancoDeDados); #region Projeto Digital ProjetoDigitalCredenciadoBus projetoDigitalCredenciadoBus = new ProjetoDigitalCredenciadoBus(); ProjetoDigital projetoDigital = projetoDigitalCredenciadoBus.Obter(idRequerimento: requerimento.Id, banco: bancoDeDados); projetoDigital.EmpreendimentoId = req.Empreendimento.Id; projetoDigital.Etapa = (int)eProjetoDigitalEtapa.Requerimento; projetoDigitalCredenciadoBus.Salvar(projetoDigital, bancoDeDados); ProjetoDigitalCredenciadoDa projetoDigitalCredenciadoDa = new ProjetoDigitalCredenciadoDa(); projetoDigitalCredenciadoDa.DesassociarDependencias(projetoDigital, bancoDeDados); #endregion if (!Validacao.EhValido) { bancoDeDados.Rollback(); return(false); } bancoDeDados.Commit(); if (req.Empreendimento.Id > 0) { Validacao.Add(Mensagem.Requerimento.EmpreendimentoSalvar); } return(true); } } catch (Exception exc) { Validacao.AddErro(exc); } return(false); }
public ActionResult NotificacaoCorrecao(int id) { ProjetoDigital projetoDigital = _bus.Obter(id); ProjetoDigitalVM vm = new ProjetoDigitalVM(); vm.ProjetoDigital = projetoDigital; return(PartialView("NotificacaoCorrecao", vm)); }
public bool EmPosseCredenciado(ProjetoDigital projeto) { if (projeto == null) { return(true); } return(projeto.CredenciadoId == User.EtramiteIdentity.FuncionarioId); }
internal ProjetoDigital Obter(int idProjeto = 0, int idRequerimento = 0, BancoDeDados bancoCredenciado = null) { ProjetoDigital projeto = new ProjetoDigital(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(bancoCredenciado, EsquemaBanco)) { bancoDeDados.IniciarTransacao(); #region Projeto Digital Comando comando = bancoDeDados.CriarComando(@"select p.id, p.tid, p.etapa, p.situacao, l.texto situacao_texto, p.requerimento, p.empreendimento, p.data_criacao, p.data_envio, p.credenciado, p.motivo_recusa from {0}tab_projeto_digital p, {0}lov_projeto_digital_situacao l where p.situacao = l.id" , EsquemaBanco); if (idRequerimento > 0) { comando.DbCommand.CommandText += comando.FiltroAnd("p.requerimento", "requerimento", idRequerimento); } else { comando.DbCommand.CommandText += comando.FiltroAnd("p.id", "id", idProjeto); } using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { projeto.Id = reader.GetValue <int>("id"); projeto.Tid = reader.GetValue <string>("tid"); projeto.Situacao = reader.GetValue <int>("situacao"); projeto.SituacaoTexto = reader.GetValue <string>("situacao_texto"); projeto.Etapa = reader.GetValue <int>("etapa"); projeto.RequerimentoId = reader.GetValue <int>("requerimento"); projeto.EmpreendimentoId = reader.GetValue <int>("empreendimento"); projeto.DataCriacao.Data = reader.GetValue <DateTime>("data_criacao"); projeto.DataEnvio.Data = reader.GetValue <DateTime>("data_envio"); projeto.CredenciadoId = reader.GetValue <int>("credenciado"); projeto.MotivoRecusa = reader.GetValue <String>("motivo_recusa"); } reader.Close(); } #endregion #region Dependencias if (projeto.Id > 0) { projeto.Dependencias = ObterDependencias(projeto.Id, bancoCredenciado); } #endregion } return(projeto); }
public ActionResult ExcluirConfirm(int id) { ProjetoDigital projetoDigital = _bus.Obter(id); ConfirmarVM vm = new ConfirmarVM(); vm.Id = id; vm.Mensagem = Mensagem.ProjetoDigital.MensagemExcluir(projetoDigital.RequerimentoId.ToString()); vm.Titulo = "Excluir Projeto Digital"; return(PartialView("Confirmar", vm)); }
public ActionResult CancelarEnvioConfirm(int id) { ProjetoDigital projetoDigital = _bus.Obter(id); ConfirmarVM vm = new ConfirmarVM(); vm.Id = id; vm.Mensagem = Mensagem.ProjetoDigital.MensagemCancelarEnvio(projetoDigital.RequerimentoId.ToString()); vm.Titulo = "Confirmação do cancelamento"; return(PartialView("Confirmar", vm)); }
public bool Salvar(ProjetoDigital projeto) { if (projeto.RequerimentoId <= 0) { Validacao.Add(Mensagem.ProjetoDigital.RequerimentoObrigatorio); return(false); } return(Validacao.EhValido); }
public Requerimento() { Empreendimento = new Empreendimento(); ProjetoDigital = new ProjetoDigital(); Roteiros = new List <Roteiro>(); Atividades = new List <Atividade>(); Responsaveis = new List <ResponsavelTecnico>(); Pessoas = new List <Pessoa>(); Interessado = new Pessoa(); }
public void AssociarProjetoDigital(ProjetoDigital projetoDigital, List <Lista> atividades) { if (projetoDigital.Situacao == (int)eProjetoDigitalSituacao.AguardandoCorrecao || projetoDigital.Situacao == (int)eProjetoDigitalSituacao.ComPendencia || projetoDigital.Situacao == (int)eProjetoDigitalSituacao.EmCorrecao || projetoDigital.Situacao == (int)eProjetoDigitalSituacao.Finalizado || projetoDigital.Situacao == (int)eProjetoDigitalSituacao.Indeferido || projetoDigital.Situacao == (int)eProjetoDigitalSituacao.EmElaboracao) { Validacao.Add(Mensagem.CARSolicitacao.SituacaoDeveSerAguardandoImportacao); } if (projetoDigital.EmpreendimentoId < 1) { Validacao.Add(Mensagem.CARSolicitacao.SolicitacaoEmpreendimentoObrigatorio); } if (atividades.Count < 1) { Validacao.Add(Mensagem.CARSolicitacao.RequerimentoNaoPossuiAtividadeCAR); } #region Solitação de CAR /*EmpreendimentoCaracterizacao empreendimento = _busCaracterizacao.ObterEmpreendimentoSimplificado(projetoDigital.EmpreendimentoId.GetValueOrDefault()); * if (!EmpreendimentoSolicitacaoCAR(empreendimento)) * { * return; * }*/ #endregion Solitação de CAR if (projetoDigital.Dependencias.Count(x => x.DependenciaTipo == (int)eCaracterizacaoDependenciaTipo.ProjetoGeografico) < 1) { Validacao.Add(Mensagem.CARSolicitacao.ProjetoDigitalDominialidadeAssociada); return; } if (projetoDigital.Dependencias.Count(x => x.DependenciaCaracterizacao == (int)eCaracterizacao.Dominialidade) < 1) { Validacao.Add(Mensagem.CARSolicitacao.ProjetoDigitalNaoPossuiCaracterizacaoDominialidade); return; } projetoDigital.Dependencias.ForEach(x => { if (x.DependenciaTipo == (int)eCaracterizacaoDependenciaTipo.ProjetoGeografico && x.DependenciaCaracterizacao == (int)eCaracterizacao.Dominialidade) { if (_busProjetoGeografico.ObterSitacaoProjetoGeografico(x.DependenciaId) != (int)eProjetoGeograficoSituacao.Finalizado) { Validacao.Add(Mensagem.CARSolicitacao.ProjetoGeograficoNaoEstaFinalizado); } } }); }
public void CancelarEnvio(int projetoId) { try { ProjetoDigital projeto = Obter(projetoId); if (_validar.CancelarEnvio(projeto)) { projeto.Situacao = (int)eProjetoDigitalSituacao.EmElaboracao; projeto.Etapa = (int)eProjetoDigitalEtapa.Caracterizacao; GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); int solicitacao = new RequerimentoCredenciadoDa().PossuiSolicitacaoCARValidaSuspensaPendente(projeto.RequerimentoId); if (solicitacao > 0) { new CARSolicitacaoBus().AlterarSituacao( new CARSolicitacao() { Id = solicitacao }, new CARSolicitacao() { SituacaoId = (int)eCARSolicitacaoSituacao.Invalido }, bancoDeDados); } TituloDeclaratorioBus tituloDeclaratorioBus = new TituloDeclaratorioBus(); tituloDeclaratorioBus.AcerrarTitulo(projeto.RequerimentoId); if (!Validacao.EhValido) { bancoDeDados.Rollback(); return; } _da.CancelarEnvio(projeto, bancoDeDados); ExcluirTemporario(projeto.Id); Validacao.Add(Mensagem.ProjetoDigital.CancelarEnvio); bancoDeDados.Commit(); } } } catch (Exception exc) { Validacao.AddErro(exc); } }