public ActionResult CertidaoDispensaLicenciamentoAmbiental(EspecificidadeVME especificidade) { var _busLista = new ListaBus(); var _busCertidao = new CertidaoDispensaLicenciamentoAmbientalBus(); List <AtividadeSolicitada> lstAtividades = new List <AtividadeSolicitada>(); var titulo = new Titulo(); var certidao = new CertidaoDispensaLicenciamentoAmbiental(); string htmlEspecificidade = string.Empty; if (especificidade.TituloId > 0) { titulo = _busTitulo.ObterSimplificado(especificidade.TituloId); titulo.Atividades = _busTitulo.ObterAtividades(especificidade.TituloId); certidao = _busCertidao.Obter(especificidade.TituloId) as CertidaoDispensaLicenciamentoAmbiental; if (certidao != null) { especificidade.AtividadeProcDocReq = certidao.ProtocoloReq; } lstAtividades = _busAtividade.ObterAtividadesListaReq(titulo.RequerimetoId.GetValueOrDefault()); } CertidaoDispensaLicenciamentoAmbientalVM vm = new CertidaoDispensaLicenciamentoAmbientalVM(certidao, lstAtividades, _busLista.ObterVinculoPropriedade, especificidade.IsVisualizar); htmlEspecificidade = ViewModelHelper.RenderPartialViewToString(ControllerContext, "~/Areas/Especificidades/Views/Certidao/CertidaoDispensaLicenciamentoAmbiental.ascx", vm); return(Json(new { Msg = Validacao.Erros, EhValido = Validacao.EhValido, @Html = htmlEspecificidade }, JsonRequestBehavior.AllowGet)); }
public CredenciadoIntBus() { _busCredenciado = new CredenciadoBus(); _validar = new CredenciadoIntValidar(); _daCredenciado = new CredenciadoIntDa(); _daHabilitar = new HabilitarEmissaoCFOCFOCDa(); _busPessoa = new PessoaBus(); _emailBus = new EmailBus(); _busLista = new ListaBus(); _busOrgaoParceiro = new OrgaoParceiroConveniadoBus(); }
public static int EstadoDefaultId() { ListaBus _busLista = new ListaBus(); Estado estado = _busLista.Estados.SingleOrDefault(x => String.Equals(x.Texto, _configSys.Obter <String>(ConfiguracaoSistema.KeyEstadoDefault), StringComparison.InvariantCultureIgnoreCase)); if (estado != null) { return(estado.Id); } return(0); }
public RequerimentoBus(RequerimentoValidar validacao) { _validar = validacao; _da = new RequerimentoDa(); _empBus = new EmpreendimentoBus(); _busPessoa = new PessoaBus(); _modeloBus = new TituloModeloBus(new TituloModeloValidacao()); _roteiroBus = new RoteiroBus(); _atividadeConfiguracaoBus = new AtividadeConfiguracaoBus(); _busLista = new ListaBus(); _configSys = new GerenciadorConfiguracao <ConfiguracaoSistema>(new ConfiguracaoSistema()); }
public ProcessoController() { _busProtocolo = new ProtocoloBus(); _busLista = new ListaBus(); _bus = new ProcessoBus(); _validarJuntarApensar = new JuntarApensarValidar(); _validar = new ProcessoValidar(); _busJuntarApensar = new JuntarApensarBus(); _busDoc = new DocumentoBus(); _busRequerimento = new RequerimentoBus(new RequerimentoValidar()); _busFuncionario = new FuncionarioBus(); _busTramitacao = new TramitacaoBus(); _busAtividade = new AtividadeBus(); _validarFiscalizacao = new FiscalizacaoValidar(); _busFiscalizacao = new FiscalizacaoBus(); }
public List <Lista> ObterSituacoes(int situacao) { ListaBus listaBus = new ListaBus(); switch ((eCARSolicitacaoSituacao)situacao) { case eCARSolicitacaoSituacao.Pendente: return(listaBus.CadastroAmbientalRuralSolicitacaoSituacao .Where(x => int.Parse(x.Id) == (int)eCARSolicitacaoSituacao.Invalido).ToList()); case eCARSolicitacaoSituacao.Valido: return(listaBus.CadastroAmbientalRuralSolicitacaoSituacao .Where(x => int.Parse(x.Id) == (int)eCARSolicitacaoSituacao.Invalido).ToList()); case eCARSolicitacaoSituacao.Suspenso: return(listaBus.CadastroAmbientalRuralSolicitacaoSituacao .Where(x => int.Parse(x.Id) == (int)eCARSolicitacaoSituacao.Valido || int.Parse(x.Id) == (int)eCARSolicitacaoSituacao.Invalido).ToList()); default: return(new List <Lista>()); } }
public void ValidarProcessoTodosCampos(Processo processo, bool isConversao = false) { ListaBus listaBus = new ListaBus(); ProtocoloTipo configuracaoProtocoloTipo = listaBus.TiposProcesso.FirstOrDefault(x => x.Id == processo.Tipo.Id); if (processo.ChecagemRoteiro.Id <= 0 && processo.Requerimento.Id <= 0) { if (processo.Interessado.Id <= 0) { Validacao.Add(Mensagem.Processo.InteressadoObrigatorio); } } else { if ((configuracaoProtocoloTipo.ChecagemRoteiroObrigatorio && processo.ChecagemRoteiro.Id <= 0) || processo.Requerimento.Id > 0 && processo.ChecagemRoteiro.Id <= 0) { Validacao.Add(Mensagem.Processo.ChecagemObrigatoria); return; } if (configuracaoProtocoloTipo.FiscalizacaoObrigatorio && processo.Fiscalizacao.Id <= 0) { Validacao.Add(Mensagem.Processo.FiscalizacaoObrigatoria); } if ((configuracaoProtocoloTipo.RequerimentoObrigatorio && processo.Requerimento.Id <= 0) || processo.ChecagemRoteiro.Id > 0 && processo.Requerimento.Id <= 0) { Validacao.Add(Mensagem.Processo.RequerimentoObrigatorio); } else { if (!isConversao) { RequerimentoFinalizado(processo.Requerimento.Id, processo.Id.GetValueOrDefault()); } if (processo.Atividades.Count <= 0) { Validacao.Add(Mensagem.Processo.AtividadeObrigatoria); } else { Processo processoBanco = processo.Id.GetValueOrDefault() > 0 ? _da.Obter(processo.Id.Value) as Processo : new Processo(); ValidarAtividades(processo.Atividades, (processoBanco.Requerimento.Id != processo.Requerimento.Id)); if (processoBanco.Requerimento.Id == processo.Requerimento.Id) { foreach (Atividade atividade in processoBanco.Atividades) { Atividade atividadeAux = processo.Atividades.SingleOrDefault(x => x.Id == atividade.Id); foreach (var finalidade in atividade.Finalidades) { if (!atividadeAux.Finalidades.Exists(x => x.Id == finalidade.Id) && _atividadeDa.VerificarAtividadeAssociadaTitulo(processoBanco.Id.Value, true, atividade.Id, finalidade.TituloModelo)) { Validacao.Add(Mensagem.Atividade.FinalidadeAssociadaTitulo(finalidade.TituloModeloTexto)); } } } } } } } }
public static int MunicipioDefaultId() { ListaBus _busLista = new ListaBus(); return((_busLista.Municipios(_configSys.Obter <String>(ConfiguracaoSistema.KeyEstadoDefault)).SingleOrDefault(x => String.Equals(x.Texto, _configSys.Obter <String>(ConfiguracaoSistema.KeyMunicipioDefault), StringComparison.InvariantCultureIgnoreCase)) ?? new Municipio()).Id); }
public bool Salvar(Documento documento) { try { documento.Emposse.Id = User.FuncionarioId; if (documento.Arquivo == null) { documento.Arquivo = new Arquivo(); } bool isEdicao = (documento.Id > 0); if (_validar.Salvar(documento)) { #region Arquivos/Diretorio if (documento.Arquivo.Id != null && documento.Arquivo.Id == 0) { ArquivoBus _busArquivo = new ArquivoBus(eExecutorTipo.Interno); documento.Arquivo = _busArquivo.Copiar(documento.Arquivo); } #endregion #region Setar Valores ListaBus listaBus = new ListaBus(); ProtocoloTipo configuracao = listaBus.TiposDocumento.FirstOrDefault(x => x.Id == documento.Tipo.Id); documento.ProtocoloAssociado = (configuracao.PossuiProcesso || configuracao.ProcessoObrigatorio) ? documento.ProtocoloAssociado : new Protocolo(); documento.ChecagemPendencia = (configuracao.PossuiChecagemPendencia || configuracao.ChecagemPendenciaObrigatorio) ? documento.ChecagemPendencia : new ChecagemPendencia(); documento.ChecagemRoteiro = (configuracao.PossuiChecagemRoteiro || configuracao.ChecagemRoteiroObrigatorio) ? documento.ChecagemRoteiro : new ChecagemRoteiro(); documento.Requerimento = (configuracao.PossuiRequerimento || configuracao.RequerimentoObrigatorio) ? documento.Requerimento : new Requerimento(); #endregion GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { bancoDeDados.IniciarTransacao(); #region Arquivos/Banco if (documento.Arquivo.Id == 0) { ArquivoDa _arquivoDa = new ArquivoDa(); _arquivoDa.Salvar(documento.Arquivo, User.FuncionarioId, User.Name, User.Login, (int)eExecutorTipo.Interno, User.FuncionarioTid, bancoDeDados); } #endregion ChecagemPendenciaBus _checagemPendenciaBus = new ChecagemPendenciaBus(); using (BancoDeDados bancoDeDadosCredenciado = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDadosCredenciado.IniciarTransacao(); #region Alterar Situacao Requerimento if (documento.Id.HasValue) { Documento docOriginal = _da.ObterSimplificado(documento.Id.Value) as Documento; docOriginal.Requerimento = _busRequerimento.ObterSimplificado(docOriginal.Requerimento.Id); if (docOriginal.Requerimento.Id != documento.Requerimento.Id) { AlterarRequerimentoSituacao(docOriginal, banco: bancoDeDados); if (docOriginal.Requerimento.IsRequerimentoDigital) { CARSolicitacaoBus carSolicitacaoCredenciadoBus = new CARSolicitacaoBus(); carSolicitacaoCredenciadoBus.DesassociarProtocolo(new CARSolicitacao() { Requerimento = docOriginal.Requerimento }, bancoDeDadosCredenciado); if (!_busProjetoDigital.AlterarSituacao(docOriginal.Requerimento.Id, eProjetoDigitalSituacao.AguardandoProtocolo, bancoDeDadosCredenciado)) { bancoDeDados.Rollback(); return(false); } } } } #endregion Documento documentoOriginal = new Documento(); if (documento.Id != null && documento.Id.GetValueOrDefault() > 0) { documentoOriginal = ObterSimplificado(documento.Id.Value); } #region Titulo if (documento.ChecagemPendencia.Id > 0 && documento.Id.GetValueOrDefault() == 0) { documento.ChecagemPendencia = _checagemPendenciaBus.Obter(documento.ChecagemPendencia.Id); TituloBus tituloBus = new TituloBus(); Titulo titulo = tituloBus.Obter(documento.ChecagemPendencia.TituloId); if (titulo.Situacao.Id != 5) //5 - Encerrado { titulo.DataEncerramento.Data = DateTime.Now; titulo.MotivoEncerramentoId = 7; //Encerrado TituloSituacaoBus tituloSituacaoBus = new TituloSituacaoBus(); tituloSituacaoBus.AlterarSituacao(titulo, (int)eAlterarSituacaoAcao.Encerrar, bancoDeDados); if (Validacao.EhValido) { Validacao.Erros.Clear(); } } #region Itens da Analise AnaliseItensBus busAnalise = new AnaliseItensBus(new AnaliseItensValidar()); AnaliseItem analiseItem = busAnalise.ObterAnaliseTitulo(documento.ChecagemPendencia.TituloId); analiseItem = busAnalise.Obter(analiseItem.Id, bancoDeDados); //int setorId = _busProc.ObterSetor(analiseItem.Protocolo.Id); foreach (Item item in analiseItem.Itens) { if (documento.ChecagemPendencia.Itens.Exists(x => x.Id == item.Id)) { item.Analista = User.Name; item.Situacao = (int)eAnaliseItemSituacao.Recebido; item.Motivo = String.Empty; item.Recebido = true; item.Editado = true; //item.SetorId = setorId; item.DataAnalise = DateTime.Now.ToString(); } } AnaliseItensDa _daAnalise = new AnaliseItensDa(); _daAnalise.Salvar(analiseItem, bancoDeDados); #endregion } #endregion #region Atividade List <Atividade> lstAtividadesAtual = null; if ((documento.Id ?? 0) > 0) { lstAtividadesAtual = _da.ObterAtividades(documento.Id.GetValueOrDefault(), bancoDeDados).Atividades; } if (documento.Atividades != null && documento.Atividades.Count > 0) { documento.Atividades.ForEach(x => { x.Protocolo.Id = documento.Id.GetValueOrDefault(); x.Protocolo.IsProcesso = false; }); AtividadeBus atividadeBus = new AtividadeBus(); atividadeBus.AlterarSituacaoProcDoc(documento.Atividades, lstAtividadesAtual, bancoDeDados); atividadeBus.TituloAnteriores(documento.Atividades, lstAtividadesAtual, bancoDeDados); } #endregion _da.Salvar(documento, bancoDeDados); #region Checagens // cadastrando, seta situação da checagem de itens de roteiro/pendencia como protocolada if (documentoOriginal.Id.GetValueOrDefault() <= 0) { _busCheckList.AlterarSituacao(documento.ChecagemRoteiro.Id, 2, bancoDeDados); //protocolada documento.ChecagemPendencia.SituacaoId = 2; //protocolada _checagemPendenciaBus.AlterarSituacao(documento.ChecagemPendencia, bancoDeDados); } else // editando documento { // se checagem de itens de roteiro foi alterada, setar o status da antiga como finalizada e setar o status da nova como protocolada if (documento.ChecagemRoteiro.Id != documentoOriginal.ChecagemRoteiro.Id) { _busCheckList.AlterarSituacao(documentoOriginal.ChecagemRoteiro.Id, 1, bancoDeDados); //finalizada _busCheckList.AlterarSituacao(documento.ChecagemRoteiro.Id, 2, bancoDeDados); //protocolada } } #endregion documento.Requerimento = _busRequerimento.ObterSimplificado(documento.Requerimento.Id); if (documento.Requerimento.IsRequerimentoDigital) { CARSolicitacaoBus carSolicitacaoCredenciadoBus = new CARSolicitacaoBus(); carSolicitacaoCredenciadoBus.AssociarProtocolo(new CARSolicitacao() { Requerimento = documento.Requerimento }, bancoDeDadosCredenciado); if (documentoOriginal.Requerimento.Id != documento.Requerimento.Id) { if (!_busProjetoDigital.AlterarSituacao(documento.Requerimento.Id, eProjetoDigitalSituacao.AguardandoAnalise, bancoDeDadosCredenciado)) { bancoDeDados.Rollback(); return(false); } } } AlterarRequerimentoSituacao(documento, 3, bancoDeDados); // Protocolado #region Fiscalizacao if (isEdicao && documento.Fiscalizacao.Id != documentoOriginal.Fiscalizacao.Id && documentoOriginal.Fiscalizacao.Id > 0) { documentoOriginal.Fiscalizacao.SituacaoNovaTipo = (int)eFiscalizacaoSituacao.CadastroConcluido; documentoOriginal.Fiscalizacao.SituacaoNovaData.Data = DateTime.Now; documentoOriginal.Fiscalizacao.SituacaoAtualTipo = documento.Fiscalizacao.SituacaoId; _busFiscalizacao.AlterarSituacaoProcDoc(documentoOriginal.Fiscalizacao, bancoDeDados); } if (documento.Fiscalizacao.Id != documentoOriginal.Fiscalizacao.Id) { documento.Fiscalizacao.SituacaoNovaTipo = (int)eFiscalizacaoSituacao.Protocolado; documento.Fiscalizacao.SituacaoNovaData.Data = DateTime.Now; documento.Fiscalizacao.SituacaoAtualTipo = documento.Fiscalizacao.SituacaoId; _busFiscalizacao.AlterarSituacaoProcDoc(documento.Fiscalizacao, bancoDeDados); } #endregion //sempre no final esse if if (!Validacao.EhValido) { bancoDeDadosCredenciado.Rollback(); bancoDeDados.Rollback(); return(false); } bancoDeDadosCredenciado.Commit(); } bancoDeDados.Commit(); } Mensagem msgSucesso = Mensagem.Documento.Salvar(documento.Numero); if (isEdicao) { msgSucesso = Mensagem.Documento.Editar; } Validacao.Add(msgSucesso); } } catch (Exception exc) { Validacao.AddErro(exc); } return(Validacao.EhValido); }
public List <Municipio> ObterLocais() { ListaBus busLista = new ListaBus(); return(busLista.Municipios(_busLista.EstadoDefault)); }
public bool VerificarHabilitarEmissaoCFOCFOC(HabilitarEmissaoCFOCFOC habilitar) { if (habilitar.Responsavel.Id == 0) { Validacao.Add(Msg.ResponsavelObrigatorio); } int auxiliar = 0; if (int.TryParse(habilitar.NumeroHabilitacao, out auxiliar) && String.IsNullOrEmpty(habilitar.NumeroHabilitacao)) { Validacao.Add(Msg.NumeroHabilitacaoObrigatorio); } else { if (habilitar.NumeroHabilitacao.Length != 8) { Validacao.Add(Msg.NumeroHabilitacaoTamanhoInvalido); } } if (String.IsNullOrEmpty(habilitar.ValidadeRegistro)) { Validacao.Add(Msg.ValidadeRegistroObrigatorio); } else { if (!ValidacoesGenericasBus.ValidarData(habilitar.ValidadeRegistro)) { Validacao.Add(Msg.ValidadeRegistroInvalida); } } if (String.IsNullOrEmpty(habilitar.NumeroDua)) { Validacao.Add(Msg.NumeroDuaObrigatorio); } if (Convert.ToBoolean(habilitar.ExtensaoHabilitacao)) { if (string.IsNullOrWhiteSpace(habilitar.NumeroHabilitacaoOrigem)) { Validacao.Add(Msg.NumeroHabilitacaoOrigemObrigatorio); } else { if (habilitar.NumeroHabilitacaoOrigem.Length != 8) { Validacao.Add(Msg.NumeroHabilitacaoOrigemTamanhoInvalido); } if (habilitar.NumeroHabilitacao != habilitar.NumeroHabilitacaoOrigem) { Validacao.Add(Msg.NumeroHabilitacaoOrigemInvalido); } } } if (habilitar.UF == 0) { Validacao.Add(Msg.UFObrigatorio); } else { ListaBus listaBus = new ListaBus(); Estado estadoPadrao = listaBus.Estados.SingleOrDefault(x => String.Equals(x.Texto, _configSys.Obter <String>(ConfiguracaoSistema.KeyEstadoDefault), StringComparison.InvariantCultureIgnoreCase)); if (estadoPadrao.Id != habilitar.UF && string.IsNullOrWhiteSpace(habilitar.NumeroVistoCrea)) { Validacao.Add(Msg.NumeroVistoCreaObrigatorio); } } if (habilitar.Pragas.Count == 0) { Validacao.Add(Msg.PragaObrigatorio); } foreach (var item in habilitar.Pragas) { if (String.IsNullOrEmpty(item.DataInicialHabilitacao)) { Validacao.Add(Msg.DataInicialHabilitacaoObrigatoria); } else { if (!ValidacoesGenericasBus.ValidarData(item.DataInicialHabilitacao)) { Validacao.Add(Msg.DataInicialHabilitacaoInvalida); } else if (Convert.ToDateTime(item.DataInicialHabilitacao) > DateTime.Today.AddDays(1).Subtract(TimeSpan.FromSeconds(1))) { Validacao.Add(Msg.DataInicialHabilitacaoMaiorAtual); } } if (String.IsNullOrEmpty(item.DataFinalHabilitacao)) { Validacao.Add(Msg.DataFinalHabilitacaoObrigatorio); } else { if (!ValidacoesGenericasBus.ValidarData(item.DataFinalHabilitacao)) { Validacao.Add(Msg.DataFinalHabilitacaoInvalida); } } } return(Validacao.EhValido); }
public bool Salvar(Documento documento) { #region Validações Genéricas if (documento.SetorId <= 0 && documento.Id.GetValueOrDefault() <= 0) { Validacao.Add(Mensagem.Documento.SetorObrigatorio); } if (!documento.DataCadastro.Data.HasValue) { Validacao.Add(Mensagem.Documento.DataCriacaoObrigatoria); } else { if (documento.DataCadastro.Data > DateTime.Today) { Validacao.Add(Mensagem.Documento.DataCriacaoMaiorAtual); } } if (documento.Tipo.Id <= 0) { Validacao.Add(Mensagem.Documento.DocumentoTipoObrigatorio); } if (documento.Volume.GetValueOrDefault() <= 0 && documento.Tipo.QuantidadeDocumentoObrigatorio) //Documento Avulso { Validacao.Add(Mensagem.Documento.QuantidadeDocumentoObrigatoria); } if (string.IsNullOrEmpty(documento.Nome) && documento.Tipo.NomeObrigatorio) { Validacao.Add(Mensagem.Documento.NomeObrigatorio); } if (string.IsNullOrEmpty(documento.Assunto) && documento.Tipo.AssuntoObrigatorio) { Validacao.Add(Mensagem.Documento.AssuntoObrigatorio); } if (string.IsNullOrEmpty(documento.Descricao) && documento.Tipo.DescricaoObrigatoria) { Validacao.Add(Mensagem.Documento.DescricaoObrigatoria); } if (documento.Tipo.DestinatarioLivreObrigatorio) { if (string.IsNullOrWhiteSpace(documento.Descricao)) { Validacao.Add(Mensagem.Documento.ConteudoOficioObrigatorio); } if (string.IsNullOrWhiteSpace(documento.OrgaoDestino)) { Validacao.Add(Mensagem.Documento.OrgaoDestinoObrigatorio); } if (string.IsNullOrWhiteSpace(documento.CargoFuncaoDestinatario)) { Validacao.Add(Mensagem.Documento.CargoFuncaoDestinatarioObrigatorio); } if (string.IsNullOrWhiteSpace(documento.NomeDestinatario)) { Validacao.Add(Mensagem.Documento.NomeDestinatarioObrigatorio); } if (string.IsNullOrWhiteSpace(documento.EnderecoDestinatario)) { Validacao.Add(Mensagem.Documento.EnderecoDestinatarioObrigatorio); } } if (documento.Tipo.Id == (int)eProtocoloTipo.FiscalizacaoSemAI_TEI_TAD) { if (documento.Fiscalizacao.Id == 0) { Validacao.Add(Mensagem.Documento.FiscalizacaoObrigatoria); } else { FiscalizacaoValidar fiscValidar = new FiscalizacaoValidar(); if (fiscValidar.PossuiAI_TED_TAD(documento.Fiscalizacao.Id)) { Validacao.Add(Mensagem.Documento.PossuiAI_TEI_TAD); } String numeroProtocoloAssociado = ValidarFiscalizacaoAssociadaOutroProtocolo(documento.Id.GetValueOrDefault(0), documento.Fiscalizacao.Id); if (!String.IsNullOrWhiteSpace(numeroProtocoloAssociado)) { Validacao.Add(Mensagem.Fiscalizacao.FiscalizacaoJaAssociada(numeroProtocoloAssociado)); } } } if (documento.Tipo.Id <= 0) { return(false); } ListaBus listaBus = new ListaBus(); ProtocoloTipo configuracaoDocumentoTipo = listaBus.TiposDocumento.FirstOrDefault(x => x.Id == documento.Tipo.Id); Documento documentoOriginal = documento.Id.GetValueOrDefault() > 0 ? _da.Obter(documento.Id.Value) as Documento : new Documento(); if (configuracaoDocumentoTipo.ProcessoObrigatorio && documento.ProtocoloAssociado.Id.GetValueOrDefault() <= 0) { Validacao.Add(Mensagem.Documento.ProcessoObrigatorio); } if (configuracaoDocumentoTipo.ChecagemPendenciaObrigatorio) { if (documento.ChecagemPendencia.Id <= 0) { Validacao.Add(Mensagem.Documento.ChecagemPendenciaObrigatoria); } else { ChecagemPendenciaJaAssociada(documento.ChecagemPendencia.Id, documento.Id.GetValueOrDefault()); } } if (configuracaoDocumentoTipo.InteressadoObrigatorio && documento.Interessado.Id == 0) { Validacao.Add(Mensagem.Documento.InteressadoObrigatorio); } if (configuracaoDocumentoTipo.RequerimentoObrigatorio) { if (documento.ChecagemRoteiro.Id <= 0) { Validacao.Add(Mensagem.Documento.ChecagemObrigatoria); } if (documento.Requerimento.Id <= 0) { Validacao.Add(Mensagem.Documento.RequerimentoObrigatorio); } else { if (_requerimentoValidar.RequerimentoDeclaratorio(documento.Requerimento.Id)) { Validacao.Add(Mensagem.Documento.AssociarDeclaratorio); } RequerimentoFinalizado(documento.Requerimento.Id, documento.Id.GetValueOrDefault()); ResponsavelTecnico(documento.Responsaveis); if (documento.Atividades.Count <= 0) { Validacao.Add(Mensagem.Documento.AtividadeObrigatoria); } else { Atividades(documento.Atividades, (documentoOriginal.Requerimento.Id != documento.Requerimento.Id)); if (documentoOriginal.Requerimento.Id == documento.Requerimento.Id) { foreach (Atividade atividade in documentoOriginal.Atividades) { Atividade atividadeAux = documento.Atividades.SingleOrDefault(x => x.Id == atividade.Id); foreach (var finalidade in atividade.Finalidades) { if (!atividadeAux.Finalidades.Exists(x => x.Id == finalidade.Id) && _atividadeDa.VerificarAtividadeAssociadaTitulo(documentoOriginal.Id.Value, false, atividade.Id, finalidade.TituloModelo)) { Validacao.Add(Mensagem.Atividade.FinalidadeAssociadaTitulo(finalidade.TituloModeloTexto)); } } } } } } } #endregion if (documento.Id > 0) { #region Editar if (!_da.EmPosse(documento.Id.Value)) { Validacao.Add(Mensagem.Documento.PosseDocumentoNecessariaEditar); return(Validacao.EhValido); } if ((documento.ChecagemRoteiro.Id > 0 && documento.Requerimento.Id > 0) && (documentoOriginal.ChecagemRoteiro.Id != documento.ChecagemRoteiro.Id || documentoOriginal.Requerimento.Id != documento.Requerimento.Id)) { _requerimentoValidar.RoteirosChecagemRequerimento(documento.ChecagemRoteiro.Id, documento.Requerimento.Id, documento.Requerimento.SituacaoId); } if (documentoOriginal.ChecagemRoteiro.Id != documento.ChecagemRoteiro.Id) { if (_da.VerificarChecagemTemTituloPendencia(ModeloCodigosPendencia, documento.Id.Value).Count > 0) { Validacao.Add(Mensagem.Documento.ChecagemAssociadaTitulo); } else { _busCheckListRoteiro.ValidarAssociarCheckList(documento.ChecagemRoteiro.Id, documento.Id.Value, false); } } if (documentoOriginal.Requerimento.Id != documento.Requerimento.Id) { List <String> titulos = _da.VerificarAtividadeAssociadaTitulo(documento.Id.GetValueOrDefault()); if (titulos.Count < 0) { Validacao.Add(Mensagem.Documento.RequerimentoAssociadoTitulo()); } } if (documento.ChecagemPendencia.Id != documentoOriginal.ChecagemPendencia.Id) { Validacao.Add(Mensagem.Documento.ChecagemPendenciaAlterada); } #endregion } else { #region Criar if (documento.ChecagemRoteiro != null && documento.ChecagemRoteiro.Id > 0) { _busCheckListRoteiro.ValidarAssociarCheckList(documento.ChecagemRoteiro.Id, documento.Id.GetValueOrDefault(), false); } if ((documento.ChecagemRoteiro != null && documento.ChecagemRoteiro.Id > 0) && (documento.Requerimento != null && documento.Requerimento.Id > 0)) { _requerimentoValidar.RoteirosChecagemRequerimento(documento.ChecagemRoteiro.Id, documento.Requerimento.Id, documento.Requerimento.SituacaoId); } #endregion } return(Validacao.EhValido); }
public RequerimentoRelatorio Obter(int id) { RequerimentoRelatorio requerimento = new RequerimentoRelatorio(); #region Banco do Credenciado using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(EsquemaBanco)) { #region Requerimento Comando comando = bancoDeDados.CriarComando(@" select r.id, r.credenciado, trunc(r.data_criacao) data_criacao, r.interessado, r.empreendimento, r.situacao, r.agendamento agendamento, to_char(r.data_criacao, 'dd') dia, to_char(r.data_criacao, 'MM') mes, to_char(r.data_criacao, 'yyyy') ano, r.setor, r.informacoes, p.situacao projeto_digital_situacao, (select pe.municipio from {0}tab_pessoa_endereco pe, {0}tab_credenciado c where pe.pessoa = c.pessoa and c.id = r.credenciado) municipio from {0}tab_requerimento r, tab_projeto_digital p where r.id = p.requerimento and r.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { requerimento.Id = id; requerimento.AutorId = reader.GetValue <int>("credenciado"); requerimento.DataCadastro = Convert.ToDateTime(reader["data_criacao"]); requerimento.DiaCadastro = reader["dia"].ToString(); int mes = reader.GetValue <int>("mes"); requerimento.MesCadastro = _configSys.Obter <List <String> >(ConfiguracaoSistema.KeyMeses).ElementAt(mes - 1); requerimento.AnoCadastro = reader["ano"].ToString(); requerimento.MunicipioId = reader.GetValue <int>("municipio"); requerimento.Interessado.Id = reader.GetValue <int>("interessado"); requerimento.Empreendimento.Id = reader.GetValue <int>("empreendimento"); requerimento.ProjetoDigitalSituacaoId = reader.GetValue <int>("projeto_digital_situacao"); requerimento.SituacaoId = reader.GetValue <int>("situacao"); requerimento.AgendamentoVistoria = reader["agendamento"].ToString(); requerimento.SetorId = reader.GetValue <int>("setor"); requerimento.Informacoes = reader["informacoes"].ToString(); } reader.Close(); } #endregion #region Atividades comando = bancoDeDados.CriarComando(@" select a.id, a.atividade, a.tid from {0}tab_requerimento_atividade a where a.requerimento = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { RequerimentoAtividadeRelatorio atividade; while (reader.Read()) { atividade = new RequerimentoAtividadeRelatorio(); atividade.Id = Convert.ToInt32(reader["atividade"]); atividade.IdRelacionamento = Convert.ToInt32(reader["id"]); #region Atividades/Finalidades/Modelos comando = bancoDeDados.CriarComando(@" select a.id, a.finalidade, a.modelo, a.titulo_anterior_tipo, a.titulo_anterior_id, a.titulo_anterior_numero, a.modelo_anterior_id, a.modelo_anterior_nome, a.modelo_anterior_sigla, a.orgao_expedidor from {0}tab_requerimento_ativ_finalida a where a.requerimento_ativ = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", atividade.IdRelacionamento, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { Finalidade fin; while (readerAux.Read()) { fin = new Finalidade(); fin.IdRelacionamento = Convert.ToInt32(readerAux["id"]); fin.OrgaoExpedidor = readerAux["orgao_expedidor"].ToString(); if (readerAux["finalidade"] != DBNull.Value) { fin.Id = Convert.ToInt32(readerAux["finalidade"]); } if (readerAux["modelo"] != DBNull.Value) { fin.TituloModelo = Convert.ToInt32(readerAux["modelo"]); } if (readerAux["modelo_anterior_id"] != DBNull.Value) { fin.TituloModeloAnteriorId = Convert.ToInt32(readerAux["modelo_anterior_id"]); } fin.TituloModeloAnteriorTexto = readerAux["modelo_anterior_nome"].ToString(); fin.TituloModeloAnteriorSigla = readerAux["modelo_anterior_sigla"].ToString(); if (readerAux["titulo_anterior_tipo"] != DBNull.Value) { fin.TituloAnteriorTipo = Convert.ToInt32(readerAux["titulo_anterior_tipo"]); } if (readerAux["titulo_anterior_id"] != DBNull.Value) { fin.TituloAnteriorId = Convert.ToInt32(readerAux["titulo_anterior_id"]); } fin.TituloAnteriorNumero = readerAux["titulo_anterior_numero"].ToString(); fin.EmitidoPorInterno = (fin.TituloAnteriorTipo != 3); atividade.Finalidades.Add(fin); } readerAux.Close(); } #endregion requerimento.Atividades.Add(atividade); } reader.Close(); } #endregion #region Interessado comando = bancoDeDados.CriarComando(@" select p.id, p.tipo, p.nome, p.cpf, p.rg, p.estado_civil, p.cnpj, p.razao_social, p.nome_fantasia, p.ie, p.apelido, tpp.profissao from {0}tab_pessoa p, {0}tab_pessoa_profissao tpp where p.id = tpp.pessoa(+) and p.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", requerimento.Interessado.Id, DbType.Int32); PessoaRelatorio pessoa = new PessoaRelatorio(); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { pessoa.Id = requerimento.Interessado.Id; pessoa.Tipo = Convert.ToInt32(reader["tipo"]); if (pessoa.IsFisica) { pessoa.Fisica.Nome = reader["nome"].ToString(); pessoa.Fisica.CPF = reader["cpf"].ToString(); pessoa.Fisica.RG = reader["rg"].ToString(); pessoa.Fisica.Apelido = reader["apelido"].ToString(); } else // juridica { pessoa.Juridica.CNPJ = reader["cnpj"].ToString(); pessoa.Juridica.RazaoSocial = reader["razao_social"].ToString(); pessoa.Juridica.NomeFantasia = reader["nome_fantasia"].ToString(); pessoa.Juridica.IE = reader["ie"].ToString(); } } reader.Close(); } #region Meio de Contato comando = bancoDeDados.CriarComando(@"select a.id, a.pessoa, a.meio_contato tipo_contato_id, a.valor from {0}tab_pessoa_meio_contato a where a.pessoa = :pessoa" , EsquemaBanco); comando.AdicionarParametroEntrada("pessoa", pessoa.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { ContatoRelatorio contato; while (reader.Read()) { contato = new ContatoRelatorio(); contato.Id = Convert.ToInt32(reader["id"]); contato.PessoaId = Convert.ToInt32(reader["pessoa"]); contato.TipoContato = (eTipoContato)Enum.Parse(contato.TipoContato.GetType(), reader["tipo_contato_id"].ToString()); contato.Valor = reader["valor"].ToString(); pessoa.MeiosContatos.Add(contato); } reader.Close(); } #endregion #region Endereços comando = bancoDeDados.CriarComando(@" select te.id, te.pessoa, te.cep, te.logradouro, te.bairro, te.estado estado_id, te.municipio municipio_id, te.numero, te.complemento, te.distrito from {0}tab_pessoa_endereco te where te.pessoa = :pessoa" , EsquemaBanco); comando.AdicionarParametroEntrada("pessoa", pessoa.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { pessoa.Endereco.Id = Convert.ToInt32(reader["id"]); pessoa.Endereco.Cep = reader["cep"].ToString(); pessoa.Endereco.Logradouro = reader["logradouro"].ToString(); pessoa.Endereco.Bairro = reader["bairro"].ToString(); pessoa.Endereco.EstadoId = Convert.IsDBNull(reader["estado_id"]) ? 0 : Convert.ToInt32(reader["estado_id"]); pessoa.Endereco.MunicipioId = Convert.IsDBNull(reader["municipio_id"]) ? 0 : Convert.ToInt32(reader["municipio_id"]); pessoa.Endereco.Numero = reader["numero"].ToString(); pessoa.Endereco.Complemento = reader["complemento"].ToString(); pessoa.Endereco.Distrito = reader["distrito"].ToString(); } reader.Close(); } #endregion requerimento.Interessado = pessoa; #endregion #region Responsáveis comando = bancoDeDados.CriarComando(@" select pr.id, pr.responsavel, pr.funcao funcao, pr.numero_art, nvl(p.nome, p.razao_social) nome, nvl(p.cpf, p.cnpj) cpf_cnpj, nvl(p.rg, p.ie) rg_ie, p.tipo, trunc(p.data_nascimento) data_nascimento from {0}tab_requerimento_responsavel pr, {0}tab_pessoa p where pr.responsavel = p.id and pr.requerimento = :requerimento" , EsquemaBanco); comando.AdicionarParametroEntrada("requerimento", id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { ResponsavelTecnicoRelatorio responsavel; while (reader.Read()) { responsavel = new ResponsavelTecnicoRelatorio(); responsavel.Id = Convert.ToInt32(reader["responsavel"]); responsavel.FuncaoTexto = reader["funcao"].ToString(); responsavel.CpfCnpj = reader["cpf_cnpj"].ToString(); responsavel.RgIe = reader["rg_ie"].ToString(); responsavel.NomeRazao = reader["nome"].ToString(); responsavel.NumeroArt = reader["numero_art"].ToString(); if (reader["data_nascimento"] != null && !Convert.IsDBNull(reader["data_nascimento"])) { responsavel.DataNascimento = Convert.ToDateTime(reader["data_nascimento"]).ToShortDateString(); } responsavel.DataVencimento = "Falta"; #region Meio de Contato comando = bancoDeDados.CriarComando(@"select a.id, a.pessoa, a.meio_contato tipo_contato_id, a.valor from tab_pessoa_meio_contato a where a.pessoa = :pessoa" , EsquemaBanco); comando.AdicionarParametroEntrada("pessoa", responsavel.Id, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { ContatoRelatorio contato; while (readerAux.Read()) { contato = new ContatoRelatorio(); contato.Id = Convert.ToInt32(readerAux["id"]); contato.PessoaId = Convert.ToInt32(readerAux["pessoa"]); contato.TipoContato = (eTipoContato)Enum.Parse(contato.TipoContato.GetType(), readerAux["tipo_contato_id"].ToString()); contato.Valor = readerAux["valor"].ToString(); responsavel.MeiosContatos.Add(contato); } readerAux.Close(); } #endregion #region Endereços comando = bancoDeDados.CriarComando(@" select te.id, te.pessoa, te.cep, te.logradouro, te.bairro, te.estado estado_id, te.municipio municipio_id, te.numero, te.complemento, te.distrito from {0}tab_pessoa_endereco te where te.pessoa = :pessoa" , EsquemaBanco); comando.AdicionarParametroEntrada("pessoa", responsavel.Id, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { while (readerAux.Read()) { responsavel.Endereco.Id = Convert.ToInt32(readerAux["id"]); responsavel.Endereco.Cep = readerAux["cep"].ToString(); responsavel.Endereco.Logradouro = readerAux["logradouro"].ToString(); responsavel.Endereco.Bairro = readerAux["bairro"].ToString(); responsavel.Endereco.EstadoId = Convert.IsDBNull(readerAux["estado_id"]) ? 0 : Convert.ToInt32(readerAux["estado_id"]); responsavel.Endereco.MunicipioId = Convert.IsDBNull(readerAux["municipio_id"]) ? 0 : Convert.ToInt32(readerAux["municipio_id"]); responsavel.Endereco.Numero = readerAux["numero"].ToString(); responsavel.Endereco.Complemento = readerAux["complemento"].ToString(); responsavel.Endereco.Distrito = readerAux["distrito"].ToString(); } readerAux.Close(); } #endregion requerimento.Responsaveis.Add(responsavel); } reader.Close(); } #endregion #region Empreendimento if (requerimento.Empreendimento.Id > 0) { comando = bancoDeDados.CriarComando(@" select e.id, e.codigo, e.segmento, e.denominador, e.cnpj, e.atividade, e.nome_fantasia, e.denominador razao_social from tab_empreendimento e where e.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", requerimento.Empreendimento.Id, DbType.Int32); EmpreendimentoRelatorio empreendimento = new EmpreendimentoRelatorio(); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { empreendimento.Id = requerimento.Empreendimento.Id; empreendimento.Codigo = reader.GetValue <int>("codigo"); empreendimento.CNPJ = reader["cnpj"].ToString(); empreendimento.NomeFantasia = reader["nome_fantasia"].ToString(); empreendimento.Denominador = reader["denominador"].ToString(); empreendimento.SegmentoTexto = reader["segmento"].ToString(); empreendimento.AtividadeTexto = Convert.ToString(reader["atividade"]); empreendimento.NomeRazao = Convert.ToString(reader["razao_social"]); } reader.Close(); } #region Endereços comando = bancoDeDados.CriarComando(@" select te.id, te.empreendimento, te.correspondencia, te.cep, te.logradouro, te.bairro, te.estado estado_id, te.municipio municipio_id, te.numero, te.complemento, (case when te.zona = 1 then 'Urbana' else 'Rural' end) zona, te.distrito, te.corrego, te.complemento from tab_empreendimento_endereco te where te.empreendimento = :empreendimento" , EsquemaBanco); comando.AdicionarParametroEntrada("empreendimento", empreendimento.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { EnderecoRelatorio end; while (reader.Read()) { end = new EnderecoRelatorio(); end.Id = Convert.ToInt32(reader["id"]); end.Correspondencia = Convert.IsDBNull(reader["correspondencia"]) ? 0 : Convert.ToInt32(reader["correspondencia"]); end.Cep = reader["cep"].ToString(); end.Logradouro = reader["logradouro"].ToString(); end.Bairro = reader["bairro"].ToString(); end.EstadoId = Convert.IsDBNull(reader["estado_id"]) ? 0 : Convert.ToInt32(reader["estado_id"]); end.MunicipioId = Convert.IsDBNull(reader["municipio_id"]) ? 0 : Convert.ToInt32(reader["municipio_id"]); end.Numero = reader["numero"].ToString(); end.Complemento = reader["complemento"].ToString(); end.Corrego = reader["corrego"].ToString(); end.Zona = reader["zona"].ToString(); end.Distrito = reader["distrito"].ToString(); end.Complemento = reader["complemento"].ToString(); empreendimento.Enderecos.Add(end); } reader.Close(); } #endregion #region Coordenada comando = bancoDeDados.CriarComando(@" select aec.id, aec.tipo_coordenada, aec.datum, aec.easting_utm, aec.northing_utm, aec.fuso_utm, aec.hemisferio_utm, aec.latitude_gms, aec.longitude_gms, aec.latitude_gdec, aec.longitude_gdec, aec.forma_coleta forma_coleta, aec.local_coleta local_coleta, aec.datum datum_texto, aec.hemisferio_utm hemisferio_utm_texto from {0}tab_empreendimento_coord aec where aec.empreendimento = :empreendimentoid" , EsquemaBanco); comando.AdicionarParametroEntrada("empreendimentoid", empreendimento.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { empreendimento.Coordenada.Id = Convert.ToInt32(reader["id"]); empreendimento.Coordenada.EastingUtmTexto = Convert.ToString(reader["easting_utm"]); empreendimento.Coordenada.NorthingUtmTexto = Convert.ToString(reader["northing_utm"]); empreendimento.Coordenada.FusoUtm = Convert.IsDBNull(reader["fuso_utm"]) ? 0 : Convert.ToInt32(reader["fuso_utm"]); empreendimento.Coordenada.HemisferioUtm = Convert.IsDBNull(reader["hemisferio_utm"]) ? 0 : Convert.ToInt32(reader["hemisferio_utm"]); empreendimento.Coordenada.LatitudeGms = reader["latitude_gms"].ToString(); empreendimento.Coordenada.LongitudeGms = reader["longitude_gms"].ToString(); empreendimento.Coordenada.LatitudeGdec = Convert.IsDBNull(reader["latitude_gdec"]) ? 0 : Convert.ToDouble(reader["latitude_gdec"]); empreendimento.Coordenada.LongitudeGdec = Convert.IsDBNull(reader["longitude_gdec"]) ? 0 : Convert.ToDouble(reader["longitude_gdec"]); empreendimento.Coordenada.Datum.Id = Convert.ToInt32(reader["datum"]); empreendimento.Coordenada.Tipo.Id = Convert.ToInt32(reader["tipo_coordenada"]); empreendimento.Coordenada.FormaColetaTexto = Convert.ToString(reader["forma_coleta"]); empreendimento.Coordenada.LocalColetaTexto = Convert.ToString(reader["local_coleta"]); } reader.Close(); } #endregion #region Meio de Contato comando = bancoDeDados.CriarComando(@"select a.id, a.empreendimento, a.meio_contato tipo_contato_id, a.valor from {0}tab_empreendimento_contato a where a.empreendimento = :empreendimento" , EsquemaBanco); comando.AdicionarParametroEntrada("empreendimento", empreendimento.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { ContatoRelatorio contato; while (reader.Read()) { contato = new ContatoRelatorio(); contato.Id = Convert.ToInt32(reader["id"]); contato.PessoaId = Convert.ToInt32(reader["empreendimento"]); contato.TipoContato = (eTipoContato)Enum.Parse(contato.TipoContato.GetType(), reader["tipo_contato_id"].ToString()); contato.Valor = reader["valor"].ToString(); empreendimento.MeiosContatos.Add(contato); } reader.Close(); } #endregion requerimento.Empreendimento = empreendimento; } #endregion #region Elaborador comando = bancoDeDados.CriarComando(@" select nvl(p.nome, p.razao_social) NomeRazaoSocial, lc.texto TipoTexto from {0}tab_credenciado c, {0}tab_pessoa p, {0}lov_credenciado_tipo lc where c.pessoa = p.id and c.tipo = lc.id and c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", requerimento.AutorId, DbType.Int32); requerimento.UsuarioCredenciado = bancoDeDados.ObterEntity <CredenciadoRelatorio>(comando); #endregion } #endregion #region Banco do Interno using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { #region Requerimento requerimento.Municipio = ObterMunicipio(requerimento.MunicipioId, bancoDeDados); #region Situacao Comando comando = bancoDeDados.CriarComando(@"select l.texto situacao_texto from {0}lov_requerimento_situacao l where l.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", requerimento.SituacaoId, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { requerimento.SituacaoTexto = reader["situacao_texto"].ToString(); } reader.Close(); } #endregion #region Agendamento if (!string.IsNullOrWhiteSpace(requerimento.AgendamentoVistoria)) { comando = bancoDeDados.CriarComando(@"select l.texto agendamento from {0}lov_requerimento_agendamento l where l.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(requerimento.AgendamentoVistoria), DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { requerimento.AgendamentoVistoria = reader["agendamento"].ToString(); } reader.Close(); } } #endregion #region Setor if (requerimento.SetorId > 0) { comando = bancoDeDados.CriarComando(@"select m.texto from tab_setor_endereco se, lov_municipio m where se.municipio = m.id (+) and se.setor = :setor" , EsquemaInterno); comando.AdicionarParametroEntrada("setor", Convert.ToInt32(requerimento.SetorId), DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { requerimento.Municipio = reader["texto"].ToString(); } reader.Close(); } } #endregion #endregion if (requerimento.Atividades.Count > 0) { #region Atividades comando = bancoDeDados.CriarComando(@"select b.id, b.atividade atividade_texto, b.conclusao from {0}tab_atividade b", EsquemaInterno); comando.DbCommand.CommandText += comando.AdicionarIn("where", "b.id", DbType.Int32, requerimento.Atividades.Select(x => x.Id).ToList()); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { int idr = Convert.ToInt32(reader["id"]); RequerimentoAtividadeRelatorio atividade = requerimento.Atividades.FirstOrDefault(x => x.Id == idr); atividade.NomeAtividade = reader["atividade_texto"].ToString(); atividade.Conclusao = reader.GetValue <string>("conclusao"); } reader.Close(); } #endregion #region Atividades/Finalidades/Modelos comando = bancoDeDados.CriarComando(@" select ltf.texto finalidade_texto, tm.nome modelo_nome from {0}tab_titulo_modelo tm, {0}lov_titulo_finalidade ltf where tm.id = :modelo and ltf.id = :fin" , EsquemaInterno); comando.AdicionarParametroEntrada("fin", DbType.Int32); comando.AdicionarParametroEntrada("modelo", DbType.Int32); var finalidades = requerimento.Atividades.SelectMany(x => x.Finalidades); foreach (Finalidade f in finalidades) { comando.SetarValorParametro("fin", f.Id); comando.SetarValorParametro("modelo", f.TituloModelo); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { if (readerAux.Read()) { f.Texto = readerAux["finalidade_texto"].ToString(); f.TituloModeloTexto = readerAux["modelo_nome"].ToString(); } readerAux.Close(); } } #endregion } #region Interessado #region Profissao if (!string.IsNullOrWhiteSpace(requerimento.Interessado.Fisica.Profissao)) { comando = bancoDeDados.CriarComando(@"select texto from {0}tab_profissao where id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(requerimento.Interessado.Fisica.Profissao), DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { requerimento.Interessado.Fisica.Profissao = reader["texto"].ToString(); } reader.Close(); } } #endregion #region Meios de Contato comando = bancoDeDados.CriarComando(@"select b.id, b.texto, b.mascara from {0}tab_meio_contato b", EsquemaInterno); comando.DbCommand.CommandText += comando.AdicionarIn("where", "b.id", DbType.Int32, requerimento.Interessado.MeiosContatos.Select(x => x.Id).ToList()); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { int idr = Convert.ToInt32(reader["id"]); var contatos = requerimento.Interessado.MeiosContatos.Where(x => x.Id == idr).ToList(); contatos.ForEach(x => { x.TipoTexto = reader["texto"].ToString(); x.Mascara = reader.GetValue <string>("mascara"); }); } reader.Close(); } #endregion #region Endereco EnderecoRelatorio end = requerimento.Interessado.Endereco; end.MunicipioTexto = ObterMunicipio(end.MunicipioId, bancoDeDados); end.EstadoSigla = ObterEstado(end.EstadoId, bancoDeDados); #endregion #endregion #region Responsaveis #region Funcao comando = bancoDeDados.CriarComando(@"select lf.texto funcao from {0}lov_protocolo_resp_funcao lf where lf.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", DbType.Int32); foreach (var resp in requerimento.Responsaveis) { comando.SetarValorParametro("id", int.Parse(resp.FuncaoTexto)); resp.FuncaoTexto = bancoDeDados.ExecutarScalar <string>(comando); } #endregion #region Meios de Contato comando = bancoDeDados.CriarComando(@"select b.id, b.texto, b.mascara from {0}tab_meio_contato b", EsquemaInterno); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { int idr = Convert.ToInt32(reader["id"]); var contatos = requerimento.Responsaveis.SelectMany(x => x.MeiosContatos).Where(x => x.Id == idr).ToList(); contatos.ForEach(x => { x.TipoTexto = reader["texto"].ToString(); x.Mascara = reader.GetValue <string>("mascara"); }); } reader.Close(); } #endregion #region Endereços foreach (var endResp in requerimento.Responsaveis.Select(x => x.Endereco)) { endResp.MunicipioTexto = ObterMunicipio(endResp.MunicipioId, bancoDeDados); endResp.EstadoSigla = ObterEstado(endResp.EstadoId, bancoDeDados); } #endregion #endregion #region Empreendimento EmpreendimentoRelatorio emp = requerimento.Empreendimento; #region Atividade if (!string.IsNullOrWhiteSpace(emp.AtividadeTexto)) { comando = bancoDeDados.CriarComando(@"select a.atividade from {0}tab_empreendimento_atividade a where a.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(emp.AtividadeTexto), DbType.Int32); requerimento.Empreendimento.AtividadeTexto = bancoDeDados.ExecutarScalar <string>(comando); } #endregion #region Segmento if (!string.IsNullOrWhiteSpace(emp.SegmentoTexto)) { comando = bancoDeDados.CriarComando(@"select les.texto from {0}lov_empreendimento_segmento les where les.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(emp.SegmentoTexto), DbType.Int32); requerimento.Empreendimento.SegmentoTexto = bancoDeDados.ExecutarScalar <string>(comando); } #endregion #region Endereços foreach (var endEmp in emp.Enderecos) { endEmp.MunicipioTexto = ObterMunicipio(endEmp.MunicipioId, bancoDeDados); endEmp.EstadoSigla = ObterEstado(endEmp.EstadoId, bancoDeDados); } #endregion #region Meios de Contato comando = bancoDeDados.CriarComando(@"select b.id, b.texto, b.mascara from tab_meio_contato b", EsquemaInterno); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { int idr = Convert.ToInt32(reader["id"]); var contatos = emp.MeiosContatos.Where(x => x.Id == idr).ToList(); contatos.ForEach(x => { x.TipoTexto = reader["texto"].ToString(); x.Mascara = reader.GetValue <string>("mascara"); }); } reader.Close(); } #endregion #region Coordenada ListaBus bus = new ListaBus(); emp.Coordenada.DatumTexto = ObterDatum(emp.Coordenada.Datum.Id, bancoDeDados); emp.Coordenada.Tipo.Texto = ObterTipoCoordenada(emp.Coordenada.Tipo.Id, bancoDeDados); if (!string.IsNullOrWhiteSpace(emp.Coordenada.HemisferioUtmTexto)) { emp.Coordenada.HemisferioUtmTexto = bus.Hemisferios.FirstOrDefault(x => x.Id == Convert.ToInt32(emp.Coordenada.HemisferioUtmTexto)).Texto; } if (!string.IsNullOrWhiteSpace(emp.Coordenada.FormaColetaTexto)) { comando = bancoDeDados.CriarComando(@"select c.texto from {0}lov_empreendimento_forma_colet c where c.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(emp.Coordenada.FormaColetaTexto), DbType.Int32); emp.Coordenada.FormaColetaTexto = bancoDeDados.ExecutarScalar <string>(comando); } if (!string.IsNullOrWhiteSpace(emp.Coordenada.LocalColetaTexto)) { comando = bancoDeDados.CriarComando(@"select c.texto from {0}lov_empreendimento_local_colet c where c.id = :id", EsquemaInterno); comando.AdicionarParametroEntrada("id", Convert.ToInt32(emp.Coordenada.LocalColetaTexto), DbType.Int32); emp.Coordenada.LocalColetaTexto = bancoDeDados.ExecutarScalar <string>(comando); } #endregion #endregion } #endregion return(requerimento); }
public ActionResult OutrosLegitimacaoTerraDevoluta(EspecificidadeVME especificidade) { OutrosLegitimacaoTerraDevolutaBus bus = new OutrosLegitimacaoTerraDevolutaBus(); List <Protocolos> lstProcessosDocumentos = _busTitulo.ObterProcessosDocumentos(especificidade.ProtocoloId); List <AtividadeSolicitada> lstAtividades = new List <AtividadeSolicitada>(); List <PessoaLst> destinatarios = new List <PessoaLst>(); Titulo titulo = new Titulo(); TituloModelo modelo = _tituloModeloBus.Obter(especificidade.ModeloId ?? 0); OutrosLegitimacaoTerraDevoluta outros = new OutrosLegitimacaoTerraDevoluta(); int atividadeSelecionada = 0; if (especificidade.TituloId > 0) { titulo = _busTitulo.Obter(especificidade.TituloId); titulo.Atividades = _busTitulo.ObterAtividades(especificidade.TituloId); if (titulo.Atividades.Count > 0) { atividadeSelecionada = titulo.Atividades[0].Id; } especificidade.AtividadeProcDocReq = _busTitulo.ObterProcDocReqEspecificidade(especificidade.TituloId); if (titulo.Situacao.Id == (int)eTituloSituacao.Cadastrado) { outros = bus.Obter(especificidade.TituloId) as OutrosLegitimacaoTerraDevoluta; destinatarios = _busTitulo.ObterDestinatarios(especificidade.ProtocoloId); } else { outros = bus.ObterHistorico(especificidade.TituloId, 0) as OutrosLegitimacaoTerraDevoluta; } } if (especificidade.ProtocoloId > 0) { if (_busEspecificidade.ExisteProcDocFilhoQueFoiDesassociado(especificidade.TituloId)) { lstAtividades = new List <AtividadeSolicitada>(); titulo.Atividades = new List <Atividade>(); } else { lstAtividades = _busAtividade.ObterAtividadesLista(especificidade.AtividadeProcDocReq.ToProtocolo()); } if (!especificidade.IsVisualizar) { _busEspecificidade.PossuiAtividadeEmAndamento(especificidade.ProtocoloId); } } if (!Validacao.EhValido) { return(Json(new { Msg = Validacao.Erros, EhValido = Validacao.EhValido, @Html = string.Empty }, JsonRequestBehavior.AllowGet)); } ListaBus listaBus = new ListaBus(); OutrosLegitimacaoTerraDevolutaVM vm = new OutrosLegitimacaoTerraDevolutaVM( lstProcessosDocumentos, lstAtividades, destinatarios, bus.ObterDominios(especificidade.ProtocoloId), outros, listaBus.Municipios(ViewModelHelper.EstadoDefaultId()), especificidade.AtividadeProcDocReqKey, especificidade.IsVisualizar, atividadeSelecionada); if (especificidade.TituloId > 0) { vm.Atividades.Atividades = titulo.Atividades; } string htmlEspecificidade = ViewModelHelper.RenderPartialViewToString(ControllerContext, "~/Areas/Especificidades/Views/Outros/OutrosLegitimacaoTerraDevoluta.ascx", vm); return(Json(new { Msg = Validacao.Erros, EhValido = Validacao.EhValido, @Html = htmlEspecificidade }, JsonRequestBehavior.AllowGet)); }
internal bool Salvar(HabilitacaoEmissaoPTV habilitacao) { if (habilitacao.Funcionario.Id <= 0) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.VerificarCPFObrigatorio); return(false); } if (string.IsNullOrEmpty(habilitacao.NumeroHabilitacao)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoObrigatorio); } else { if (habilitacao.NumeroHabilitacao.Length != 8) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoInvalido); } else if (_da.ExisteNumeroHabilitacao(habilitacao.NumeroHabilitacao, habilitacao.Funcionario.Id)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoJaExiste); } } if (string.IsNullOrEmpty(habilitacao.RG)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.RGObrigatorio); } if (string.IsNullOrEmpty(habilitacao.NumeroMatricula)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumberoMatriculaObrigatorio); } else if (habilitacao.NumeroMatricula.Length != 7) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumberoMatriculaInvalido); } if (habilitacao.EstadoRegistro <= 0) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.UFHabilitacaoObrigatorio); } else { ListaBus _busLista = new ListaBus(); Estado estado = _busLista.Estados.SingleOrDefault(x => String.Equals(x.Texto, _configSys.Obter <String>(ConfiguracaoSistema.KeyEstadoDefault), StringComparison.InvariantCultureIgnoreCase)) ?? new Estado(); if (habilitacao.EstadoRegistro != estado.Id) { if (string.IsNullOrEmpty(habilitacao.NumeroVistoCREA)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroVistoCREAObrigatorio); } } else { if (string.IsNullOrEmpty(habilitacao.NumeroCREA)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroCREAObrigatorio); } } } if (string.IsNullOrEmpty(habilitacao.TelefoneResidencial) && string.IsNullOrEmpty(habilitacao.TelefoneCelular) && string.IsNullOrEmpty(habilitacao.TelefoneComercial)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.MeioContatoObrigatorio); } if (string.IsNullOrEmpty(habilitacao.Endereco.Logradouro)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.LogradouroObrigatorio); } if (string.IsNullOrEmpty(habilitacao.Endereco.Bairro)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.BairroObrigatorio); } if (habilitacao.Endereco.EstadoId <= 0) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.UFObrigatorio); } if (habilitacao.Endereco.MunicipioId <= 0) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.MunicipioObrigatorio); } if (string.IsNullOrEmpty(habilitacao.Endereco.Numero)) { Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroObrigatorio); } return(Validacao.EhValido); }