Пример #1
0
        private void btn_GuardarUsuario_Click(object sender, EventArgs e)
        {
            //PASO 1: Creación de usuario
            if (txt_NomUsu.Text != "" && txt_Nombre.Text != "" && txt_Apellido.Text != "" && txt_NumDoc != null && txt_Email.Text != "" && txt_Telefono.Text != "" && txt_Domicilio.Text != "")
            {
                usu_BE.nom_usuario = txt_NomUsu.Text;
                usu_BE.nombre      = txt_Nombre.Text;
                usu_BE.apellido    = txt_Apellido.Text;
                usu_BE.documento   = int.Parse(txt_NumDoc.Text);
                usu_BE.email       = txt_Email.Text;
                usu_BE.telefono    = txt_Telefono.Text;
                usu_BE.domicilio   = txt_Domicilio.Text;

                int idUsuario = usu_BLL.Add(usu_BE);
                bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se creó de Usuario");

                //PASO 2: Asociación de patentes a usuario
                foreach (DataGridViewRow fila in dgv_patentesAsociadas.Rows)
                {
                    usuPat_BE.id_patente    = (int)fila.Cells[0].Value;
                    usuPat_BE.id_usuario    = idUsuario;
                    usuPat_BE.patenteNegada = (bool)fila.Cells[2].Value;
                    usuPat_BLL.Add(usuPat_BE);
                    bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se asignó una patente a un usuario");
                }

                foreach (DataGridViewRow fila in dgv_FamiliasAsociadas.Rows)
                {
                    famUsu_BE.id_usuario = idUsuario;
                    famUsu_BE.id_familia = (int)fila.Cells[0].Value;
                    famUsu_BLL.Add(famUsu_BE);
                    bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se asignó una familia a un usuario");
                }

                //PASO3: Guardar contraseña en txt
                SaveFileDialog savefileDialog = new SaveFileDialog();
                savefileDialog.ShowDialog();
                FileStream F = File.Create(savefileDialog.FileName);
                F.Close();
                StreamWriter sw = File.AppendText(savefileDialog.FileName);
                sw.WriteLine("Se creó su usuario " + txt_NomUsu.Text + " con la nueva contraseña: " + usu_BLL.GetContraseña(idUsuario));
                sw.Close();

                MessageBox.Show("Se envió la contraseña al mail del usuario");


                //PASO 4: Mensaje al usuario y volver atrás
                MessageBox.Show("Usuario generado con éxito");
                this.Close();
            }
            else
            {
                MessageBox.Show("Debe completar todos los campos de la pestaña principal");
            }

            #region REFLECTION: Implementación v2
            //var items = BLL.Services.GetPropertyValues("ObjectCollection", lst_PatentesAsociadas);
            //foreach (BE.Patente item in items)
            //{
            //    usuPat_BE.id_patente = item.id;
            //    usuPat_BE.id_usuario = idUsuario;
            //}
            #endregion
        }
