protected void agregarRol() { List <string> res = new List <string>(); TB_ROL rol = new TB_ROL(); rol.NOMBRE = Request.Form["txt_editar_nombre"]; rol.DESCRIPCION = Request.Form["txt_editar_descripcion"]; res = new A_ROL().insertRol(rol, ((BLL.Modelos.ModelosVistas.MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); if (res != null) { errores = H_Objetos.ListMensajesToString(res); } //Después de haber guardado el rol, se procederá a guardar los permisos res = guardarPermisos(Request.Form["txt_editar_permisos"], rol); if (res != null) { errores = H_Objetos.ListMensajesToString(res); return; } info = "Rol creado correctamente"; }
protected void editarRol() { List <string> res = new List <string>(); TB_ROL rol = new TB_ROL(); rol.ID_ROL = int.Parse(Request.Form["txt_editar_id_rol"]); rol.NOMBRE = Request.Form["txt_editar_nombre"]; rol.DESCRIPCION = Request.Form["txt_editar_descripcion"]; res = new A_ROL().updateRol(rol, ((BLL.Modelos.ModelosVistas.MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); if (res != null) { errores = H_Objetos.ListMensajesToString(res); return; } borrarPermisos(rol); //Creando los nuevos permisos res = guardarPermisos(Request.Form["txt_editar_permisos"], rol); if (res != null) { errores = H_Objetos.ListMensajesToString(res); return; } info = "Rol actualizado correctamente"; }
protected List <string> guardarPermisos(string recursos, TB_ROL rol) { List <string> err = null; if (!string.IsNullOrEmpty(recursos)) { try { rol = new A_ROL().getRolByNombre(rol.NOMBRE); //Consultado el rol que acaba de ser guardado string[] r = recursos.Split(','); //Separando los PK de los recursos por coma foreach (string i in r) { if (!string.IsNullOrEmpty(i)) { TB_RECURSO recurso = new TB_RECURSO(); recurso.ID_RECURSO = int.Parse(i); err = new A_PERMISO().createPermiso(rol, recurso, ((BLL.Modelos.ModelosVistas.MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); } } } catch (Exception e) { err = new List <string>(); err.Add(e.Message); } } return(err); }
protected void redirigir(int id_usuario, int id_rol) { A_ROL r = new A_ROL(); A_USUARIO u = new A_USUARIO(); //Guardando la información del usuario en la sesión Session["usuario"] = u.getUsuarioDetallesById(id_usuario); //Extrayendo el rol del usuario string rol = ((MV_DetalleUsuario)Session["usuario"]).NOMBRE_ROL.ToUpper(); //Redirigiendo hacia la página correcta switch (rol) { case "ADMINISTRADOR": Response.RedirectToRoute("AdministrarUsuarios"); //crud de usuarios break; case "BENEFICIARIO": Response.RedirectToRoute("ConsultarPropuestas"); //Consultar propuestas de solución break; case "CONSULTOR": Response.RedirectToRoute("ConsultarBeneficiario"); break; case "COORDINADOR": Response.RedirectToRoute("ConsultarBeneficiario"); break; case "FORMULADOR": Response.RedirectToRoute("RegistrarExperiencia"); break; case "COMITÉ EVALUADOR": Response.RedirectToRoute("ConsultarIniciativa"); break; case "PRESIDENTE": Response.RedirectToRoute("ConsultarIniciativa"); break; } }
protected void eliminarRol() { string res; TB_ROL rol = new TB_ROL(); rol.ID_ROL = int.Parse(Request.Form["txt_borrar_id_rol"]); borrarPermisos(rol); res = new A_ROL().softDeleteRol(rol, ((BLL.Modelos.ModelosVistas.MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); if (!string.IsNullOrEmpty(res)) { errores = res; return; } info = "Rol eliminado correctamente"; }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { A_ROL r = new A_ROL(); A_USUARIO u = new A_USUARIO(); if (Session["usuario"] == null) { Response.StatusCode = 403; Response.RedirectToRoute("Login"); return; } switch (u.getEstadoSesion(((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO, Session.SessionID)) { case A_USUARIO.SESION_EXISTENTE: lbl_tipo_usuario.Text = r.getRolById(((MV_DetalleUsuario)Session["usuario"]).ID_ROL).NOMBRE; break; default: Response.StatusCode = 403; Response.RedirectToRoute("Login"); break; } // Buscando si el usuario está autorizado para acceder a la página solicitada var path = Request.Url.AbsolutePath; //Extrayendo URL if (!isAuthorized(path)) { Response.StatusCode = 403; Response.SuppressContent = true; Response.RedirectToRoute("Login"); } //Finalmente, si el usuario está autorizado, cargará sus notificaciones notificaciones = A_NOTIFICACION.ObtenerNotificacionesNuevas(((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); A_NOTIFICACION.ActualizarNotificacionesLeido(((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO); } }
protected void RegistrarFormuladorClick(object sender, EventArgs e) { var aUsuario = new A_USUARIO(); var aPersona = new A_PERSONA(); var aRol = new A_ROL(); var aFormulador = new A_FORMULADOR(); lbl_error_password2.Text = ""; lbl_errorCorreo.Text = ""; if (txt_pass1.Text != txt_pass2.Text) { lbl_error_password2.Text = "Las contraseñas deben coincidir"; lbl_error_password2.ForeColor = System.Drawing.Color.Red; return; } else { if (aPersona.EsCorreoUnico(txt_correo.Text) == 1) { lbl_errorCorreo.Text = "Este correo ya fue registrado anteriormente"; return; } } var persona = new TB_PERSONA { NOMBRES = txt_nombre.Text, APELLIDOS = txt_apellido.Text, CORREO_E = txt_correo.Text, DIRECCION = txt_dir.Text, TEL_FIJO = txt_tel.Text, TEL_CEL = txt_cel.Text }; var idRol = aRol.getRolByNombre("Formulador").ID_ROL; var res = new MV_Exception(); res = aPersona.AlmacenarPersona(persona, 0); if (res.IDENTITY != null) { int idPersona = Convert.ToInt32(res.IDENTITY); var usuario = new TB_USUARIO { NOMBRE_USUARIO = txt_correo.Text, ID_PERSONA = idPersona, ID_ROL = idRol, CONTRASENA = txt_pass1.Text }; res = aUsuario.createUsuario(usuario, 0); int idUsuario = Convert.ToInt32(res.IDENTITY); var formulador = new TB_FORMULADOR { ID_PERSONA = idPersona, GRADO_ACADEMICO = txt_grado.Text, ANIOS_EXPERIENCIA = Convert.ToInt16(txt_experiencia.Text), ACTIVO = false }; res = aFormulador.insertFormulador(formulador, idUsuario); formulador.ID_FORMULADOR = Convert.ToInt32(res.IDENTITY); A_NOTIFICACION.GuardarNotificacion(A_USUARIO.obtenerCoordinador().ID_USUARIO, 0, "IF02"); ScriptManager.RegisterStartupScript(this, GetType(), "Pop", "ShowMessage('Registro de formulador exitoso, ahora debera agregar su experiencia al momento de loguearse', 'success');", true); btn.Visible = false; } else { ScriptManager.RegisterStartupScript(this, GetType(), "Pop", "ShowMessage('Error al guardar el registro de datos personales</strong>', 'error');", true); } }