// Cuando cambia el formulario private void cmb_formularios_ItemCheck(object sender, EventArgs e) { oFormulario = (Modelo_Entidades.Formulario)cmb_formularios.SelectedItem; chklstbox_permisos.DataSource = cPerfil.ObtenerPermisos(oGrupo.id, oFormulario.descripcion); chklstbox_permisos.DisplayMember = "descripcion"; for (int i = 0; i < chklstbox_permisos.Items.Count; i++) { Modelo_Entidades.Permiso oPermiso = (Modelo_Entidades.Permiso)chklstbox_permisos.Items[i]; foreach (Modelo_Entidades.Permiso miPermiso in cPerfil.ObtenerPermisos(oGrupo.id, oFormulario.descripcion)) { chklstbox_permisos.SetItemChecked(i, true); } } }
// Al cargar el formulario private void FrmGrupo_Load(object sender, EventArgs e) { cmb_formularios.DataSource = cFormulario.ObtenerFormularios(); cmb_formularios.DisplayMember = "nombredemuestra"; oFormulario = (Modelo_Entidades.Formulario)cmb_formularios.SelectedItem; chklstbox_usuarios.DataSource = cUsuario.ObtenerUsuarios(); chklstbox_usuarios.DisplayMember = "nombre_apellido"; checkearA = false; for (int i = 0; i < chklstbox_usuarios.Items.Count; i++) { Modelo_Entidades.Usuario oUsuario = (Modelo_Entidades.Usuario)chklstbox_usuarios.Items[i]; foreach (Modelo_Entidades.Usuario miUsuario in oGrupo.Usuarios) { if (oUsuario.id == miUsuario.id) { chklstbox_usuarios.SetItemChecked(i, true); } } } checkearA = true; if (modo == "Alta") { return; } else { chklstbox_permisos.DataSource = cPerfil.ObtenerPermisos(oGrupo.id, oFormulario.descripcion); chklstbox_permisos.DisplayMember = "descripcion"; } for (int i = 0; i < chklstbox_permisos.Items.Count; i++) { Modelo_Entidades.Permiso oPermiso = (Modelo_Entidades.Permiso)chklstbox_permisos.Items[i]; foreach (Modelo_Entidades.Permiso miPermiso in cPerfil.ObtenerPermisos(oGrupo.id, oFormulario.descripcion)) { chklstbox_permisos.SetItemChecked(i, true); } } }
// Valido que no exista un perfil dado el grupo, formulario y permiso public Boolean ValidarPerfil(Modelo_Entidades.Grupo oGrupo, Modelo_Entidades.Formulario oFormulario, Modelo_Entidades.Permiso oPermiso) { Modelo_Entidades.Perfil oPerfil = oModelo_Entidades.Perfiles.ToList().Find(delegate(Modelo_Entidades.Perfil fPerfil) { return(fPerfil.Grupo == oGrupo && fPerfil.Formulario == oFormulario && fPerfil.Permiso == oPermiso); }); if (oPerfil == null) { return(true); } else { return(false); } }