mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-10 15:17:31 +00:00
gets data when changing the date.
This commit is contained in:
@ -48,7 +48,7 @@ class AnalyticsPage extends StatelessWidget {
|
|||||||
RemotePowerClampInfoService(HTTPService()),
|
RemotePowerClampInfoService(HTTPService()),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
BlocProvider(
|
BlocProvider<RealtimeDeviceChangesBloc>(
|
||||||
create: (context) => RealtimeDeviceChangesBloc(
|
create: (context) => RealtimeDeviceChangesBloc(
|
||||||
FirebaseRealtimeDeviceService(),
|
FirebaseRealtimeDeviceService(),
|
||||||
),
|
),
|
||||||
|
@ -20,7 +20,14 @@ class AnalyticsCommunitiesSidebar extends StatelessWidget {
|
|||||||
() {
|
() {
|
||||||
if (context.mounted) {
|
if (context.mounted) {
|
||||||
FetchEnergyManagementDataHelper.fetchEnergyManagementData(
|
FetchEnergyManagementDataHelper.fetchEnergyManagementData(
|
||||||
context);
|
context,
|
||||||
|
);
|
||||||
|
FetchEnergyManagementDataHelper.loadRealtimeDeviceChanges(
|
||||||
|
context,
|
||||||
|
);
|
||||||
|
FetchEnergyManagementDataHelper.loadPowerClampInfo(
|
||||||
|
context,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
@ -4,6 +4,7 @@ import 'package:flutter_svg/svg.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:syncrow_web/pages/analytics/modules/analytics/blocs/analytics_date_picker_bloc/analytics_date_picker_bloc.dart';
|
import 'package:syncrow_web/pages/analytics/modules/analytics/blocs/analytics_date_picker_bloc/analytics_date_picker_bloc.dart';
|
||||||
import 'package:syncrow_web/pages/analytics/modules/analytics/widgets/month_picker_widget.dart';
|
import 'package:syncrow_web/pages/analytics/modules/analytics/widgets/month_picker_widget.dart';
|
||||||
|
import 'package:syncrow_web/pages/analytics/modules/energy_management/helpers/fetch_energy_management_data_helper.dart';
|
||||||
import 'package:syncrow_web/utils/color_manager.dart';
|
import 'package:syncrow_web/utils/color_manager.dart';
|
||||||
import 'package:syncrow_web/utils/constants/assets.dart';
|
import 'package:syncrow_web/utils/constants/assets.dart';
|
||||||
|
|
||||||
@ -69,12 +70,16 @@ class _AnalyticsDateFilterButtonState extends State<AnalyticsDateFilterButton> {
|
|||||||
onPressed: () {
|
onPressed: () {
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
builder: (context) => MonthPickerWidget(
|
builder: (_) => MonthPickerWidget(
|
||||||
selectedDate: selectedDate,
|
selectedDate: selectedDate,
|
||||||
onDateSelected: (value) {
|
onDateSelected: (value) {
|
||||||
_analyticsDatePickerBloc.add(
|
_analyticsDatePickerBloc.add(
|
||||||
UpdateAnalyticsDatePickerEvent(value),
|
UpdateAnalyticsDatePickerEvent(value),
|
||||||
);
|
);
|
||||||
|
FetchEnergyManagementDataHelper.fetchEnergyManagementData(
|
||||||
|
context,
|
||||||
|
selectedDate: value,
|
||||||
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
@ -13,7 +13,10 @@ import 'package:syncrow_web/pages/space_tree/bloc/space_tree_bloc.dart';
|
|||||||
abstract final class FetchEnergyManagementDataHelper {
|
abstract final class FetchEnergyManagementDataHelper {
|
||||||
const FetchEnergyManagementDataHelper._();
|
const FetchEnergyManagementDataHelper._();
|
||||||
|
|
||||||
static void fetchEnergyManagementData(BuildContext context) {
|
static void fetchEnergyManagementData(
|
||||||
|
BuildContext context, {
|
||||||
|
DateTime? selectedDate,
|
||||||
|
}) {
|
||||||
final (selectedCommunities, selectedSpaces) =
|
final (selectedCommunities, selectedSpaces) =
|
||||||
_getSelectedCommunitiesAndSpaces(context);
|
_getSelectedCommunitiesAndSpaces(context);
|
||||||
|
|
||||||
@ -24,9 +27,7 @@ abstract final class FetchEnergyManagementDataHelper {
|
|||||||
|
|
||||||
loadTotalEnergyConsumption(context);
|
loadTotalEnergyConsumption(context);
|
||||||
loadEnergyConsumptionByPhases(context);
|
loadEnergyConsumptionByPhases(context);
|
||||||
loadPowerClampInfo(context);
|
|
||||||
loadEnergyConsumptionPerDevice(context);
|
loadEnergyConsumptionPerDevice(context);
|
||||||
loadRealtimeDeviceChanges(context);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -39,19 +40,29 @@ abstract final class FetchEnergyManagementDataHelper {
|
|||||||
return (selectedCommunities, selectedSpaces);
|
return (selectedCommunities, selectedSpaces);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void loadEnergyConsumptionByPhases(BuildContext context) {
|
static void loadEnergyConsumptionByPhases(
|
||||||
const param = GetEnergyConsumptionByPhasesParam();
|
BuildContext context, {
|
||||||
|
DateTime? selectedDate,
|
||||||
|
}) {
|
||||||
|
final param = GetEnergyConsumptionByPhasesParam(
|
||||||
|
startDate: selectedDate,
|
||||||
|
spaceId: '',
|
||||||
|
);
|
||||||
context.read<EnergyConsumptionByPhasesBloc>().add(
|
context.read<EnergyConsumptionByPhasesBloc>().add(
|
||||||
const LoadEnergyConsumptionByPhasesEvent(param: param),
|
LoadEnergyConsumptionByPhasesEvent(param: param),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void loadTotalEnergyConsumption(BuildContext context) {
|
static void loadTotalEnergyConsumption(
|
||||||
|
BuildContext context, {
|
||||||
|
DateTime? selectedDate,
|
||||||
|
}) {
|
||||||
final (selectedCommunities, selectedSpaces) =
|
final (selectedCommunities, selectedSpaces) =
|
||||||
_getSelectedCommunitiesAndSpaces(context);
|
_getSelectedCommunitiesAndSpaces(context);
|
||||||
|
|
||||||
final param = GetTotalEnergyConsumptionParam(
|
final param = GetTotalEnergyConsumptionParam(
|
||||||
spaceId: selectedCommunities.firstOrNull,
|
spaceId: selectedCommunities.firstOrNull,
|
||||||
|
startDate: selectedDate,
|
||||||
);
|
);
|
||||||
context.read<TotalEnergyConsumptionBloc>().add(
|
context.read<TotalEnergyConsumptionBloc>().add(
|
||||||
TotalEnergyConsumptionLoadEvent(param: param),
|
TotalEnergyConsumptionLoadEvent(param: param),
|
||||||
|
Reference in New Issue
Block a user