You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Admin/Sources/HeartTrack/Services/ReportDataService/ReportDataServiceAPI.cs

86 lines
2.7 KiB

using System;
using HeartTrack.Models;
using Microsoft.AspNetCore.Components;
namespace HeartTrack.Services.ReportDataService
{
public class ReportDataServiceAPI : IReportDataService
{
[Inject]
private HttpClient _clientHttp { get; set; }
public ReportDataServiceAPI(HttpClient clientHttp)
{
this._clientHttp = clientHttp;
}
public async Task AddReport(Report r)
{
HttpResponseMessage response = await _clientHttp.PostAsJsonAsync("http://localhost:8080/api/reports", r);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("API - Report avec l'id " + r.Id + " ajouté avec succès");
}
else
{
Console.WriteLine("API - Problème ajout Report");
}
}
public async Task<Report> getReportById(int id)
{
Report Report = await _clientHttp.GetFromJsonAsync<Report>("http://localhost:8080/api/reports/{id}");
return Report;
}
public async Task<List<Report>> getAllReports()
{
List<Report> lReports = await _clientHttp.GetFromJsonAsync<List<Report>>("http://localhost:8080/api/reports");
return lReports;
}
public async Task RemoveReport(Report r)
{
HttpResponseMessage response = await _clientHttp.DeleteAsync($"http://localhost:8080/api/reports/{r.Id}");
if (response.IsSuccessStatusCode)
{
Console.WriteLine("API - Report avec l'id " + r.Id + " supprimé avec succès");
}
else
{
Console.WriteLine("API - Problème suppression Report");
}
}
public async Task SaveAllReports(List<Report> list)
{
HttpResponseMessage response = await _clientHttp.PutAsJsonAsync("http://localhost:8080/api/reports", list);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("API - List de reports sauvegardé avec succès");
}
else
{
Console.WriteLine("API - Problème sauvegarde List de reports");
}
}
public async Task UpdateReport(Report r)
{
HttpResponseMessage response = await _clientHttp.PutAsJsonAsync($"http://localhost:8080/api/reports/{r.Id}", r);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("API - Report avec l'id " + r.Id + " mis à jour avec succès");
}
else
{
Console.WriteLine("API - Problème mise à jour Report");
}
}
}
}