public void ArmaPerfil(Modelo_Entidades.Usuario oUsuario, string form) { cPerfil = Controladora.cPerfil.ObtenerInstancia(); cGrupo = Controladora.cGrupo.ObtenerInstancia(); cUsuario = Controladora.cUsuario.ObtenerInstancia(); btn_agregar.Enabled = false; btn_eliminar.Enabled = false; btn_modificar.Enabled = false; btn_verdetalle.Enabled = false; try { foreach (Modelo_Entidades.Grupo oGrupo in cUsuario.ObtenerGruposUsuario(oUsuario.id)) { foreach (Modelo_Entidades.Permiso oPermiso in cPerfil.ObtenerPermisos(oGrupo.id, form)) { switch (oPermiso.descripcion) { case "Alta": if (form == "FrmAuditorias") { btn_agregar.Text = "Formatear"; } btn_agregar.Enabled = true; break; case "Baja": if (form == "FrmProfesionales" || form == "FrmExpedientes") { btn_eliminar.Visible = false; } btn_eliminar.Enabled = true; break; case "Modifica": if (form == "FrmAuditorias") { btn_modificar.Visible = false; } btn_modificar.Enabled = true; break; case "Consulta": btn_verdetalle.Enabled = true; break; } } } } catch (Exception Exc) { throw new Exception(Exc.Message); } }
//CU RECUPERAR PERFIL POR FORMULARIO public List <String> RecuperarPerfilPorFormulario(Modelo_Entidades.Usuario oUsuario, string form) { cPerfil = Controladora.cPerfil.ObtenerInstancia(); cGrupo = Controladora.cGrupo.ObtenerInstancia(); cUsuario = Controladora.cUsuario.ObtenerInstancia(); List <String> AccionesHabilitadas = new List <String>(); String accion; try { foreach (Modelo_Entidades.Grupo oGrupo in cUsuario.ObtenerGruposUsuario(oUsuario.id)) { foreach (Modelo_Entidades.Permiso oPermiso in cPerfil.ObtenerPermisos(oGrupo.id, form)) { switch (oPermiso.descripcion) { case "Alta": accion = "Alta"; AccionesHabilitadas.Add(accion); break; case "Baja": accion = "Baja"; AccionesHabilitadas.Add(accion); break; case "Modifica": accion = "Modifica"; AccionesHabilitadas.Add(accion); break; case "Consulta": accion = "Consulta"; AccionesHabilitadas.Add(accion); break; } } } return(AccionesHabilitadas); } catch (Exception Exc) { throw new Exception(Exc.Message); } }
//CU RECUPERAR PERFIL POR FORMULARIO public List<String> RecuperarPerfilPorFormulario(Modelo_Entidades.Usuario oUsuario, string form) { cPerfil = Controladora.cPerfil.ObtenerInstancia(); cGrupo = Controladora.cGrupo.ObtenerInstancia(); cUsuario = Controladora.cUsuario.ObtenerInstancia(); List<String> AccionesHabilitadas = new List<String>(); String accion; try { foreach (Modelo_Entidades.Grupo oGrupo in cUsuario.ObtenerGruposUsuario(oUsuario.id)) { foreach (Modelo_Entidades.Permiso oPermiso in cPerfil.ObtenerPermisos(oGrupo.id, form)) { switch (oPermiso.descripcion) { case "Alta": accion ="Alta"; AccionesHabilitadas.Add(accion); break; case "Baja": accion = "Baja"; AccionesHabilitadas.Add(accion); break; case "Modifica": accion = "Modifica"; AccionesHabilitadas.Add(accion); break; case "Consulta": accion = "Consulta"; AccionesHabilitadas.Add(accion); break; } } } return AccionesHabilitadas; } catch (Exception Exc) { throw new Exception(Exc.Message); } }
// Cuando carga el formulario private void FrmPrincipal_Load(object sender, EventArgs e) { // Lo primero que hago es crear un formulario de Login, así que instancio las variables FrmLogin FormularioLogin = new FrmLogin(); DialogResult DrLogin = FormularioLogin.ShowDialog(); // Despues pregunto si el formulario dio Ok. En caso de que no, salgo if (DrLogin != DialogResult.OK) { Application.Exit(); return; } // Si dio Ok, creo el formulario de Login con el usuario. oUsuario = FormularioLogin.UsuarioLogin; // Agrego a la auditoria el ingreso del usuario AñadirAuditoria("Ingreso al Sistema"); // Además coloco el nombre y el apellido del usuario en la barra de estado toolStripStatusLabel1.Text = oUsuario.nombre_apellido; toolStripStatusLabel2.Text = DateTime.Now.ToShortDateString(); ToolStripDropDownButton Menu_Cerrar; Menu_Cerrar = new ToolStripDropDownButton(); Menu_Cerrar.Name = "Cerrar"; Menu_Cerrar.Text = "Cerrar"; msMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { Menu_Cerrar }); // Creo un submenú para salir ToolStripMenuItem SubMenu_Salir; SubMenu_Salir = new ToolStripMenuItem(); SubMenu_Salir.Name = "Salir"; SubMenu_Salir.Text = "Salir"; SubMenu_Salir.Tag = "Salir"; Menu_Cerrar.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { SubMenu_Salir }); SubMenu_Salir.Click += new EventHandler(SubMenu_Salir_Click); //Creo un submenú para cambiar sesión ToolStripMenuItem SubMenu_CerrarSesion; SubMenu_CerrarSesion = new ToolStripMenuItem(); SubMenu_CerrarSesion.Name = "Cerrar_Sesión"; SubMenu_CerrarSesion.Text = "Cerrar Sesión"; SubMenu_CerrarSesion.Tag = "Cerrar_Sesión"; Menu_Cerrar.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { SubMenu_CerrarSesion }); SubMenu_CerrarSesion.Click += new EventHandler(SubMenu_CerrarSesion_Click); //Creo un submenú para cambiar la clave ToolStripMenuItem SubMenu_CambiarClave; SubMenu_CambiarClave = new ToolStripMenuItem(); SubMenu_CambiarClave.Name = "Cambiar_clave"; SubMenu_CambiarClave.Text = "Cambiar clave"; SubMenu_CambiarClave.Tag = "Cambiar_clave"; Menu_Cerrar.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { SubMenu_CambiarClave }); SubMenu_CambiarClave.Click += new EventHandler(SubMenu_CambiarClave_Click); // Creo un objeto DropDwnButton para cargar los módulos en la barra de menúes del formulario ToolStripDropDownButton Menu_Modulo; foreach (Modelo_Entidades.Grupo oGrupo in cUsuario.ObtenerGruposUsuario(oUsuario.id)) { foreach (Modelo_Entidades.Modulo oModulo in cPerfil.ObtenerModulosPorGrupo(oGrupo.id)) { // Por cáda módulo creo un objeto ToolStripDropDownButton Menu_Modulo = new ToolStripDropDownButton(); Menu_Modulo.Name = oModulo.descripcion.ToString(); Menu_Modulo.Text = oModulo.descripcion; // Inserto el objeto creado a la barra de menúes del formulario msMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { Menu_Modulo }); // Busco las funciones asociadas al formulario ArmaFormularios(oGrupo.id, Menu_Modulo, oModulo); } } }