Exemple #1
0
        public async Task <IActionResult> Index(string sortOrder, string searchString, string currentFilter, int?page)
        {
            ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            var productos = from pr in _context.Producto select pr;

            if (!string.IsNullOrEmpty(searchString))
            {
                productos = productos.Where(pr => pr.Nombre.Contains(searchString));
            }
            switch (sortOrder)
            {
            case "nombre_desc":
                productos = productos.OrderByDescending(p => p.Nombre);
                break;

            default:
                productos = productos.OrderBy(p => p.Nombre);
                break;
            }
            int pageSize = 3;

            return(View(await Paginacion <Producto> .CreateAsync(productos.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #2
0
        public async Task <IActionResult> Index(string sortOrder, string searchString, string currentFilter, int?page)
        {
            ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            var clientes = from cl in _context.Clientes select cl;

            if (!string.IsNullOrEmpty(searchString))
            {
                clientes = clientes.Where(cl => cl.Cedula.Contains(searchString) || cl.Nombre.Contains(searchString) || cl.Apellido.Contains(searchString));
            }
            switch (sortOrder)
            {
            case "nombre_desc":
                clientes = clientes.OrderByDescending(p => p.Nombre);
                break;

            default:
                clientes = clientes.OrderBy(p => p.Nombre);
                break;
            }
            int pageSize = 3;

            return(View(await Paginacion <Cliente> .CreateAsync(clientes.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #3
0
        // GET: Categorias
        public async Task <IActionResult> Index(
            string sortOrder,
            string currentFilter,
            string searchString,
            int?page
            )
        {
            // Declaracion de Variables
            int pageSize = 10;                   // Cant de Valores a mostrar

            // Condicion Paginacion
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            // Parámetros a ser recibidos en la vista
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;
            ViewData["DescSortParam"] = (sortOrder == "descr_asc" ? "descr_desc" : "descr_asc");
            ViewData["NombSortParam"] = (String.IsNullOrEmpty(sortOrder) ? "nom_desc" : "");

            // Listado de datos desde la BD del contexto/modelo Categoria
            var categorias = from s in _context.Categoria select s;

            // Filtrado de Datos
            if (!string.IsNullOrEmpty(searchString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) ||
                                              s.Descripcion.Contains(searchString));
            }

            // Condiciones para ordenar
            switch (sortOrder)
            {
            case "nom_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descr_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "descr_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }

            // Retorna la lista organizada a la vista
            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #4
0
        // GET: Clientes
        //  public async Task<IActionResult> Index()
        // {
        //  var listaCliente = _context.Cliente.Where(s=>s.Activo_oNo==true).Include(x => x.persona).ToList(); //Include incluye los datos de la entidad que se relacione asociado a ese cliente
        //
        //    return View(await _context.Cliente.ToListAsync());
        //}
        public async Task <IActionResult> Index(string SortOrder, string currentFilter, string searchString, int?value)
        {
            //ViewData["NombreSortParm"] = String.IsNullOrEmpty(SortOrder) ? "nombre_desc" : "";
            ViewData["NombreSortParm"]    = SortOrder == "nombre_asc" ? "nombre_desc" : "nombre_asc";
            ViewData["ApellidoSortParam"] = SortOrder == "apellido_asc" ? "apellido_desc" : "apellido_asc";


            if (searchString != null)
            {
                value = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = SortOrder;

            var Clientequery = from j in  _context.Cliente.Include(j => j.persona) where j.Activo_oNo == true select j;

            if (!String.IsNullOrEmpty(searchString))
            {
                Clientequery = Clientequery.Where(j => j.persona.Nombre.Contains(searchString) || j.persona.Apellido.Contains(searchString) ||
                                                  j.persona.Direccion.Contains(searchString) ||
                                                  j.persona.DNI.ToString().Contains(searchString) ||
                                                  j.persona.FechaNacimiento.ToString().Contains(searchString));
            }

            switch (SortOrder)
            {
            case "nombre_desc":
                Clientequery = Clientequery.OrderByDescending(j => j.persona.Nombre);
                break;

            case "nombre_asc":
                Clientequery = Clientequery.OrderBy(j => j.persona.Nombre);
                break;

            case "apellido_desc":
                Clientequery = Clientequery.OrderByDescending(j => j.persona.Apellido);
                break;

            case "apellido_asc":
                Clientequery = Clientequery.OrderBy(j => j.persona.Apellido);
                break;

            default:
                Clientequery = Clientequery.OrderBy(j => j.persona.Nombre);
                break;
            }

            int pageSize = 10;
            var cli      = Clientequery.AsNoTracking();

            return(View(await Paginacion <Cliente> .CreateAsync(Clientequery.AsNoTracking(), value ?? 1, pageSize)));
            // return View(await juegos.AsNoTracking().ToListAsync());

            //return View(await _context.Juegos.ToListAsync());
        }
        // GET: Perfiles
        public async Task <IActionResult> Index(string sortOrder, string Filter, int?page, string search)
        {
            var i = (ClaimsIdentity)User.Identity;

            if (i.IsAuthenticated)
            {
                //Permisos de usuario
                var permisos = i.Claims.Where(c => c.Type == "Perfiles").Select(c => c.Value).SingleOrDefault().Split(";");
                ViewData["Crear"]    = Convert.ToBoolean(permisos[1]);
                ViewData["Editar"]   = Convert.ToBoolean(permisos[2]);
                ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]);
                ViewData["Exportar"] = Convert.ToBoolean(permisos[4]);

                if (Convert.ToBoolean(permisos[0]))
                {
                    ViewData["NombreSortParam"] = string.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";

                    //permite mantener la busqueda introducida en el filtro de busqueda
                    if (search != null)
                    {
                        page = 1;
                    }
                    else
                    {
                        search = Filter;
                    }

                    ViewData["Filter"]      = search;
                    ViewData["CurrentSort"] = sortOrder;
                    var perfil = from p in _context.Perfil select p;

                    if (!string.IsNullOrEmpty(search))
                    {
                        perfil = perfil.Where(s => s.Nombre.Contains(search));
                    }

                    switch (sortOrder)
                    {
                    case "nombre_desc":
                        perfil = perfil.OrderByDescending(s => s.Nombre);
                        break;

                    default:
                        perfil = perfil.OrderBy(s => s.Nombre);
                        break;
                    }
                    int pageSize = 10;
                    return(View(await Paginacion <Perfil> .CreateAsync(perfil, page ?? 1, pageSize)));                  // page devuelve valor si lo tiene caso contrario devuelve 1
                }
                else
                {
                    return(Redirect("../Home"));
                }
            }
            else
            {
                return(Redirect("../Identity/Account/Login"));
            }
        }
        // GET: Categoria
        public async Task <IActionResult> Index(string sortOrder, string searchString, string currentFilter, int?page)
        {
            ViewData["NombreSortParam"]      = String.IsNullOrEmpty(sortOrder) ? "nombr_desc" : "";
            ViewData["DescripcionSortParam"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";
            ViewData["CarreraSortParm"]      = sortOrder == "carrera_asc" ? "carrera_desc" : "carrera_asc";

            var categorias = from s in _context.Categoria select s;

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
                ViewData["CurrentFilter"] = searchString;
                ViewData["CurrentSort"]   = sortOrder;
            }



            if (!String.IsNullOrEmpty(searchString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }
            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "carrera_desc":
                categorias = categorias.OrderBy(s => s.Carrera);
                break;

            case "carrera_asc":
                categorias = categorias.OrderByDescending(s => s.Carrera);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }

            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));

            //return View(await categorias.AsNoTracking().ToListAsync());
        }
Exemple #7
0
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?page)
        {
            ViewData["NombreSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["DescripcionSortParm"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            /*
             * from <Nombre la variable que almacenará un elemento a la vez de la coleccion>
             * in <fuente de datos>
             * where <criterios de selección>
             * order by <criterio para ordenar los datos>
             * select <nombres de variables>*/

            var categorias = from s
                             in _context.Categoria
                             select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }
            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }

            //return View(await categorias.AsNoTracking().ToListAsync());

            //return View(await _context.Categoria.ToListAsync());
            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
        // GET: Ventas
        public async Task <IActionResult> Index(int?value)
        {
            int pageSize = 2;
            //var venta = _context.Venta.Where(x => x.ActivooNo == true).Include(x => x.productos).ToList();
            var venta = from j in _context.Venta select j;

            return(View(await Paginacion <Venta> .CreateAsync(venta.AsNoTracking(), value ?? 1, pageSize)));

            //   return View(_context.Venta.Where(x => x.ActivooNo == true).Include(x => x.productos).ToList());
        }
        // GET: Categorias
        //muestra el listado de todas las categorias
        public async Task <IActionResult> Index(String orderSort, string curetnFilter, string search, int?page) //mod| para ordenarlos de manera asc o desc pasamos un parametro
        {
            ViewData["NombreSort"]       = String.IsNullOrEmpty(orderSort) ? "nombre_desc" : "";
            ViewData["DescripcionParam"] = orderSort == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";

            if (search != null)
            {
                page = 1;
            }
            else
            {
                search = curetnFilter;
            }
            ViewData["CurrentFilter"] = search;
            ViewData["CurrentSort"]   = orderSort;

            //tabla temporal
            var categorias = from s in _context.Categoria select s;

            //para le buscador
            if (!String.IsNullOrEmpty(search))
            {
                //busca por el nombre o descripcion
                categorias = categorias.Where(s => s.nombre.Contains(search) || s.descripcion.Contains(search));
            }


            switch (orderSort)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.descripcion);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderBy(s => s.descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.nombre);
                break;
            }

            //return View(await categorias.AsNoTracking().ToListAsync());
            //return View(await _context.Categoria.ToListAsync());

            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder, string searchString, string currentFilter, int?page)
        {
            ViewData["CurrentSort"]         = sortOrder;
            ViewData["NombreSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["DescripcionSortParm"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";
            ViewData["CurrentFilter"]       = searchString;
            var categorias = from s in _context.Categoria select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                //page = 1;
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }

            //Establece que los resultados a paginar son producto de una búsqueda, o son el primer despliegue..
            if (!String.IsNullOrEmpty(searchString))
            {
                page = 1;
                //categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }
            else
            {
                searchString = currentFilter;
            }

            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }
            //return View(await _context.Categoria.ToListAsync());
            //Regresa la vista con el ordenamiento realizado a la colección categorías.
            //return View(await categorias.AsNoTracking().ToListAsync());

            //Establece cuántos registros por página se visualizan.
            int pageSize = 5; //5 registros por páginas.

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #11
0
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrden, string searchString, string currentFilter, int?page)
        {
            //Ordenar por nombre
            ViewData["NombreSortParm"] = String.IsNullOrEmpty(sortOrden) ? "nombre_desc" : "";
            //Ordenar por descripcion
            ViewData["DescripcionSortParm"] = sortOrden == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";

            //Verifica si existe algun filtro u ordenacion en la pagina
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            //Filtro de busqueda
            ViewData["CurrentFilter"] = searchString;
            //Filtro de ordenacion
            ViewData["CurrentSort"] = sortOrden;

            //Obtiene los datos de la tabla Categoria
            var categorias = from s in _context.Categoria select s;

            if (!String.IsNullOrEmpty(searchString)) //Analiza si se esta realizando una busqueda de datos
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }

            switch (sortOrden) //Analisa los diferentes tipos de ordenamiento de filas
            {
            case "nombre_desc": categorias = categorias.OrderByDescending(s => s.Nombre); break;

            case "descripcion_desc": categorias = categorias.OrderByDescending(s => s.Descripcion); break;

            case "descripcion_asc": categorias = categorias.OrderBy(s => s.Descripcion); break;

            case "estado_asc": categorias = categorias.OrderBy(s => s.Estado); break;

            case "estado_desc": categorias = categorias.OrderByDescending(s => s.Estado); break;

            default: categorias = categorias.OrderBy(s => s.Nombre); break;
            }

            //return View(await categorias.AsNoTracking().ToListAsync());
            //return View(await _context.Categoria.ToListAsync());

            int pageSize = 3;//tamaño total de paginas de division de datos

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #12
0
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder,
                                                string currentFilter, string searchigString, int?page)
        {
            //envia el parametro a la vista
            //para ordenar
            ViewData["NombreSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["DescripcionSortParm"] = sortOrder == "description_asc" ? "description_desc" : "description_asc";
            if (searchigString != null)
            {
                page = 1;
            }
            else
            {
                searchigString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchigString;
            ViewData["CurrentSort"]   = sortOrder;

            var categorias = from s in _context.Categoria select s;

            if (!String.IsNullOrEmpty(searchigString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchigString) || s.Descripcion.Contains(searchigString));
            }


            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "description_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "description_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }
            int pageSize = 3;//paginnacion de 3 en 3

            //page?? si tiene un valor si tiene page y si no devuelve uno
            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
            //return View(await categorias.AsNoTracking().ToListAsync());//listado categoria de base de datos
        }
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder,                                                       // Muestra el ordenamiento actual de las columnas
                                                string currentFilter,                                                   // Cadena de texto buscada por el usuario
                                                string searchString,                                                    // Nueva cadena de búsqueda
                                                int?page)                                                               // Número de página
        {
            ViewData["NombreSortParm"]       = string.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";                    // si está vacio, que se ordene por nombre de manera descendiente
            ViewData["DescripcionSortParam"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc"; // si está vacío, ordena por desc. descendente, si tiene otra cosa, ascendente
            if (searchString != null)                                                                                   // Si el usuario ha realizado una búsqueda
            {
                page = 1;                                                                                               // Se vuelve a mostrar el resultado de la primera página
            }
            else
            {
                searchString = currentFilter;         // El usuario no ha buscado nada nuevo, por lo que el filtro se mantiene en todas las páginas
            }
            ViewData["CurrentFilter"] = searchString; // Muestra la vista con la cadena de filtro actual. Sirve para mantener el filtro entre páginas
            ViewData["CurrentSort"]   = sortOrder;    // Muestra la vista con el "ordenamiento actual"

            var categorias = from s in _context.Categoria select s;

            if (!string.IsNullOrEmpty(searchString)) // Si no está vacío
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }

            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }

            //return View(await _context.Categoria.ToListAsync());
            //return View(await categorias.AsNoTracking().ToListAsync());
            const int pageSize = 2;                                                                                  // No. de registros por página

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize))); // Devuelve las categorías a la vista, dependiendo del número de registros (pageSize)) y devuelve el valor de page para saber la página o bien "1" por defecto
        }
