public IHttpActionResult Postusuario(usuario usuario) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (usuario.productos == null) { } else { int count = usuario.productos.Count; for (int i = 0; i < usuario.productos.Count; i++) { producto pproducto = usuario.productos.ElementAt(i); usuario.productos.Remove(pproducto); usuario.productos.Add(db.productos.Find(pproducto.id_producto)); } } usuario.password = AES256.encryptPassword(usuario.password); db.usuarios.Add(usuario); db.SaveChanges(); historial_contrasennas historial = new historial_contrasennas(); historial.id_usuario = usuario.id_usuario; historial.contraseña = usuario.password; db.historial_contrasennas.Add(historial); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = usuario.id_usuario }, usuario)); }
public IHttpActionResult updateUserAndPassword(int id, usuario usuario) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != usuario.id_usuario) { return(BadRequest()); } usuario.password = AES256.encryptPassword(usuario.password); usuario.rol = db.rols.Find(usuario.id_rol); db.Entry(usuario).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!usuarioExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult Login(usuario usuario) { string result = AES256.encryptPassword(usuario.password); usuario user = db.usuarios.FirstOrDefault(u => u.correo == usuario.correo && u.password == result); if (user == null) { return(NotFound()); } user.rol = db.rols.Find(user.id_rol); db.Entry(user.rol).Collection(p => p.permisos).Load(); sesion sesion = new sesion(); sesion.fecha = DateTime.Now; sesion.id_usuario = user.id_usuario; db.sesions.Add(sesion); Bitacora.getInstance().addBitacora(BitacoraActions.SIGN_IN, user.id_usuario); db.SaveChanges(); return(Ok(user)); }