Exemplo n.º 1
0
        public ActionResult NuevaPagina(int?id)
        {
            if (!this.currentUser())
            {
                return(RedirectToAction("Ingresar"));
            }
            PaginasBL paginasBL = new PaginasBL();
            PaginaDTO padre     = paginasBL.getPaginaById(id);
            PaginaDTO pagina    = TempData["Pagina"] as PaginaDTO;

            if (pagina == null)
            {
                pagina = new PaginaDTO();
            }
            if (padre != null)
            {
                pagina.Padre = padre.IdPagina;
            }
            else
            {
                pagina.Padre = null;
            }
            ViewBag.Padre = padre;
            return(View(pagina));
        }
Exemplo n.º 2
0
        public ActionResult PageCreate(PaginaDTO pagina)
        {
            if (!this.currentUser())
            {
                return(RedirectToAction("Ingresar"));
            }

            try
            {
                if (ModelState.IsValid)
                {
                    PaginasBL paginasBL = new PaginasBL();
                    paginasBL.addPagina(pagina, getCurrentUser());
                    createResponseMessage(CONSTANTES.SUCCESS, CONSTANTES.SUCCESS_MESSAGE);
                    return(RedirectToAction("Index"));
                }
                createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_MESSAGE);
            }
            catch
            {
                createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_MESSAGE);
            }
            TempData["Pagina"] = pagina;
            return(RedirectToAction("NuevaPagina", new { id = pagina.Padre }));
        }
Exemplo n.º 3
0
        public List <PaginaDTO> ObtenerAcceso(string sPerfil)
        {
            List <PaginaDTO> retval = new List <PaginaDTO>();
            PaginaDTO        item;

            using (DbCommand cmd = db.GetStoredProcCommand("sp_sel_pagina_por_perfil"))
            {
                db.AddInParameter(cmd, "acPerfil", DbType.String, sPerfil);

                using (IDataReader dr = db.ExecuteReader(cmd))
                {
                    while (dr.Read())
                    {
                        item               = new PaginaDTO();
                        item.IdPagina      = int.Parse(dr["Id_Pagina"].ToString());
                        item.IdPaginaPadre = dr["Id_Pagina_Padre"] == DBNull.Value? 0: int.Parse(dr["Id_Pagina_Padre"].ToString());
                        item.Titulo        = dr["Titulo"].ToString();
                        item.Descripcion   = dr["Descripcion"].ToString();
                        item.Controlador   = dr["Controlador"].ToString();
                        item.Accion        = dr["Accion"].ToString();
                        item.Icono         = dr["icono"].ToString();
                        retval.Add(item);
                    }
                }
            }
            return(retval);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Ejecuta un procedimiento DAL de Accesos por Categoría de Usuario, y el resultado se recorre obteniendo los datos de página
        /// de accesos para poblar una lista de objetos de tipo PaginaDTO.
        /// </summary>
        /// <param name="_codCategoria">Código de Categoria de Usuario</param>
        /// <returns>Lista Genérica de tipo PaginaDTO con las paginas de acceso./returns>
        public List <PaginaDTO> ListaAccesos(int _codCategoria)
        {
            DataTable        dtResult      = _usuarioDal.SelectAccesos(_codCategoria);
            List <PaginaDTO> _listaPaginas = new List <PaginaDTO>();

            foreach (DataRow fila in dtResult.Rows)
            {
                PaginaDTO _pagina = new PaginaDTO()
                {
                    Pagina = fila["Pagina"].ToString(),
                    Target = fila["Target"].ToString(),
                    Nombre = fila["Nombre"].ToString(),
                    Padre  = fila["Padre"].ToString()
                };
                _listaPaginas.Add(_pagina);
            }
            return(_listaPaginas);
        }
Exemplo n.º 5
0
        public ActionResult PageUpdateContent(PaginaDTO pagina)
        {
            if (!this.currentUser())
            {
                return(RedirectToAction("Ingresar"));
            }
            PaginasBL paginasBL = new PaginasBL();

            if (paginasBL.updatePagina(pagina))
            {
                createResponseMessage(CONSTANTES.SUCCESS, CONSTANTES.SUCCESS_MESSAGE);
            }
            else
            {
                createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_MESSAGE);
            }
            return(RedirectToAction("Pagina", new { id = pagina.IdPagina }));
        }