Exemple #14
0
        // GET: Alumnos
        public async Task <IActionResult> Index(string sortOrder,
                                                string currentFilter, string searchString,
                                                int?page)
        {
            ViewData["NombreSortParm"]   = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["ApellidoSortParm"] = sortOrder == "apellido_asc" ? "apellido_desc" : "apellido_asc";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            var alumnos = from s in _context.Alumno select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                alumnos = alumnos.Where(s => s.Nombre.Contains(searchString) || s.Apellido.Contains(searchString));
            }

            switch (sortOrder)
            {
            case "nombre_desc":
                alumnos = alumnos.OrderByDescending(s => s.Nombre);
                break;

            case "apellido_desc":
                alumnos = alumnos.OrderByDescending(s => s.Apellido);
                break;

            case "apellido_asc":
                alumnos = alumnos.OrderBy(s => s.Apellido);
                break;

            default:
                alumnos = alumnos.OrderBy(s => s.Nombre);
                break;
            }

            int pageSize = 3;

            return(View(await Paginacion <Alumno> .CreateAsync(alumnos.AsNoTracking(), page ?? 1, pageSize)));
            // return View(await _context.Alumno.ToListAsync());
        }
Exemple #15
0
        // GET: Juegos
        public async Task <IActionResult> Index(string SortOrder, string currentFilter, string searchString, int?page)
        {
            ViewData["NombreSortParm"]     = String.IsNullOrEmpty(SortOrder) ? "nombre_desc" : "";
            ViewData["CategoriaSortParam"] = SortOrder == "categoria_asc" ? "categoria_desc" : "categoria_asc";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = SortOrder;

            var juegos = from j in _context.Juegos select j;

            if (!String.IsNullOrEmpty(searchString))
            {
                juegos = juegos.Where(j => j.Nombre.Contains(searchString) || j.Categoria.Contains(searchString) || j.Descripcion.Contains(searchString));
            }

            switch (SortOrder)
            {
            case "nombre_desc":
                juegos = juegos.OrderByDescending(j => j.Nombre);
                break;

            case "categoria_desc":
                juegos = juegos.OrderByDescending(j => j.Categoria);
                break;

            case "categoria_asc":
                juegos = juegos.OrderBy(j => j.Categoria);
                break;

            default:
                juegos = juegos.OrderBy(j => j.Nombre);
                break;
            }

            int pageSize = 10;

            return(View(await Paginacion <Juegos> .CreateAsync(juegos.AsNoTracking(), page ?? 1, pageSize)));
            // return View(await juegos.AsNoTracking().ToListAsync());

            //return View(await _context.Juegos.ToListAsync());
        }
        // GET: Reservas
        public async Task <IActionResult> Index(string sortOrder,
                                                string currentFilter, string searchString,
                                                int?page)
        {
            ViewData["LugarPSortParm"] = String.IsNullOrEmpty(sortOrder) ? "lugarP_desc" : "";
            ViewData["FechaPSortParm"] = sortOrder == "fechaP_asc"? "fechaP_desc": "fechaP_asc";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            var reservas = from s in _context.Reserva select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                reservas = reservas.Where(s => s.LugarPickup.Contains(searchString));
            }

            switch (sortOrder)
            {
            case "lugarP_desc":
                reservas = reservas.OrderByDescending(s => s.LugarPickup);
                break;

            case "fechaP_desc":
                reservas = reservas.OrderByDescending(s => s.FechaPickup);
                break;

            case "fechaP_asc":
                reservas = reservas.OrderBy(s => s.FechaPickup);
                break;

            default:
                reservas = reservas.OrderBy(s => s.LugarPickup);
                break;
            }
            //return View(await reservas.AsNoTracking().ToListAsync());
            //return View(await _context.Reserva.ToListAsync());
            int pageSize = 10;

            return(View(await Paginacion <Reserva> .CreateAsync(reservas.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #17
0
        // GET: Clientes/Cliente
        //public async Task<IActionResult> Index()
        //{
        //    return View(await _context.Cliente.ToListAsync());
        //}

        public async Task <IActionResult> Index(string BuscarNombre, string sortOrder, string currentFilter, int?page)
        {
            ViewData["RazonSocialSortParm"] = String.IsNullOrEmpty(sortOrder) ? "RazonSocial_desc" : "";
            ViewData["EstadoSortParm"]      = sortOrder == "Estado_asc" ? "Estado_desc" : "Estado_asc";

            if (BuscarNombre != null)
            {
                page = 1;
            }
            else
            {
                BuscarNombre = currentFilter;
            }

            ViewData["CurrentFilter"] = BuscarNombre;
            ViewData["CurrentSort"]   = sortOrder;

            var Cliente = from cr in _context.Cliente select cr;

            if (!String.IsNullOrEmpty(BuscarNombre))
            {
                Cliente = Cliente.Where(c => c.razonsocial.Contains(BuscarNombre));
            }

            switch (sortOrder)
            {
            case "RazonSocial_desc":
                Cliente = Cliente.OrderByDescending(s => s.razonsocial);
                break;

            case "Estado_desc":
                Cliente = Cliente.OrderByDescending(s => s.estado);
                break;

            case "Estado_asc":
                Cliente = Cliente.OrderBy(s => s.estado);
                break;

            default:
                Cliente = Cliente.OrderBy(s => s.razonsocial);
                break;
            }

            //return View(await Cliente.AsNoTracking().ToListAsync());
            //return View(await Cliente.ToListAsync());
            int pageSize = 3;

            return(View(await Paginacion <Cliente> .CreateAsync(Cliente.AsNoTracking(), page ?? 1, pageSize)));
        }
        public async Task <ActionResult <IEnumerable <DtoOrdenDeReparacionPc> > > ObtenerOrdenReparacionPcPage(int pid, int ppage)
        {
            IEnumerable <OrdenDeReparacion> listaOrdenReparacion = await iUdt.RepositorioOrdenDeReparacion.ObtengoListaTodosLasPC();

            if (listaOrdenReparacion.Count() == 0)
            {
                throw new OrdenReparacionPcNoEncontrada("No se encontro listado de orden de reparación");
            }
            var pagePost = Paginacion <OrdenDeReparacion> .CreateAsync(listaOrdenReparacion, pid, ppage);

            var listaOrdenRepaDTO = iMapper.Map <IEnumerable <DtoOrdenDeReparacionPc> >(pagePost);

            // Response.Headers.Add("X-Pagination",)
            return(listaOrdenRepaDTO.ToList());
        }
        // GET: Categorias
        public async Task <IActionResult> Index(string ordenarFilas, string currentFilter, string cadenaBusqueda, int?page)
        {
            ViewData["NombreParametroOrdenamiento"]      = String.IsNullOrEmpty(ordenarFilas) ? "nombreDescendiente" : "";
            ViewData["DescripcionParametroOrdenamiento"] = ordenarFilas == "descripcionAscendente" ? "descripcionDescendente" : "descripcionAscendente";
            if (cadenaBusqueda != null)
            {
                page = 1;
            }
            else
            {
                cadenaBusqueda = currentFilter;
            }
            ViewData["currentFilter"] = cadenaBusqueda;
            ViewData["CurrentSort"]   = ordenarFilas;

            var categorias = from c in _context.Categoria
                             select c;

            if (!String.IsNullOrEmpty(cadenaBusqueda))
            {
                categorias = categorias.Where(c => c.Nombre.Contains(cadenaBusqueda) || c.Descripcion.Contains(cadenaBusqueda));
            }

            switch (ordenarFilas)
            {
            case ("nombreDescendiente"):
                categorias = categorias.OrderByDescending(c => c.Nombre);
                break;

            case ("descripcionDescendente"):
                categorias = categorias.OrderByDescending(c => c.Descripcion);
                break;

            case ("descripcionAscendente"):
                categorias = categorias.OrderBy(c => c.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(c => c.Nombre);
                break;
            }
            //return View(await categorias.AsNoTracking().ToListAsync());
            //return View(await _context.Categoria.ToListAsync());

            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder, string buscar,
                                                string filtro, int?page)

        {
            ViewData["Nombresort"]      = string.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["Descripcionsort"] = sortOrder == "descripcion_asc"?"descripcion_desc": "descripcion_asc";

            if (buscar != null)
            {
                page = 1;
            }
            else
            {
                buscar = filtro;
            }
            ViewData["filtro"]      = buscar;
            ViewData["currentSort"] = sortOrder;
            //obtengo el listado de categorias
            var categorias = from s in _context.Categoria select s;

            if (!string.IsNullOrEmpty(buscar))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(buscar) || s.Descripcion.Contains(buscar));
            }
            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "nombre_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }
            int pagesize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pagesize)));
            //return View(await categorias.AsNoTracking().ToListAsync());
            //return View(await _context.Categoria.ToListAsync());
        }
