chore: cleanup

This commit is contained in:
Pavel-Savely Savianok 2025-07-11 00:10:00 +03:00
parent 4a7810f571
commit 5b4d524c47

View File

@ -6,39 +6,28 @@ using Microsoft.EntityFrameworkCore;
using User = JOBot.Backend.DAL.Models.User;
namespace JOBot.Backend.Services.gRPC;
public class UserService(AppDbContext dbContext) : Proto.User.UserBase
{
/// <summary>
/// Create user
/// </summary>
/// <param name="request"></param>
/// <param name="_"></param>
/// <returns>Status of operation (fail if user exists)</returns>
public override async Task<RegisterResponse> Register(
RegisterRequest request,
ServerCallContext _)
public override async Task<RegisterResponse> Register(RegisterRequest request, ServerCallContext _)
{
if(!await dbContext.Users
.AnyAsync(x => x.UserId == request.UserId))
{
dbContext.Users.Add(new User
{
UserId = request.UserId,
Username = !string.IsNullOrEmpty(request.Username) ? request.Username : null
});
await dbContext.SaveChangesAsync();
return new RegisterResponse
{
Success = true
};
}
if (await dbContext.Users.AnyAsync(x => x.UserId == request.UserId))
return new RegisterResponse { Success = false };
return new RegisterResponse
dbContext.Users.Add(new User
{
Success = false
};
UserId = request.UserId,
Username = !string.IsNullOrEmpty(request.Username) ? request.Username : null
});
await dbContext.SaveChangesAsync();
return new RegisterResponse { Success = true };
}
/// <summary>
@ -47,13 +36,11 @@ public class UserService(AppDbContext dbContext) : Proto.User.UserBase
/// <param name="request"></param>
/// <param name="_"></param>
/// <returns>User, or throws RPC exception if not found</returns>
public override async Task<GetUserResponse> GetUser(
GetUserRequest request,
ServerCallContext _)
public override async Task<GetUserResponse> GetUser(GetUserRequest request, ServerCallContext _)
{
var user = await dbContext.Users.FirstOrDefaultAsync(x => x.UserId == request.UserId);
ValidateUserFound(user);
ThrowIfUserNotFound(user);
return user!.MapToResponse();
}
@ -67,20 +54,12 @@ public class UserService(AppDbContext dbContext) : Proto.User.UserBase
{
var user = await dbContext.Users.FirstOrDefaultAsync(x => x.UserId == request.UserId);
if (user == null)
{
return new AcceptEulaResponse
{
Success = false
};
}
return new AcceptEulaResponse { Success = false };
user.Eula = request.EulaAccepted;
await dbContext.SaveChangesAsync();
return new AcceptEulaResponse
{
Success = true
};
return new AcceptEulaResponse { Success = true };
}
/// <summary>
@ -88,7 +67,7 @@ public class UserService(AppDbContext dbContext) : Proto.User.UserBase
/// </summary>
/// <param name="user"></param>
/// <exception cref="RpcException"></exception>
private void ValidateUserFound(User? user)
private static void ThrowIfUserNotFound(User? user)
{
if (user == null)
throw new RpcException(new Status(StatusCode.NotFound, "User not found"));