public async Task <bool> ValidatePassword(int idUsuario, string passwordApp) { SpGetPassword procedure = await _context.Query <SpGetPassword>().FromSql("EXEC SP_GET_PASSWORD @p0", idUsuario).SingleOrDefaultAsync(); if (!procedure.pw.Equals(passwordApp)) { return(false); } return(true); }
public async Task<ActionResult> GetLoginRequest(LoginRequest req) { if (req == null) return BadRequest("No se ingresaron los datos solicitados"); try { var dataApp = await _context.BdApplicationVersions.Where(x => x.Status).FirstOrDefaultAsync(); if(dataApp.BuildNumber == req.buildNumber && dataApp.Version == req.version) { int idusuario = await _context.CUsuarios.Where(x => x.Username == req.username).Select(x => x.IdUsuario).SingleOrDefaultAsync(); var usuario = await _context.CUsuarios.Where(x => x.IdUsuario == idusuario).SingleOrDefaultAsync(); var UsuarioPhone = _context.BdUsuarioCelular.Where(x => x.IdUsuario == idusuario).FirstOrDefault(); if (UsuarioPhone != null) { if (UsuarioPhone.Imei != req.imei) { if (UsuarioPhone.Imei == null) { UsuarioPhone.Imei = req.imei; _context.SaveChanges(); } else { return NotFound(new { Texterror = "IMEI" }); } } } else { BdUsuarioCelular celular = new BdUsuarioCelular() { IdUsuario = idusuario, IdUsuarioAlta = 559, FecAlta = DateTime.Now, Imei = req.imei }; _context.BdUsuarioCelular.Add(celular); _context.SaveChanges(); } if (usuario == null) { return NotFound(); } SpGetPassword pw = await _context.Query<SpGetPassword>().FromSql("EXEC SP_GET_PASSWORD @p0", idusuario).SingleOrDefaultAsync(); if (usuario.IsPda != 1) { return NotFound(new { Texterror = "El usuario no es PDA" }); } if (!req.password.Equals(pw.pw)) { return NotFound(); } BdBitacoraAcceso acceso = new BdBitacoraAcceso() { IdUsuario = idusuario, Acceso = DateTime.Now, FecStatus = DateTime.Now, Status = "ACTIVO", IpCliente = req.imei, Host = "ACCESO APLICACION" }; _context.BdBitacoraAcceso.Add(acceso); await _context.SaveChangesAsync(); return Ok(new { user = usuario.Nombre + " " + usuario.Paterno + " " + usuario.Materno, idusuario = usuario.IdUsuario }); } else { return BadRequest(new { Texterror = "VERSION"}); } } catch (Exception ex) { return BadRequest(ex.StackTrace); } }