using OI.Metrology.Shared.Models.Stateless; using OI.Metrology.Shared.ViewModels; using System.Text.Json; namespace OI.Metrology.Server.Repository; public class ServiceShopOrderRepository : IServiceShopOrderRepository { private static ServiceShopOrder[] GetServiceShopOrders(Shared.Models.ServiceShop? serviceShop) { ServiceShopOrder[] result = IServiceShopOrder.GetServiceShopOrders(serviceShop); return result; } private static Shared.Models.ServiceShop? GetServiceShopOrders() { Shared.Models.ServiceShop? result; string jsonFile; string checkDirectory = Path.Combine(AppContext.BaseDirectory, "Data/Mike"); if (Directory.Exists(checkDirectory)) jsonFile = Path.Combine(checkDirectory, "service-shop.json"); else jsonFile = Path.Combine(AppContext.BaseDirectory, "service-shop.json"); string json = File.ReadAllText(jsonFile); result = JsonSerializer.Deserialize(json); return result; } async Task IServiceShopOrderRepository.GetAllServiceShopOrders() { ServiceShopOrder[] results; Shared.Models.ServiceShop? serviceShop = await Task.Run(GetServiceShopOrders); results = GetServiceShopOrders(serviceShop); return results.ToArray(); } async Task IServiceShopOrderRepository.GetServiceShopOrders(string id) { ServiceShopOrder[] results; Shared.Models.ServiceShop? serviceShop = await Task.Run(GetServiceShopOrders); results = GetServiceShopOrders(serviceShop).Where(l => l.Id == id).ToArray(); return results; } }