Exemple #21
0
        // GET: Servidores/Servidor
        //public async Task<IActionResult> Index()
        //{
        //    var applicationDbContext = _context.Servidor.Include(s => s.cliente);
        //    return View(await applicationDbContext.ToListAsync());
        //}
        public async Task <IActionResult> Index(string BuscarNombre, string sortOrder, string currentFilter, int?page)
        {
            ViewData["NombrevpsSortParm"] = String.IsNullOrEmpty(sortOrder) ? "Nombrevps_desc" : "";
            ViewData["EstadoSortParm"]    = sortOrder == "Estado_asc" ? "Estado_desc" : "Estado_asc";

            if (BuscarNombre != null)
            {
                page = 1;
            }
            else
            {
                BuscarNombre = currentFilter;
            }

            ViewData["CurrentFilter"] = BuscarNombre;
            ViewData["CurrentSort"]   = sortOrder;

            var Servidor = from cr in _context.Servidor select cr;

            if (!String.IsNullOrEmpty(BuscarNombre))
            {
                Servidor = Servidor.Where(c => c.nombrevps.Contains(BuscarNombre) /*|| c.idcliente.Contains(BuscarNombre)*/);
            }

            switch (sortOrder)
            {
            case "Nombrevps_desc":
                Servidor = Servidor.OrderByDescending(s => s.nombrevps);
                break;

            case "Estado_desc":
                Servidor = Servidor.OrderByDescending(s => s.estado);
                break;

            case "Estado_asc":
                Servidor = Servidor.OrderBy(s => s.estado);
                break;

            default:
                Servidor = Servidor.OrderBy(s => s.nombrevps);
                break;
            }
            //return View(await Servidor.ToListAsync());
            int pageSize = 3;

            return(View(await Paginacion <Servidor> .CreateAsync(Servidor.AsNoTracking(), page ?? 1, pageSize)));
        }
