string > mongoid

added nullguard
This commit is contained in:
Chomp
2025-07-25 21:12:37 +01:00
parent 68c89fcc00
commit 526c3f6c44
7 changed files with 26 additions and 11 deletions
@@ -83,7 +83,7 @@ public class RagfairHelper(
// Case: search
if (!string.IsNullOrEmpty(request.LinkedSearchId))
{
var data = ragfairLinkedItemService.GetLinkedItems(request.LinkedSearchId);
var data = ragfairLinkedItemService.GetLinkedItems(request.LinkedSearchId.Value);
result = [.. data];
}
@@ -69,6 +69,8 @@ public class TraderHelper(
return new TraderBase { Currency = CurrencyType.RUB };
}
var traderIdMongo = new MongoId(traderID);
var pmcData = profileHelper.GetPmcProfile(sessionID);
if (pmcData == null)
{
@@ -81,14 +83,17 @@ public class TraderHelper(
}
// Profile has traderInfo dict (profile beyond creation stage) but no requested trader in profile
if (pmcData?.TradersInfo != null && !(pmcData?.TradersInfo?.ContainsKey(traderID) ?? false))
if (
pmcData?.TradersInfo != null
&& !(pmcData?.TradersInfo?.ContainsKey(traderIdMongo) ?? false)
)
{
// Add trader values to profile
ResetTrader(sessionID, traderID);
LevelUp(traderID, pmcData);
ResetTrader(sessionID, traderIdMongo);
LevelUp(traderIdMongo, pmcData);
}
var traderBase = databaseService.GetTrader(traderID).Base;
var traderBase = databaseService.GetTrader(traderIdMongo).Base;
if (traderBase == null)
{
logger.Error(
@@ -798,7 +798,7 @@ public record Hideout
[JsonPropertyName("sptUpdateLastRunTimestamp")]
public long? SptUpdateLastRunTimestamp { get; set; }
public Dictionary<string, MongoId>? Customization { get; set; } // Key = Area customisaion type as string, e.g. "Wall", "Light", "ShootingRangeMark"
public Dictionary<string, MongoId>? Customization { get; set; } // Key = Area customisation type as string, e.g. "Wall", "Light", "ShootingRangeMark"
}
public record HideoutCounters
@@ -65,7 +65,7 @@ public record SearchRequestData : IRequestData
public MongoId? HandbookId { get; set; }
[JsonPropertyName("linkedSearchId")]
public string? LinkedSearchId { get; set; }
public MongoId? LinkedSearchId { get; set; }
[JsonPropertyName("neededSearchId")]
public MongoId? NeededSearchId { get; set; }
@@ -5,6 +5,7 @@ using SPTarkov.Server.Core.Models.Common;
using SPTarkov.Server.Core.Models.Eft.Common.Tables;
using SPTarkov.Server.Core.Models.Enums;
using SPTarkov.Server.Core.Models.Utils;
using SPTarkov.Server.Core.Utils;
namespace SPTarkov.Server.Core.Services;
@@ -12,6 +13,7 @@ namespace SPTarkov.Server.Core.Services;
public class BotEquipmentModPoolService(
ISptLogger<BotEquipmentModPoolService> logger,
ItemHelper itemHelper,
JsonUtil jsonUtil,
DatabaseService databaseService,
ServerLocalisationService localisationService
)
@@ -261,7 +263,11 @@ public class BotEquipmentModPoolService(
&& itemHelper.IsOfBaseclasses(item.Id, [BaseClasses.WEAPON, BaseClasses.MOD])
);
return GeneratePool(weaponsAndMods, "weapon");
var x = GeneratePool(weaponsAndMods, "weapon");
logger.Warning(jsonUtil.Serialize(x));
return x;
}
/// <summary>
@@ -16,10 +16,14 @@ public class MapMarkerService(ISptLogger<MapMarkerService> logger)
/// <param name="pmcData">Player profile</param>
/// <param name="request">Add marker request</param>
/// <returns>Item</returns>
public Item CreateMarkerOnMap(PmcData pmcData, InventoryCreateMarkerRequestData request)
public Item? CreateMarkerOnMap(PmcData pmcData, InventoryCreateMarkerRequestData request)
{
// Get map from inventory
var mapItem = pmcData?.Inventory?.Items?.FirstOrDefault(i => i?.Id == request?.Item);
if (mapItem is null)
{
return null;
}
// add marker to map item
mapItem.Upd.Map = mapItem?.Upd?.Map ?? new UpdMap { Markers = [] };
+2 -2
View File
@@ -11,13 +11,13 @@ public class SptLoggerProvider(
SptLoggerQueueManager queueManager
) : ILoggerProvider, ILoggerFactory
{
private readonly List<ILoggerProvider> loggerProviders = [];
private readonly List<ILoggerProvider> _loggerProviders = [];
public void Dispose() { }
public void AddProvider(ILoggerProvider provider)
{
loggerProviders?.Add(provider);
_loggerProviders?.Add(provider);
}
public ILogger CreateLogger(string categoryName)