Files
aviq-boilerplate/CityInfo.WEB/Services/PointOfInterestDataService.cs
T
2026-03-22 16:28:01 +01:00

52 lines
1.7 KiB
C#

using CityInfo.WEB.Models;
using System.Net.Http.Json;
namespace CityInfo.WEB.Services
{
public class PointOfInterestDataService : IPointOfInterestDataService
{
private readonly HttpClient _httpClient;
private readonly ILogger<PointOfInterestDataService> _logger;
public PointOfInterestDataService(
HttpClient httpClient, ILogger<PointOfInterestDataService> logger)
{
_httpClient = httpClient;
_logger = logger;
}
public Task<PointOfInterest?> CreatePointOfInterest(int cityId, PointOfInterest pointOfInterest)
{
throw new NotImplementedException();
}
public Task<bool> DeletePointOfInterest(int cityId, int pointOfInterestId)
{
throw new NotImplementedException();
}
public Task<PointOfInterest?> GetPointOfInterest(int cityId, int pointOfInterestId)
{
throw new NotImplementedException();
}
public async Task<IEnumerable<PointOfInterest>> GetPointsOfInterest(int cityId)
{
try
{
return await _httpClient.GetFromJsonAsync<IEnumerable<PointOfInterest>>($"api/cities/{cityId}/pointsofinterest/")
?? Enumerable.Empty<PointOfInterest>();
}
catch (Exception ex)
{
_logger.LogError(ex, "Erreur lors de la récupération des Points d'intérets.");
return Enumerable.Empty<PointOfInterest>();
}
}
public Task<bool> UpdatePointOfInterest(int cityId, PointOfInterest pointOfInterest)
{
throw new NotImplementedException();
}
}
}