using Barcode.Host.Shared.Models; using Barcode.Host.Shared.Models.Stateless; using System.Globalization; namespace Barcode.Host.Server.Services; public class FileService : IFileService { void IFileService.Write(string equipmentName, string fileShare, Calendar? calendar, Notification notification) { DateTime dateTime = DateTime.Now; calendar ??= new CultureInfo("en-US").Calendar; string weekOfYear = $"{dateTime:yyyy}_Week_{calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday):00}"; string directory = Path.Combine(fileShare, weekOfYear, dateTime.ToString("yyyy-MM-dd_HH")); if (!Directory.Exists(directory)) _ = Directory.CreateDirectory(directory); File.WriteAllText(Path.Combine(directory, $"{equipmentName}.csv"), notification.LastScanServiceResultValue); } }