Creation
This commit is contained in:
51
Server/Models/SsaOrderRepository.cs
Normal file
51
Server/Models/SsaOrderRepository.cs
Normal file
@ -0,0 +1,51 @@
|
||||
using Expose.MyIT.Shared.Models.Methods;
|
||||
using Expose.MyIT.Shared.ViewModels;
|
||||
using Serilog.Context;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace Expose.MyIT.Server.Models;
|
||||
|
||||
public class SsaOrderRepository : ISsaOrderRepository
|
||||
{
|
||||
|
||||
private readonly Serilog.ILogger _Log;
|
||||
|
||||
public SsaOrderRepository() => _Log = Serilog.Log.ForContext<SsaOrderRepository>();
|
||||
|
||||
private static SsaOrder[] GetSsaOrders(Shared.Models.SSA? ssa)
|
||||
{
|
||||
SsaOrder[] result = Shared.Models.Stateless.Methods.ISsaOrder.GetSsaOrders(ssa);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static Shared.Models.SSA? GetSsaOrders()
|
||||
{
|
||||
Shared.Models.SSA? result;
|
||||
string jsonFile = Path.Combine(AppContext.BaseDirectory, "ssa.json");
|
||||
string json = File.ReadAllText(jsonFile);
|
||||
result = JsonSerializer.Deserialize<Shared.Models.SSA>(json);
|
||||
return result;
|
||||
}
|
||||
|
||||
async Task<SsaOrder[]> ISsaOrderRepository.GetAllSsaOrders()
|
||||
{
|
||||
SsaOrder[] results;
|
||||
string? methodName = Shared.Models.Stateless.Methods.IMethodName.GetActualAsyncMethodName();
|
||||
using (LogContext.PushProperty("MethodName", methodName))
|
||||
{
|
||||
_Log.Debug("() => ...");
|
||||
Shared.Models.SSA? ssa = await Task.Run(GetSsaOrders);
|
||||
results = GetSsaOrders(ssa);
|
||||
}
|
||||
return results.ToArray();
|
||||
}
|
||||
|
||||
async Task<SsaOrder[]> ISsaOrderRepository.GetSsaOrders(string id)
|
||||
{
|
||||
SsaOrder[] results;
|
||||
Shared.Models.SSA? ssa = await Task.Run(GetSsaOrders);
|
||||
results = GetSsaOrders(ssa).Where(l => l.Id == id).ToArray();
|
||||
return results;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user