public async Task <IActionResult> IndexFuncionarios(string nifPesquisa, int pagina = 1)
        {
            if (nifPesquisa != null)
            {
                Paginacao paginacao = new Paginacao
                {
                    TotalItems  = await _context.Utilizadores.Where(p => nifPesquisa == null || p.Nif.Contains(nifPesquisa)).CountAsync(),
                    PaginaAtual = pagina
                };

                List <Utilizadores> utilizadores = await _context.Utilizadores.Where(p => p.Nif.Contains(nifPesquisa) && p.Inactivo == false && p.Role == "Operador")
                                                   .Skip(paginacao.ItemsPorPagina * (pagina - 1))
                                                   .Take(paginacao.ItemsPorPagina)
                                                   .ToListAsync();

                UtilizadoresViewModel model1 = new UtilizadoresViewModel
                {
                    Utilizador  = utilizadores,
                    Paginacao   = paginacao,
                    nifPesquisa = nifPesquisa
                };

                return(View(model1));
            }
            else
            {
                UtilizadoresViewModel model2 = new UtilizadoresViewModel
                {
                    nifPesquisa = nifPesquisa
                };

                return(View(model2));
            };
        }
        public async Task <IActionResult> IndexClientes(string nifPesquisa, int pagina = 1)
        {
            //string que especifica o asp-router
            //ViewData["TipoUtil"] = tipoUtil;
            //return View(await _context.Utilizadores.ToListAsync());

            if (nifPesquisa != null)
            {
                Paginacao paginacao = new Paginacao
                {
                    TotalItems  = await _context.Utilizadores.Where(p => nifPesquisa == null || p.Nif.Contains(nifPesquisa)).CountAsync(),
                    PaginaAtual = pagina
                };

                List <Utilizadores> utilizadores = await _context.Utilizadores.Where(p => p.Nif.Contains(nifPesquisa) && p.Inactivo == false && p.Role == "Cliente")
                                                   .Skip(paginacao.ItemsPorPagina * (pagina - 1))
                                                   .Take(paginacao.ItemsPorPagina)
                                                   .ToListAsync();

                UtilizadoresViewModel model1 = new UtilizadoresViewModel
                {
                    Utilizador  = utilizadores,
                    Paginacao   = paginacao,
                    nifPesquisa = nifPesquisa
                };

                return(View(model1));
            }
            else
            {
                UtilizadoresViewModel model2 = new UtilizadoresViewModel
                {
                    nifPesquisa = nifPesquisa
                };

                return(View(model2));
            }
        }
        public async Task <IActionResult> IndexFuncionariosDistritos(string distrito, int pagina = 1)
        {
            //string que especifica o asp-router
            //ViewData["TipoUtil"] = tipoUtil;
            //return View(await _context.Utilizadores.ToListAsync());

            if (distrito != null)
            {
                Paginacao paginacao = new Paginacao
                {
                    TotalItems  = await _context.Utilizadores.Where(p => distrito == null || p.Distritos.Nome.Contains(distrito)).CountAsync(),
                    PaginaAtual = pagina
                };

                List <Utilizadores> utilizadores = await _context.Utilizadores.Where(p => p.Distritos.Nome.Contains(distrito) && p.Inactivo == false && p.Role == "Operador")
                                                   .Skip(paginacao.ItemsPorPagina * (pagina - 1))
                                                   .Take(paginacao.ItemsPorPagina)
                                                   .ToListAsync();

                UtilizadoresViewModel model1 = new UtilizadoresViewModel
                {
                    Utilizador = utilizadores,
                    Paginacao  = paginacao,
                    distrito   = distrito,
                };

                return(View(model1));
            }
            else
            {
                UtilizadoresViewModel model2 = new UtilizadoresViewModel
                {
                    distrito = distrito
                };

                return(View(model2));
            }
        }