Пример #2
0
        private void btn_GuardarUsuario_Click(object sender, EventArgs e)
        {
            if (txt_NomUsu.Text != "" && txt_Nombre.Text != "" && txt_Apellido.Text != "" && txt_NumDoc != null && txt_Email.Text != "" && txt_Telefono.Text != "" && txt_Domicilio.Text != "")
            {
                usu_BE.id          = Convert.ToInt32(usuario_seleccionado.Cells[0].Value);
                usu_BE.activo      = Convert.ToBoolean(usuario_seleccionado.Cells[1].Value);
                usu_BE.nom_usuario = txt_NomUsu.Text;
                usu_BE.nombre      = txt_Nombre.Text;
                usu_BE.apellido    = txt_Apellido.Text;
                usu_BE.documento   = int.Parse(txt_NumDoc.Text);
                usu_BE.email       = txt_Email.Text;
                usu_BE.telefono    = txt_Telefono.Text;
                usu_BE.domicilio   = txt_Domicilio.Text;
                usu_BE.contraseña  = Convert.ToString(usuario_seleccionado.Cells[9].Value);
                usu_BE.cant_ingresos_incorrectos = Convert.ToInt32(usuario_seleccionado.Cells[10].Value);
                usu_BE.DVH             = Convert.ToInt32(usuario_seleccionado.Cells[11].Value);
                usu_BE.es_primer_login = Convert.ToBoolean(usuario_seleccionado.Cells[12].Value);
                usu_BE.id_idioma       = Convert.ToInt32(usuario_seleccionado.Cells[13].Value);

                usu_BLL.Update(usu_BE);

                //PASO 2 parte 1: Asociacion de patentes a usuario
                foreach (DataGridViewRow fila in dgv_patentesAsociadas.Rows)
                {
                    if (!this.patentesUsuarioDB.Any(pu => pu.id == (int)fila.Cells[0].Value))
                    {
                        usuPat_BE.id_patente    = (int)fila.Cells[0].Value;
                        usuPat_BE.id_usuario    = (int)usuario_seleccionado.Cells[0].Value;
                        usuPat_BE.patenteNegada = (bool)fila.Cells[3].Value;
                        usuPat_BLL.Add(usuPat_BE);
                        bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se asignó una patente a un usuario");
                    }
                }

                //PASO 2 parte 2: Desasociacion de patente a usuario
                foreach (DataGridViewRow fila in dgv_patentesDisponibles.Rows)
                {
                    if (this.patentesUsuarioDB.Any(pu => pu.id == (int)fila.Cells[0].Value))
                    {
                        usuPat_BE.id_patente = (int)fila.Cells[0].Value;
                        usuPat_BE.id_usuario = (int)usuario_seleccionado.Cells[0].Value;
                        usuPat_BLL.Delete(usuPat_BE);
                    }
                }

                //PASO 2 parte 3: Negar patente a un usuario
                foreach (DataGridViewRow fila in dgv_patentesAsociadas.Rows)
                {
                    BE.UsuarioPatente usuarioPatente = new BE.UsuarioPatente();
                    usuarioPatente = usuPat_BLL.GetUsuarioPatente((int)usuario_seleccionado.Cells[0].Value, (int)fila.Cells[0].Value);

                    if ((bool)fila.Cells[3].Value != usuarioPatente.patenteNegada)
                    {
                        usuPat_BE.id_patente    = (int)fila.Cells[0].Value;
                        usuPat_BE.id_usuario    = (int)usuario_seleccionado.Cells[0].Value;
                        usuPat_BE.patenteNegada = (bool)fila.Cells[3].Value;
                        usuPat_BLL.Update(usuPat_BE);
                        bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se negó una patente a un usuario");
                    }
                }

                //PASO 3 parte 1: Asociacion de familia a Usuario
                foreach (DataGridViewRow fila in dgv_familiasAsociadas.Rows)
                {
                    if (!this.familiasUsuarioDB.Any(fu => fu.id == (int)fila.Cells[0].Value))
                    {
                        famUsu_BE.id_usuario = (int)usuario_seleccionado.Cells[0].Value;
                        famUsu_BE.id_familia = (int)fila.Cells[0].Value;
                        famUsu_BLL.Add(famUsu_BE);
                        bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se asignó una familia a un usuario");
                    }
                }

                //PASO 3 parte 2: Desasociacion de familia a Usuario
                foreach (DataGridViewRow fila in dgv_familiasDisponibles.Rows)
                {
                    if (this.familiasUsuarioDB.Any(fu => fu.id == (int)fila.Cells[0].Value))
                    {
                        famUsu_BE.id_usuario = (int)usuario_seleccionado.Cells[0].Value;
                        famUsu_BE.id_familia = (int)fila.Cells[0].Value;
                        famUsu_BLL.Delete(famUsu_BE);
                        bitacora_BAJA.RegistrarEnBitacora(this.usuario_logueado, DateTime.Now, "Se desasignó una familia a un Usuario");
                    }
                }

                //PASO 3: Mensaje al usuario y volver atrás
                MessageBox.Show("Usuario modificado con éxito");
                this.Close();
            }
            else
            {
                MessageBox.Show("Debe completar todos los campos de la pestaña principal");
            }
        }