public ActionResult Editar(int id) { Titulo titulo = _bus.Obter(id); titulo.Modelo = _busModelo.Obter(titulo.Modelo.Id); SalvarVM vm = null; #region Nao Encontrada if (titulo == null || titulo.Id == 0) { Validacao.Add(Mensagem.Titulo.NaoEncontrado); return(RedirectToAction("Index", Validacao.QueryParamSerializer())); } if (!_validar.ListarEditar(titulo)) { return(RedirectToAction("Index", Validacao.QueryParamSerializer())); } #endregion vm = new SalvarVM(new List <Setor>(), _busModelo.ObterModelosDeclaratorios(), _bus.ObterLocais(), titulo.Setor.Id, titulo.Modelo.Id, titulo.LocalEmissao.Id); vm.Titulo = titulo; vm.Modelo = _busModelo.Obter(titulo.Modelo.Id); vm.Titulo.Modelo = vm.Modelo; vm.AtividadeEspecificidadeCaracterizacaoJSON = ViewModelHelper.Json(_busEspBase.GetConfigAtivEspCaracterizacao(vm.Modelo.Codigo.Value)); vm.TemEmpreendimento = titulo.EmpreendimentoId.HasValue; vm.IsEditar = true; if (!vm.Modelo.Regra(eRegra.PdfGeradoSistema)) { ArquivoBus arqBus = new ArquivoBus(eExecutorTipo.Interno); titulo.ArquivoPdf = arqBus.ObterDados(titulo.ArquivoPdf.Id.GetValueOrDefault()); vm.ArquivoId = titulo.ArquivoPdf.Id; vm.ArquivoTexto = titulo.ArquivoPdf.Nome; vm.ArquivoJSon = ViewModelHelper.JsSerializer.Serialize(titulo.ArquivoPdf); } return(View(vm)); }
public bool ValidarAtividade(List <Atividade> atividades, string local = null) { if (atividades.Count <= 0) { Validacao.Add(Msg.AtividadeObrigatorio); return(Validacao.EhValido); } int SetorId = atividades[0].SetorId; int titulos = 0; int titulosDeclaratorio = 0; string tituloDeclaratorioModelo = string.Empty; foreach (Atividade atividade in atividades) { #region Atividades if (SetorId != atividade.SetorId) { Validacao.Add(Msg.AtividadesSetoresDiferentes); return(Validacao.EhValido); } if (atividade.Finalidades.Count < 1) { Validacao.Add(Msg.TituloObrigatorio(atividade.NomeAtividade)); return(Validacao.EhValido); } if (!_atividadeBus.AtividadeAtiva(atividade.Id)) { Validacao.Add(Msg.AtividadeDesativada(atividade.NomeAtividade, local)); } foreach (var item in atividade.Finalidades) { #region Finalidades if (item.TituloModelo == 0) { Validacao.Add(Msg.TituloObrigatorio(atividade.NomeAtividade)); } //Verifica se a situação da atividade é encerrada ou já tem título emitido if (atividade.Protocolo.Id > 0 && _atividadeBus.ValidarAtividadeComTituloOuEncerrada(atividade.Protocolo.Id.Value, atividade.Protocolo.IsProcesso, atividade.Id, item.TituloModelo)) { continue; } if (!_atividadeConfigurada.AtividadeConfigurada(atividade.Id, item.TituloModelo)) { Validacao.Add(Msg.TituloNaoConfiguradoAtividade(item.TituloModeloTexto, atividade.NomeAtividade, local)); continue; } TituloModelo modelo = _tituloModeloBus.Obter(item.TituloModelo); if (modelo.TipoDocumentoEnum == eTituloModeloTipoDocumento.Titulo) { ++titulos; } else { ++titulosDeclaratorio; tituloDeclaratorioModelo = modelo.Nome; } if (titulos > 0 && titulosDeclaratorio > 0) { Validacao.Add(Msg.TituloDeclaratorioOutroRequerimento(tituloDeclaratorioModelo)); } if (item.Id == 3) //Renovação { #region Renovacao if (!modelo.Regra(eRegra.Renovacao)) { Validacao.Add(Msg.TituloNaoEhRenovacao(item.TituloModeloTexto, atividade.NomeAtividade, local)); } if (modelo.Regra(eRegra.Renovacao)) { if (item.EmitidoPorInterno) { if (item.TituloModeloAnteriorId == 0 || item.TituloModeloAnteriorId == null) { Validacao.Add(Msg.TituloAnteriorObrigatorio(item.TituloModeloTexto, atividade.NomeAtividade)); } if (string.IsNullOrWhiteSpace(item.TituloAnteriorNumero)) { Validacao.Add(Msg.NumeroAnteriorObrigatorio(item.TituloModeloTexto, atividade.NomeAtividade)); } else { if (!ValidacoesGenericasBus.ValidarMaskNumeroBarraAno(item.TituloAnteriorNumero)) { Validacao.Add(Msg.TituloAnteriorNumeroInvalido); } } CarregarTituloAnteriorSigla(item); } else { ValidarTituloNumeroOrgaoTexto(item, atividade); } } #endregion } else { #region Fase Anterior if (!modelo.Regra(eRegra.FaseAnterior) && (item.TituloModeloAnteriorId != null && item.TituloModeloAnteriorId != 0)) { Validacao.Add(Msg.TituloNaoTemTituloAnterior(item.TituloModeloAnteriorTexto, item.TituloModeloTexto, local)); continue; } Boolean adicionouTituloAnterior = false; Boolean validarTituloAnterior = Convert.ToBoolean((modelo.Resposta(eRegra.FaseAnterior, eResposta.TituloAnteriorObrigatorio) ?? new TituloModeloResposta()).Valor); if (item.EmitidoPorInterno) { adicionouTituloAnterior = (item.TituloAnteriorId.GetValueOrDefault(0) > 0) || (!String.IsNullOrWhiteSpace(item.TituloAnteriorNumero)); } else { adicionouTituloAnterior = (!String.IsNullOrWhiteSpace(item.TituloModeloAnteriorTexto)) || (!String.IsNullOrWhiteSpace(item.TituloAnteriorNumero)) || (!String.IsNullOrWhiteSpace(item.OrgaoExpedidor)); } validarTituloAnterior = validarTituloAnterior || adicionouTituloAnterior; if (modelo.Regra(eRegra.FaseAnterior) && validarTituloAnterior) { List <TituloModeloResposta> respostas = modelo.Respostas(eRegra.FaseAnterior, eResposta.Modelo); if (respostas == null || respostas.Count < 1) { Validacao.Add(Msg.TituloNaoEhFaseAnterior(item.TituloModeloTexto, local)); } if (item.EmitidoPorInterno) { if (item.TituloModeloAnteriorId != null && item.TituloModeloAnteriorId != 0) { if (respostas.SingleOrDefault(x => x.Valor.ToString() == item.TituloModeloAnteriorId.ToString()) == null) { Validacao.Add(Msg.TituloNaoTemTituloAnterior(item.TituloModeloTexto, item.TituloModeloAnteriorTexto, local)); } } if (string.IsNullOrWhiteSpace(item.TituloAnteriorNumero)) { Validacao.Add(Msg.NumeroAnteriorObrigatorio(item.TituloModeloTexto, atividade.NomeAtividade)); } else { if (!(ValidacoesGenericasBus.ValidarMaskNumeroBarraAno(item.TituloAnteriorNumero) || ValidacoesGenericasBus.ValidarNumero(item.TituloAnteriorNumero, 12))) { Validacao.Add(Msg.TituloAnteriorNumeroInvalido); } else { if (ValidacoesGenericasBus.ValidarNumero(item.TituloAnteriorNumero, 12) && _da.ValidarNumeroSemAnoExistente(item.TituloAnteriorNumero, item.TituloModeloAnteriorId.GetValueOrDefault())) { Validacao.Add(Msg.TituloNumeroSemAnoEncontrado); } } } CarregarTituloAnteriorSigla(item); } else { ValidarTituloNumeroOrgaoTexto(item, atividade); } } #endregion } #endregion } #endregion } return(Validacao.EhValido); }
public TituloModelo VerficarTituloPassivelRenovação(int titulo) { return(_modeloBus.Obter(titulo)); }