@page "/" @using Radzen @using Radzen.Blazor @using BattSim.Models @using BattSim.Services BattSim

BattSim

Input Data

Upload your fluvius daily csv file here.

@if (_isLoadingFile){

Loading...

} @if (EnergyData.Length != 0){ }

Simulate Battery

Set the battery capacity

Calculate Cost

@code { EnergyData[] EnergyData = []; bool _isLoadingFile = false; private async Task LoadCsvFile(InputFileChangeEventArgs e) { var file = e.File; if (file.ContentType != "text/csv") { Console.WriteLine("Only CSV files are allowed!"); return; } try { Console.WriteLine("Reading csv file..."); _isLoadingFile = true; StateHasChanged(); var loadingTask = DataLoader.LoadAndProcessData(file); var energyData = await loadingTask; EnergyData = energyData.ToArray(); _isLoadingFile = false; StateHasChanged(); Console.WriteLine("Done reading csv file!"); } catch (Exception ex) { Console.WriteLine($"Error loading file: {ex.Message}"); } } bool _showProduction = true; bool _showConsumption = true; private void OnSeriesClick(){} private string FormatObject(object value) { if(value is double d) return $"{value:0.##} kWh"; if(value is DateOnly date) return (date.Day == 1) ? date.ToString("MM/yyyy") : string.Empty; else return string.Empty; } double BatteryCapacity = 0.0; BatteryDayResult[] SimulationData = []; private async Task SimulateBattery(){ Console.WriteLine("Simulating..."); SimulationData = BatterySimulator.SimulateBattery(EnergyData, BatteryCapacity).ToArray(); Console.WriteLine("Done simulating!"); } }