diff --git a/backend/src/main/java/com/alttd/altitudeweb/controllers/forms/AppealController.java b/backend/src/main/java/com/alttd/altitudeweb/controllers/forms/AppealController.java index 8935274..d1d91dc 100644 --- a/backend/src/main/java/com/alttd/altitudeweb/controllers/forms/AppealController.java +++ b/backend/src/main/java/com/alttd/altitudeweb/controllers/forms/AppealController.java @@ -39,8 +39,9 @@ public class AppealController implements AppealsApi { private final com.alttd.altitudeweb.services.discord.AppealDiscord appealDiscord; @Override - public ResponseEntity getBannedUser(Long discordId) throws Exception { - return new ResponseEntity<>(discordAppeal.getBannedUser(discordId), HttpStatus.OK); + public ResponseEntity getBannedUser(String discordId) throws Exception { + long discordIdAsLong = Long.parseLong(discordId); + return new ResponseEntity<>(discordAppeal.getBannedUser(discordIdAsLong), HttpStatus.OK); } @RateLimit(limit = 3, timeValue = 1, timeUnit = TimeUnit.HOURS, key = "discordAppeal") diff --git a/backend/src/main/java/com/alttd/altitudeweb/mappers/BannedUserToBannedUserDtoMapper.java b/backend/src/main/java/com/alttd/altitudeweb/mappers/BannedUserToBannedUserDtoMapper.java index f4c4451..a163e21 100644 --- a/backend/src/main/java/com/alttd/altitudeweb/mappers/BannedUserToBannedUserDtoMapper.java +++ b/backend/src/main/java/com/alttd/altitudeweb/mappers/BannedUserToBannedUserDtoMapper.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; public class BannedUserToBannedUserDtoMapper { public BannedUserDto map(BannedUser bannedUser) { - return new BannedUserDto(bannedUser.userId(), bannedUser.reason(), bannedUser.name(), bannedUser.avatarUrl()); + return new BannedUserDto(String.valueOf(bannedUser.userId()), bannedUser.reason(), bannedUser.name(), bannedUser.avatarUrl()); } } diff --git a/backend/src/main/java/com/alttd/altitudeweb/mappers/DiscordAppealDtoToDiscordAppealMapper.java b/backend/src/main/java/com/alttd/altitudeweb/mappers/DiscordAppealDtoToDiscordAppealMapper.java index 195db04..a6ca0c3 100644 --- a/backend/src/main/java/com/alttd/altitudeweb/mappers/DiscordAppealDtoToDiscordAppealMapper.java +++ b/backend/src/main/java/com/alttd/altitudeweb/mappers/DiscordAppealDtoToDiscordAppealMapper.java @@ -14,7 +14,7 @@ public class DiscordAppealDtoToDiscordAppealMapper { return new DiscordAppeal( UUID.randomUUID(), loggedInUserUuid, - discordAppealDto.getDiscordId(), + Long.parseLong(discordAppealDto.getDiscordId()), discordUsername, discordAppealDto.getAppeal(), Instant.now(), diff --git a/backend/src/main/java/com/alttd/altitudeweb/services/forms/DiscordAppeal.java b/backend/src/main/java/com/alttd/altitudeweb/services/forms/DiscordAppeal.java index f83be4e..86475c4 100644 --- a/backend/src/main/java/com/alttd/altitudeweb/services/forms/DiscordAppeal.java +++ b/backend/src/main/java/com/alttd/altitudeweb/services/forms/DiscordAppeal.java @@ -49,7 +49,8 @@ public class DiscordAppeal { public FormResponseDto submitAppeal(DiscordAppealDto discordAppealDto) { DiscordAppealDiscord discordAppealDiscord = DiscordAppealDiscord.getInstance(); - Optional join = discordAppealDiscord.getBannedUser(discordAppealDto.getDiscordId()).join(); + long discordId = Long.parseLong(discordAppealDto.getDiscordId()); + Optional join = discordAppealDiscord.getBannedUser(discordId).join(); if (join.isEmpty()) { throw new ResponseStatusException(HttpStatus.NOT_FOUND, "User not found"); } diff --git a/frontend/src/app/pages/forms/discord-appeal/discord-appeal.component.ts b/frontend/src/app/pages/forms/discord-appeal/discord-appeal.component.ts index b51ec3e..172f116 100644 --- a/frontend/src/app/pages/forms/discord-appeal/discord-appeal.component.ts +++ b/frontend/src/app/pages/forms/discord-appeal/discord-appeal.component.ts @@ -136,7 +136,7 @@ export class DiscordAppealComponent implements OnInit { this.bannedUser = { isBanned: false, bannedUser: { - userId: 212303885988134914, + userId: '212303885988134914', reason: "This is a test punishment", name: "stijn", avatarUrl: "https://cdn.discordapp.com/avatars/212303885988134914/3a264be54ca7208d638a22143fc8fdb8.webp?size=160" @@ -145,7 +145,7 @@ export class DiscordAppealComponent implements OnInit { this.nextPage(); return } - this.appealService.getBannedUser(Number(this.discordId)) + this.appealService.getBannedUser(this.discordId) .subscribe(user => { this.bannedUser = user this.nextPage(); @@ -178,7 +178,7 @@ export class DiscordAppealComponent implements OnInit { throw new Error('JWT subject is null, are you logged in?'); } const appeal: DiscordAppeal = { - discordId: Number(this.discordId), + discordId: this.discordId, appeal: rawValue.appeal, email: rawValue.email, } diff --git a/open_api/src/main/resources/schemas/forms/appeal/appeal.yml b/open_api/src/main/resources/schemas/forms/appeal/appeal.yml index b40c1d0..dc3abf1 100644 --- a/open_api/src/main/resources/schemas/forms/appeal/appeal.yml +++ b/open_api/src/main/resources/schemas/forms/appeal/appeal.yml @@ -124,9 +124,10 @@ components: - email properties: discordId: - type: integer - format: int64 - description: Discord user's unique identifier' + type: string + pattern: "^[0-9]{17,18}$" + minLength: 17 + maxLength: 18 appeal: type: string description: Appeal text explaining why the punishment should be reconsidered diff --git a/open_api/src/main/resources/schemas/forms/appeal/discordAppeal.yml b/open_api/src/main/resources/schemas/forms/appeal/discordAppeal.yml index a31a152..9d362f2 100644 --- a/open_api/src/main/resources/schemas/forms/appeal/discordAppeal.yml +++ b/open_api/src/main/resources/schemas/forms/appeal/discordAppeal.yml @@ -11,8 +11,10 @@ getBannedUser: required: true description: The discord id of the user schema: - type: integer - format: int64 + type: string + pattern: "^[0-9]{17,18}$" + minLength: 17 + maxLength: 18 responses: '200': description: Banned user @@ -47,8 +49,10 @@ components: - avatarUrl properties: userId: - type: integer - format: int64 + type: string + pattern: "^[0-9]{17,18}$" + minLength: 17 + maxLength: 18 reason: type: string name: