using Amazon.DynamoDBv2.Model; using MongoDB.Bson.Serialization.Attributes; using System.Text.Json.Serialization; using UGQDatabase.Models; namespace UGQDataAccess.Repository.Models; #pragma warning disable CS8618 public class UGQSaveQuestModel { public int BeaconId { get; set; } public string? UgcBeaconGuid { get; set; } public string? UgcBeaconNickname { get; set; } public TextEntity Title { get; set; } public List Languages { get; set; } public TextEntity Description { get; set; } public int Cost { get; set; } public List Tasks { get; set; } public string Savelanguage { get; set; } } public class UGQSaveDialogSequenceAction { public DialogTalker Talker { get; set; } public int Type { get; set; } public TextEntity Talk { get; set; } public int Condition { get; set; } public int ConditionValue { get; set; } public int NextSequence { get; set; } public int NpcAction { get; set; } } public class UGQSaveDialogSequence { public int SequenceId { get; set; } public List Actions { get; set; } } public class UGQSaveDialogModel { public List Sequences { get; set; } } public class UGQStats { public int Accepted { get; set; } = 0; public int Completed { get; set; } = 0; public int Like { get; set; } = 0; public int Bookmark { get; set; } = 0; public int Report { get; set; } = 0; public double TotalProfit { get; set; } = 0; } public class SummaryItemResult { public string QuestContentId { get; set; } public long QuestId { get; set; } public long Revision { get; set; } public string UserGuid { get; set; } public string Author { get; set; } public int BeaconId { get; set; } public string? UgcBeaconGuid { get; set; } public string? UgcBeaconNickname { get; set; } public UgqGradeType GradeType { get; set; } public TextEntity Title { get; set; } public List Languages { get; set; } public TextEntity Description { get; set; } public int Cost { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public QuestContentState State { get; set; } public DateTime UpdatedAt { get; set; } public DateTime CreatedAt { get; set; } public int AcceptedCount { get; set; } public int CompletedCount { get; set; } public int LikeCount { get; set; } public int BookmarkCount { get; set; } public int ReportCount { get; set; } public double TotalProfit { get; set; } public string Savelanguage { get; set; } } public class SummaryQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class AllSummaryQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class QuestProfitStatsItemResult { public string QuestContentId { get; set; } public long QuestId { get; set; } public long Revision { get; set; } public TextEntity Title { get; set; } public List Languages { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public int CompletedCount { get; set; } public double TotalProfit { get; set; } } public class QuestProfitStatsQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class QuestBoardItemResult { public long QuestId { get; set; } public long Revision { get; set; } public string Author { get; set; } public TextEntity Title { get; set; } public List Languages { get; set; } public TextEntity Description { get; set; } public int Cost { get; set; } public UgqGradeType GradeType { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public DateTime UpdatedAt { get; set; } public int LikeCount { get; set; } public int BookmarkCount { get; set; } } public class QuestBoardQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class QuestBoardSportlightQueryResult { public class DateRangeResult { public QuestBoardItemResult? Today { get; set; } public QuestBoardItemResult? ThisWeek { get; set; } public QuestBoardItemResult? ThisMonth { get; set; } } public DateRangeResult MostLiked { get; set; } public DateRangeResult MostBookmarked { get; set; } } public class QuestBoardDetailItemResult { public long QuestId { get; set; } public long Revision { get; set; } public string Author { get; set; } public TextEntity Title { get; set; } public List Languages { get; set; } public TextEntity Description { get; set; } public int Cost { get; set; } public UgqGradeType GradeType { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public int BeaconId { get; set; } public string? UgcBeaconGuid { get; set; } public string? UgcBeaconNickname { get; set; } public DateTime UpdatedAt { get; set; } public int LikeCount { get; set; } public int BookmarkCount { get; set; } public int QuestAcceptedCount { get; set; } public int QuestCompletedCount { get; set; } public bool Liked { get; set; } public bool Bookmarked { get; set; } } public class CreatorPointHistoryQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class AccountItemResult { public string UserGuid { get; set; } public string Nickname { get; set; } public string AccountId { get; set; } public int AdditionalSlotCount { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public UgqGradeType GradeType { get; set; } public double CreatorPoint { get; set; } public DateTime CreatedAt { get; set; } public int QuestCount { get; set; } } public class AllAccountQueryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class ReserveAccountGradeItemResult { public string ReserveId { get; set; } public string UserGuid { get; set; } public string AccountId { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public UgqGradeType CurrentGradeType { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public UgqGradeType ReserveGradeType { get; set; } public DateTime ReserveTime { get; set; } public DateTime UpdatedAt { get; set; } public bool IsCompleted { get; set; } } public class AllReserveAccountGradeResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } }