Example #1
0
        public Cliente TraerCliente(int codUsuario)
        {
            var adCliente = new ClienteDAC();
            var adUsuario = new CuentaDAC();
            var inte      = new IntegridadDatos();
            var aud       = new Auditoria();
            var priv      = new Privacidad();

            if (ExisteCliente(codUsuario) != 0)
            {
                return(adCliente.BuscarPorId(codUsuario));
            }

            var usuario = adUsuario.ListarUsuarioPorId(codUsuario);

            // Registro al Cliente en base a los datos del Usuario.
            var clienteActual = adCliente.RegistrarCliente(usuario);

            clienteActual.DVH = inte.CalcularDVH(clienteActual.Id.ToString() + priv.Cifrar(clienteActual.RazonSocial) + priv.Cifrar(clienteActual.CUIL) + priv.Cifrar(clienteActual.Email) + priv.Cifrar(clienteActual.Telefono) + priv.Cifrar(clienteActual.Direccion) + clienteActual.FechaAlta.ToString() + clienteActual.Localidad.Id.ToString());

            // Actualiza el DVH y DVV.
            inte.ActualizarDVHCliente(clienteActual.Id, clienteActual.DVH);
            inte.RecalcularDVV("Cliente");

            // Grabo en Bitácora.
            aud.grabarBitacora(DateTime.Now, usuario.Usr, "ALTA CLIENTE", "INFO", "Se registró al Cliente: " + clienteActual.Id.ToString() + " - '" + clienteActual.RazonSocial);


            return(clienteActual);
        }
Example #2
0
        public void ActualizarPswUsuario(string usr, string nuevaPsw)
        {
            var priv       = new Privacidad();
            var ad         = new CuentaDAC();
            var inte       = new IntegridadDatos();
            var negocioUsr = new NegocioCuenta();
            var aud        = new Auditoria();

            ad.ActualizarPswUsuario(usr, nuevaPsw);

            var usuarioActual = negocioUsr.BuscarUsuarioPorUsuario(usr);

            var usuarioActualDVH = inte.CalcularDVH(usuarioActual.Id.ToString() + priv.Cifrar(usuarioActual.RazonSocial) + priv.Cifrar(usuarioActual.Nombre) + priv.Cifrar(usuarioActual.Apellido) + priv.Cifrar(usuarioActual.Usr) + priv.Cifrar(usuarioActual.Psw) + priv.Cifrar(usuarioActual.CUIL) + usuarioActual.PerfilUsr.Id.ToString() + usuarioActual.Idioma.Id.ToString() + usuarioActual.Localidad.Id.ToString() + usuarioActual.FechaAlta.ToString() + usuarioActual.FechaBaja.ToString() + priv.Cifrar(usuarioActual.Telefono) + priv.Cifrar(usuarioActual.Direccion));

            // Actualiza el DVH y DVV.
            inte.ActualizarDVHUsuario(usuarioActual.Id, usuarioActualDVH);
            inte.RecalcularDVV("SEG_Usuario");

            aud.grabarBitacora(DateTime.Now, usr, "CAMBIO CLAVE", "INFO", "Se ha cambiado la contraseña del Usuario: " + usuarioActual.Usr + ".");
        }