Exemple #22
0
        // GET: CertificadosMedicos
        public async Task <IActionResult> Index(string sortOrder, string Filter, int?page, string search)
        {
            var i = (ClaimsIdentity)User.Identity;

            if (i.IsAuthenticated)
            {
                //Permisos de usuario
                var permisos = i.Claims.Where(c => c.Type == "CertificadosMedicos").Select(c => c.Value).SingleOrDefault().Split(";");
                ViewData["Crear"]    = Convert.ToBoolean(permisos[1]);
                ViewData["Editar"]   = Convert.ToBoolean(permisos[2]);
                ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]);
                ViewData["Exportar"] = Convert.ToBoolean(permisos[4]);

                if (Convert.ToBoolean(permisos[0]))
                {
                    ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";

                    //permite mantener la busqueda introducida en el filtro de busqueda
                    if (search != null)
                    {
                        page = 1;
                    }
                    else
                    {
                        search = Filter;
                    }

                    ViewData["Filter"]      = search;
                    ViewData["CurrentSort"] = sortOrder;

                    var fechaInicioDia    = new DateTime();
                    var fechaInicioFinDia = new DateTime();



                    if (String.IsNullOrEmpty(search))
                    {
                        var fecha = Funciones.ObtenerFechaActual("SA Pacific Standard Time");
                        //fechaInicioDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 00, 00, 00);
                        //fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);
                        fechaInicioDia    = new DateTime(fecha.Year, fecha.Month, 11, 00, 00, 00);
                        fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, 11, 23, 59, 59);
                    }
                    else
                    {
                        var fecha = Convert.ToDateTime(search);
                        fechaInicioDia    = new DateTime(fecha.Year, fecha.Month, fecha.Day, 00, 00, 00);
                        fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);
                    }                    //poner liuego esto

                    var citaOdontologica = from c in _context.CitaOdontologica.Include(a => a.Personal).Include(a => a.Paciente)
                                           .Where(a => a.FechaInicio > fechaInicioDia && a.FechaInicio < fechaInicioFinDia && (a.Estado == "A"))
                                           .OrderBy(p => p.FechaInicio)
                                           select c;


                    int pageSize = 10;

                    return(View(await Paginacion <CitaOdontologica> .CreateAsync(citaOdontologica, page ?? 1, pageSize)));                  // page devuelve valor si lo tiene caso contrario devuelve 1
                }
                else
                {
                    return(Redirect("../Home"));
                }
            }
            else
            {
                return(Redirect("../Identity/Account/Login"));
            }
        }
        // GET: MetricaViews
        public async Task <IActionResult> Index(string SortOrder, string currentFilter, string searchString, int?page)
        {
            ViewData["NombreSortParm"] = String.IsNullOrEmpty(SortOrder) ? "nombre_desc" : "";
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = SortOrder;

            var metricasView = from m in _context.MetricasView select m;

            if (!String.IsNullOrEmpty(searchString))
            {
                metricasView = metricasView.Where(m => m.Documento.Contains(searchString) || m.Nombre.Contains(searchString) || m.Apellido.Contains(searchString) || m.UserName.Contains(searchString));
            }

            switch (SortOrder)
            {
            case "nombre_desc":
                metricasView = metricasView.OrderByDescending(m => m.Nombre);
                break;

            case "apellido_desc":
                metricasView = metricasView.OrderByDescending(m => m.Apellido);
                break;

            case "apellido_asc":
                metricasView = metricasView.OrderBy(m => m.Apellido);
                break;

            case "documento_desc":
                metricasView = metricasView.OrderByDescending(m => m.Documento);
                break;

            case "documento_asc":
                metricasView = metricasView.OrderBy(m => m.Documento);
                break;

            case "useName_desc":
                metricasView = metricasView.OrderByDescending(m => m.UserName);
                break;

            case "useName_asc":
                metricasView = metricasView.OrderBy(m => m.UserName);
                break;

            default:
                metricasView = metricasView.OrderBy(m => m.Nombre).OrderBy(m => m.HoraInicio);
                break;
            }

            int pageSize = 7;

            return(View(await Paginacion <MetricasView> .CreateAsync(metricasView.AsNoTracking(), page ?? 1, pageSize)));
            //return View(await _context.MetricasView.ToListAsync());
        }
        // GET: Diagnostico
        public async Task <IActionResult> Index(string sortOrder, string Filter, int?page, string search)
        {
            var i = (ClaimsIdentity)User.Identity;

            if (i.IsAuthenticated)
            {
                //Permisos de usuario
                var permisos = i.Claims.Where(c => c.Type == "Diagnostico").Select(c => c.Value).SingleOrDefault().Split(";");
                ViewData["Crear"]    = Convert.ToBoolean(permisos[1]);
                ViewData["Editar"]   = Convert.ToBoolean(permisos[2]);
                ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]);
                ViewData["Exportar"] = Convert.ToBoolean(permisos[4]);

                if (Convert.ToBoolean(permisos[0]))
                {
                    ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
                    ViewData["FechaSortParam"]  = sortOrder == "fecha_desc" ? "fecha_asc" : "fecha_desc";
                    //permite mantener la busqueda introducida en el filtro de busqueda
                    if (search != null)
                    {
                        page = 1;
                    }
                    else
                    {
                        search = Filter;
                    }

                    ViewData["Filter"]      = search;
                    ViewData["CurrentSort"] = sortOrder;

                    var diagnostico = from c in _context.Diagnostico.Include(a => a.CitaOdontologica).ThenInclude(h => h.Paciente).Include(an => an.CitaOdontologica).ThenInclude(hc => hc.Personal).Include(c => c.DiagnosticoCie10).ThenInclude(c => c.Cie10) select c;

                    if (!String.IsNullOrEmpty(search))
                    {
                        diagnostico = from c in _context.Diagnostico.Include(a => a.CitaOdontologica).ThenInclude(h => h.Paciente)
                                      .Include(an => an.CitaOdontologica).ThenInclude(hc => hc.Personal)
                                      .Include(c => c.DiagnosticoCie10).ThenInclude(c => c.Cie10)
                                      .OrderBy(c => c.CitaOdontologica.Paciente.NombreCompleto)
                                      .Where(s => s.CitaOdontologica.Paciente.Nombres.Contains(search) ||
                                             s.CitaOdontologica.Paciente.Apellidos.Contains(search) ||
                                             s.CitaOdontologica.Paciente.NombreCompleto.Contains(search) ||
                                             s.CitaOdontologica.Paciente.Identificacion.Contains(search))
                                      select c;
                    }

                    switch (sortOrder)
                    {
                    case "nombre_desc":
                        diagnostico = diagnostico.OrderByDescending(s => s.Fecha);
                        break;

                    case "fecha_asc":
                        diagnostico = diagnostico.OrderBy(s => s.Fecha);
                        break;

                    case "fecha_desc":
                        diagnostico = diagnostico.OrderByDescending(s => s.Fecha);
                        break;

                    default:
                        diagnostico = diagnostico.OrderBy(s => s.Fecha);
                        break;
                    }
                    int pageSize = 10;
                    return(View(await Paginacion <Diagnostico> .CreateAsync(diagnostico, page ?? 1, pageSize)));                  // page devuelve valor si lo tiene caso contrario devuelve 1
                }
                else
                {
                    return(Redirect("../Home"));
                }
            }
            else
            {
                return(Redirect("../Identity/Account/Login"));
            }
        }
        // GET: Categorias sortOrder,currentFilter, searchString y page son parametros que se envían por URL
        public async Task <IActionResult> Index(
            string sortOrder,
            string currentFilter,
            string searchString,
            int?page
            )
        {
            //Crear dos parametros que va a recibir la vista Index del modelo de Categoria
            ViewData["NombreSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["DescripcionSortParm"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";

            //Se condiciona para saber si existe un filtro de busqueda la pagina será 1 y si no hay datos la cadena de filtro de busqueda  se mantienen los parametros de busqueda
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            //Parametro para implementar la búsqueda por filtros
            ViewData["CurrentFilter"] = searchString;

            //Proporciona a la vista el orden actual
            ViewData["CurrentSort"] = sortOrder;

            //Cargará todas las categorías disponibles en la BD
            var categorias = from s in _context.Categoria select s;

            //Si el parametro de entrada contiene algún valor para filtrar busqueda, entonces se realiza el filtro
            if (!String.IsNullOrEmpty(searchString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }

            //Dependiendo del caso de orden, se ordenarán los datos
            switch (sortOrder)
            {
            case "nombre_desc":
                categorias = categorias.OrderByDescending(s => s.Nombre);
                break;

            case "descripcion_desc":
                categorias = categorias.OrderByDescending(s => s.Descripcion);
                break;

            case "descripcion_asc":
                categorias = categorias.OrderBy(s => s.Descripcion);
                break;

            default:
                categorias = categorias.OrderBy(s => s.Nombre);
                break;
            }

            //Se retorna a la vista todos los datos ya ordenados dependiendo del caso
            //return View(await categorias.AsNoTracking().ToListAsync());

            //Numero total de registros mostrados por página
            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));


            //return View(await _context.Categoria.ToListAsync());
        }
        //Metodo Index que realiza el filtrado de datos
        public async Task <IActionResult> Index(string sortOrden, string searchString, string currentFilter, int?page)
        {
            //Ordenar datos por columna
            ViewData["NombreSortParm"]    = String.IsNullOrEmpty(sortOrden) ? "nombre_desc" : "";
            ViewData["ApellidosSortParm"] = sortOrden == "apellidos_asc" ? "apellidos_desc" : "apellidos_asc";
            ViewData["CorreoSortParm"]    = sortOrden == "correo_asc" ? "correo_desc" : "correo_asc";
            ViewData["FechaSortParm"]     = sortOrden == "fecha_asc" ? "fecha_desc" : "fecha_asc";
            ViewData["EstadoSortParm"]    = sortOrden == "estado_asc" ? "estado_desc" : "estado_asc";

            //Verifica si existe alguna busqueda u ordenacion en la pagina
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            //Filtro de busqueda
            ViewData["CurrentFilter"] = searchString;
            //Filtro de ordenacion
            ViewData["CurrentSort"] = sortOrden;

            //Obtiene los datos de la tabla Categoria
            var users = from s in _context.User select s;

            if (!String.IsNullOrEmpty(searchString)) //Analiza si se esta realizando una busqueda de datos
            {
                users = users.Where(s => s.Name.Contains(searchString));
            }

            switch (sortOrden) //Analisa los diferentes tipos de ordenamiento de filas
            {
            case "nombre_desc": users = users.OrderByDescending(s => s.Name); break;

            case "apellidos_desc": users = users.OrderByDescending(s => s.LastName); break;

            case "apellidos_asc": users = users.OrderBy(s => s.LastName); break;

            case "correo_asc": users = users.OrderBy(s => s.Email); break;

            case "correo_desc": users = users.OrderByDescending(s => s.Email); break;

            case "fecha_asc": users = users.OrderBy(s => s.Date); break;

            case "fecha_desc": users = users.OrderByDescending(s => s.Date); break;

            case "estado_asc": users = users.OrderBy(s => s.State); break;

            case "estado_desc": users = users.OrderByDescending(s => s.State); break;

            default: users = users.OrderBy(s => s.Name); break;
            }

            //return View(await categorias.AsNoTracking().ToListAsync());
            //return View(await _context.Categoria.ToListAsync());

            int pageSize = 3;//tamaño total de paginas de division de datos

            return(View(await Paginacion <User> .CreateAsync(users.AsNoTracking(), page ?? 1, pageSize)));
        }
        // GET: Usuario
        public async Task <IActionResult> Index(string search, string Filter, string sortOrder, int?page)
        {
            var i = (ClaimsIdentity)User.Identity;

            if (i.IsAuthenticated)
            {
                //Permisos de usuario
                var permisos = i.Claims.Where(c => c.Type == "Usuarios").Select(c => c.Value).SingleOrDefault().Split(";");
                ViewData["Crear"]    = Convert.ToBoolean(permisos[1]);
                ViewData["Editar"]   = Convert.ToBoolean(permisos[2]);
                ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]);
                ViewData["Exportar"] = Convert.ToBoolean(permisos[4]);

                if (Convert.ToBoolean(permisos[0]))
                {
                    ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
                    ViewData["PerfilSortParam"] = sortOrder == "per_asc" ? "per_desc" : "per_asc";


                    //permite mantener la busqueda introducida en el filtro de busqueda
                    if (search != null)
                    {
                        page = 1;
                    }
                    else
                    {
                        search = Filter;
                    }

                    ViewData["Filter"]      = search;
                    ViewData["CurrentSort"] = sortOrder;

                    var usuario = from c in _context.Usuario.Include(u => u.Perfil).Include(u => u.Personal) select c;
                    if (!String.IsNullOrEmpty(search))
                    {
                        usuario = usuario.Where(s => s.CorreoElectronico.Contains(search) || s.CorreoElectronico.Contains(search));
                    }

                    switch (sortOrder)
                    {
                    case "nombre_desc":
                        usuario = usuario.OrderByDescending(s => s.CorreoElectronico);
                        break;

                    case "per_asc":
                        usuario = usuario.OrderBy(s => s.Perfil.Nombre);
                        break;

                    case "per_desc":
                        usuario = usuario.OrderByDescending(s => s.Perfil.Nombre);
                        break;

                    default:
                        usuario = usuario.OrderBy(s => s.CorreoElectronico);
                        break;
                    }
                    int pageSize = 10;
                    return(View(await Paginacion <Usuario> .CreateAsync(usuario, page ?? 1, pageSize)));
                }
                else
                {
                    return(Redirect("../Home"));
                }
            }
            else
            {
                return(Redirect("../Identity/Account/Login"));
            }
        }
