Exemplo n.º 1
0
        public IActionResult Index(Guid?clienteId, string minValor = null, string maxValor = null, string status = null, string dataInicial = null, string dataFinal = null, int pageNumber = 1, int pageSize = 20)
        {
            var clienteIdSpecification = new VendaClienteIdSpecification(clienteId);
            var valorSpecification     = new VendaValorTotalSpecification(minValor.ToDecimal(), maxValor.ToDecimal());
            var statusSpecification    = new VendaStatusSpecification(status);
            var dataSpecification      = new VendaDataSpecification(dataInicial.ToDate(), dataFinal.ToDate());

            var list = _vendaApplicationService.Get(clienteIdSpecification
                                                    .And(valorSpecification)
                                                    .And(statusSpecification)
                                                    .And(dataSpecification)
                                                    .ToExpression());

            var viewModel = new VendasIndexViewModel
            {
                Vendas      = list.ToPagedList(pageNumber, pageSize),
                Clientes    = _clienteApplicationService.Get().OrderBy(c => c.Nome),
                ClienteId   = clienteId,
                MinValor    = minValor,
                MaxValor    = maxValor,
                DataInicial = dataInicial,
                DataFinal   = dataFinal,
                Status      = status
            };

            return(View(viewModel));
        }
Exemplo n.º 2
0
        public IActionResult Index(string nome = null, int?tipo = null, int?pontuacao = null, string cadastroNacional = null, string cadastroEstadual = null, int pageNumber = 1, int pageSize = 20)
        {
            var nomeSpecification             = new ClienteNomeSpecification(nome);
            var tipoSpecification             = new ClienteTipoSpecification(tipo);
            var pontuacaoSpecification        = new ClientePontuacaoSpecification(pontuacao);
            var cadastroNacionalSpecification = new ClienteCadastroNacionalSpecification(cadastroNacional);
            var cadastroEstadualSpecification = new ClienteCadastroEstadualSpecification(cadastroEstadual);

            var list = _clienteApplicationService.Get(nomeSpecification
                                                      .And(tipoSpecification)
                                                      .And(pontuacaoSpecification)
                                                      .And(cadastroNacionalSpecification)
                                                      .And(cadastroEstadualSpecification)
                                                      .ToExpression());

            var viewModel = new ClienteIndexViewModel
            {
                Clientes         = list.ToPagedList(pageNumber, pageSize),
                Nome             = nome,
                Tipo             = tipo,
                Pontuacao        = pontuacao,
                CadastroNacional = cadastroNacional,
                CadastroEstadual = cadastroEstadual,
            };

            return(View(viewModel));
        }
Exemplo n.º 3
0
        public IActionResult Index(Guid?clienteId, string minValor, string maxValor, string agencia, string conta, string numeroCheque, string dataEmissao, string dataVencimento, string situacao, int pageNumber = 1, int pageSize = 20)
        {
            var clienteIdSpecification = new ChequeClienteIdSpecification(clienteId);
            var valorSpecification     = new ChequeValorSpecification(minValor.ToDecimal(), maxValor.ToDecimal());
            var agenciaSpecification   = new ChequeAgenciaSpecification(agencia);
            var contaSpecification     = new ChequeContaCorrenteSpecification(conta);
            var numeroSpecification    = new ChequeNumeroSpecification(numeroCheque);
            var dataSpecification      = new ChequeDataSpecification(dataEmissao.ToDateTime(), dataVencimento.ToDateTime());
            var situacaoSpecification  = new ChequeEstadoSpecification(situacao);

            var list = _chequeApplicationService.Get(valorSpecification
                                                     .And(clienteIdSpecification)
                                                     .And(agenciaSpecification)
                                                     .And(contaSpecification)
                                                     .And(numeroSpecification)
                                                     .And(dataSpecification)
                                                     .And(situacaoSpecification)
                                                     .ToExpression());

            var viewModel = new ChequeIndexViewModel
            {
                Cheques              = list.ToPagedList(pageNumber, pageSize),
                Clientes             = _clienteApplicationService.Get().OrderBy(c => c.Nome),
                MinValor             = minValor,
                MaxValor             = maxValor,
                ClienteId            = clienteId,
                Agencia              = agencia,
                Conta                = conta,
                NumeroCheque         = numeroCheque,
                DataEmissao          = dataEmissao,
                DataVencimento       = dataVencimento,
                Situacao             = situacao,
                TotalResultados      = list.ToList().Count(),
                ValorTotalResultados = list.ToList().Sum(d => d.Valor),
                ValorTotalVencidos   = list.ToList().Where(d => d.ItemProblema).Sum(d => d.Valor)
            };

            return(View(viewModel));
        }