barcode-host/Server/Services/FileService.cs
2023-06-23 15:40:59 -07:00

21 lines
867 B
C#

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);
}
}