diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs index 7e8206f8..31ab4fcc 100644 --- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs +++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs @@ -255,11 +255,8 @@ public partial class TrackService : ApplicationService, ITrackService } var extraDict = System.Text.Json.JsonSerializer.Deserialize>(y.Extra); - if (extraDict!.TryGetValue(input.CompareFields!, out var compareValue)) - { - //todo:需要修改JsonElement和object的逻辑 - return compareValue.Equals(input.CompareValue); - } + if (extraDict!.TryGetValue(input.CompareFields!, out var compareValueJsonElement)) + return TextJsonHelper.EqJsonElementAndObject(compareValueJsonElement, input.CompareValue); return false; }) @@ -378,12 +375,9 @@ public partial class TrackService : ApplicationService, ITrackService throw new BusinessException(message: "轨迹extra为空无法使用比较字段比较,请检查轨迹"); } - var extraDict = System.Text.Json.JsonSerializer.Deserialize>(y.Extra); - if (extraDict!.TryGetValue(input.CompareFields!, out var compareValue)) - { - //todo:需要修改JsonElement和object的逻辑 - return compareValue.Equals(input.CompareValue); - } + var extraDict = TextJsonHelper.DeserializeDictionary(y.Extra); + if (extraDict!.TryGetValue(input.CompareFields!, out var compareValueJsonElement)) + return TextJsonHelper.EqJsonElementAndObject(compareValueJsonElement, input.CompareValue); return false; })