mirror of
https://github.com/SyncrowIOT/syncrow-app.git
synced 2026-10-25 22:07:55 +00:00
fixed space
This commit is contained in:
@@ -27,7 +27,7 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
if (HomeCubit.getInstance().selectedSpace != null &&
|
||||
HomeCubit.getInstance().spaces!.isNotEmpty) {
|
||||
// fetchGroups(HomeCubit.getInstance().selectedSpace!.id!);
|
||||
for (var room in HomeCubit.getInstance().selectedSpace!.rooms!) {
|
||||
for (var room in HomeCubit.getInstance().selectedSpace!.subspaces!) {
|
||||
fetchDevicesByRoomId(room.id!);
|
||||
}
|
||||
fetchGroups(HomeCubit.getInstance().selectedSpace?.id ?? '');
|
||||
@@ -104,8 +104,8 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
List<DeviceModel> get allDevices {
|
||||
List<DeviceModel> devices = [];
|
||||
if (HomeCubit.getInstance().selectedSpace != null &&
|
||||
HomeCubit.getInstance().selectedSpace!.rooms != null) {
|
||||
for (var room in HomeCubit.getInstance().selectedSpace!.rooms!) {
|
||||
HomeCubit.getInstance().selectedSpace!.subspaces != null) {
|
||||
for (var room in HomeCubit.getInstance().selectedSpace!.subspaces!) {
|
||||
if (room.devices != null) {
|
||||
devices.addAll(room.devices!);
|
||||
}
|
||||
@@ -275,7 +275,7 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
deviceId,
|
||||
HomeCubit.getInstance()
|
||||
.selectedSpace!
|
||||
.rooms!
|
||||
.subspaces!
|
||||
.indexOf(HomeCubit.getInstance().selectedRoom!),
|
||||
code: control.code);
|
||||
});
|
||||
@@ -308,15 +308,15 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
|
||||
emitSafe(GetDevicesLoading());
|
||||
int roomIndex =
|
||||
HomeCubit.getInstance().selectedSpace!.rooms!.indexWhere((element) => element.id == roomId);
|
||||
HomeCubit.getInstance().selectedSpace!.subspaces!.indexWhere((element) => element.id == roomId);
|
||||
try {
|
||||
HomeCubit.getInstance().selectedSpace!.rooms![roomIndex].devices =
|
||||
HomeCubit.getInstance().selectedSpace!.subspaces![roomIndex].devices =
|
||||
await DevicesAPI.getDevicesByRoomId(roomId);
|
||||
} catch (e) {
|
||||
emitSafe(GetDevicesError(e.toString()));
|
||||
return;
|
||||
}
|
||||
final devices = HomeCubit.getInstance().selectedSpace!.rooms![roomIndex].devices;
|
||||
final devices = HomeCubit.getInstance().selectedSpace!.subspaces![roomIndex].devices;
|
||||
emitSafe(GetDevicesSuccess(devices));
|
||||
|
||||
//get status for each device
|
||||
@@ -333,7 +333,7 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
emitSafe(GetDeviceStatusLoading(code: code));
|
||||
int deviceIndex = HomeCubit.getInstance()
|
||||
.selectedSpace!
|
||||
.rooms![roomIndex]
|
||||
.subspaces![roomIndex]
|
||||
.devices!
|
||||
.indexWhere((element) => element.uuid == deviceUuid);
|
||||
List<StatusModel> statuses = [];
|
||||
@@ -346,7 +346,7 @@ class DevicesCubit extends Cubit<DevicesState> {
|
||||
emitSafe(GetDeviceStatusError(e.toString()));
|
||||
return;
|
||||
}
|
||||
HomeCubit.getInstance().selectedSpace!.rooms![roomIndex].devices![deviceIndex].status =
|
||||
HomeCubit.getInstance().selectedSpace!.subspaces![roomIndex].devices![deviceIndex].status =
|
||||
statuses;
|
||||
emitSafe(GetDeviceStatusSuccess(code: code));
|
||||
}
|
||||
|
||||
@@ -78,8 +78,8 @@ class DevicesViewBody extends StatelessWidget {
|
||||
groupsList: DevicesCubit.getInstance().allCategories ?? [],
|
||||
),
|
||||
if (HomeCubit.getInstance().selectedSpace != null)
|
||||
if (HomeCubit.getInstance().selectedSpace!.rooms != null)
|
||||
...HomeCubit.getInstance().selectedSpace!.rooms!.map((room) {
|
||||
if (HomeCubit.getInstance().selectedSpace!.subspaces != null)
|
||||
...HomeCubit.getInstance().selectedSpace!.subspaces!.map((room) {
|
||||
return RoomPage(
|
||||
room: room,
|
||||
);
|
||||
@@ -95,7 +95,7 @@ class DevicesViewBody extends StatelessWidget {
|
||||
),
|
||||
child: SmoothPageIndicator(
|
||||
controller: HomeCubit.getInstance().devicesPageController,
|
||||
count: HomeCubit.getInstance().selectedSpace!.rooms!.length + 1,
|
||||
count: HomeCubit.getInstance().selectedSpace!.subspaces!.length + 1,
|
||||
effect: const WormEffect(
|
||||
paintStyle: PaintingStyle.stroke,
|
||||
dotHeight: 8,
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:syncrow_app/features/devices/model/room_model.dart';
|
||||
import 'package:syncrow_app/features/devices/model/subspace_model.dart';
|
||||
import 'package:syncrow_app/features/devices/view/widgets/room_page_switch.dart';
|
||||
|
||||
class RoomPage extends StatelessWidget {
|
||||
const RoomPage({super.key, required this.room});
|
||||
|
||||
final RoomModel room;
|
||||
final SubSpaceModel room;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
||||
@@ -40,12 +40,12 @@ class RoomsSlider extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
if (HomeCubit.getInstance().selectedSpace != null)
|
||||
if (HomeCubit.getInstance().selectedSpace!.rooms != null)
|
||||
...HomeCubit.getInstance().selectedSpace!.rooms!.map(
|
||||
if (HomeCubit.getInstance().selectedSpace!.subspaces != null)
|
||||
...HomeCubit.getInstance().selectedSpace!.subspaces!.map(
|
||||
(room) => InkWell(
|
||||
onTap: () {
|
||||
HomeCubit.getInstance().roomSliderPageChanged(
|
||||
HomeCubit.getInstance().selectedSpace!.rooms!.indexOf(room));
|
||||
HomeCubit.getInstance().selectedSpace!.subspaces!.indexOf(room));
|
||||
},
|
||||
child: TitleMedium(
|
||||
text: room.name!,
|
||||
|
||||
Reference in New Issue
Block a user