diff --git a/Libraries/SPTarkov.Server.Core/Callbacks/AchievementCallbacks.cs b/Libraries/SPTarkov.Server.Core/Callbacks/AchievementCallbacks.cs index ee88a074..92775532 100644 --- a/Libraries/SPTarkov.Server.Core/Callbacks/AchievementCallbacks.cs +++ b/Libraries/SPTarkov.Server.Core/Callbacks/AchievementCallbacks.cs @@ -2,6 +2,7 @@ using SPTarkov.Server.Core.Controllers; using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Common; +using SPTarkov.Server.Core.Models.Eft.Profile; using SPTarkov.Server.Core.Utils; namespace SPTarkov.Server.Core.Callbacks; @@ -13,7 +14,7 @@ public class AchievementCallbacks(AchievementController achievementController, H /// Handle client/achievement/list /// /// - public ValueTask GetAchievements(string url, EmptyRequestData _, MongoId sessionID) + public ValueTask GetAchievements(string url, GetAchievementListRequest _, MongoId sessionID) { return new ValueTask(httpResponseUtil.GetBody(achievementController.GetAchievements(sessionID))); } diff --git a/Libraries/SPTarkov.Server.Core/Callbacks/DataCallbacks.cs b/Libraries/SPTarkov.Server.Core/Callbacks/DataCallbacks.cs index 7ed1e674..45fb2215 100644 --- a/Libraries/SPTarkov.Server.Core/Callbacks/DataCallbacks.cs +++ b/Libraries/SPTarkov.Server.Core/Callbacks/DataCallbacks.cs @@ -2,6 +2,7 @@ using SPTarkov.DI.Annotations; using SPTarkov.Server.Core.Controllers; using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Common; +using SPTarkov.Server.Core.Models.Eft.Dialog; using SPTarkov.Server.Core.Services; using SPTarkov.Server.Core.Utils; @@ -163,7 +164,7 @@ public class DataCallbacks( /// /// Handle /client/dialogue /// - public ValueTask GetDialogue(string url, object request, MongoId sessionID) + public ValueTask GetDialogue(string url, GetClientDialogueRequestData request, MongoId sessionID) { return new ValueTask(httpResponseUtil.GetUnclearedBody(databaseService.GetTemplates().Dialogue)); } diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/GetClientDialogueRequestData.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/GetClientDialogueRequestData.cs new file mode 100644 index 00000000..8ff8fd62 --- /dev/null +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/GetClientDialogueRequestData.cs @@ -0,0 +1,10 @@ +using System.Text.Json.Serialization; +using SPTarkov.Server.Core.Models.Utils; + +namespace SPTarkov.Server.Core.Models.Eft.Dialog; + +public record GetClientDialogueRequestData : IRequestData +{ + [JsonPropertyName("traderId")] + public string? TraderId { get; set; } +} diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Profile/GetAchievementListRequest.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Profile/GetAchievementListRequest.cs new file mode 100644 index 00000000..a99127c9 --- /dev/null +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Profile/GetAchievementListRequest.cs @@ -0,0 +1,10 @@ +using System.Text.Json.Serialization; +using SPTarkov.Server.Core.Models.Utils; + +namespace SPTarkov.Server.Core.Models.Eft.Profile; + +public record GetAchievementListRequest : IRequestData +{ + [JsonPropertyName("completed")] + public bool? Completed { get; set; } +} diff --git a/Libraries/SPTarkov.Server.Core/Routers/Static/AchievementStaticRouter.cs b/Libraries/SPTarkov.Server.Core/Routers/Static/AchievementStaticRouter.cs index db671afc..ecefc1f1 100644 --- a/Libraries/SPTarkov.Server.Core/Routers/Static/AchievementStaticRouter.cs +++ b/Libraries/SPTarkov.Server.Core/Routers/Static/AchievementStaticRouter.cs @@ -2,6 +2,7 @@ using SPTarkov.Server.Core.Callbacks; using SPTarkov.Server.Core.DI; using SPTarkov.Server.Core.Models.Eft.Common; +using SPTarkov.Server.Core.Models.Eft.Profile; using SPTarkov.Server.Core.Utils; namespace SPTarkov.Server.Core.Routers.Static; @@ -11,7 +12,7 @@ public class AchievementStaticRouter(JsonUtil jsonUtil, AchievementCallbacks ach : StaticRouter( jsonUtil, [ - new RouteAction( + new RouteAction( "/client/achievement/list", async (url, info, sessionID, output) => await achievementCallbacks.GetAchievements(url, info, sessionID) ), diff --git a/Libraries/SPTarkov.Server.Core/Routers/Static/DataStaticRouter.cs b/Libraries/SPTarkov.Server.Core/Routers/Static/DataStaticRouter.cs index f0dd316a..827e6053 100644 --- a/Libraries/SPTarkov.Server.Core/Routers/Static/DataStaticRouter.cs +++ b/Libraries/SPTarkov.Server.Core/Routers/Static/DataStaticRouter.cs @@ -2,6 +2,7 @@ using SPTarkov.Server.Core.Callbacks; using SPTarkov.Server.Core.DI; using SPTarkov.Server.Core.Models.Eft.Common; +using SPTarkov.Server.Core.Models.Eft.Dialog; using SPTarkov.Server.Core.Utils; namespace SPTarkov.Server.Core.Routers.Static; @@ -55,7 +56,7 @@ public class DataStaticRouter(JsonUtil jsonUtil, DataCallbacks dataCallbacks) "/client/hideout/qte/list", async (url, info, sessionID, output) => await dataCallbacks.GetQteList(url, info, sessionID) ), - new RouteAction( + new RouteAction( "/client/dialogue", async (url, info, sessionID, output) => await dataCallbacks.GetDialogue(url, info, sessionID) ),