From d5c188ed2e3f6e745fc46905776bb95e2d6b7ea7 Mon Sep 17 00:00:00 2001 From: Michael Babienco Date: Wed, 22 Apr 2026 11:44:10 +0900 Subject: [PATCH] Add Utilities. SaveReportDataSync --- src/MayShow.Shared/Helpers/Utilities.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/MayShow.Shared/Helpers/Utilities.cs b/src/MayShow.Shared/Helpers/Utilities.cs index 6fcf243..a092737 100644 --- a/src/MayShow.Shared/Helpers/Utilities.cs +++ b/src/MayShow.Shared/Helpers/Utilities.cs @@ -5,7 +5,9 @@ using System.Globalization; using System.IO; using System.Text.Json; using System.Text.Json.Serialization; +using System.Text.Json.Serialization.Metadata; using System.Text.RegularExpressions; +using Avalonia.Utilities; using MayShow.Models; using Tmds.DBus.Protocol; @@ -108,4 +110,19 @@ class Utilities } return guid; } + + public static void SaveReportDataSync(PDFReport reportData, string path, JsonTypeInfo? context) + { + if (context == null) + { + var jsonContext = new SourceGenerationContext(Utilities.GetSerializerOptions()); + context = jsonContext.PDFReport; + } + using var memoryStream = new MemoryStream(); + JsonSerializer.Serialize(memoryStream, reportData, context); + memoryStream.Position = 0; + using var reader = new StreamReader(memoryStream); + var updatedJson = reader.ReadToEnd(); + File.WriteAllText(path, updatedJson); + } } \ No newline at end of file