Exemplo n.º 6
0
        public ActionResult PageUpdate(PaginaDTO pagina)
        {
            if (!this.currentUser())
            {
                return(RedirectToAction("Ingresar"));
            }
            PaginasBL paginasBL = new PaginasBL();

            if (paginasBL.validarCamposPagina(pagina))
            {
                if (paginasBL.updatePagina(pagina, false))
                {
                    createResponseMessage(CONSTANTES.SUCCESS);
                    return(RedirectToAction("Pagina", new { id = pagina.IdPagina }));
                }
            }
            createResponseMessage(CONSTANTES.ERROR);
            return(RedirectToAction("Pagina", new { id = pagina.IdPagina }));
        }
Exemplo n.º 7
0
        public ActionResult Pagina(int id)
        {
            if (!this.currentUser())
            {
                return(RedirectToAction("Ingresar"));
            }

            MenuNavBarSelected(1);

            PaginasBL paginasBL = new PaginasBL();
            PaginaDTO pagina    = paginasBL.getPaginaById(id, true);

            if (pagina.Padre != null || (pagina.Padre == null && isAdministrator()))
            {
                ViewBag.TieneHighlight = paginasBL.getHighlight(id) != null;
                return(View(pagina));
            }
            createResponseMessage(CONSTANTES.ERROR, "Usted no tiene privilegios para acceder a esta sección.");
            return(RedirectToAction("Index"));
        }
Exemplo n.º 8
0
        public int guardarPagina([FromBody] PaginaDTO pagina)
        {
            int res = 0;

            try
            {
                using (BDRestauranteContext db = new BDRestauranteContext())
                {
                    if (pagina.idPagina == 0)
                    {
                        db.Pagina.Add(new Pagina
                        {
                            Bhabilitado = 1,
                            Accion      = pagina.accion,
                            Mensaje     = pagina.mensaje,
                            Bvisible    = pagina.bVisible
                        });
                        db.SaveChanges();
                        res = 1;
                    }
                    else
                    {
                        Pagina paginaDB = db.Pagina.Where(d => d.Iidpagina == pagina.idPagina).FirstOrDefault();
                        paginaDB.Mensaje  = pagina.mensaje;
                        paginaDB.Accion   = pagina.accion;
                        paginaDB.Bvisible = pagina.bVisible;
                        db.SaveChanges();
                        res = 1;
                    }
                }
            }
            catch (Exception ex)
            {
                return(0);
            }
            return(res);
        }
Exemplo n.º 9
0
        public PaginaDTO <Usuario> GetUsuariosByUserLogado(string nome = "", long qtdPorPagina = 10, long pagina = 1)
        {
            var id    = User.Identity.GetUserId <int>();
            var user  = db.Users.Include(x => x.Usuarios).AsNoTracking().FirstOrDefault(x => x.Id == id);
            var lista = user.Usuarios.AsQueryable();

            if (lista.Count() == 0)
            {
                lista = db.Users.Include(x => x.Usuarios).Where(u => u.Usuarios.Any(us => us.Id == id)).AsNoTracking().AsQueryable();
            }


            if (!string.IsNullOrWhiteSpace(nome))
            {
                lista = lista.Where(x => x.Nome.ToUpper().Contains(nome.ToUpper()));
            }
            pagina -= 1;
            var skip = pagina * qtdPorPagina;

            lista.Skip((int)skip);
            lista.Take((int)qtdPorPagina);
            //lista = lista.ToList().SelectMany(x => x.Usuarios.Select(c => c)).ToList();
            //lista = db.Users.Include(x => x.Usuarios).ToList();
            var retornoAgrupado = lista.OrderBy(x => x.Nome)
                                  .Skip((int)skip)
                                  .Take((int)qtdPorPagina).AsNoTracking()
                                  .GroupBy(p => new { Total = lista.Count() })
                                  .FirstOrDefault();

            PaginaDTO <Usuario> retornoPaginado = new PaginaDTO <Usuario>
            {
                Total = retornoAgrupado?.Key.Total ?? 0,
                Itens = retornoAgrupado?.Select(u => u).ToList() ?? new List <Usuario>()
            };

            return(retornoPaginado);
        }
