mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-14 17:25:50 +00:00
Merge pull request #189 from SyncrowIOT/1495-calendar-bugfixes
1495 calendar bugfixes
This commit is contained in:
@ -14,7 +14,6 @@ class AnalyticsPageTabsAndChildren extends StatelessWidget {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final spaceTreeState = context.read<SpaceTreeBloc>().state;
|
|
||||||
return BlocBuilder<AnalyticsTabBloc, AnalyticsPageTab>(
|
return BlocBuilder<AnalyticsTabBloc, AnalyticsPageTab>(
|
||||||
buildWhen: (previous, current) => previous != current,
|
buildWhen: (previous, current) => previous != current,
|
||||||
builder: (context, selectedTab) => Column(
|
builder: (context, selectedTab) => Column(
|
||||||
@ -68,15 +67,21 @@ class AnalyticsPageTabsAndChildren extends StatelessWidget {
|
|||||||
context.read<AnalyticsDatePickerBloc>().add(
|
context.read<AnalyticsDatePickerBloc>().add(
|
||||||
UpdateAnalyticsDatePickerEvent(montlyDate: value),
|
UpdateAnalyticsDatePickerEvent(montlyDate: value),
|
||||||
);
|
);
|
||||||
FetchEnergyManagementDataHelper.loadEnergyManagementData(
|
|
||||||
context,
|
final spaceTreeState =
|
||||||
selectedDate: value,
|
context.read<SpaceTreeBloc>().state;
|
||||||
communityId:
|
if (spaceTreeState.selectedSpaces.isNotEmpty) {
|
||||||
spaceTreeState.selectedCommunities.firstOrNull ??
|
FetchEnergyManagementDataHelper
|
||||||
'',
|
.loadEnergyManagementData(
|
||||||
spaceId:
|
context,
|
||||||
spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
selectedDate: value,
|
||||||
);
|
communityId:
|
||||||
|
spaceTreeState.selectedCommunities.firstOrNull ??
|
||||||
|
'',
|
||||||
|
spaceId:
|
||||||
|
spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
||||||
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
selectedDate: context
|
selectedDate: context
|
||||||
.watch<AnalyticsDatePickerBloc>()
|
.watch<AnalyticsDatePickerBloc>()
|
||||||
|
@ -28,25 +28,13 @@ abstract final class FetchOccupancyDataHelper {
|
|||||||
loadAnalyticsDevices(context, communityUuid: communityId, spaceUuid: spaceId);
|
loadAnalyticsDevices(context, communityUuid: communityId, spaceUuid: spaceId);
|
||||||
final selectedDevice = context.read<AnalyticsDevicesBloc>().state.selectedDevice;
|
final selectedDevice = context.read<AnalyticsDevicesBloc>().state.selectedDevice;
|
||||||
|
|
||||||
context.read<OccupancyBloc>().add(
|
loadOccupancyChartData(
|
||||||
LoadOccupancyEvent(
|
context,
|
||||||
GetOccupancyParam(
|
communityUuid: communityId,
|
||||||
monthDate:
|
spaceUuid: spaceId,
|
||||||
'${datePickerState.monthlyDate.year}-${datePickerState.monthlyDate.month}',
|
date: datePickerState.monthlyDate,
|
||||||
spaceUuid: spaceId,
|
);
|
||||||
communityUuid: communityId,
|
loadHeatMapData(context, spaceUuid: spaceId, year: datePickerState.yearlyDate);
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
context.read<OccupancyHeatMapBloc>().add(
|
|
||||||
LoadOccupancyHeatMapEvent(
|
|
||||||
GetOccupancyHeatMapParam(
|
|
||||||
spaceUuid: spaceId,
|
|
||||||
year: datePickerState.yearlyDate,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
if (selectedDevice case final AnalyticsDevice device) {
|
if (selectedDevice case final AnalyticsDevice device) {
|
||||||
context.read<RealtimeDeviceChangesBloc>()
|
context.read<RealtimeDeviceChangesBloc>()
|
||||||
@ -57,6 +45,35 @@ abstract final class FetchOccupancyDataHelper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void loadHeatMapData(
|
||||||
|
BuildContext context, {
|
||||||
|
required String spaceUuid,
|
||||||
|
required DateTime year,
|
||||||
|
}) {
|
||||||
|
context.read<OccupancyHeatMapBloc>().add(
|
||||||
|
LoadOccupancyHeatMapEvent(
|
||||||
|
GetOccupancyHeatMapParam(spaceUuid: spaceUuid, year: year),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void loadOccupancyChartData(
|
||||||
|
BuildContext context, {
|
||||||
|
required String communityUuid,
|
||||||
|
required String spaceUuid,
|
||||||
|
required DateTime date,
|
||||||
|
}) {
|
||||||
|
context.read<OccupancyBloc>().add(
|
||||||
|
LoadOccupancyEvent(
|
||||||
|
GetOccupancyParam(
|
||||||
|
monthDate: '${date.year}-${date.month}',
|
||||||
|
spaceUuid: spaceUuid,
|
||||||
|
communityUuid: communityUuid,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
static void loadAnalyticsDevices(
|
static void loadAnalyticsDevices(
|
||||||
BuildContext context, {
|
BuildContext context, {
|
||||||
required String communityUuid,
|
required String communityUuid,
|
||||||
|
@ -47,11 +47,17 @@ class OccupancyChartBox extends StatelessWidget {
|
|||||||
context.read<AnalyticsDatePickerBloc>().add(
|
context.read<AnalyticsDatePickerBloc>().add(
|
||||||
UpdateAnalyticsDatePickerEvent(montlyDate: value),
|
UpdateAnalyticsDatePickerEvent(montlyDate: value),
|
||||||
);
|
);
|
||||||
FetchOccupancyDataHelper.loadOccupancyData(
|
if (spaceTreeState.selectedSpaces.isNotEmpty) {
|
||||||
context,
|
FetchOccupancyDataHelper.loadOccupancyChartData(
|
||||||
communityId: spaceTreeState.selectedCommunities.firstOrNull ?? '',
|
context,
|
||||||
spaceId: spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
communityUuid:
|
||||||
);
|
spaceTreeState.selectedCommunities.firstOrNull ??
|
||||||
|
'',
|
||||||
|
spaceUuid:
|
||||||
|
spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
||||||
|
date: value,
|
||||||
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
selectedDate: context
|
selectedDate: context
|
||||||
.watch<AnalyticsDatePickerBloc>()
|
.watch<AnalyticsDatePickerBloc>()
|
||||||
|
@ -47,12 +47,14 @@ class OccupancyHeatMapBox extends StatelessWidget {
|
|||||||
context.read<AnalyticsDatePickerBloc>().add(
|
context.read<AnalyticsDatePickerBloc>().add(
|
||||||
UpdateAnalyticsDatePickerEvent(yearlyDate: value),
|
UpdateAnalyticsDatePickerEvent(yearlyDate: value),
|
||||||
);
|
);
|
||||||
FetchOccupancyDataHelper.loadOccupancyData(
|
if (spaceTreeState.selectedSpaces.isNotEmpty) {
|
||||||
context,
|
FetchOccupancyDataHelper.loadHeatMapData(
|
||||||
communityId:
|
context,
|
||||||
spaceTreeState.selectedCommunities.firstOrNull ?? '',
|
spaceUuid:
|
||||||
spaceId: spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
spaceTreeState.selectedSpaces.firstOrNull ?? '',
|
||||||
);
|
year: value,
|
||||||
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
datePickerType: DatePickerType.year,
|
datePickerType: DatePickerType.year,
|
||||||
selectedDate: context
|
selectedDate: context
|
||||||
|
@ -39,7 +39,6 @@ class RemoteOccupancyAnalyticsDevicesService implements AnalyticsDevicesService
|
|||||||
path:
|
path:
|
||||||
'/projects/$projectUuid/communities/${param.communityUuid}/spaces/${param.spaceUuid}/devices',
|
'/projects/$projectUuid/communities/${param.communityUuid}/spaces/${param.spaceUuid}/devices',
|
||||||
queryParameters: {
|
queryParameters: {
|
||||||
'requestType': param.requestType.name,
|
|
||||||
'communityUuid': param.communityUuid,
|
'communityUuid': param.communityUuid,
|
||||||
'spaceUuid': param.spaceUuid,
|
'spaceUuid': param.spaceUuid,
|
||||||
'productType': param.deviceTypes.first,
|
'productType': param.deviceTypes.first,
|
||||||
|
Reference in New Issue
Block a user