// GET: Fornecedor/GetLista
        public ActionResult GetLista(
            // string FiltroNome,
            // string FiltroCpfCnpj,
            // string FiltroDataInicial,
            // string FiltroDataFinal

            FornecedorIndexViewModel _fornecedorIndexViewModel
            )
        {
            var fornecedor = db.Fornecedor.Include(f => f.Empresa);

            if (!string.IsNullOrWhiteSpace(_fornecedorIndexViewModel.FiltroNome))
            {
                fornecedor = fornecedor.Where(x => x.Nome.Contains(_fornecedorIndexViewModel.FiltroNome));
            }


            if (!string.IsNullOrWhiteSpace(_fornecedorIndexViewModel.FiltroCpfCnpj))
            {
                _fornecedorIndexViewModel.FiltroCpfCnpj = Regex.Replace(_fornecedorIndexViewModel.FiltroCpfCnpj, "[^0-9,]", "");
                fornecedor = fornecedor.Where(x => x.Cpf_Cnpj.Contains(_fornecedorIndexViewModel.FiltroCpfCnpj));
            }

            if (_fornecedorIndexViewModel.FiltroDataInicial != null)
            {
                var _FiltroDataInicial = _fornecedorIndexViewModel.FiltroDataInicial.AddSeconds(1);
                fornecedor = fornecedor.Where(x => x.DataCadastro >= _FiltroDataInicial);
            }

            if (_fornecedorIndexViewModel.FiltroDataFinal != null)
            {
                var _FiltroDataFinal = _fornecedorIndexViewModel.FiltroDataFinal.AddDays(1).AddSeconds(-1);
                fornecedor = fornecedor.Where(x => x.DataCadastro <= _FiltroDataFinal);
            }

            var _fornecedores = fornecedor.ToList();

            return(PartialView("Lista", _fornecedores));
        }
Exemplo n.º 2
0
        public IActionResult Index(string nome, string tipo, string cadastroNacional, string cadastroEstadual, int pageNumber = 1, int pageSize = 20)
        {
            var nomeSpecification             = new FornecedorNomeSpecification(nome);
            var tipoSpecification             = new FornecedorTipoSpecification(tipo);
            var cadastroNacionalSpecification = new FornecedorCadastroNacionalSpecification(cadastroNacional);
            var cadastroEstadualSpecification = new FornecedorCadastroEstadualSpecification(cadastroEstadual);

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

            var viewModel = new FornecedorIndexViewModel
            {
                Fornecedores     = list.ToPagedList(pageNumber, pageSize),
                Nome             = nome,
                Tipo             = tipo,
                CadastroNacional = cadastroNacional,
                CadastroEstadual = cadastroEstadual,
            };

            return(View(viewModel));
        }