Exemplo n.º 10
0
        public PaginaDTO <Usuario> GetUsuario(string nome = "", string roleName = "", long qtdPorPagina = 10, long pagina = 1)
        {
            var retorno = db.Users.AsQueryable <Usuario>();

            if (!string.IsNullOrWhiteSpace(nome))
            {
                retorno = retorno.Where(a => a.Nome.ToUpper().Contains(nome.ToUpper()));
            }
            if (!string.IsNullOrWhiteSpace(roleName))
            {
                retorno = retorno.Where(a => a.Roles.Select(r => r.Role.Name.ToUpper()).Contains(roleName.ToUpper()));
            }

            pagina -= 1;
            var skip = pagina * qtdPorPagina;

            foreach (var item in retorno)
            {
                item.Senha        = null;
                item.PasswordHash = null;
            }

            var retornoAgrupado = retorno.OrderBy(x => x.Nome)
                                  .Skip((int)skip)
                                  .Take((int)qtdPorPagina)
                                  .AsNoTracking()
                                  .GroupBy(p => new { Total = retorno.Count() })
                                  .FirstOrDefault();

            PaginaDTO <Usuario> retornoPaginado = new PaginaDTO <Usuario>
            {
                Total = retornoAgrupado?.Key.Total ?? 0,
                Itens = retornoAgrupado?.Select(u => u).ToList() ?? new List <Usuario>()
            };

            return(retornoPaginado);
        }