Exemple #28
0
        // GET: CitasOdontologicas
        public async Task <IActionResult> Index(string Filter, int?page, string search)
        {
            var i = (ClaimsIdentity)User.Identity;

            if (i.IsAuthenticated)
            {
                //Permisos de usuario
                var permisos = i.Claims.Where(c => c.Type == "CitasOdontologicas").Select(c => c.Value).SingleOrDefault().Split(";");
                ViewData["Crear"]    = Convert.ToBoolean(permisos[1]);
                ViewData["Editar"]   = Convert.ToBoolean(permisos[2]);
                ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]);
                ViewData["Exportar"] = Convert.ToBoolean(permisos[4]);

                if (Convert.ToBoolean(permisos[0]))
                {
                    //permite mantener la busqueda introducida en el filtro de busqueda
                    if (search != null)
                    {
                        page = 1;
                    }
                    else
                    {
                        search = Filter;
                    }

                    ViewData["Filter"] = search;

                    var fecha = Funciones.ObtenerFechaActual("SA Pacific Standard Time");
                    //var fechaInicioDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 00, 00, 00);
                    //var fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);

                    var fechaInicioDia    = new DateTime(fecha.Year, fecha.Month, 11, 00, 00, 00);
                    var fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, 11, 23, 59, 59);

                    var citaOdontologica = from c in _context.CitaOdontologica.Include(a => a.Personal).Include(a => a.Paciente)
                                           .Where(a => a.FechaInicio > fechaInicioDia && a.FechaInicio < fechaInicioFinDia)
                                           //&& (a => a.FechaInicio > fechaInicioDia && a.FechaInicio < fechaInicioFinDia  && (a.RegistroRecetaMedica == true && a.Estado == "A")) )
                                           .OrderBy(p => p.FechaInicio)
                                           select c;
                    citaOdontologica = citaOdontologica.Where(o => o.RegistroRecetaMedica == true && o.Estado == "A" || (o.Estado == "C" || o.Estado == "M"));


                    if (!String.IsNullOrEmpty(search))
                    {
                        citaOdontologica = citaOdontologica
                                           .Where(s => s.Paciente.NombreCompleto.Contains(search) ||
                                                  s.Paciente.Nombres.Contains(search) ||
                                                  s.Paciente.Apellidos.Contains(search) ||
                                                  s.Paciente.Identificacion.Contains(search));
                    }


                    int pageSize = 10;

                    return(View(await Paginacion <CitaOdontologica> .CreateAsync(citaOdontologica, page ?? 1, pageSize)));                  // page devuelve valor si lo tiene caso contrario devuelve 1
                }
                else
                {
                    return(Redirect("../Home"));
                }
            }
            else
            {
                return(Redirect("../Identity/Account/Login"));
            }
        }
        // GET: Categorias
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?page)
        {
            //DB - Categorias
            var categorias = from s in _context.Categoria select s;

            //Ordenamiento
            ViewData["NombreSortParm"]      = string.IsNullOrEmpty(sortOrder) ? "nombre_desc" : "";
            ViewData["DescripcionSortParm"] = sortOrder == "descripcion_asc" ? "descripcion_desc" : "descripcion_asc";
            ViewData["EstadoSortParm"]      = sortOrder == "estado_asc" ? "estado_desc" : "estado_asc";
            //Flitro
            Boolean flagFiltro = false;

            if (!string.IsNullOrEmpty(searchString))
            {
                categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString));
            }
            if (!string.IsNullOrEmpty(currentFilter))
            {
                flagFiltro = true;
            }
            //Paginación
            if (!string.IsNullOrEmpty(searchString))
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;
            ViewData["CurrentSort"]   = sortOrder;

            if (flagFiltro)
            {
                switch (sortOrder)
                {
                case "nombre_desc":
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderByDescending(s => s.Nombre);
                    break;

                case "descripcion_desc":
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderByDescending(s => s.Descripcion);
                    break;

                case "descripcion_asc":
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderBy(s => s.Descripcion);
                    break;

                case "estado_desc":
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderByDescending(s => s.Estado);
                    break;

                case "estado_asc":
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderBy(s => s.Estado);
                    break;

                default:
                    categorias = categorias.Where(s => s.Nombre.Contains(searchString) || s.Descripcion.Contains(searchString)).OrderBy(s => s.Nombre);
                    break;
                }
            }
            else
            {
                switch (sortOrder)
                {
                case "nombre_desc":
                    categorias = categorias.OrderByDescending(s => s.Nombre);
                    break;

                case "descripcion_desc":
                    categorias = categorias.OrderByDescending(s => s.Descripcion);
                    break;

                case "descripcion_asc":
                    categorias = categorias.OrderBy(s => s.Descripcion);
                    break;

                case "estado_desc":
                    categorias = categorias.OrderByDescending(s => s.Estado);
                    break;

                case "estado_asc":
                    categorias = categorias.OrderBy(s => s.Estado);
                    break;

                default:
                    categorias = categorias.OrderBy(s => s.Nombre);
                    break;
                }
            }
            int pageSize = 3;

            return(View(await Paginacion <Categoria> .CreateAsync(categorias.AsNoTracking(), page ?? 1, pageSize)));
        }