Refactor challenge management functions and improve code formatting: Standardize import statements, enhance error handling messages, and apply consistent formatting across challenge validation, rejection, update, and deletion functions for better readability and maintainability.
This commit is contained in:
@@ -52,9 +52,7 @@ export class ChallengeService {
|
||||
/**
|
||||
* Crée un nouveau défi
|
||||
*/
|
||||
async createChallenge(
|
||||
data: CreateChallengeInput
|
||||
): Promise<Challenge> {
|
||||
async createChallenge(data: CreateChallengeInput): Promise<Challenge> {
|
||||
// Vérifier que les deux joueurs existent
|
||||
const [challenger, challenged] = await Promise.all([
|
||||
prisma.user.findUnique({ where: { id: data.challengerId } }),
|
||||
@@ -103,9 +101,7 @@ export class ChallengeService {
|
||||
|
||||
// Vérifier que l'utilisateur est bien celui qui reçoit le défi
|
||||
if (challenge.challengedId !== userId) {
|
||||
throw new ValidationError(
|
||||
"Vous n'êtes pas autorisé à accepter ce défi"
|
||||
);
|
||||
throw new ValidationError("Vous n'êtes pas autorisé à accepter ce défi");
|
||||
}
|
||||
|
||||
// Vérifier que le défi est en attente
|
||||
@@ -144,9 +140,7 @@ export class ChallengeService {
|
||||
challenge.challengerId !== userId &&
|
||||
challenge.challengedId !== userId
|
||||
) {
|
||||
throw new ValidationError(
|
||||
"Vous n'êtes pas autorisé à annuler ce défi"
|
||||
);
|
||||
throw new ValidationError("Vous n'êtes pas autorisé à annuler ce défi");
|
||||
}
|
||||
|
||||
// Vérifier que le défi peut être annulé
|
||||
@@ -293,13 +287,17 @@ export class ChallengeService {
|
||||
updateData.status = data.status;
|
||||
}
|
||||
if (data.adminId !== undefined) {
|
||||
updateData.admin = data.adminId ? { connect: { id: data.adminId } } : { disconnect: true };
|
||||
updateData.admin = data.adminId
|
||||
? { connect: { id: data.adminId } }
|
||||
: { disconnect: true };
|
||||
}
|
||||
if (data.adminComment !== undefined) {
|
||||
updateData.adminComment = data.adminComment;
|
||||
}
|
||||
if (data.winnerId !== undefined) {
|
||||
updateData.winner = data.winnerId ? { connect: { id: data.winnerId } } : { disconnect: true };
|
||||
updateData.winner = data.winnerId
|
||||
? { connect: { id: data.winnerId } }
|
||||
: { disconnect: true };
|
||||
}
|
||||
|
||||
return prisma.challenge.update({
|
||||
@@ -370,10 +368,7 @@ export class ChallengeService {
|
||||
async getUserChallenges(userId: string): Promise<ChallengeWithUsers[]> {
|
||||
return prisma.challenge.findMany({
|
||||
where: {
|
||||
OR: [
|
||||
{ challengerId: userId },
|
||||
{ challengedId: userId },
|
||||
],
|
||||
OR: [{ challengerId: userId }, { challengedId: userId }],
|
||||
},
|
||||
include: {
|
||||
challenger: {
|
||||
@@ -497,4 +492,3 @@ export class ChallengeService {
|
||||
}
|
||||
|
||||
export const challengeService = new ChallengeService();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user