public FileDownloadDTO ExportarRelStatusVenda(RelStatusVendaFiltro filtro, int?usuarioId, FormatoExportacaoArquivo formato) { if (!UsuarioLogado.IsInRole(Funcionalidade.RelStatusVendaImprimir)) { messageQueue.Add(Resource.Sigim.ErrorMessages.PrivilegiosInsuficientes, TypeMessage.Error); return(null); } var specification = MontarSpecificationRelStatusVenda(filtro); var lista = vendaRepository.ListarPeloFiltro( specification, l => l.Contrato, l => l.Contrato.ListaVendaParticipante.Select(c => c.Cliente), l => l.Contrato.Unidade, l => l.Contrato.Unidade.Bloco, l => l.Contrato.Unidade.Empreendimento, l => l.Contrato.Unidade.Empreendimento.Incorporador, l => l.TabelaVenda, l => l.IndiceFinanceiro ).To <List <Venda> >(); relStatusVenda objRel = new relStatusVenda(); objRel.SetDataSource(RelStatusVendaToDataTable(lista)); var parametros = parametrosRepository.Obter(); Moeda moedaPadrao = new Moeda(); Moeda moedaConversao = new Moeda(); if (parametros.MoedaPadraoId.HasValue && parametros.MoedaPadraoId.Value > 0) { moedaPadrao = moedaRepository.ObterPeloId(parametros.MoedaPadraoId.Value); } if (filtro.MoedaConversao != 0) { moedaConversao = moedaRepository.ObterPeloId(filtro.MoedaConversao); } var caminhoImagem = PrepararIconeRelatorio(null, parametros); var descricaoMoeda = ObterDescricaoMoeda(moedaPadrao, moedaConversao); objRel.SetParameterValue("descricaoMoeda", descricaoMoeda); objRel.SetParameterValue("caminhoImagem", caminhoImagem); FileDownloadDTO arquivo = new FileDownloadDTO( "Rel. Status da Venda", objRel.ExportToStream((ExportFormatType)formato), formato); if (System.IO.File.Exists(caminhoImagem)) { System.IO.File.Delete(caminhoImagem); } return(arquivo); }
private Specification <Venda> MontarSpecificationRelStatusVenda(RelStatusVendaFiltro filtro) { var specification = (Specification <Venda>) new TrueSpecification <Venda>(); specification &= VendaSpecification.IgualAoIncorporadorId(filtro.IncorporadorId); specification &= VendaSpecification.IgualAoEmpreendimentoId(filtro.EmpreendimentoId); specification &= VendaSpecification.IgualAoBlocoId(filtro.BlocoId); specification &= VendaSpecification.EhTipoParticipanteTitular(); if (filtro.Aprovado.HasValue) { if (filtro.Aprovado.Value == 1) { specification &= VendaSpecification.EhAprovado(); } else { if (filtro.Aprovado.Value == 2) { specification &= VendaSpecification.NaoEhAprovado(); } } } if (filtro.SituacaoTodas) { specification &= ( (VendaSpecification.EhProposta()) || (VendaSpecification.EhAssinada()) || (VendaSpecification.EhCancelada()) || (VendaSpecification.EhRescindida()) || (VendaSpecification.EhQuitada()) || (VendaSpecification.EhEscriturada()) ); } else { specification &= ( (filtro.SituacaoProposta ? VendaSpecification.EhProposta() : new FalseSpecification <Venda>()) || (filtro.SituacaoAssinada ? VendaSpecification.EhAssinada() : new FalseSpecification <Venda>()) || (filtro.SituacaoCancelada ? VendaSpecification.EhCancelada() : new FalseSpecification <Venda>()) || (filtro.SituacaoRescindida ? VendaSpecification.EhRescindida() : new FalseSpecification <Venda>()) || (filtro.SituacaoQuitada ? VendaSpecification.EhQuitada() : new FalseSpecification <Venda>()) || (filtro.SituacaoEscriturada ? VendaSpecification.EhEscriturada() : new FalseSpecification <Venda>()) ); } return(specification); }
public List <RelStatusVendaDTO> ListarPeloFiltroRelStatusVenda(RelStatusVendaFiltro filtro, out int totalRegistros) { var specification = MontarSpecificationRelStatusVenda(filtro); var lista = vendaRepository.ListarPeloFiltroComPaginacao( specification, filtro.PaginationParameters.PageIndex, filtro.PaginationParameters.PageSize, filtro.PaginationParameters.OrderBy, filtro.PaginationParameters.Ascending, out totalRegistros, l => l.Contrato, l => l.Contrato.ListaVendaParticipante.Select(c => c.Cliente), l => l.Contrato.Unidade, l => l.Contrato.Unidade.Bloco, l => l.Contrato.Unidade.Empreendimento, l => l.Contrato.Unidade.Empreendimento.Incorporador, l => l.TabelaVenda, l => l.IndiceFinanceiro ); return(lista.To <List <RelStatusVendaDTO> >()); }
public RelStatusVendaViewModel() { Filtro = new RelStatusVendaFiltro(); }