1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using System.Net.Http;
- using System.Net.Http.Json;
- using System.Threading.Tasks;
- using wispro.sp.web.Models;
- namespace wispro.sp.web.Services
- {
- public interface IChartService
- {
- Task<ChartDataItem[]> GetVisitDataAsync();
- Task<ChartDataItem[]> GetVisitData2Async();
- Task<ChartDataItem[]> GetSalesDataAsync();
- Task<RadarDataItem[]> GetRadarDataAsync();
- }
- public class ChartService : IChartService
- {
- private readonly HttpClient _httpClient;
- public ChartService(HttpClient httpClient)
- {
- _httpClient = httpClient;
- }
- public async Task<ChartDataItem[]> GetVisitDataAsync()
- {
- return (await GetChartDataAsync()).VisitData;
- }
- public async Task<ChartDataItem[]> GetVisitData2Async()
- {
- return (await GetChartDataAsync()).VisitData2;
- }
- public async Task<ChartDataItem[]> GetSalesDataAsync()
- {
- return (await GetChartDataAsync()).SalesData;
- }
- public async Task<RadarDataItem[]> GetRadarDataAsync()
- {
- return (await GetChartDataAsync()).RadarData;
- }
- private async Task<ChartData> GetChartDataAsync()
- {
- return await _httpClient.GetFromJsonAsync<ChartData>("data/fake_chart_data.json");
- }
- }
- }
|