From d80f5e1f3a27527383322d555b79e2aad6a8a634 Mon Sep 17 00:00:00 2001 From: Faris Armoush Date: Thu, 15 May 2025 14:25:13 +0300 Subject: [PATCH] Refactor energy consumption charts to enhance grid data configuration Updated the grid data for EnergyConsumptionByPhasesChart, EnergyConsumptionPerDeviceChart, and TotalEnergyConsumptionChart to include horizontal line visibility and set a horizontal interval of 250. Removed unused phasesJson constant from TotalEnergyConsumptionChart for cleaner code. --- .../energy_consumption_by_phases_chart.dart | 5 ++++- .../energy_consumption_per_device_chart.dart | 5 ++++- .../total_energy_consumption_chart.dart | 19 ++++++++----------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_by_phases_chart.dart b/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_by_phases_chart.dart index c94755bb..5633248b 100644 --- a/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_by_phases_chart.dart +++ b/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_by_phases_chart.dart @@ -18,7 +18,10 @@ class EnergyConsumptionByPhasesChart extends StatelessWidget { Widget build(BuildContext context) { return BarChart( BarChartData( - gridData: EnergyManagementChartsHelper.gridData(), + gridData: EnergyManagementChartsHelper.gridData().copyWith( + checkToShowHorizontalLine: (value) => true, + horizontalInterval: 250, + ), borderData: EnergyManagementChartsHelper.borderData(), barTouchData: _barTouchData(context), titlesData: _titlesData(context), diff --git a/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_per_device_chart.dart b/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_per_device_chart.dart index 8a779d63..892e4676 100644 --- a/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_per_device_chart.dart +++ b/lib/pages/analytics/modules/energy_management/widgets/energy_consumption_per_device_chart.dart @@ -16,7 +16,10 @@ class EnergyConsumptionPerDeviceChart extends StatelessWidget { context, leftTitlesInterval: 250, ), - gridData: EnergyManagementChartsHelper.gridData(), + gridData: EnergyManagementChartsHelper.gridData().copyWith( + checkToShowHorizontalLine: (value) => true, + horizontalInterval: 250, + ), borderData: EnergyManagementChartsHelper.borderData(), lineTouchData: EnergyManagementChartsHelper.lineTouchData(), lineBarsData: chartData.map((e) { diff --git a/lib/pages/analytics/modules/energy_management/widgets/total_energy_consumption_chart.dart b/lib/pages/analytics/modules/energy_management/widgets/total_energy_consumption_chart.dart index 70170180..b0f7961a 100644 --- a/lib/pages/analytics/modules/energy_management/widgets/total_energy_consumption_chart.dart +++ b/lib/pages/analytics/modules/energy_management/widgets/total_energy_consumption_chart.dart @@ -4,15 +4,6 @@ import 'package:syncrow_web/pages/analytics/models/energy_data_model.dart'; import 'package:syncrow_web/pages/analytics/modules/energy_management/helpers/energy_management_charts_helper.dart'; import 'package:syncrow_web/utils/color_manager.dart'; -// energy_consumption_chart will return id, name and consumption -const phasesJson = { - "1": { - "phaseOne": 1000, - "phaseTwo": 2000, - "phaseThree": 3000, - } -}; - class TotalEnergyConsumptionChart extends StatelessWidget { const TotalEnergyConsumptionChart({required this.chartData, super.key}); @@ -23,8 +14,14 @@ class TotalEnergyConsumptionChart extends StatelessWidget { return Expanded( child: LineChart( LineChartData( - titlesData: EnergyManagementChartsHelper.titlesData(context), - gridData: EnergyManagementChartsHelper.gridData(), + titlesData: EnergyManagementChartsHelper.titlesData( + context, + leftTitlesInterval: 250, + ), + gridData: EnergyManagementChartsHelper.gridData().copyWith( + checkToShowHorizontalLine: (value) => true, + horizontalInterval: 250, + ), borderData: EnergyManagementChartsHelper.borderData(), lineTouchData: EnergyManagementChartsHelper.lineTouchData(), lineBarsData: _lineBarsData,