Example #3
0
        public Usuario RegistrarUsuario(Usuario usr)
        {
            var ad = new CuentaDAC();

            var priv = new Privacidad();
            var inte = new IntegridadDatos();


            var usuarioActual = ad.RegistrarUsuario(usr);

            var usuarioActualDVH = inte.CalcularDVH(usuarioActual.Id.ToString() + priv.Cifrar(usuarioActual.RazonSocial) + priv.Cifrar(usuarioActual.Nombre) + priv.Cifrar(usuarioActual.Apellido) + priv.Cifrar(usuarioActual.Usr) + priv.Cifrar(usuarioActual.Psw) + priv.Cifrar(usuarioActual.CUIL) + usuarioActual.PerfilUsr.Id.ToString() + usuarioActual.Idioma.Id.ToString() + usuarioActual.Localidad.Id.ToString() + usuarioActual.FechaAlta.ToString() + usuarioActual.FechaBaja.ToString() + priv.Cifrar(usuarioActual.Telefono) + priv.Cifrar(usuarioActual.Direccion));

            // Actualiza el DVH y DVV.
            inte.ActualizarDVHUsuario(usuarioActual.Id, usuarioActualDVH);
            inte.RecalcularDVV("SEG_Usuario");

            // Grabo en Bitácora.
            var aud = new Auditoria();

            aud.grabarBitacora(DateTime.Now, "SISTEMA", "ALTA USUARIO", "INFO", "Se registró al Usuario: " + usuarioActual.Id.ToString() + " - '" + usuarioActual.Usr + "' con el perfil de " + usuarioActual.PerfilUsr.Descripcion);

            return(usuarioActual);
        }
