UserLogin AuthenticateUser(AuthenicateModel loginCredentials) { var response = new UserLogin(); var connString = _configuartion.GetConnectionString("DefaultConnection"); SqlConnection sql = new SqlConnection(connString); if (sql.State == ConnectionState.Closed) { sql.Open(); } SqlCommand cmd = new SqlCommand("SP_UserLogin", sql) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@username", loginCredentials.Username); cmd.Parameters.AddWithValue("@password", loginCredentials.Password); using (var reader = cmd.ExecuteReader()) { if (reader.FieldCount != 1) { while (reader.Read()) { response = MapToLogin(reader); } } else { response = null; } } sql.Close(); return(response); }
public IActionResult Login([FromBody] AuthenicateModel login) { //Return logged user information and token UserLogin user = AuthenticateUser(login); if (user != null) { //Check logged user account is locked var Userlock = _context.TblUser.Where(a => a.Username.Equals(login.Username)).FirstOrDefault().Lock; if (Userlock == true) { return(Ok(new { message = "Your account is locked!" })); } var tokenString = GenerateJWTToken(user); return(Ok(new { token = tokenString, userDetails = user, })); } return(BadRequest(new { message = "Username or Password is incorrect!" })); }