Exemplo n.º 11
0
        public PaginaDTO recuperarPagina(int idPagina)
        {
            PaginaDTO pagina;

            try
            {
                using (BDRestauranteContext db = new BDRestauranteContext())
                {
                    Pagina paginaDB = db.Pagina.Where(d => d.Iidpagina == idPagina).FirstOrDefault();
                    pagina = new PaginaDTO
                    {
                        idPagina = paginaDB.Iidpagina,
                        accion   = paginaDB.Accion,
                        mensaje  = paginaDB.Mensaje,
                        bVisible = (int)paginaDB.Bvisible
                    };
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
            return(pagina);
        }
Exemplo n.º 12
0
        public PaginaDTO <Alimento> GetAlimentos(string descricao = "", long qtdPorPagina = 10, long pagina = 1)
        {
            //var caminho = "C:/projetos/Backend/C#/ControleDApi_v2/ControleDApi/AlimentosBD/foodList.json";
            ////var caminho = "C:/projetos/Backend/C#/ControleDApi_v2/ControleDApi/AlimentosBD/categoryList.json";
            //string text = System.IO.File.ReadAllText(caminho);

            //using (var file =
            // new System.IO.StreamReader(caminho))
            //{
            //    //var line = "";


            //    JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
            //    List<Alimento> itens = jsonSerializer.Deserialize<List<Alimento>>(text);
            //    //List<Categoria> itens = jsonSerializer.Deserialize<List<Categoria>>(text);

            //    itens = itens.Take(300).ToList();
            //    //itens.AddRange(itens.Skip(150).Take(50).ToList());
            //TODO: INCLUIR DATA DE ATUALIZACAO E CADASTRADO POR QD FOR ALIMENTO
            //    itens.ForEach(x => x.Carboidrato = x.Carboidrato == null ? new AtributoAlimento { Qtd = 0, Unidade = EnumUnidade.G } : x.Carboidrato);
            //    db.Alimento.AddRange(itens);
            //    //db.Categoria.AddRange(itens);

            //    db.SaveChanges();

            //}

            var retorno = db.Alimento.AsQueryable();

            if (!string.IsNullOrWhiteSpace(descricao))
            {
                retorno = db.Alimento.Where(al => al.Descricao.Contains(descricao));
            }

            pagina -= 1;
            var skip = pagina * qtdPorPagina;

            var retornoAgrupado = retorno
                                  .Include(x => x.Unidades)
                                  .Include(x => x.Carboidrato)
                                  .Include(x => x.Proteina)
                                  .Include(x => x.Categoria)
                                  .Include(x => x.FibraAlimentar)
                                  .Include(x => x.Sodio)
                                  .Include(x => x.Potassio)
                                  .OrderBy(x => x.Descricao)
                                  .Skip((int)skip)
                                  .Take((int)qtdPorPagina)
                                  .AsNoTracking()
                                  .ToList()
                                  .GroupBy(p => new { Total = retorno.Count() })
                                  .FirstOrDefault();


            PaginaDTO <Alimento> retornoPaginado = new PaginaDTO <Alimento>
            {
                Total = retornoAgrupado?.Key.Total ?? 0,
                Itens = retornoAgrupado?.Select(u => u).ToList() ?? new List <Alimento>()
            };

            return(retornoPaginado);
        }
Exemplo n.º 13
0
        protected bool showPagina(string controller, Uri url, string page, string id, string subid)
        {
            cleanViewBag();
            PaginasBL paginaBL = new PaginasBL();
            Pagina    pagina   = new Pagina();

            if (page != null)
            {
                if (subid != null)
                {
                    pagina = paginaBL.getPagina(subid, id, page);
                }
                else if (id != null)
                {
                    pagina = paginaBL.getPagina(id, page, controller);
                }
                else
                {
                    pagina = paginaBL.getPagina(page, controller);
                }
                if (pagina != null)
                {
                    this.currentPage = pagina;

                    PaginaDTO paginaPadre = paginaBL.getPaginaById(pagina.Padre);
                    string    baseUrl     = url.GetLeftPart(UriPartial.Authority) + Url.Content("~/");
                    baseUrl = getFixedUrl(baseUrl);
                    if (pagina.Landing != null && pagina.Landing == true)
                    {
                        ViewBag.Name       = pagina.Nombre;
                        ViewBag.ParentName = paginaPadre != null ? paginaPadre.Nombre : "";
                        ViewBag.ParentUrl  = string.Format("{0}/{1}", baseUrl, paginaPadre.Path);
                    }
                    else
                    {
                        ViewBag.Name = paginaPadre != null ? paginaPadre.Nombre : pagina.Nombre;
                        if (paginaPadre.Landing != null && paginaPadre.Landing == true && paginaPadre.Padre != null)
                        {
                            PaginaDTO paginaPadrePadre = paginaBL.getPaginaById(paginaPadre.Padre);
                            ViewBag.ParentName = paginaPadrePadre != null ? paginaPadrePadre.Nombre : "";
                            ViewBag.ParentUrl  = string.Format("{0}/{1}", baseUrl, paginaPadrePadre.Path);
                        }
                    }

                    /*ViewBag.Links = paginaBL.getSideBarLinks(pagina, url.AbsoluteUri);*/
                    ViewBag.Title   = ConfigurationManager.AppSettings["DefaultTitle"].ToString();
                    ViewBag.Content = pagina.Contenido;
                    ViewBag.Landing = pagina.Landing;
                    if (pagina.MostrarHighlights)
                    {
                        ViewBag.Highlights = paginaBL.getHighlightsByPaginaId(pagina.IdPagina);
                    }
                    if (pagina.MostrarCover)
                    {
                        ViewBag.Cover = pagina.Cover;
                    }
                    this.absoluteParent = paginaBL.getAbsoluteParent(pagina.IdPagina);
                    socialData.Title    = pagina.Nombre;
                    socialData.Url      = System.Web.HttpContext.Current.Request.Url.AbsoluteUri;
                    ViewBag.Social      = socialData;
                    return(true);
                }
                else
                {
                    throw new Exception("Página no existe");
                }
            }
            else
            {
                pagina           = paginaBL.getPagina(controller);
                base.currentPage = pagina;
                //ViewBag.Title = pagina.Titulo;
                ViewBag.Title   = ConfigurationManager.AppSettings["DefaultTitle"].ToString() + " - " + pagina.Nombre;
                ViewBag.Name    = pagina.Nombre;
                ViewBag.Content = pagina.Contenido;
                /*ViewBag.Links = paginaBL.getSideBarLinks(pagina, HttpContext.Request.Url.AbsoluteUri);*/
                if (pagina.MostrarHighlights)
                {
                    ViewBag.Highlights = paginaBL.getHighlightsByPaginaId(pagina.IdPagina);
                }
                if (pagina.MostrarCover)
                {
                    ViewBag.Cover = pagina.Cover;
                }
                ViewBag.Landing     = pagina.Landing;
                this.absoluteParent = paginaBL.getAbsoluteParent(pagina.IdPagina);
                socialData.Title    = pagina.Nombre;
                socialData.Url      = System.Web.HttpContext.Current.Request.Url.AbsoluteUri;
                ViewBag.Social      = socialData;
                return(false);
            }
        }