private static void CrearMenuSiNoExiste(GestorDeMenus gestorDeMenu, string nombre, string descripcion, string icono, string padre, string vista, int orden) { var menus = padre.Split("."); int idPadre = 0; foreach (var menu in menus) { var padresDtm = BuscarMenu(gestorDeMenu, menu, idPadre); if (padresDtm.Count == 0) { throw new Exception($"No está definido el padre {menu}, para el idPadre {idPadre}"); } idPadre = padresDtm[0].Id; } List <MenuDtm> menusDtm = BuscarMenu(gestorDeMenu, nombre, idPadre); if (menusDtm.Count == 0) { var menuDtm = new MenuDtm(); menuDtm.Nombre = nombre; menuDtm.Descripcion = descripcion; menuDtm.Icono = icono; menuDtm.Orden = orden; menuDtm.Activo = true; menuDtm.IdPadre = idPadre; var gestorDeVista = GestorDeVistaMvc.Gestor(gestorDeMenu.Contexto, gestorDeMenu.Contexto.Mapeador); var vistaDtm = gestorDeVista.LeerRegistro(nameof(VistaMvcDtm.Nombre), vista, true, true, false, false, aplicarJoin: false); menuDtm.IdVistaMvc = vistaDtm.Id; gestorDeMenu.PersistirRegistro(menuDtm, new ParametrosDeNegocio(enumTipoOperacion.Insertar)); } }
public bool TienePermisoFuncional(UsuarioDtm usuarioConectado, object elemento) { var gestorDeVista = GestorDeVistaMvc.Gestor(Contexto, Mapeador); return(gestorDeVista.TienePermisos(usuarioConectado, (string)elemento)); }