//Agrega un usuario nuevo a la base de datos private void btnAgregarUsuario_Click(object sender, EventArgs e) { if (String.IsNullOrEmpty(txtRutUsuario.Text.Trim())) { MessageBox.Show("El campo Rut no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtNombreUsuario.Text.Trim())) { MessageBox.Show("El campo Nombre no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtApellidoUsuario.Text.Trim())) { MessageBox.Show("El campo Apellido no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtEmailUsuario.Text.Trim())) { MessageBox.Show("El campo Email no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (cboTipoUsuario.SelectedIndex == -1) { MessageBox.Show("Debe selecionar un tipo de usuario.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (controladorUsuario.BuscarUsuario(txtRutUsuario.Text) != null) {//Si el usuario es encontrado, no se puede agregar porque ya existe MessageBox.Show("El usuario que intenta agregar, ya existe.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (Convert.ToString(txtRutUsuario.Text[txtRutUsuario.Text.Length - 1]) == controladorUsuario.digitoVerificador(Convert.ToInt32(txtRutUsuario.Text.Substring(0, txtRutUsuario.Text.Length - 1)))) {//Si el digito verificador del rut ingresado es correcto se procede a agregar al nuevo usuario string nombreTipoUsuario = controladorTipoUsuario.ObtenerNombreTipoUsuario(Convert.ToInt32(cboTipoUsuario.SelectedValue)); txtCodUsuario.Text = controladorUsuario.GenerarCodigo(nombreTipoUsuario); usuario nuevo = new usuario()//se crea un usuario que se agregara a la DB { codigo_usuario = txtCodUsuario.Text, rut_usuario = txtRutUsuario.Text, nombre = txtNombreUsuario.Text, apellido = txtApellidoUsuario.Text, email = txtEmailUsuario.Text, id_tipo_usuario = Convert.ToInt32(cboTipoUsuario.SelectedValue) }; if (controladorUsuario.AgregarUsuario(nuevo)) {//Si no hay errores se agrega el nuevo usuario y se recarga la Grilla MessageBox.Show("El usuario ah sido agregado.", "Mensaje de Usuario", MessageBoxButtons.OK, MessageBoxIcon.Information); cargarGridUsuarios(); } else { MessageBox.Show("El usuario que intenta agregar, ya existe.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("El Rut ingresado no es correcto, Intente nuevamente.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }
//Agregar un nuevo usuario a la Base de datos public bool AgregarUsuario(usuario nuevo) { try { usuario aux = contex.usuario.Find(nuevo.rut_usuario); if (aux != null) { return false;//El usuario ya existe. } else {//Se agrega el nuevo usuario al contexto y se devuelve el cambio contex.usuario.Add(nuevo); return contex.SaveChanges() > 0; } } catch (Exception e) {//Si se genera un error se informa de este System.Windows.Forms.MessageBox.Show("Error"+e.StackTrace); return false; } }
private void btnEditarUsuario_Click(object sender, EventArgs e) { if (String.IsNullOrEmpty(txtRutUsuario.Text.Trim())) { MessageBox.Show("El campo Rut no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtNombreUsuario.Text.Trim())) { MessageBox.Show("El campo Nombre no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtApellidoUsuario.Text.Trim())) { MessageBox.Show("El campo Apellido no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (String.IsNullOrEmpty(txtEmailUsuario.Text.Trim())) { MessageBox.Show("El campo Email no puede estar vacio.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (cboTipoUsuario.SelectedIndex == -1) { MessageBox.Show("Debe selecionar un tipo de usuario.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { //Dependiendo de que opcion tome el usuario respecto al tipo de este, se guarda en una variable string nombreTipoUsuario = controladorTipoUsuario.ObtenerNombreTipoUsuario(Convert.ToInt32(cboTipoUsuario.SelectedValue)); txtCodUsuario.Text = controladorUsuario.GenerarCodigo(nombreTipoUsuario); usuario aEditar = new usuario()//se crea un usuario que se agregara a la DB { codigo_usuario = txtCodUsuario.Text, rut_usuario = txtRutUsuario.Text, nombre = txtNombreUsuario.Text, apellido = txtApellidoUsuario.Text, email = txtEmailUsuario.Text, id_tipo_usuario = Convert.ToInt32(cboTipoUsuario.SelectedValue) }; if (controladorUsuario.EditarUsuario(aEditar)) { MessageBox.Show("El usuario ah sido editado.", "Mensaje de Usuario", MessageBoxButtons.OK, MessageBoxIcon.Information); cargarGridUsuarios(); } else { MessageBox.Show("No se ah realizado ningún cambio en los datos.", "Mensaje de Usuario", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } }
//******************************************************************************** //Editar un usuario existente public bool EditarUsuario(usuario aEditar) { try { usuario aux = contex.usuario.Find(aEditar.rut_usuario); if (aux != null) {//El usuario existe por lo tanto se editan sus datos aux.rut_usuario = aEditar.rut_usuario; aux.nombre = aEditar.nombre; aux.apellido = aEditar.apellido; aux.email = aEditar.email; aux.id_tipo_usuario = aEditar.id_tipo_usuario; return contex.SaveChanges() > 0; } else {//El usuario no existe o no se ah encontrado return false; } } catch (Exception e) {//Si se genera un error se informa de este System.Windows.Forms.MessageBox.Show("Error" + e.Message); return false; } }