//public List<MenuOpcionesModel> menus { get; set; } //public bool leaf { get; set; } public List<MenuOpcionesModel> MenuBotton(IList<SG_MENU_OPCIONES> menus) { List<MenuOpcionesModel> result = new List<MenuOpcionesModel>(); foreach (var item in menus) { if (item.ESTADO == "A") { MenuOpcionesModel menu = new MenuOpcionesModel(); if (item.ID_PADRE == null) { menu.text = item.OPCION; menu.tooltip = item.TOOLTIP; menu.clase = item.LINK; menu.iconCls = item.ICONO; menu.estilo = item.ESTILO; result.Add(menu); } } } return result; }
public ActionResult ObtenerMenuOpciones() { try { var id_perfil = User.Identity.Name.Split('-')[2]; var login = User.Identity.Name.Split('-')[0]; var usuario = _serUsu.ObtenerUsuariosPorCriterio(x => x.LOGIN.ToUpper() == login.ToUpper()).FirstOrDefault(); var menus = usuario.SG_PERFILES.SG_PERFILES_OPCIONES.Select(x => x.SG_MENU_OPCIONES); menus = menus.OrderBy(x => x.ORDEN); //var menus = perfil.MN_PERFILES_OPCIONES.Select(x => x.MN_MENU_OPCIONES); //var menu = _mnMenOpcMng.ObtenerMenuOpciones(null); //menus = menus.OrderBy(x => x.ID_OPC); MenuOpcionesModel menu1 = new MenuOpcionesModel(); var listas = _serLista.ObtenerTodasListas().Select(l => new { ID_LISTA = l.ID_LISTA, LISTA = l.LISTA }); var menuOpciones = menu1.MenuBotton(menus.ToList()); var Usr = new { Login = usuario.LOGIN , Nombre = usuario.NOMBRE, Perfil = usuario.SG_PERFILES.NOMBRE }; //var result = menu1.MenuDinamico(menus.ToList()); return Json(new { Usuario = Usr , Menu = menuOpciones ,Listas = listas}); } catch (Exception) { return Json(new { success = false, msg = "Se produjo un error al intentar recuperar el menu de opciones" }); } }