diff --git a/lib/pages/analytics/params/get_total_energy_consumption_param.dart b/lib/pages/analytics/params/get_total_energy_consumption_param.dart new file mode 100644 index 00000000..a47078f0 --- /dev/null +++ b/lib/pages/analytics/params/get_total_energy_consumption_param.dart @@ -0,0 +1,19 @@ +class GetTotalEnergyConsumptionParam { + final String? startDate; + final String? endDate; + final String? spaceId; + + GetTotalEnergyConsumptionParam({ + this.startDate, + this.endDate, + this.spaceId, + }); + + Map toJson() { + return { + 'startDate': startDate, + 'endDate': endDate, + 'spaceId': spaceId, + }; + } +} diff --git a/lib/pages/analytics/services/total_energy_consumption/fake_total_energy_consumption_service.dart b/lib/pages/analytics/services/total_energy_consumption/fake_total_energy_consumption_service.dart new file mode 100644 index 00000000..9be25625 --- /dev/null +++ b/lib/pages/analytics/services/total_energy_consumption/fake_total_energy_consumption_service.dart @@ -0,0 +1,25 @@ +import 'package:syncrow_web/pages/analytics/models/energy_data_model.dart'; +import 'package:syncrow_web/pages/analytics/params/get_total_energy_consumption_param.dart'; +import 'package:syncrow_web/pages/analytics/services/total_energy_consumption/total_energy_consumption_service.dart'; + +class FakeTotalEnergyConsumptionService implements TotalEnergyConsumptionService { + @override + Future> getTotalEnergyConsumption( + GetTotalEnergyConsumptionParam param, + ) { + return Future.value([ + EnergyDataModel(date: DateTime(2025, 1), value: 18000), + EnergyDataModel(date: DateTime(2025, 2), value: 25000), + EnergyDataModel(date: DateTime(2025, 3), value: 22000), + EnergyDataModel(date: DateTime(2025, 4), value: 21000), + EnergyDataModel(date: DateTime(2025, 5), value: 30000), + EnergyDataModel(date: DateTime(2025, 6), value: 23000), + EnergyDataModel(date: DateTime(2025, 7), value: 21000), + EnergyDataModel(date: DateTime(2025, 8), value: 25000), + EnergyDataModel(date: DateTime(2025, 9), value: 21100), + EnergyDataModel(date: DateTime(2025, 10), value: 22000), + EnergyDataModel(date: DateTime(2025, 11), value: 21000), + EnergyDataModel(date: DateTime(2025, 12), value: 27500), + ]); + } +} diff --git a/lib/pages/analytics/services/total_energy_consumption/total_energy_consumption_service.dart b/lib/pages/analytics/services/total_energy_consumption/total_energy_consumption_service.dart new file mode 100644 index 00000000..2bc9680c --- /dev/null +++ b/lib/pages/analytics/services/total_energy_consumption/total_energy_consumption_service.dart @@ -0,0 +1,8 @@ +import 'package:syncrow_web/pages/analytics/models/energy_data_model.dart'; +import 'package:syncrow_web/pages/analytics/params/get_total_energy_consumption_param.dart'; + +abstract interface class TotalEnergyConsumptionService { + Future> getTotalEnergyConsumption( + GetTotalEnergyConsumptionParam param, + ); +}