using System.Text.Json.Serialization; using MongoDB.Bson.Serialization.Attributes; using MongoDB.Bson; using UGQDatabase.Models; using UGQDataAccess.Service; using UGQDataAccess.Repository.Models; namespace UGQApiServer.Models; #pragma warning disable CS8618 public class UGQStateGroup { [JsonConverter(typeof(JsonStringEnumConverter))] public QuestContentState State { get; set; } public int Count { get; set; } } public class UGQSummary { 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; } [JsonConverter(typeof(JsonStringEnumConverter))] public UgqGradeType GradeType { get; set; } public string Title { get; set; } public List Languages { get; set; } public string 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 UGQStats Stats { get; set; } public string BeaconName { get; set; } public string Savelanguage { get; set; } } public class UGQQuestProfitStats { public string QuestContentId { get; set; } public long QuestId { get; set; } public long Revision { get; set; } public string Title { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public int Completed { get; set; } public double TotalProfit { get; set; } } public class UGQText { public string Kr { get; set; } public string En { get; set; } public string Jp { get; set; } } public class UGQPresetImage { public int Id { get; set; } public string ImagePath { get; set; } } public class UGQDialogSequenceAction { public DialogTalker Talker { get; set; } public int Type { get; set; } public UGQText Talk { get; set; } public int Condition { get; set; } public int ConditionValue { get; set; } public int NextSequence { get; set; } public int NpcAction { get; set; } public string TypeName { get; set; } public string ConditioneName { get; set; } public string ConditioneValueName { get; set; } } public class UGQDialogSequence { public int SequenceId { get; set; } public List Actions { get; set; } } public class UGQDialog { public string DialogId { get; set; } public List Sequences { get; set; } } public class UGQTask { public UGQText GoalText { get; set; } public int ActionId { get; set; } public int ActionValue { get; set; } public bool IsShowNpcLocation { get; set; } public string? UgcActionValueGuid { get; set; } public string? UgcActionValueName { get; set; } public string? DialogId { get; set; } public string ActionName { get; set; } public string ActionValueName { get; set; } } public class UGQContent { public string QuestContentId { get; set; } public long QuestId { get; set; } public long Revision { get; set; } public int BeaconId { get; set; } public string? UgcBeaconGuid { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public UgqGradeType GradeType { get; set; } public UGQText Title { get; set; } public List Languages { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public UGQText Description { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public QuestContentState State { get; set; } public int Cost { get; set; } public List Tasks { get; set; } public DateTimeOffset LastUpdated { get; set; } public string BeaconName { get; set; } } public class UGQBoard { public int QuestContentId { get; set; } public long QuestId { get; set; } public long Revision { get; set; } public string Title { get; set; } public List Languages { get; set; } public string TitleImagePath { get; set; } public string BannerImagePath { get; set; } public string Description { get; set; } public UGQStats Stats { get; set; } [JsonConverter(typeof(JsonStringEnumConverter))] public QuestContentState State { get; set; } public int Cost { get; set; } public DateTimeOffset LastUpdated { get; set; } } public class UGQCreatorPointHistory { [JsonConverter(typeof(JsonStringEnumConverter))] public CreatorPointHistoryKind Kind { get; set; } // public string DetailReason { get; set; } public double Amount { get; set; } public double TotalAmount { get; set; } public DateTimeOffset CreatedAt { get; set; } } public class UGQCreatorPointHistoryResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } } public class UGQSummaryResponse { public int TotalCount { get; set; } public List StateGroups { get; set; } public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Summaries { get; set; } } public class UGQQuestProfitStatsResult { public int PageNumber { get; set; } public int PageSize { get; set; } public int TotalPages { get; set; } public List Items { get; set; } }