From 3d11031dc6dcbd9d722442d51c1a14d20e3957f4 Mon Sep 17 00:00:00 2001 From: Chomp Date: Mon, 7 Jul 2025 09:34:43 +0100 Subject: [PATCH] Converted sessionIds from strings to MongoId struct --- .../Callbacks/MatchCallbacks.cs | 6 +-- .../Controllers/AchievementController.cs | 5 +- .../Controllers/BotController.cs | 10 ++-- .../Controllers/BuildController.cs | 15 +++--- .../Controllers/CustomizationController.cs | 25 ++++----- .../Controllers/DialogueController.cs | 53 +++++++++++-------- .../Controllers/RepairController.cs | 17 +++--- .../Controllers/WeatherController.cs | 3 +- .../Generators/PlayerScavGenerator.cs | 4 +- .../Models/Eft/Dialog/FriendRequestData.cs | 3 +- .../Eft/Repair/RepairActionDataRequest.cs | 3 +- 11 files changed, 75 insertions(+), 69 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Callbacks/MatchCallbacks.cs b/Libraries/SPTarkov.Server.Core/Callbacks/MatchCallbacks.cs index ece2a734..f0a43a53 100644 --- a/Libraries/SPTarkov.Server.Core/Callbacks/MatchCallbacks.cs +++ b/Libraries/SPTarkov.Server.Core/Callbacks/MatchCallbacks.cs @@ -166,11 +166,7 @@ public class MatchCallbacks( /// Handle client/analytics/event-disconnect /// /// - public ValueTask EventDisconnect( - string url, - PutMetricsRequestData info, - string sessionID - ) + public ValueTask EventDisconnect(string url, PutMetricsRequestData info, string MongoId) { return new ValueTask(httpResponseUtil.NullResponse()); } diff --git a/Libraries/SPTarkov.Server.Core/Controllers/AchievementController.cs b/Libraries/SPTarkov.Server.Core/Controllers/AchievementController.cs index 5d6d9158..e4506e48 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/AchievementController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/AchievementController.cs @@ -1,5 +1,6 @@ using SPTarkov.DI.Annotations; using SPTarkov.Server.Core.Helpers; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Profile; using SPTarkov.Server.Core.Models.Spt.Config; using SPTarkov.Server.Core.Servers; @@ -21,7 +22,7 @@ public class AchievementController( /// /// Session/player id /// - public virtual GetAchievementsResponse GetAchievements(string sessionID) + public virtual GetAchievementsResponse GetAchievements(MongoId sessionID) { return new GetAchievementsResponse { Elements = databaseService.GetAchievements() }; } @@ -31,7 +32,7 @@ public class AchievementController( /// /// Session/Player id /// CompletedAchievementsResponse - public virtual CompletedAchievementsResponse GetAchievementStatics(string sessionId) + public virtual CompletedAchievementsResponse GetAchievementStatics(MongoId sessionId) { var stats = new Dictionary(); var profiles = profileHelper diff --git a/Libraries/SPTarkov.Server.Core/Controllers/BotController.cs b/Libraries/SPTarkov.Server.Core/Controllers/BotController.cs index bfc2bcfe..39aa2081 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/BotController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/BotController.cs @@ -82,7 +82,7 @@ public class BotController( /// OPTIONAL - should raid settings chosen pre-raid be ignored /// Difficulty object public DifficultyCategories GetBotDifficulty( - string sessionId, + MongoId sessionId, string type, string diffLevel, bool ignoreRaidSettings = false @@ -192,7 +192,7 @@ public class BotController( /// Session/Player id /// /// List of bots - public List Generate(string sessionId, GenerateBotsRequestData request) + public List Generate(MongoId sessionId, GenerateBotsRequestData request) { var pmcProfile = _profileHelper.GetPmcProfile(sessionId); @@ -209,7 +209,7 @@ public class BotController( protected List GenerateBotWaves( GenerateBotsRequestData request, PmcData? pmcProfile, - string sessionId + MongoId sessionId ) { var generatedBotList = new List(); @@ -268,7 +268,7 @@ public class BotController( GenerateCondition generateRequest, BotGenerationDetails botGenerationDetails, List botList, - string sessionId + MongoId sessionId ) { var isEventBot = generateRequest.Role?.Contains( @@ -352,7 +352,7 @@ public class BotController( /// Pull raid settings from Application context /// /// GetRaidConfigurationRequestData if it exists - protected GetRaidConfigurationRequestData? GetMostRecentRaidSettings(string sessionId) + protected GetRaidConfigurationRequestData? GetMostRecentRaidSettings(MongoId sessionId) { var raidConfiguration = _profileActivityService .GetProfileActivityRaidData(sessionId) diff --git a/Libraries/SPTarkov.Server.Core/Controllers/BuildController.cs b/Libraries/SPTarkov.Server.Core/Controllers/BuildController.cs index 79e9f868..87fc091b 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/BuildController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/BuildController.cs @@ -1,5 +1,6 @@ using SPTarkov.DI.Annotations; using SPTarkov.Server.Core.Helpers; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Builds; using SPTarkov.Server.Core.Models.Eft.PresetBuild; using SPTarkov.Server.Core.Models.Eft.Profile; @@ -27,7 +28,7 @@ public class BuildController( /// /// Session/player id /// - public UserBuilds? GetUserBuilds(string sessionID) + public UserBuilds? GetUserBuilds(MongoId sessionID) { const string secureContainerSlotId = "SecuredContainer"; @@ -90,7 +91,7 @@ public class BuildController( /// /// Session/Player id /// - public void SaveWeaponBuild(string sessionId, PresetBuildActionRequestData body) + public void SaveWeaponBuild(MongoId sessionId, PresetBuildActionRequestData body) { var pmcData = _profileHelper.GetPmcProfile(sessionId); @@ -130,7 +131,7 @@ public class BuildController( /// /// Session/player id /// - public void SaveEquipmentBuild(string sessionID, PresetBuildActionRequestData request) + public void SaveEquipmentBuild(MongoId sessionID, PresetBuildActionRequestData request) { var profile = _profileHelper.GetFullProfile(sessionID); var pmcData = profile.CharacterData.PmcData; @@ -173,7 +174,7 @@ public class BuildController( /// /// Session/Player id /// - public void RemoveBuild(string sessionId, RemoveBuildRequestData request) + public void RemoveBuild(MongoId sessionId, RemoveBuildRequestData request) { if (request.Id is not null) { @@ -186,7 +187,7 @@ public class BuildController( /// /// Session/Player id /// - public void CreateMagazineTemplate(string sessionId, SetMagazineRequest request) + public void CreateMagazineTemplate(MongoId sessionId, SetMagazineRequest request) { var result = new MagazineBuild { @@ -220,8 +221,8 @@ public class BuildController( /// Remove build from players profile /// /// - /// Session/Player id - protected void RemovePlayerBuild(string idToRemove, string sessionID) + /// Session/Player id + protected void RemovePlayerBuild(string idToRemove, MongoId sessionID) { var profile = _saveServer.GetProfile(sessionID); var weaponBuilds = profile.UserBuildData.WeaponBuilds; diff --git a/Libraries/SPTarkov.Server.Core/Controllers/CustomizationController.cs b/Libraries/SPTarkov.Server.Core/Controllers/CustomizationController.cs index 3267ff89..754f92da 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/CustomizationController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/CustomizationController.cs @@ -28,16 +28,13 @@ public class CustomizationController( PaymentService _paymentService ) { - protected const string _lowerParentClothingId = "5cd944d01388ce000a659df9"; - protected const string _upperParentClothingId = "5cd944ca1388ce03a44dc2a4"; - /// /// Get purchasable clothing items from trader that match players side (usec/bear) /// /// trader to look up clothing for /// Session id /// Suit array - public List GetTraderSuits(string traderId, string sessionId) + public List GetTraderSuits(string traderId, MongoId sessionId) { var pmcData = _profileHelper.GetPmcProfile(sessionId); var clothing = _databaseService.GetCustomization(); @@ -75,7 +72,7 @@ public class CustomizationController( public ItemEventRouterResponse BuyCustomisation( PmcData pmcData, BuyClothingRequestData buyClothingRequest, - string sessionId + MongoId sessionId ) { var output = _eventOutputHolder.GetOutput(sessionId); @@ -130,7 +127,7 @@ public class CustomizationController( /// clothing id /// Session id of profile to check for clothing in /// true if already purchased - protected bool OutfitAlreadyPurchased(object suitId, string sessionId) + protected bool OutfitAlreadyPurchased(object suitId, MongoId sessionId) { var fullProfile = _profileHelper.GetFullProfile(sessionId); @@ -146,7 +143,7 @@ public class CustomizationController( /// Session/Player id /// /// Suit - protected Suit? GetTraderClothingOffer(string sessionId, string? offerId) + protected Suit? GetTraderClothingOffer(MongoId sessionId, string? offerId) { var foundSuit = GetAllTraderSuits(sessionId).FirstOrDefault(s => s.Id == offerId); if (foundSuit is null) @@ -170,7 +167,7 @@ public class CustomizationController( /// Clothing purchased /// Client response protected void PayForClothingItems( - string sessionId, + MongoId sessionId, PmcData pmcData, List? itemsToPayForClothingWith, ItemEventRouterResponse output @@ -210,7 +207,7 @@ public class CustomizationController( /// /// Session/Player id /// - protected List GetAllTraderSuits(string sessionId) + protected List GetAllTraderSuits(MongoId sessionId) { var traders = _databaseService.GetTraders(); var result = new List(); @@ -234,7 +231,7 @@ public class CustomizationController( /// /// Session/Player id /// - public HideoutCustomisation GetHideoutCustomisation(string sessionId) + public HideoutCustomisation GetHideoutCustomisation(MongoId sessionId) { return _databaseService.GetHideout().Customisation!; } @@ -244,7 +241,7 @@ public class CustomizationController( /// /// Session/Player id /// - public List GetCustomisationStorage(string sessionId) + public List GetCustomisationStorage(MongoId sessionId) { var customisationResultsClone = _cloner.Clone( _databaseService.GetTemplates().CustomisationStorage @@ -269,7 +266,7 @@ public class CustomizationController( /// Players PMC profile /// public ItemEventRouterResponse SetCustomisation( - string sessionId, + MongoId sessionId, CustomizationSetRequest request, PmcData pmcData ) @@ -311,7 +308,7 @@ public class CustomizationController( } // Body - if (dbSuit.Parent == _upperParentClothingId) + if (dbSuit.Parent == CustomisationTypeId.UPPER) { pmcData.Customization.Body = dbSuit.Properties.Body; pmcData.Customization.Hands = dbSuit.Properties.Hands; @@ -320,7 +317,7 @@ public class CustomizationController( } // Feet - if (dbSuit.Parent == _lowerParentClothingId) + if (dbSuit.Parent == CustomisationTypeId.LOWER) { pmcData.Customization.Feet = dbSuit.Properties.Feet; } diff --git a/Libraries/SPTarkov.Server.Core/Controllers/DialogueController.cs b/Libraries/SPTarkov.Server.Core/Controllers/DialogueController.cs index 3431d304..56a3c4f2 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/DialogueController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/DialogueController.cs @@ -1,6 +1,7 @@ using SPTarkov.DI.Annotations; using SPTarkov.Server.Core.Helpers; using SPTarkov.Server.Core.Helpers.Dialogue; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Dialog; using SPTarkov.Server.Core.Models.Eft.Profile; using SPTarkov.Server.Core.Models.Eft.Ws; @@ -65,7 +66,7 @@ public class DialogueController( /// /// session id /// GetFriendListDataResponse - public virtual GetFriendListDataResponse GetFriendList(string sessionId) + public virtual GetFriendListDataResponse GetFriendList(MongoId sessionId) { // Add all chatbots to the friends list var friends = GetActiveChatBots(); @@ -124,7 +125,7 @@ public class DialogueController( /// /// Session Id /// list of dialogs - public virtual List GenerateDialogueList(string sessionId) + public virtual List GenerateDialogueList(MongoId sessionId) { var data = new List(); foreach (var (_, dialog) in _dialogueHelper.GetDialogsForProfile(sessionId)) @@ -147,7 +148,7 @@ public class DialogueController( /// Dialog id /// Session Id /// DialogueInfo - public virtual DialogueInfo? GetDialogueInfo(string? dialogueId, string sessionId) + public virtual DialogueInfo? GetDialogueInfo(string? dialogueId, MongoId sessionId) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); var dialogue = dialogs!.GetValueOrDefault(dialogueId); @@ -161,7 +162,7 @@ public class DialogueController( /// Dialog /// Session Id /// DialogueInfo - public virtual DialogueInfo? GetDialogueInfo(Dialogue dialogue, string sessionId) + public virtual DialogueInfo? GetDialogueInfo(Dialogue dialogue, MongoId sessionId) { if (!dialogue.Messages.Any()) { @@ -192,7 +193,7 @@ public class DialogueController( public virtual List GetDialogueUsers( Dialogue? dialog, MessageType? messageType, - string sessionId + MongoId sessionId ) { var profile = _saveServer.GetProfile(sessionId); @@ -241,7 +242,7 @@ public class DialogueController( /// GetMailDialogViewResponseData object public virtual GetMailDialogViewResponseData GenerateDialogueView( GetMailDialogViewRequestData request, - string sessionId + MongoId sessionId ) { var dialogueId = request.DialogId; @@ -376,7 +377,7 @@ public class DialogueController( /// Session id /// Dialog id /// Count of messages with attachments - protected int GetUnreadMessagesWithAttachmentsCount(string sessionId, string dialogueId) + protected int GetUnreadMessagesWithAttachmentsCount(MongoId sessionId, string dialogueId) { var newAttachmentCount = 0; var activeMessages = GetActiveMessagesFromDialog(sessionId, dialogueId); @@ -397,10 +398,10 @@ public class DialogueController( /// /// Get messages from a specific dialog that have items not expired /// - /// Session/Player id + /// Session/Player id /// Dialog to get mail attachments from /// Message array - protected List GetActiveMessagesFromDialog(string sessionId, string dialogueId) + protected List GetActiveMessagesFromDialog(MongoId sessionId, string dialogueId) { var timeNow = _timeUtil.GetTimeStamp(); var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); @@ -430,7 +431,7 @@ public class DialogueController( /// /// id of the dialog to remove /// Player id - public virtual void RemoveDialogue(string? dialogueId, string sessionId) + public virtual void RemoveDialogue(string? dialogueId, MongoId sessionId) { var profile = _saveServer.GetProfile(sessionId); if (!profile.DialogueRecords.ContainsKey(dialogueId)) @@ -454,7 +455,7 @@ public class DialogueController( /// /// /// Session/Player id - public virtual void SetDialoguePin(string? dialogueId, bool shouldPin, string sessionId) + public virtual void SetDialoguePin(string? dialogueId, bool shouldPin, MongoId sessionId) { var dialog = _dialogueHelper.GetDialogsForProfile(sessionId).GetValueOrDefault(dialogueId); if (dialog is null) @@ -478,10 +479,10 @@ public class DialogueController( /// /// Dialog ids to set as read /// Player profile id - public virtual void SetRead(List? dialogueIds, string sessionId) + public virtual void SetRead(List? dialogueIds, MongoId sessionId) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); - if (dialogs is null || !dialogs.Any()) + if (dialogs?.Any() != true) { _logger.Error( _serverLocalisationService.GetText( @@ -506,8 +507,11 @@ public class DialogueController( /// /// Dialog to get mail attachments from /// Session id - /// GetAllAttachmentsResponse or null if dialogue doesnt exist - public virtual GetAllAttachmentsResponse GetAllAttachments(string dialogueId, string sessionId) + /// GetAllAttachmentsResponse or null if dialogue doesn't exist + public virtual GetAllAttachmentsResponse? GetAllAttachments( + string dialogueId, + MongoId sessionId + ) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); var dialog = dialogs.TryGetValue(dialogueId, out var dialogInfo); @@ -519,7 +523,7 @@ public class DialogueController( } // Removes corner 'new messages' tag - dialogInfo.AttachmentsNew = 0; + dialogInfo!.AttachmentsNew = 0; var activeMessages = GetActiveMessagesFromDialog(sessionId, dialogueId); var messagesWithAttachments = GetMessageWithAttachments(activeMessages); @@ -538,7 +542,10 @@ public class DialogueController( /// Session/Player id /// /// - public virtual async ValueTask SendMessage(string sessionId, SendMessageRequest request) + public virtual async ValueTask SendMessage( + MongoId sessionId, + SendMessageRequest request + ) { _mailSendService.SendPlayerMessageToNpc(sessionId, request.DialogId!, request.Text!); @@ -570,7 +577,7 @@ public class DialogueController( /// Delete expired items from all messages in player profile. triggers when updating traders. /// /// Session id - protected void RemoveExpiredItemsFromMessages(string sessionId) + protected void RemoveExpiredItemsFromMessages(MongoId sessionId) { foreach (var (dialogId, _) in _dialogueHelper.GetDialogsForProfile(sessionId)) { @@ -583,7 +590,7 @@ public class DialogueController( /// /// Session id /// Dialog id - protected void RemoveExpiredItemsFromMessage(string sessionId, string dialogueId) + protected void RemoveExpiredItemsFromMessage(MongoId sessionId, string dialogueId) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); if (!dialogs.TryGetValue(dialogueId, out var dialog)) @@ -617,12 +624,12 @@ public class DialogueController( /// Sent friend request /// public virtual FriendRequestSendResponse SendFriendRequest( - string sessionID, + MongoId sessionID, FriendRequestData request ) { // To avoid needing to jump between profiles, auto-accept all friend requests - var friendProfile = _profileHelper.GetFullProfile(request.To); + var friendProfile = _profileHelper.GetFullProfile(request.To.Value); if (friendProfile?.CharacterData?.PmcData is null) { return new FriendRequestSendResponse @@ -671,7 +678,7 @@ public class DialogueController( /// /// Session/player id /// Sent delete friend request - public virtual void DeleteFriend(string sessionID, DeleteFriendRequest request) + public virtual void DeleteFriend(MongoId sessionID, DeleteFriendRequest request) { var profile = _saveServer.GetProfile(sessionID); var friendIndex = profile.FriendProfileIds.IndexOf(request.FriendId); @@ -686,7 +693,7 @@ public class DialogueController( /// /// Session/Player id /// Client request to clear messages - public void ClearMessages(string sessionId, ClearMailMessageRequest request) + public void ClearMessages(MongoId sessionId, ClearMailMessageRequest request) { var profile = _saveServer.GetProfile(sessionId); if (!profile.DialogueRecords.TryGetValue(request.DialogId, out var dialogToClear)) diff --git a/Libraries/SPTarkov.Server.Core/Controllers/RepairController.cs b/Libraries/SPTarkov.Server.Core/Controllers/RepairController.cs index 9f676d88..ecbf7bc1 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/RepairController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/RepairController.cs @@ -1,4 +1,5 @@ using SPTarkov.DI.Annotations; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Common; using SPTarkov.Server.Core.Models.Eft.ItemEvent; using SPTarkov.Server.Core.Models.Eft.Repair; @@ -15,25 +16,25 @@ public class RepairController(EventOutputHolder _eventOutputHolder, RepairServic /// Repair with trader /// /// session id - /// endpoint request data + /// endpoint request data /// player profile /// ItemEventRouterResponse public ItemEventRouterResponse TraderRepair( - string sessionID, - TraderRepairActionDataRequest body, + MongoId sessionID, + TraderRepairActionDataRequest request, PmcData pmcData ) { var output = _eventOutputHolder.GetOutput(sessionID); // find the item to repair - foreach (var repairItem in body.RepairItems) + foreach (var repairItem in request.RepairItems) { var repairDetails = _repairService.RepairItemByTrader( sessionID, pmcData, repairItem, - body.TId + request.TId ); _repairService.PayForRepair( @@ -41,7 +42,7 @@ public class RepairController(EventOutputHolder _eventOutputHolder, RepairServic pmcData, repairItem.Id, repairDetails.RepairCost.Value, - body.TId, + request.TId, output ); @@ -69,7 +70,7 @@ public class RepairController(EventOutputHolder _eventOutputHolder, RepairServic /// player profile /// ItemEventRouterResponse public ItemEventRouterResponse RepairWithKit( - string sessionId, + MongoId sessionId, RepairActionDataRequest body, PmcData pmcData ) @@ -81,7 +82,7 @@ public class RepairController(EventOutputHolder _eventOutputHolder, RepairServic sessionId, pmcData, body.RepairKitsInfo, - body.Target, + body.Target.Value, output ); diff --git a/Libraries/SPTarkov.Server.Core/Controllers/WeatherController.cs b/Libraries/SPTarkov.Server.Core/Controllers/WeatherController.cs index b420bee1..e96a4759 100644 --- a/Libraries/SPTarkov.Server.Core/Controllers/WeatherController.cs +++ b/Libraries/SPTarkov.Server.Core/Controllers/WeatherController.cs @@ -1,5 +1,6 @@ using SPTarkov.DI.Annotations; using SPTarkov.Server.Core.Generators; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Weather; using SPTarkov.Server.Core.Models.Enums; using SPTarkov.Server.Core.Models.Spt.Config; @@ -47,7 +48,7 @@ public class WeatherController( /// /// Session/Player id /// GetLocalWeatherResponseData - public GetLocalWeatherResponseData GenerateLocal(string sessionId) + public GetLocalWeatherResponseData GenerateLocal(MongoId sessionId) { var result = new GetLocalWeatherResponseData { diff --git a/Libraries/SPTarkov.Server.Core/Generators/PlayerScavGenerator.cs b/Libraries/SPTarkov.Server.Core/Generators/PlayerScavGenerator.cs index cc1dabb1..6f458e2b 100644 --- a/Libraries/SPTarkov.Server.Core/Generators/PlayerScavGenerator.cs +++ b/Libraries/SPTarkov.Server.Core/Generators/PlayerScavGenerator.cs @@ -45,7 +45,7 @@ public class PlayerScavGenerator( /// /// session id to specify what profile is updated /// profile object - public PmcData Generate(string sessionID) + public PmcData Generate(MongoId sessionID) { // get karma level from profile var profile = _saveServer.GetProfile(sessionID); @@ -70,7 +70,7 @@ public class PlayerScavGenerator( if (_logger.IsLogEnabled(LogLevel.Debug)) { - _logger.Debug($"Generated player scav loadout with karma level {scavKarmaLevel}"); + _logger.Debug($"Generated player scav load out with karma level: {scavKarmaLevel}"); } // Edit baseBotNode values diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/FriendRequestData.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/FriendRequestData.cs index 4b1b2e56..1c4e55ce 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/FriendRequestData.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Dialog/FriendRequestData.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Utils; namespace SPTarkov.Server.Core.Models.Eft.Dialog; @@ -18,5 +19,5 @@ public record FriendRequestData : IRequestData public int? RetryAfter { get; set; } [JsonPropertyName("to")] - public string? To { get; set; } + public MongoId? To { get; set; } } diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Repair/RepairActionDataRequest.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Repair/RepairActionDataRequest.cs index 36704e58..58759e2b 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Repair/RepairActionDataRequest.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Repair/RepairActionDataRequest.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Inventory; namespace SPTarkov.Server.Core.Models.Eft.Repair; @@ -15,7 +16,7 @@ public record RepairActionDataRequest : InventoryBaseActionRequestData /// item to repair /// [JsonPropertyName("target")] - public string? Target { get; set; } + public MongoId? Target { get; set; } } public record RepairKitsInfo