Esempio n. 1
0
        public ERespuestaCliente ChangePassword(ELogin eLogin)
        {
            ERespuestaCliente eRespuesta = new ERespuestaCliente();

            using (var context = new cita_doctorContext())
            {
                string pass = Hash.Crear(eLogin.Password, "jor290714luc300617");

                var cliente = (from cli in context.Cliente
                               .Where(c => (c.Email.Equals(eLogin.Username)))
                               select cli).FirstOrDefault();

                cliente.Password = pass;

                try
                {
                    context.SaveChanges();
                    eRespuesta.Error.Codigo  = "00";
                    eRespuesta.Error.Mensaje = "Ok";
                }
                catch (Exception e)
                {
                    eRespuesta.Error.Codigo  = "01";
                    eRespuesta.Error.Mensaje = e.Message;
                }

                return(eRespuesta);
            }
        }
Esempio n. 2
0
        public EOutDoctorLogin LoginDoctor(ELogin eLogin)
        {
            EOutDoctorLogin eOutDoctorLogin = null;

            using (var context = new cita_doctorContext())
            {
                string pass = Hash.Crear(eLogin.Password, "jor290714luc300617");

                var doctor = (from ilDoctore in context.Doctor
                              .Where(doc => (doc.Email.Equals(eLogin.Username) && doc.Password.Equals(pass)))
                              select ilDoctore);

                if (doctor.ToList().Count == 0)
                {
                    return(eOutDoctorLogin);
                }

                var secretKey         = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("MySp$cialPassw0rd"));
                var signinCredentials = new SigningCredentials(secretKey, SecurityAlgorithms.HmacSha256);

                var token = new JwtSecurityToken(
                    issuer: "http://localhost:4200",
                    audience: "http://localhost:4200",
                    claims: new List <Claim>(),
                    expires: DateTime.Now.AddMinutes(1440),
                    signingCredentials: signinCredentials
                    );

                var tokenString = new JwtSecurityTokenHandler().WriteToken(token);

                eOutDoctorLogin = new EOutDoctorLogin()
                {
                    Token     = tokenString,
                    ExpiresIn = token.ValidTo,
                    Doctor    = _mapper.Map <EOutDoctor>(doctor.ToList()[0]),
                    Tipo      = "doctor"
                };

                return(eOutDoctorLogin);
            }
        }
Esempio n. 3
0
        public ERespuestaCliente ChangePasswordPaciente(EChangePassword eChange)
        {
            ERespuestaCliente eRespuesta = new ERespuestaCliente();

            using (var context = new cita_doctorContext())
            {
                string oldPass = Hash.Crear(eChange.OldPassword, "jor290714luc300617");
                string newPass = Hash.Crear(eChange.NewPassword, "jor290714luc300617");

                var cliente = (from cli in context.Cliente
                               .Where(c => (c.Email.Equals(eChange.Email) && c.Password.Equals(oldPass)))
                               select cli).FirstOrDefault();

                if (cliente != null)
                {
                    cliente.Password = newPass;

                    try
                    {
                        context.SaveChanges();
                        eRespuesta.Error.Codigo  = "00";
                        eRespuesta.Error.Mensaje = "Ok";
                    }
                    catch (Exception e)
                    {
                        eRespuesta.Error.Codigo  = "01";
                        eRespuesta.Error.Mensaje = e.Message;
                    }
                }
                else
                {
                    eRespuesta.Error.Codigo  = "02";
                    eRespuesta.Error.Mensaje = "No se encontro el paciente con el usuario y contraseña proporcionados.";
                }

                return(eRespuesta);
            }
        }