示例#1
0
        void AccesoUsuario()
        {
            PersonaModel usuario = null;

            try
            {
                using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                {
                    usuario = per.Persona_ObtenerUno(Convert.ToInt32(Session.UserCodigo));
                }
            }
            catch (Exception)
            {
            }
            while (usuario != null && usuario.Activo)
            {
                try
                {
                    using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                    {
                        usuario = per.Persona_ObtenerUno(Convert.ToInt32(Session.UserCodigo));
                    }
                }
                catch (Exception) { }
            }
            //errorlogin = "******";
        }
示例#2
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            string numeroDocumento = txtNumDoc.Text;

            if (string.IsNullOrEmpty(numeroDocumento))
            {
                return;
            }
            if (!int.TryParse(numeroDocumento, out int result))
            {
                MessageBox.Show("Ingrese un número correcto"); return;
            }

            using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
            {
                persona = user.Persona_ObtenerUno(result);

                if (persona != null)
                {
                    CargarDatos(persona);
                }
                else
                {
                    MessageBox.Show("No se ha encontrado ningún resultado");
                }
            }
        }
示例#3
0
 private void llenarDGVUsuarios()
 {
     try
     {
         using (WsSistemaBancario.PersonaServiceClient UsuariosRol = new WsSistemaBancario.PersonaServiceClient())
         {
             usuarios = UsuariosRol.GetPersonasPorRol(idRol);
             dgvUsuarios.DataSource  = usuarios;
             dgvUsuarios.CurrentCell = null;
             dgvUsuarios.Columns["Id"].DataPropertyName            = "Id";
             dgvUsuarios.Columns["IDPersona"].DataPropertyName     = "IDPersona";
             dgvUsuarios.Columns["Nombres"].DataPropertyName       = "Nombres";
             dgvUsuarios.Columns["Nombreusuario"].DataPropertyName = "Nombreusuario";
             dgvUsuarios.Columns["Estado"].DataPropertyName        = "Estado";
             dgvUsuarios.Columns["Id"].Visible                  = false;
             dgvUsuarios.Columns["IDPersona"].Visible           = false;
             dgvUsuarios.Columns["Correo"].Visible              = false;
             dgvUsuarios.Columns["NroDocumento"].Visible        = false;
             dgvUsuarios.Columns["Pass"].Visible                = false;
             dgvUsuarios.Columns["Apellidos"].Visible           = false;
             dgvUsuarios.Columns["Fechanacimiento"].Visible     = false;
             dgvUsuarios.Columns["Telefono"].Visible            = false;
             dgvUsuarios.Columns["Tipodocumento"].Visible       = false;
             dgvUsuarios.Columns["Fecha_creacion"].Visible      = false;
             dgvUsuarios.Columns["Fecha_modificacion"].Visible  = false;
             dgvUsuarios.Columns["Usuario_creador"].Visible     = false;
             dgvUsuarios.Columns["Usuario_modificador"].Visible = false;
             dgvUsuarios.Columns["Tipo_persona"].Visible        = false;
         }
     }
     catch (Exception)
     {
     }
 }
        private bool ChangePassword()
        {
            try
            {
                using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                {
                    string newPassEncrypt   = Encrypt.GetSHA256(this.m_newpassword);
                    string m_actualPassword = Encrypt.GetSHA256(this.m_password);

                    usuarioCambiarContraseña = user.Persona_CambiarContraseña(this.m_username, m_actualPassword, newPassEncrypt);


                    if (usuarioCambiarContraseña)
                    {
                        MetroFramework.MetroMessageBox.Show(this, "Credenciales actualizados!.", "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Information, 170);
                        return(true);
                    }
                }
                return(false);
            }
            catch (Exception)
            {
                return(false);
            }
        }
        void CargaInicial()
        {
            if (Rol != null)
            {
                //roles
                int idSelect = Rol.Id;
                using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                {
                    listPersonas = per.PersonaModelSelectByRol(Rol.Id).ToList();
                    if (listPersonas == null)
                    {
                        MetroFramework.MetroMessageBox.Show(this, "Error Al recuperar usuario Desconocido.", "Usuarios.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                    }
                    listBoxCargar(listPersonas);
                }
            }
            else
            {
                //Componete
                int idSelect = Componente.Id;

                using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                {
                    listPersonas = per.PersonaModelSelectByComponente(Componente.Id).ToList();
                    if (listPersonas == null)
                    {
                        MetroFramework.MetroMessageBox.Show(this, "Error al recuperar usuarios Desconocido.", "Usuarios.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                    }
                    listBoxCargar(listPersonas);
                }
            }
        }
示例#6
0
        private void llenarDGVUsuarios()
        {
            try
            {
                dgvUsuarios.Rows.Clear();
                using (WsSistemaBancario.PersonaServiceClient UsuariosLista = new WsSistemaBancario.PersonaServiceClient())
                {
                    Usuarios = UsuariosLista.Persona_UsuarioSelectAll().ToList();
                    if (Usuarios == null || Usuarios.Count == 0)
                    {
                        MetroFramework.MetroMessageBox.Show(this, "Usuarios no encontrados!.", "Usuarios.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                        return;
                    }
                    foreach (var p in Usuarios)
                    {
                        if (p.Id != Convert.ToInt32(session.UserCodigo))
                        {
                            dgvUsuarios.Rows.Add(p.Id, p.Nombres, p.Apellidos, p.Activo);
                        }
                    }
                }
            }

            catch (Exception)
            {
                MetroFramework.MetroMessageBox.Show(this, "Error en el servidor, vuelva a reconectarse!.", "Usuarios.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                return;
            }
        }
示例#7
0
 private void btnBuscarNombres_Click(object sender, EventArgs e)
 {
     dgvUsuarios.Rows.Clear();
     try
     {
         string texto = txtNombres.Text.Trim();
         using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
         {
             Usuarios = per.UsuariosBuscarPorNombre(texto).ToList();
             if (Usuarios == null)
             {
                 return;
             }
             foreach (var p in Usuarios)
             {
                 if (p.Id != Convert.ToInt32(session.UserCodigo))
                 {
                     dgvUsuarios.Rows.Add(p.Id, p.Nombres, p.Apellidos, p.Activo);
                 }
             }
         }
     }
     catch (Exception ex)
     {
     }
 }
示例#8
0
 void CerrarSesion()
 {
     try
     {
         using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
         {
             user.ElminarInicioDeSesion(Convert.ToInt32(Session.UserCodigo));
         }
     }
     catch (Exception)
     {
     }
 }
 private void btnBuscarNombres_Click(object sender, EventArgs e)
 {
     try
     {
         if (Rol != null)
         {
             //roles
             int idSelect = Rol.Id;
             if (txtNombres.Text.Trim() == string.Empty)
             {
                 return;
             }
             string texto = txtNombres.Text.Trim();
             using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
             {
                 listPersonas = per.BuscarPorNombreRoles(texto, Rol.Id).ToList();
                 if (listPersonas == null)
                 {
                     lbxDeshabilitados.Items.Clear();
                     lbxHabilitados.Items.Clear();
                     return;
                 }
                 listBoxCargar(listPersonas);
             }
         }
         else
         {
             //Componete
             int idSelect = Componente.Id;
             if (txtNombres.Text.Trim() == string.Empty)
             {
                 return;
             }
             string texto = txtNombres.Text.Trim();
             using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
             {
                 listPersonas = per.BuscarPorNombreComponentes(texto, Componente.Id).ToList();
                 if (listPersonas == null)
                 {
                     lbxDeshabilitados.Items.Clear();
                     lbxHabilitados.Items.Clear();
                     return;
                 }
                 listBoxCargar(listPersonas);
             }
         }
     }
     catch (Exception)
     {
     }
 }
示例#10
0
 private void btnAceptarBusqueda_Click(object sender, EventArgs e)
 {
     pnlAgregarUsuario.BringToFront();
     try
     {
         using (WsSistemaBancario.PersonaServiceClient ObtenerPersona = new WsSistemaBancario.PersonaServiceClient())
         {
             persona = ObtenerPersona.Persona_ObtenerUno(idPersona);
             txtUsuarioBuscado.Text = persona.Nombres;
         }
     }
     catch (Exception)
     {
     }
 }
示例#11
0
 private void llenarBusquedaUsuariosDGV()
 {
     try
     {
         using (WsSistemaBancario.PersonaServiceClient busc = new WsSistemaBancario.PersonaServiceClient())
         {
             usuariosFiltrados = busc.Persona_ObtenerTodos().ToList();
             foreach (var u in usuariosFiltrados)
             {
                 dgvBusquedaUsuarios.Rows.Add(u.Id, u.Nombres, u.Apellidos, /*u.Tipodocumento,*/ u.Nrodocumento);
             }
         }
     }
     catch (Exception)
     {
     }
 }
示例#12
0
 private void btnBuscarDocumento_Click(object sender, EventArgs e)
 {
     if (Rol != null)
     {
         //roles
         int idSelect = Rol.Id;
         if (txtDocumento.Text.Trim() == string.Empty)
         {
             return;
         }
         string texto = txtDocumento.Text.Trim();
         using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
         {
             listPersonas = per.BuscarPorDocumentoRoles(texto, Rol.Id).ToList();
             if (listPersonas == null)
             {
                 lbxDeshabilitados.DataSource = null;
                 lbxHabilitados.DataSource    = null;
                 return;
             }
             listBoxCargar(listPersonas);
         }
     }
     else
     {
         //Componete
         int idSelect = Componente.Id;
         if (txtDocumento.Text.Trim() == string.Empty)
         {
             return;
         }
         string texto = txtDocumento.Text.Trim();
         using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
         {
             listPersonas = per.BuscarPorDocumentoComponentes(texto, Componente.Id).ToList();
             if (listPersonas == null)
             {
                 lbxDeshabilitados.DataSource = null;
                 lbxHabilitados.DataSource    = null;
                 return;
             }
             listBoxCargar(listPersonas);
         }
     }
 }
 private void btnBuscarCliente_Click(object sender, EventArgs e)
 {
     try
     {
         string textoBuscar = txtNumero_documento.Text.Trim().ToString();
         List <PersonaModel> personasAMostrar = null;
         using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
         {
             personasAMostrar = per.BuscarDocumentoCliente(textoBuscar).ToList();
         }
         buscarPersona(personasAMostrar);
         registrarCliente = true;
     }
     catch (Exception ex)
     {
         MetroFramework.MetroMessageBox.Show(this, "Error al conectarse al servidor,  vuelva a intentarlo.", "Usuarios.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
     }
 }
示例#14
0
 private void ListarUsuariosXIdComponente(int idComponente)
 {
     try
     {
         using (WsSistemaBancario.PersonaServiceClient persona = new WsSistemaBancario.PersonaServiceClient())
         {
             personas_list = persona.Persona_ObtenerTodos().ToList();
             foreach (var p in personas_list)
             {
                 dgvUsuarios.Rows.Add(p.Nombreusuario + " " + p.Apellidos, p.Nrodocumento, p.Estado);
             }
         }
     }
     catch (Exception)
     {
         MessageBox.Show("Error en cargar Usuarios", "Usuarios");
     }
 }
示例#15
0
        private void llenarDGVUsuarios()
        {
            try
            {
                dgvUsuarios.Rows.Clear();
                using (WsSistemaBancario.PersonaServiceClient UsuariosLista = new WsSistemaBancario.PersonaServiceClient())
                {
                    Usuarios = UsuariosLista.Persona_UsuarioSelectAll().ToList();

                    foreach (var p in Usuarios)
                    {
                        dgvUsuarios.Rows.Add(p.Id, p.Nombres, p.Apellidos, p.Estado);
                    }
                }
            }

            catch (Exception)
            {
            }
        }
        private bool crearContraseña()
        {
            try
            {
                using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                {
                    string newPassEncrypt = Encrypt.GetSHA256(this.m_newpassword);

                    if (user.Persona_CrearContraseña(this.m_username, newPassEncrypt))
                    {
                        return(true);
                    }
                    return(false);
                }
            }
            catch (Exception)
            {
                return(false);
            }
        }
示例#17
0
        private string ObtenerRowVersionSesionActiva()
        {
            string valor;

            try
            {
                using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                {
                    valor = user.RecuperarVersionInicioDeSesion(Convert.ToInt32(Session.UserCodigo));
                    if (valor == null)
                    {
                        MetroFramework.MetroMessageBox.Show(this, "Version vacio, vuelva a conectarse", "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                        //this.Close();
                    }
                }
                return(valor);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
        private bool ChangePassword()
        {
            try
            {
                using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                {
                    string newPassEncrypt   = Encrypt.GetSHA256(this.m_newpassword);
                    string m_actualPassword = Encrypt.GetSHA256(this.m_password);

                    usuarioCambiarContraseña = user.Persona_CambiarContraseña(this.m_username, m_actualPassword, newPassEncrypt);


                    if (usuarioCambiarContraseña)
                    {
                        return(true);
                    }
                }
                return(false);
            }
            catch (Exception)
            {
                return(false);
            }
        }
        private void btnInsertarUsuario_Click(object sender, EventArgs e)
        {
            try
            {
                string passEncrypt = Encrypt.GetSHA256(txtContraseña.Text);
                using (WsSistemaBancario.PersonaServiceClient CrearUsuario = new WsSistemaBancario.PersonaServiceClient())
                {
                    confirmarCreacion      = CrearUsuario.Persona_CrearNuevoUsuario(idPersona, txtUsuario.Text, passEncrypt, chbEstado.Checked);
                    txtUsuarioBuscado.Text = "";
                    txtContraseña.Text     = "";
                    txtUsuario.Text        = "";
                    using (WsSistemaBancario.RolUsuarioServiceClient CrearRolUsuario = new WsSistemaBancario.RolUsuarioServiceClient())
                    {
                        RolUsuarioModel rum = new RolUsuarioModel();
                        rum.Id_persona      = idPersona;
                        rum.Id_rol          = idRol;
                        rum.Activo          = true;
                        rum.Fecha_creacion  = DateTime.Now;
                        rum.Usuario_creador = "Administrador";

                        CrearRolUsuario.RolUsuario_Crear(rum, 1);
                    }
                    //llenarDGVUsuarios();
                    pnlAgregarUsuario.SendToBack();

                    // pnlSecundario.BringToFront();
                }
                MessageBox.Show("Usuario agregado correctamente!", "Correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.Close();
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#20
0
 private void dgvUsuarios_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex >= 0)
     {
         if (this.dgvUsuarios.Columns[e.ColumnIndex].Name == "Editar")
         {
             MessageBox.Show("Editar");
         }
         if (this.dgvUsuarios.Columns[e.ColumnIndex].Name == "Eliminar")
         {
             using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
             {
                 bool back = per.Persona_Eliminar(Convert.ToInt32(dgvUsuarios.Rows[e.RowIndex].Cells[0].Value.ToString()));
                 if (back)
                 {
                     MessageBox.Show("Usuario eliminado!", "Correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     this.llenarDGVUsuarios();
                 }
                 else
                 {
                     MessageBox.Show("No se pudo Eliminar!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
         }
         if (this.dgvUsuarios.Columns[e.ColumnIndex].Name == "EstadoUsuario")
         {
             DataGridViewCheckBoxCell chk = this.dgvUsuarios.Rows[e.RowIndex].Cells["EstadoUsuario"] as DataGridViewCheckBoxCell;
             if (chk.Value == chk.TrueValue)
             {
                 //chk.Value = chk.FalseValue;
                 using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                 {
                     bool back = per.ActualizarEstado(Convert.ToInt32(session.UserCodigo), Convert.ToInt32(dgvUsuarios.Rows[e.RowIndex].Cells[0].Value.ToString()), false);
                     if (back)
                     {
                         MessageBox.Show("Estado actualizado!", "Correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         //chk.Value = chk.FalseValue;
                     }
                     else
                     {
                         MessageBox.Show("No se pudo actualizar!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         //chk.Value = chk.TrueValue;
                     }
                 }
             }
             else
             {
                 //chk.Value = chk.TrueValue;
                 using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                 {
                     bool back = per.ActualizarEstado(Convert.ToInt32(session.UserCodigo), Convert.ToInt32(dgvUsuarios.Rows[e.RowIndex].Cells[0].Value.ToString()), true);
                     if (back)
                     {
                         MessageBox.Show("Estado actualizado!", "Correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         chk.Value = chk.TrueValue;
                     }
                     else
                     {
                         MessageBox.Show("No se pudo actualizar!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         chk.Value = chk.FalseValue;
                     }
                 }
                 //this.llenarDGVUsuarios();
             }
         }
     }
 }
示例#21
0
        void validarVersiones()
        {
            Thread.Sleep(5000);
            try
            {
                string VersionServer     = ObtenerRowVersionSesionActiva();
                bool   accesoAComponente = true;
                bool   UsuarioActivo     = true;
                bool   conexionPerdida   = true;
                while (VersionServer == Session.Version && accesoAComponente && UsuarioActivo && conexionPerdida)
                {
                    Thread.Sleep(3000);
                    VersionServer = ObtenerRowVersionSesionActiva();
                    try
                    {
                        if (NombreComponentActivo != null)
                        {
                            accesoAComponente = AccesoComponenteByNombre(NombreComponentActivo);
                        }

                        using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                        {
                            int idUser = Convert.ToInt32(Session.UserCodigo);
                            UsuarioActivo = per.Persona_ObtenerUno(idUser).Activo;
                        }
                    }
                    catch (Exception)
                    {
                        conexionPerdida = false;
                    }
                }
                if (VersionServer == null)
                {
                    errorLogin = "******";
                }
                else if (VersionServer != Session.Version)
                {
                    errorLogin = "******";
                }
                else if (!accesoAComponente)
                {
                    errorLogin = "******";
                    CerrarSesion();
                }
                else if (!UsuarioActivo)
                {
                    errorLogin = "******";

                    CerrarSesion();
                }
                else if (!conexionPerdida)
                {
                    errorLogin = "******";
                    CerrarSesion();
                }
                else
                {
                    errorLogin = "******";
                    CerrarSesion();
                }
                try
                {
                    using (wsRegistroError.LogErrorClient err = new wsRegistroError.LogErrorClient())
                    {
                        LogErrorModel log = new LogErrorModel(Session.UserNombreCompleto, errorLogin, TipoOperacion.otro, "capa UI", "Error en el inicio de sesión");
                        err.LogError_RegistrarError(log);
                    }
                }
                catch (Exception ex)
                {
                }
                noCerrarSesion = true;

                this.Close();
            }
            catch (Exception ex)
            {
                // ThreadConexion.Abort();
            }
        }
示例#22
0
        private bool StartLogin()
        {
            bool back = false;

            try
            {
                using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                {
                    string passEncrypt = Encrypt.GetSHA256(this.m_password);
                    usuarioLogin    = user.Persona_ValidarUsuario(this.m_username, passEncrypt);
                    SucursalUsuario = user.Persona_ObtenerSucursal(usuarioLogin.Id);
                    if (SucursalUsuario is null)
                    {
                        SucursalUsuario        = new Modelos.Modelos.SucursalModel();
                        SucursalUsuario.Id     = 0;
                        SucursalUsuario.Nombre = "Sin sucursal";
                    }
                    listaComponentes = user.Persona_GetComponentes(usuarioLogin.Id).ToList();

                    listaRoles = user.Persona_GetRolesUsuario(usuarioLogin.Nombreusuario).ToList();
                    back       = true;
                }
                using (WsSistemaBancario.VentanillaServiceClient venta = new WsSistemaBancario.VentanillaServiceClient())
                {
                    ventanilla = venta.Ventanilla_ObtenerUnoXusuario(usuarioLogin.Id);
                    if (ventanilla is null)
                    {
                        ventanilla = new Modelos.Modelos.VentanillaModel();
                        ventanilla.Id_ventanilla = 0;
                        ventanilla.Descripcion   = "Sin ventanilla";
                    }
                }
                using (WsSistemaBancario.TurnosServiceClient turn = new WsSistemaBancario.TurnosServiceClient())
                {
                    turno = turn.Turnos_ObtenerUnoXUsuario(usuarioLogin.Id);
                    if (turno is null)
                    {
                        turno             = new Modelos.Modelos.TurnosModel();
                        turno.Id          = 0;
                        turno.Descripcion = "Sin turno";
                    }
                }
                if (usuarioLogin != null && SucursalUsuario != null)
                {
                    Session                    = new Session();
                    Session.UserCodigo         = usuarioLogin.Id.ToString();
                    Session.UserName           = usuarioLogin.Nombreusuario;
                    Session.UserNombreCompleto = usuarioLogin.Nombres + " " + usuarioLogin.Apellidos;

                    //Session.SucursalCodigo = SucursalUsuario.Id.ToString();
                    Session.SucursalCodigo = string.Format("{0:000}", SucursalUsuario.Id);
                    Session.SucursalNombre = SucursalUsuario.Nombre;
                    //agregar aqui ventanilla ID y descripcion, turno ID y descripcion
                    Session.VentanillaCodigo      = ventanilla.Id_ventanilla.ToString();
                    Session.VentanillaDescripcion = ventanilla.Descripcion;
                    Session.Turno               = turno;
                    Session.SucursalUbicacion   = SucursalUsuario.Ubicacion;
                    Session.SucursalCodigoBanco = SucursalUsuario.Idbanco.ToString();
                    Session.Componentes         = listaComponentes;
                    Session.UserRol             = listaRoles;
                    back = true;
                }
                return(back);
            }
            catch (Exception)
            {
                return(back);
            }
        }
示例#23
0
        private bool StartLogin()
        {
            sesioNueva = false;
            error      = null;
            bool back = false;

            //verificar estado edel nombre de usuarioooooooooooooooooo
            try
            {
                using (WsSistemaBancario.PersonaServiceClient usu = new WsSistemaBancario.PersonaServiceClient())
                {
                    int estado = usu.PersonaNombreUsuario(this.m_username);
                    if (estado == 0)
                    {
                        error = "Usuario bloqueado, consulte con el Administrador.";
                        return(false);
                    }
                    if (estado == 2)
                    {
                        error = "Error en las credenciales!";
                        return(false);
                    }
                }
            }
            catch (Exception)
            {
                error = "Conexión perdida, vuelva a intentarlo";
                return(false);
            }

            try
            {
                if (primerLogueo)
                {
                    using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                    {
                        //string passEncrypt = Encrypt.GetSHA256(this.m_password);
                        usuarioLogin = user.Persona_ValidarUsuario(this.m_username, null, ref error);
                    }
                    if (usuarioLogin == null)
                    {
                        if (error != null)
                        {
                            return(false);
                        }
                        if (NombreUsuarioerrado == this.m_username)
                        {
                            intentosFallidos++;
                            if (intentosFallidos == 3)
                            {
                                using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                                {
                                    per.BloquearUsuario(this.m_username);
                                }
                            }
                        }
                        else
                        {
                            NombreUsuarioerrado = this.m_username;
                            intentosFallidos    = 0;
                        }
                        error = "Error en las credenciales!";
                        return(false);
                    }

                    return(true);
                }
                else
                {
                    using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                    {
                        string passEncrypt = Encrypt.GetSHA256(this.m_password);
                        error        = null;
                        usuarioLogin = user.Persona_ValidarUsuario(this.m_username, passEncrypt, ref error);

                        if (usuarioLogin == null)
                        {
                            if (error != null)
                            {
                                return(false);
                            }
                            if (NombreUsuarioerrado == this.m_username)
                            {
                                intentosFallidos++;
                                if (intentosFallidos == 3)
                                {
                                    using (WsSistemaBancario.PersonaServiceClient per = new WsSistemaBancario.PersonaServiceClient())
                                    {
                                        per.BloquearUsuario(this.m_username);
                                    }
                                }
                            }
                            else
                            {
                                NombreUsuarioerrado = this.m_username;
                                intentosFallidos    = 0;
                            }
                            error = "Error en las credenciales!";
                            return(false);
                        }
                        if (usuarioLogin.Activo == false)
                        {
                            error = "Usuario bloqueado, Consulte con El Administrador";
                            return(false);
                        }
                        if (usuarioLogin.Conectado)
                        {
                            error      = "Ya hay una sesion Abierta , ¿DESEA REEMPLAZARLO?";
                            sesioNueva = true;
                        }
                        listaComponentes = user.Persona_GetComponentes(usuarioLogin.Id).ToList();
                        if (listaComponentes.Count == 0)
                        {
                            error = "Usuario sin permisos, consulte al Administrador";
                            return(false);
                        }
                        listaRoles      = user.Persona_GetRolesUsuario(usuarioLogin.Nombreusuario).ToList();
                        SucursalUsuario = user.Persona_ObtenerSucursal(usuarioLogin.Id);
                    }
                    using (WsSistemaBancario.VentanillaServiceClient venta = new WsSistemaBancario.VentanillaServiceClient())
                    {
                        ventanilla = venta.Ventanilla_ObtenerUnoXusuario(usuarioLogin.Id);
                    }
                    using (WsSistemaBancario.TurnosServiceClient turn = new WsSistemaBancario.TurnosServiceClient())
                    {
                        turno = turn.Turnos_ObtenerUnoXUsuario(usuarioLogin.Id);
                    }
                    foreach (var item in listaRoles)
                    {
                        if (item.Id == 11 && turno == null)
                        {
                            if (MetroFramework.MetroMessageBox.Show(this, "No tienen asigando ningun turno a este horario!,¿Desea continuar?.", "Inicio de sesión.", MessageBoxButtons.YesNo, MessageBoxIcon.Question, 185) == DialogResult.No)
                            {
                                error = null;
                                return(false);
                            }
                        }
                    }
                    Session                    = new Session();
                    Session.UserCodigo         = usuarioLogin.Id.ToString();
                    Session.UserName           = usuarioLogin.Nombreusuario;
                    Session.UserNombreCompleto = usuarioLogin.Nombres + " " + usuarioLogin.Apellidos;
                    Session.Componentes        = listaComponentes;
                    Session.UserRol            = listaRoles;
                    back = true;
                    if (SucursalUsuario != null)
                    {
                        //Session.SucursalCodigo = SucursalUsuario.Id.ToString();
                        Session.SucursalCodigo = string.Format("{0:000}", SucursalUsuario.Id);
                        //Global.

                        Session.SucursalNombre = SucursalUsuario.Nombre;
                        //agregar aqui ventanilla ID y descripcion, turno ID y descripcion
                        Session.SucursalUbicacion   = SucursalUsuario.Ubicacion;
                        Session.SucursalCodigoBanco = SucursalUsuario.Idbanco.ToString();
                    }
                    if (ventanilla != null)
                    {
                        Session.VentanillaCodigo      = ventanilla.Id_ventanilla.ToString();
                        Session.VentanillaDescripcion = ventanilla.Descripcion;
                        Session.Turno = turno;
                    }
                    return(back);
                }
            }
            catch (Exception ex)
            {
                error = "Conexión perdida, vualva a intentarlo";
                return(false);
            }
        }
示例#24
0
        private void button1_Click(object sender, EventArgs e)
        {
            int contador = 0;

            while (Conectado.Text != "Conectado" && contador <= 3)
            {
                establecerConexion();
                if (contador >= 3)
                {
                    Estado.BackColor = Color.Red;
                    Conectado.Text   = "Conexión perdida, consulte al administrador...";
                    return;
                }
                contador++;
            }
            if (!ValidarCampos())
            {
                return;
            }
            Cursor.Current = Cursors.WaitCursor;

            if (StartLogin())
            {
                if (primerLogueo)
                {
                    MetroFramework.MetroMessageBox.Show(this, "Usuario sin contraseña, digite una nueva contraseña para ingresar al sistema.", "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Information, 185);
                    CambiarContraseña cambiarContraseña = new CambiarContraseña(usuarioLogin);
                    cambiarContraseña.Show();
                    this.Close();
                }
                else
                {
                    if (sesioNueva)
                    {
                        if (MetroFramework.MetroMessageBox.Show(this, error, "Inicio de sesión.", MessageBoxButtons.YesNo, MessageBoxIcon.Information, 185) != DialogResult.Yes)
                        {
                            return;
                        }
                        using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                        {
                            if (!user.ActualizarInicioDeSesion(new SesionUsuarioModel(Convert.ToInt32(Session.UserCodigo))))
                            {
                                MetroFramework.MetroMessageBox.Show(this, "inicio de sesión no registrada", "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                            }
                        }
                    }
                    else
                    {
                        using (WsSistemaBancario.PersonaServiceClient user = new WsSistemaBancario.PersonaServiceClient())
                        {
                            if (!user.RegistrarInicioDeSesion(new SesionUsuarioModel(Convert.ToInt32(Session.UserCodigo))))
                            {
                                MetroFramework.MetroMessageBox.Show(this, "inicio de sesión no registrada", "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Error, 170);
                            }
                        }
                    }
                    VentanaPrincipal ventanaPrincipal = new VentanaPrincipal(Session);
                    ventanaPrincipal.Show();
                    ClearLogin();
                    Cursor.Current = Cursors.Arrow;
                    ThreadConexion.Abort();
                    Close();
                }
            }
            else
            {
                if (error != null)
                {
                    MetroFramework.MetroMessageBox.Show(this, error, "Inicio de sesión.", MessageBoxButtons.OK, MessageBoxIcon.Error, 185);
                }
            }
        }