From be1d4cb3b61a1921775a19568b2cb734bd31b1d9 Mon Sep 17 00:00:00 2001 From: Kamigen <46357922+Edouard127@users.noreply.github.com> Date: Sun, 28 Apr 2024 19:52:31 -0400 Subject: [PATCH] TODO: Login user when account already exists --- src/Web/Endpoints/Google.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Web/Endpoints/Google.cs b/src/Web/Endpoints/Google.cs index 8f3e323..cd75695 100644 --- a/src/Web/Endpoints/Google.cs +++ b/src/Web/Endpoints/Google.cs @@ -14,9 +14,18 @@ public class Google : EndpointGroupBase public static async Task CreateGoogleUser(ISender sender, CreateGoogleUserCommand command, IUserService userService, IGoogleService googleService) { - var user = await googleService.GetUserInfoAsync(command.AccessToken) ?? throw new Exception("Failed to get user info from Google"); + var googleUser = await googleService.GetUserInfoAsync(command.AccessToken) ?? throw new Exception("Failed to get user info from Google"); - await userService.CreateUserAsync(user); + + + var user = await userService.FindUserByEmailAsync(googleUser.Email); + if (user != null) + { + // TODO: Return login information + return await sender.Send(command); + } + + await userService.CreateUserAsync(googleUser); return await sender.Send(command); }