Verif time of challenge

This commit is contained in:
2026-03-17 09:30:14 +01:00
parent 1e14bb01c9
commit 9699048ed1
@@ -17,6 +17,7 @@ public class PatchProofEndpoint(
UsersRepository usersRepository,
UserRandomChallengesRepository userRandomChallengesRepository,
UserService userService,
RandomChallengesRepository randomChallengesRepository,
AutoMapper.IMapper mapper) : Endpoint<RandomChallengeProofRequest>
{
public override void Configure()
@@ -27,7 +28,20 @@ public class PatchProofEndpoint(
public override async Task HandleAsync(RandomChallengeProofRequest req, CancellationToken ct)
{
int userId = userService.GetUserIdFromToken();
RandomChallenge? randomChallenge = await randomChallengesRepository.SingleOrDefaultAsync(new GetRandomChallengeByIdSpec(req.RandomChallengeId), ct);
if (randomChallenge is null)
{
await Send.NotFoundAsync(ct);
return;
}
if (randomChallenge.GeneratedAt != null && DateTime.Now > randomChallenge.GeneratedAt.Value.AddHours(randomChallenge.Duration))
{
await Send.StringAsync("Le défi est terminé", 400, cancellation: ct);
return;
}
UserRandomChallenge? userRandomChallenge =
await userRandomChallengesRepository.SingleOrDefaultAsync(new GetRandomChallengeByCriteriaSpec(req.RandomChallengeId, userId), ct);
if (userRandomChallenge is null)