public Specification <TituloMovimento> MontarSpecificationTituloMovimentoRelApropriacaoPorClasse(RelApropriacaoPorClasseFiltro filtro, int?idUsuario) { var specification = (Specification <TituloMovimento>) new TrueSpecification <TituloMovimento>(); if (usuarioAppService.UsuarioPossuiCentroCustoDefinidoNoModulo(idUsuario, Resource.Sigim.NomeModulo.Financeiro)) { specification &= TituloMovimentoSpecification.UsuarioPossuiAcessoAoCentroCusto(idUsuario, Resource.Sigim.NomeModulo.Financeiro); } else { specification &= TituloMovimentoSpecification.EhCentroCustoAtivo(); } if (filtro.CentroCusto != null) { specification &= TituloMovimentoSpecification.PertenceAoCentroCustoIniciadoPor(filtro.CentroCusto.Codigo); } specification &= TituloMovimentoSpecification.DataPeriodoMaiorOuIgualRelApropriacaoPorClasse(filtro.DataInicial); specification &= TituloMovimentoSpecification.DataPeriodoMenorOuIgualRelApropriacaoPorClasse(filtro.DataFinal); specification &= TituloMovimentoSpecification.EhSituacaoIgualConferido(); specification &= TituloMovimentoSpecification.PossuiContaCorrente(); specification &= TituloMovimentoSpecification.EhTipoParticipanteTitular(); specification &= TituloMovimentoSpecification.EhValorMovimentoMaiorQueZero(); if (filtro.ListaClasseReceita.Count > 0) { string[] arrayCodigoClasse = PopulaArrayComCodigosDeClassesSelecionadas(filtro.ListaClasseReceita); if (arrayCodigoClasse.Length > 0) { specification &= TituloMovimentoSpecification.SaoClassesExistentes(arrayCodigoClasse); } } return(specification); }
public RelApropriacaoPorClasseListaViewModel() { Filtro = new RelApropriacaoPorClasseFiltro(); }