Example #4
0
        public ActionResult ActualizarDatosCuenta(Usuario usuarioModif)
        {
            var integ = new IntegridadDatos();

            if ((String)Session["PerfilUsuario"] != null && integ.ValidarExistencia("SEG_Usuario") == 1)
            {
                try
                {
                    var ln   = new NegocioCuenta();
                    var aud  = new Auditoria();
                    var inte = new IntegridadDatos();
                    var priv = new Privacidad();

                    // Traduce páginas de CUENTA.
                    TraducirPagina((String)Session["IdiomaApp"]);

                    var usrAnterior = ln.InformacionCuenta(usuarioModif.Id.ToString());

                    if (usuarioModif.Direccion == null && usuarioModif.Telefono == null && usuarioModif.Localidad.Id == 0 && usuarioModif.Idioma.Id == 0)
                    {
                        return(RedirectToAction("Index"));
                    }

                    if (usuarioModif.Direccion == null)
                    {
                        usuarioModif.Direccion = usrAnterior.Direccion;
                    }


                    if (usuarioModif.Telefono == null)
                    {
                        usuarioModif.Telefono = usrAnterior.Telefono;
                    }


                    if (usuarioModif.Localidad.Id == 0)
                    {
                        usuarioModif.Localidad.Id = usrAnterior.Localidad.Id;
                    }

                    if (usuarioModif.Idioma.Id == 0)
                    {
                        usuarioModif.Idioma.Id = usrAnterior.Idioma.Id;
                    }

                    //Actualizo datos.
                    ln.ActualizarDatosCuenta(usuarioModif);

                    var usuarioActual = ln.BuscarUsuarioPorUsuario((String)Session["UsrLogin"]);

                    var usuarioActualDVH = inte.CalcularDVH(usuarioActual.Id.ToString() + priv.Cifrar(usuarioActual.RazonSocial) + priv.Cifrar(usuarioActual.Nombre) + priv.Cifrar(usuarioActual.Apellido) + priv.Cifrar(usuarioActual.Usr) + priv.Cifrar(usuarioActual.Psw) + priv.Cifrar(usuarioActual.CUIL) + usuarioActual.PerfilUsr.Id.ToString() + usuarioActual.Idioma.Id.ToString() + usuarioActual.Localidad.Id.ToString() + usuarioActual.FechaAlta.ToString() + usuarioActual.FechaBaja.ToString() + priv.Cifrar(usuarioActual.Telefono) + priv.Cifrar(usuarioActual.Direccion));

                    // Actualiza el DVH y DVV.
                    inte.ActualizarDVHUsuario(usuarioActual.Id, usuarioActualDVH);
                    inte.RecalcularDVV("SEG_Usuario");

                    aud.grabarBitacora(DateTime.Now, usuarioActual.Usr, "CAMBIO DATOS CUENTA", "INFO", "Se han actualizado datos de cuenta del Usuario: " + usuarioActual.Usr + ".");

                    Session["IdiomaApp"] = usuarioActual.Idioma.Abreviacion;

                    return(RedirectToAction("Index", "Home"));
                }
                catch
                {
                    var lnIdio = new NegocioIdioma();
                    var lnLoc  = new NegocioLocalidad();

                    ViewBag.Localidades = lnLoc.Listar();
                    ViewBag.Idiomas     = lnIdio.Listar();

                    return(View());
                }
            }

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult Login(FrmLogin login)
        {
            var priv = new Privacidad();

            if (login.Usuario == null && login.Contraseña == null)
            {
                login.Usuario    = login.Usuario_Eng;
                login.Contraseña = login.Contraseña_Eng;
            }

            var ln  = new NegocioCuenta();
            var seg = new Privacidad();

            // Traduce páginas de LOGIN.
            TraducirPagina((String)Session["IdiomaApp"]);

            // Usuario con Sesión activa.
            if (ln.ValidarSesionActiva(login.Usuario))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_SESION_ACTIVA;
                return(RedirectToAction("Login"));
            }

            Session["IdUsuario"]          = null;
            Session["NombreUsuario"]      = null;
            Session["PerfilUsuario"]      = null;
            Session["EmailUsuario"]       = null;
            Session["CodUsuario"]         = null;
            Session["DireccionUsuario"]   = null;
            Session["RazonSocialUsuario"] = null;

            Session["UsrLogin"] = null;

            Session["ErrorLogin"] = null;
            Session["Excepcion"]  = null;

            // Usuario incorrecto, solo devuelvo el error al Login.
            if (ln.ValidarUsuario(login.Usuario))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS;
                return(RedirectToAction("Login"));
            }

            // Valido que la cuenta no este bloqueada.
            if (ln.ValidarBloqueoCuenta(login.Usuario))

            {
                return(RedirectToAction("CuentaBloqueada"));
            }


            // Valido que la contraseña sea correcta, en caso negativo incremento intentos fallidos.
            if (ln.ValidarUsuarioPsw(login.Usuario, login.Contraseña))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS;

                //Sumo intento fallido.
                if (ln.SumarIntentoFallido(login.Usuario) == 3)
                {
                    ln.BloquearCuentaUsuario(login.Usuario); //Bloqueo cuenta de Usuario.

                    var aud = new Auditoria();
                    aud.grabarBitacora(DateTime.Now, "SISTEMA", "BLOQUEO USUARIO", "ERROR LEVE", "Se bloqueó al Usuario: " + login.Usuario);


                    return(RedirectToAction("CuentaBloqueada"));
                }

                return(RedirectToAction("Login"));
            }

            var usrSesion = ln.Autenticar(login);

            //Error en la base de datos.
            if (usrSesion.Nombre == null || usrSesion.PerfilUsr.Descripcion == null)

            {
                var aud = new Auditoria();
                aud.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR LOGIN", "ERROR LEVE", "Error al intentar ingresar al sistema.");
                return(RedirectToAction("Index", "Home"));
            }

            //Usuario Logueado correctamente, se mapean las variables de Sesión.

            Session["IdUsuario"]          = usrSesion.Id.ToString();
            Session["NombreUsuario"]      = usrSesion.Nombre;
            Session["RazonSocialUsuario"] = usrSesion.RazonSocial;
            Session["PerfilUsuario"]      = usrSesion.PerfilUsr.Descripcion;
            Session["EmailUsuario"]       = usrSesion.Email;
            Session["CodUsuario"]         = usrSesion.Id;
            Session["DireccionUsuario"]   = usrSesion.Direccion;
            Session["IdiomaApp"]          = usrSesion.Idioma.Abreviacion;

            Session["UsrLogin"] = usrSesion.Usr;

            HttpCookie cookie = new HttpCookie("UsrLogin");

            cookie.Value = usrSesion.Usr;
            Response.Cookies.Add(cookie);

            //Activo la Sesión.
            //ln.ActivarSesionCuentaUsuario(usrSesion.Usr);

            return(RedirectToAction("Index", "Home"));
        }