Пример #1
0
        public static void RecoverPassword(string nombreUsuario)
        {
            Data.BarcoSoftUtilidadesDB db = new Data.BarcoSoftUtilidadesDB(true);

            // Generar nueva contraseña
            Data.Usuario user = db.Usuario.Where(x => x.NombreUsuario == nombreUsuario).FirstOrDefault();
            if (user == null)
            {
                throw new Exception("Nombre de usuario no es conocido en la base de datos.");
            }

            string nuevaContraseña = (DateTime.Now.Millisecond.ToString() + user.Persona.Apellidos).Encrypt();

            //Se coloca la nueva contraseña en la base de datos
            Usuario TempUser = Usuario.GetUserByName(nombreUsuario);

            TempUser.ChangePassword(user.Contraseña, nuevaContraseña.Encrypt());



            //Enviar Mail de recuperación al usuario

            Utilidades.SendMail mail = new Utilidades.SendMail(
                System.Configuration.ConfigurationManager.AppSettings["GmailAccountMail"].Decrypt(), System.Configuration.ConfigurationManager.AppSettings["GmailAccountPassword"].Decrypt(),
                System.Configuration.ConfigurationManager.AppSettings["smtpClient"], Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["smtGmailPort"])

                );

            mail.Send("Ekilibrate", user.Persona.Email, TempUser.DatosPersona.Nombres + " " + TempUser.DatosPersona.Apellidos,
                      "Recuperación de contraseña Ekilibrate",
                      @""
                      , true

                      );
        }
Пример #2
0
        public static bool update(Entidades.Usuario us)
        {
            using (var db = new Data.DB_A3C345_cobranzasEntities())
            {
                try
                {
                    var usu = new Data.Usuario()
                    {
                        UsuarioApellido1         = us.Apellido1,
                        UsuarioApellido2         = us.Apellido2,
                        UsuarioContrasena        = us.Contrasena,
                        UsuarioCambiarContrasena = us.CambiarContrasena,
                        UsuarioEmail             = us.Email,
                        UsuarioEsSuperAdmin      = us.EsSuperAdmin,
                        UsuarioHabilitado        = us.Habilitado,
                        UsuarioLogin             = us.Login,
                        UsuarioNombre            = us.Nombre,
                        UsuarioTelefono          = us.Nombre,
                        UsuarioID = Convert.ToInt32(us.ID)
                    };

                    db.Usuarios.Add(usu);
                    db.SaveChanges();
                    return(true);
                }
                catch (Exception)
                {
                    return(false);
                }
            }
        }
Пример #3
0
        public static void RecoverPassword(string nombreUsuario, string url)
        {
            Data.BarcoSoftUtilidadesDB db = new Data.BarcoSoftUtilidadesDB(true);

            // Generar nueva contraseña
            Data.Usuario user = db.Usuario.Where(x => x.GE_Persona.Correo.ToLower().Trim() == nombreUsuario.ToLower().Trim()).FirstOrDefault();
            if (user == null)
            {
                throw new Exception("Usuario ingresado no existe");
            }

            using (SmtpClient client = new SmtpClient())
            {
                client.EnableSsl             = false;
                client.UseDefaultCredentials = false;
                client.Credentials           = new NetworkCredential("*****@*****.**", "Esvisa16");
                client.Host                     = "mail.server260.com";
                client.Port                     = 587;
                client.DeliveryMethod           = SmtpDeliveryMethod.Network;
                client.ServicePoint.MaxIdleTime = 1;
                client.Timeout                  = 10000;

                MailMessage msg = new MailMessage();

                msg.From = new MailAddress("*****@*****.**", "Ekilibrate");
                msg.To.Add(user.GE_Persona.Correo);
                msg.Subject    = "Recuperación de Contraseña";
                msg.Body       = String.Format(HTMLCorreoRegistro, user.GE_Persona.PrimerNombre, url + "?p85=" + user.NombreUsuario.Encrypt() + "&p67=" + DateTime.Now.Date.ToString().Encrypt());
                msg.IsBodyHtml = true;
                msg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;

                try
                {
                    client.Send(msg);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error al enviar mensaje: " + ex.Message);
                    //throw new Exception("No se pudo enviar el mensaje de confirmación a tu correo, favor verifica que sea correcto");
                }
            }
        }
Пример #4
0
        public static Entidades.Usuario DataToEntidad(Data.Usuario d, bool Listado = true)
        {
            var perfiles = new List <Entidades.Perfil>();
            var permisos = new List <Entidades.Permiso>();

            if (!Listado)
            {
                foreach (var p in d.Perfils)
                {
                    perfiles.Add(LPerfil.DataToEntidad(p, false));
                }
                foreach (var p in d.Permisoes)
                {
                    permisos.Add(LPermiso.DataToEntidad(p, false));
                }
            }
            else
            {
                foreach (var p in d.Perfils)
                {
                    perfiles.Add(LPerfil.DataToEntidad(p, true));
                }
            }
            return(new Entidades.Usuario()
            {
                Apellido1 = d.UsuarioApellido1,
                Apellido2 = d.UsuarioApellido2,
                Contrasena = "",
                Email = d.UsuarioEmail,
                EsSuperAdmin = d.UsuarioEsSuperAdmin.Value,
                Habilitado = d.UsuarioHabilitado.Value,
                ID = d.UsuarioID,
                Login = d.UsuarioLogin,
                Nombre = d.UsuarioNombre,
                Perfiles = perfiles,
                Permisos = permisos,
                Telefono = d.UsuarioTelefono,
                CambiarContrasena = d.UsuarioCambiarContrasena.Value
            });
        }
Пример #5
0
        public static bool add(Entidades.Usuario us, int perfrilid, int faseid)
        {
            try
            {
                using (var db = new Data.DB_A3C345_cobranzasEntities())
                {
                    using (var trx = db.Database.BeginTransaction())
                    {
                        var perfil = db.Perfils.Find(perfrilid);
                        var usu    = new Data.Usuario()
                        {
                            UsuarioApellido1         = us.Apellido1,
                            UsuarioApellido2         = us.Apellido2,
                            UsuarioContrasena        = us.Contrasena,
                            UsuarioCambiarContrasena = us.CambiarContrasena,
                            UsuarioEmail             = us.Email,
                            UsuarioEsSuperAdmin      = us.EsSuperAdmin,
                            UsuarioHabilitado        = us.Habilitado,
                            UsuarioLogin             = us.Login,
                            UsuarioNombre            = us.Nombre,
                            UsuarioTelefono          = us.Nombre,
                            UsuarioID = Convert.ToInt32(us.ID),
                        };
                        usu.Perfils.Add(perfil);
                        db.Usuarios.Add(usu);
                        db.SaveChanges();
                        trx.Commit();

                        return(true);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Logica add", ex);
            }
        }