Files
douwco_thuisbatterij_simulator/Pages/Home.razor
2026-03-28 02:01:00 +01:00

50 lines
1.2 KiB
Plaintext

@page "/"
@using BattSim.Models
@using BattSim.Services
<PageTitle>BattSim</PageTitle>
<h1>BattSim</h1>
<p>Upload your fluvius daily csv file here.</p>
<InputFile OnChange="LoadCsvFile" accept=".csv"/>
@if (_isLoading){ <p>Loading...</p> }
@code {
EnergyData[] EnergyData = [];
(int, BatteryDayResult[])[] SimulationData = [];
bool _isLoading = false;
private async Task LoadCsvFile(InputFileChangeEventArgs e)
{
_isLoading = true;
StateHasChanged();
var file = e.File;
if (file.ContentType != "text/csv")
{
Console.WriteLine("Only CSV files are allowed!");
return;
}
try
{
var loadingTask = DataLoader.LoadAndProcessData(file);
var energyData = await loadingTask;
EnergyData = energyData.ToArray();
_isLoading = false;
StateHasChanged();
foreach (var data in EnergyData)
{
Console.WriteLine(data.Date.ToString());
}
}
catch (Exception ex)
{
Console.WriteLine($"Error loading file: {ex.Message}");
}
}
}