private bool Duplicado(DossieEsperado dossieEsperado) { var dossieExistente = this.dossieEsperadoRepositorio.ObterDossie(dossieEsperado); if (dossieExistente != null && dossieExistente != dossieEsperado) { throw new RegraDeNegocioException("Dossiê já cadastrado"); } return(false); }
public DossieEsperado Atualizacao(DossieEsperado dossieCriado, DossieEsperado dossieCadastrado) { dossieCadastrado.MatriculaAgente = dossieCriado.MatriculaAgente; dossieCadastrado.NumeroContrato = dossieCriado.NumeroContrato; dossieCadastrado.Hipoteca = dossieCriado.Hipoteca; dossieCadastrado.NomeDoMutuario = dossieCriado.NomeDoMutuario; dossieCadastrado.CodigoDeBarras = dossieCriado.CodigoDeBarras; dossieCadastrado.UfArquivo = dossieCriado.UfArquivo; dossieCadastrado.Situacao = dossieCriado.Situacao; dossieCadastrado.Identificacao = dossieCriado.Identificacao; return(dossieCadastrado); }
public void AddPendenciaDeDossie(ArquivoColeta arquivoDeColeta, DossieEsperado dossieNoBanco, DossieEsperado dossieEsperadoNovo) { var pendenciaNova = this.CriarPendencia(arquivoDeColeta, PendenciaColeta.TipoDossie, string.Empty); pendenciaNova.ProcessoBd = dossieNoBanco.IdentificacaoFormatada(); pendenciaNova.FolderBd = dossieNoBanco.CodigoDeBarras; pendenciaNova.CaixaBd = dossieNoBanco.Pacote.Identificacao; pendenciaNova.StatusBd = dossieNoBanco.LoteStatus(); pendenciaNova.ColetaBd = dossieNoBanco.Coleta; pendenciaNova.ProcessoCsv = dossieEsperadoNovo.IdentificacaoFormatada(); pendenciaNova.FolderCsv = dossieEsperadoNovo.CodigoDeBarras; pendenciaNova.CaixaCsv = dossieEsperadoNovo.Identificacao; }
public void Executar(string acaoLogDossieEsperado, DossieEsperado dossieEsperado, string observacao) { var logDossieEsperado = new LogDossieEsperado { Acao = acaoLogDossieEsperado, DataRegistro = DateTime.Now, Usuario = (Usuario)this.userSession.UsuarioAtual, DossieEsperado = dossieEsperado, Observacao = observacao }; this.logDossieEsperadoRepositorio.Salvar(logDossieEsperado); }
public DossieEsperado Criar(string[] colunas, int caixaId) { var dossieEsperado = new DossieEsperado() { MatriculaAgente = this.ObterMatriculaAgente(colunas[2]), NumeroContrato = this.ObterNumeroContrato(colunas[2]), Hipoteca = this.ObterNumeroHipoteca(colunas[2]), NomeDoMutuario = null, CodigoDeBarras = colunas[1], UfArquivo = colunas[3], Situacao = "DC", Identificacao = this.ObterCaixa(colunas[0]), PacoteId = caixaId }; return(dossieEsperado); }
private Ocorrencia GerarOcorrencia(DossieEsperado dossieEsperado, Ocorrencia ocorrencia) { return(new Ocorrencia { OcorrenciaPaiId = ocorrencia.Id, DataRegistro = ocorrencia.DataRegistro, Status = ocorrencia.Status, Tipo = ocorrencia.Tipo, Pacote = ocorrencia.Pacote, DossieEsperado = dossieEsperado, Documento = ocorrencia.Documento, Lote = dossieEsperado.Lote(), UsuarioRegistro = ocorrencia.UsuarioRegistro, UsuarioResponsavel = ocorrencia.UsuarioResponsavel, Observacao = ocorrencia.Observacao, GrupoId = ocorrencia.GrupoId }); }
private DossieEsperado ObterAtualizado(DossieEsperado dossieEsperado) { var dossieNoBanco = this.dossieEsperadoRepositorio.ObterComLotes(dossieEsperado.Id); if (dossieNoBanco.NaoTemConteudo()) { this.dossieEsperadoRepositorio.Salvar(dossieEsperado); return(dossieEsperado); } dossieNoBanco.NumeroContrato = dossieEsperado.NumeroContrato; dossieNoBanco.MatriculaAgente = dossieEsperado.MatriculaAgente; dossieNoBanco.CodigoDeBarras = dossieEsperado.CodigoDeBarras; dossieNoBanco.Hipoteca = dossieEsperado.Hipoteca; dossieNoBanco.NomeDoMutuario = dossieEsperado.NomeDoMutuario; dossieNoBanco.UfArquivo = dossieEsperado.UfArquivo; this.dossieEsperadoRepositorio.Salvar(dossieNoBanco); return(dossieNoBanco); }
public DossieEsperado Executar(DossieEsperado dossieEsperado) { if (this.Duplicado(dossieEsperado)) { return(null); } if (dossieEsperado.Id < 1) { dossieEsperado.Situacao = "DC"; dossieEsperado.Status = "N"; } var dossieAtualizado = this.ObterAtualizado(dossieEsperado); var processo = dossieAtualizado.Processo(); if (processo.NaoTemConteudo() == false) { this.processoRepositorio.AlterarIdentificacao(processo.Id, dossieAtualizado.IdentificacaoFormatada(), dossieAtualizado.CodigoDeBarra()); } return(dossieAtualizado); }
public IList <Processo> Pesquisar(PesquisaDossieViewModel filtros) { Processo processo = null; Lote lote = null; Pacote pacote = null; PacoteProcessado pacoteProcessado = null; DossieEsperado dossieEsperado = null; Ocorrencia ultimaOcorrencia = null; var query = this.Session.QueryOver <Processo>(() => processo) .JoinAlias(() => processo.Lote, () => lote) .JoinAlias(() => lote.Pacote, () => pacote) .Left.JoinAlias(() => lote.PacoteProcessado, () => pacoteProcessado) .JoinAlias(() => lote.DossieEsperado, () => dossieEsperado) .Fetch(x => x.Lote).Eager .Fetch(x => x.Lote.Pacote).Eager .Fetch(x => x.Lote.PacoteProcessado).Eager .Fetch(x => x.Lote.DossieEsperado).Eager .Fetch(x => x.Lote.LoteCef).Eager .Left.JoinAlias(() => lote.DossieEsperado.UltimaOcorrencia, () => ultimaOcorrencia) .Fetch(x => x.Lote.DossieEsperado.UltimaOcorrencia).Eager; ////if (string.IsNullOrEmpty(filtros.DataInicio) == false) ////{ //// query.Where(() => lote.DataCriacao >= filtros.ObjetoDataInicio()); ////} ////if (string.IsNullOrEmpty(filtros.DataFim) == false) ////{ //// query.Where(() => lote.DataCriacao < filtros.ObjetoDataFim().AddDays(1)); ////} ////if (string.IsNullOrEmpty(filtros.DataInicioMovimento) == false) ////{ //// query.Where(() => pacoteProcessado.ArquivoRecebidoEm >= filtros.ObjetoDataInicioMovimento()); ////} ////if (string.IsNullOrEmpty(filtros.DataFimMovimento) == false) ////{ //// query.Where(() => pacoteProcessado.ArquivoRecebidoEm < filtros.ObjetoDataFimMovimento().AddDays(1)); ////} if (string.IsNullOrEmpty(filtros.Identificacao) == false) { query.WhereRestrictionOn(() => lote.Identificacao).IsLike(".%" + filtros.Identificacao + "%-", MatchMode.Anywhere); } if (string.IsNullOrEmpty(filtros.IdentificacaoCompleta) == false) { query.Where(() => processo.Identificacao == filtros.IdentificacaoCompleta); } if (filtros.LoteId > 0) { query.Where(() => processo.Lote.Id == filtros.LoteId); } if (filtros.ProcessoId > 0) { query.Where(() => processo.Id == filtros.ProcessoId); } if (string.IsNullOrEmpty(filtros.FolderCompleto) == false) { query.Where(() => dossieEsperado.CodigoDeBarras == filtros.FolderCompleto); } if (string.IsNullOrEmpty(filtros.Agente) == false) { query.WhereRestrictionOn(x => x.Identificacao).IsLike(filtros.Agente + "%.", MatchMode.Anywhere); } if (string.IsNullOrEmpty(filtros.Contrato) == false) { query.WhereRestrictionOn(() => processo.Identificacao).IsInsensitiveLike(filtros.Contrato.ToUpper(), MatchMode.Anywhere); } if (filtros.TipoProcessoId > 0) { query.Where(() => processo.TipoDeProcesso.Id == filtros.TipoProcessoId); } if (string.IsNullOrEmpty(filtros.Caixa) == false) { query.WhereRestrictionOn(() => pacote.Identificacao).IsLike("%" + filtros.Caixa.ToUpper() + "%", MatchMode.Anywhere); } if (string.IsNullOrEmpty(filtros.Folder) == false) { query.WhereRestrictionOn(() => dossieEsperado.CodigoDeBarras).IsLike("%" + filtros.Folder.ToUpper() + "%", MatchMode.Anywhere); } if (filtros.ColetaId > 0) { query.Where(() => pacote.Coleta.Id == filtros.ColetaId); } if (filtros.LotecefId > 0) { query.Where(() => lote.LoteCef.Id == filtros.LotecefId); } if (string.IsNullOrEmpty(filtros.Fase) == false) { query.Where(() => lote.Status == LoteStatus.ObterPorSigla(filtros.Fase)); } ////if (filtros.UltimoLoteId > 0) ////{ //// if (filtros.TipoDeOrdenacao == "A") //// { //// query.Where(() => lote.Id > filtros.UltimoLoteId); //// } //// else //// { //// query.Where(() => lote.Id < filtros.UltimoLoteId); //// } ////} query.Where(() => lote.Status != LoteStatus.Excluido && lote.Status != LoteStatus.Erro); switch (filtros.ColunaDeOrdenacao) { case "tipo": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => processo.TipoDeProcesso.Id).Asc(); } else { query.OrderBy(() => processo.TipoDeProcesso.Id).Desc(); } break; case "identificacao": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => processo.Identificacao).Asc(); } else { query.OrderBy(() => processo.Identificacao).Desc(); } break; case "caixa": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => pacote.Identificacao).Asc(); } else { query.OrderBy(() => pacote.Identificacao).Desc(); } break; case "data": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => lote.DataCriacao).Asc(); } else { query.OrderBy(() => lote.DataCriacao).Desc(); } break; case "dataMovimento": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => pacoteProcessado.ArquivoRecebidoEm).Asc(); } else { query.OrderBy(() => pacoteProcessado.ArquivoRecebidoEm).Desc(); } break; case "status": if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => lote.Status).Asc().ThenBy(() => processo.Status).Asc(); } else { query.OrderBy(() => lote.Status).Desc().ThenBy(() => processo.Status).Desc(); } break; default: if (filtros.TipoDeOrdenacao == "A") { query.OrderBy(() => lote.Id).Asc(); } else { query.OrderBy(() => lote.Id).Desc(); } break; } return(query .TransformUsing(Transformers.DistinctRootEntity) .Paginado(filtros.PaginaId, 30) ////.Take(30) .List()); }