32 lines
1.6 KiB
C#
32 lines
1.6 KiB
C#
using GameList.Domain;
|
|
|
|
namespace GameList.Contracts;
|
|
|
|
public record SuggestionRequest(string Name, string? Genre, string? Description, string? ScreenshotUrl, string? YoutubeUrl, string? GameUrl, int? MinPlayers, int? MaxPlayers);
|
|
|
|
public record SuggestionDto(int Id, string Name, string? Genre, string? Description, string? ScreenshotUrl, string? YoutubeUrl, string? GameUrl, int? MinPlayers, int? MaxPlayers, int? ParentSuggestionId = null, IReadOnlyList<int>? LinkedIds = null, IReadOnlyList<string>? LinkedTitles = null);
|
|
|
|
public record SuggestionAllDto(int Id, string Name, string? Genre, string? Description, string? ScreenshotUrl, string? YoutubeUrl, string? GameUrl, int? MinPlayers, int? MaxPlayers, string? Author, int? ParentSuggestionId, bool IsOwner, IReadOnlyList<int> LinkedIds, IReadOnlyList<string> LinkedTitles);
|
|
|
|
public record VoteRequest(int SuggestionId, int Score);
|
|
|
|
public record VoteRecordDto(int SuggestionId, int Score);
|
|
|
|
public record ResultsOpenRequest(bool ResultsOpen);
|
|
|
|
public record VoteFinalizeRequest(bool Final);
|
|
|
|
public record VoteStatusDto(Guid PlayerId, string Name, string Username, Phase Phase, bool Finalized, bool HasJoker, bool IsAdmin, bool IsOwner, int SuggestionCount, IReadOnlyList<string> SuggestionTitles);
|
|
|
|
public record LinkSuggestionsRequest(int SourceSuggestionId, int TargetSuggestionId);
|
|
|
|
public record UnlinkSuggestionsRequest(int SuggestionId);
|
|
|
|
public record GrantJokerRequest(Guid PlayerId);
|
|
|
|
public record SetPlayerPhaseRequest(Guid PlayerId, Phase Phase);
|
|
|
|
public record SetPlayerAdminRequest(Guid PlayerId, bool IsAdmin);
|
|
|
|
public record AdminPasswordRequest(string Password);
|