using Front.Services; using Shared.DTOs; using System.Net.Http.Json; using System.Security.Cryptography; namespace Front { public class Fixedvalues { public readonly HttpClientController _hc; private List? Cus = null; private List>? Patterns = null; private List>? Units = null; private List>? Cods = null; private CompanyDTO? InfoCompany = null; public InvoiceDTO? invoice { get; set; } = null; public DashBoardDTO? dashBoard { get; set; } = null; public Fixedvalues(HttpClientController hc) { _hc = hc; } public async Task?> GetCustomers() { if (Cus == null) { var request = await _hc.Get($"Customer/GetAllForidName"); if (request.IsSuccessStatusCode) { Cus = await request.Content.ReadFromJsonAsync>(); } } return Cus; } public async Task>?> GetCODs() { if (Cods == null) { var request = await _hc.Get($"COD/GetAllForidName"); if (request.IsSuccessStatusCode) { Cods = await request.Content.ReadFromJsonAsync>>(); } } return Cods; } public async Task>?> GetPatterns() { if (Patterns == null) { var request = await _hc.Get($"Invoice/GetPatterns"); if (request.IsSuccessStatusCode) { Patterns = await request.Content.ReadFromJsonAsync>>(); } } return Patterns; } public async Task GetInfoCompany() { if (InfoCompany == null) { var rspCompany = await _hc.Get($"Company/GetCompany"); if (rspCompany.IsSuccessStatusCode) InfoCompany = await rspCompany.Content.ReadFromJsonAsync(); } return InfoCompany; } public async Task GetDashBoard(bool run=false) { if (dashBoard == null || run) { var rsp = await _hc.Get("User/GetDashBoard"); if (rsp.IsSuccessStatusCode) { dashBoard = await rsp.Content.ReadFromJsonAsync(); } } return dashBoard; } public async Task>> GetUnits() { if (Units == null) { var rsp = await _hc.Get("COD/GetUnits"); if (rsp.IsSuccessStatusCode) { Units = await rsp.Content.ReadFromJsonAsync>>(); } } return Units; } } }