formatted all files.

This commit is contained in:
Faris Armoush
2025-06-12 15:33:32 +03:00
parent 29959f567e
commit 04250ebc98
474 changed files with 5425 additions and 4338 deletions

View File

@ -37,7 +37,8 @@ class CeilingSensorBloc extends Bloc<CeilingSensorEvent, CeilingSensorState> {
) async {
emit(CeilingLoadingInitialState());
try {
final response = await DevicesManagementApi().getDeviceStatus(event.deviceId);
final response =
await DevicesManagementApi().getDeviceStatus(event.deviceId);
deviceStatus = CeilingSensorModel.fromJson(response.status);
emit(CeilingUpdateState(ceilingSensorModel: deviceStatus));
_listenToChanges(event.deviceId);
@ -54,11 +55,12 @@ class CeilingSensorBloc extends Bloc<CeilingSensorEvent, CeilingSensorState> {
stream.listen((DatabaseEvent event) {
if (event.snapshot.value == null) return;
final usersMap = event.snapshot.value as Map<dynamic, dynamic>;
final usersMap = event.snapshot.value! as Map<dynamic, dynamic>;
final statusList = <Status>[];
usersMap['status'].forEach((element) {
statusList.add(Status(code: element['code'], value: element['value']));
statusList
.add(Status(code: element['code'], value: element['value']));
});
deviceStatus = CeilingSensorModel.fromJson(statusList);
@ -178,7 +180,8 @@ class CeilingSensorBloc extends Bloc<CeilingSensorEvent, CeilingSensorState> {
) async {
emit(CeilingLoadingInitialState());
try {
final response = await DevicesManagementApi().getBatchStatus(event.devicesIds);
final response =
await DevicesManagementApi().getBatchStatus(event.devicesIds);
deviceStatus = CeilingSensorModel.fromJson(response.status);
emit(CeilingUpdateState(ceilingSensorModel: deviceStatus));
} catch (e) {

View File

@ -85,8 +85,6 @@ class CeilingFactoryResetEvent extends CeilingSensorEvent {
List<Object> get props => [devicesId, factoryResetModel];
}
class StatusUpdated extends CeilingSensorEvent {
final CeilingSensorModel deviceStatus;
const StatusUpdated(this.deviceStatus);

View File

@ -26,48 +26,53 @@ class CeilingSensorModel {
});
factory CeilingSensorModel.fromJson(List<Status> jsonList) {
late String _presenceState = 'none';
late int _sensitivity = 1;
late String _checkingResult = '';
int _presenceRange = 1;
int _sportsPara = 1;
String _bodyMovement = 'none';
String _noBodyTime = 'none';
int _maxDis = 0;
SpaceTypes _spaceType = SpaceTypes.none;
late var presenceState = 'none';
late var sensitivity = 1;
late var checkingResult = '';
var presenceRange = 1;
var sportsPara = 1;
var bodyMovement = 'none';
var noBodyTime = 'none';
var maxDis = 0;
var spaceType = SpaceTypes.none;
try {
for (var status in jsonList) {
for (final status in jsonList) {
switch (status.code) {
case 'presence_state':
_presenceState = status.value ?? 'none';
presenceState = status.value ?? 'none';
break;
case 'scene':
_spaceType = getSpaceType(status.value ?? 'none');
spaceType = getSpaceType(status.value ?? 'none');
break;
case 'sensitivity':
_sensitivity =
status.value is int ? status.value : int.tryParse(status.value ?? '1') ?? 1;
sensitivity = status.value is int
? status.value
: int.tryParse(status.value ?? '1') ?? 1;
break;
case 'checking_result':
_checkingResult = status.value ?? '';
checkingResult = status.value ?? '';
break;
case 'presence_range':
_presenceRange =
status.value is int ? status.value : int.tryParse(status.value ?? '0') ?? 0;
presenceRange = status.value is int
? status.value
: int.tryParse(status.value ?? '0') ?? 0;
break;
case 'sports_para':
_sportsPara =
status.value is int ? status.value : int.tryParse(status.value ?? '0') ?? 0;
sportsPara = status.value is int
? status.value
: int.tryParse(status.value ?? '0') ?? 0;
break;
case 'body_movement':
_bodyMovement = status.value ?? '';
bodyMovement = status.value ?? '';
break;
case 'nobody_time':
_noBodyTime = status.value ?? 'none';
noBodyTime = status.value ?? 'none';
break;
case 'moving_max_dis':
_maxDis = status.value is int ? status.value : int.tryParse(status.value ?? '0') ?? 0;
maxDis = status.value is int
? status.value
: int.tryParse(status.value ?? '0') ?? 0;
break;
}
}
@ -76,15 +81,15 @@ class CeilingSensorModel {
}
return CeilingSensorModel(
presenceState: _presenceState,
sensitivity: _sensitivity,
checkingResult: _checkingResult,
presenceRange: _presenceRange,
sportsPara: _sportsPara,
bodyMovement: _bodyMovement,
noBodyTime: _noBodyTime,
maxDistance: _maxDis,
spaceType: _spaceType,
presenceState: presenceState,
sensitivity: sensitivity,
checkingResult: checkingResult,
presenceRange: presenceRange,
sportsPara: sportsPara,
bodyMovement: bodyMovement,
noBodyTime: noBodyTime,
maxDistance: maxDis,
spaceType: spaceType,
);
}

View File

@ -12,7 +12,8 @@ import 'package:syncrow_web/pages/device_managment/shared/sensors_widgets/presen
import 'package:syncrow_web/pages/device_managment/shared/sensors_widgets/presense_nobody_time.dart';
import 'package:syncrow_web/utils/helpers/responsice_layout_helper/responsive_layout_helper.dart';
class CeilingSensorBatchControlView extends StatelessWidget with HelperResponsiveLayout {
class CeilingSensorBatchControlView extends StatelessWidget
with HelperResponsiveLayout {
const CeilingSensorBatchControlView({super.key, required this.devicesIds});
final List<String> devicesIds;
@ -28,11 +29,12 @@ class CeilingSensorBatchControlView extends StatelessWidget with HelperResponsiv
)..add(CeilingFetchDeviceStatusEvent(devicesIds)),
child: BlocBuilder<CeilingSensorBloc, CeilingSensorState>(
builder: (context, state) {
if (state is CeilingLoadingInitialState || state is CeilingReportsLoadingState) {
if (state is CeilingLoadingInitialState ||
state is CeilingReportsLoadingState) {
return const Center(child: CircularProgressIndicator());
} else if (state is CeilingUpdateState) {
return _buildGridView(
context, state.ceilingSensorModel, isExtraLarge, isLarge, isMedium);
return _buildGridView(context, state.ceilingSensorModel,
isExtraLarge, isLarge, isMedium);
}
return const Center(child: Text('Error fetching status'));
},
@ -40,8 +42,8 @@ class CeilingSensorBatchControlView extends StatelessWidget with HelperResponsiv
);
}
Widget _buildGridView(BuildContext context, CeilingSensorModel model, bool isExtraLarge,
bool isLarge, bool isMedium) {
Widget _buildGridView(BuildContext context, CeilingSensorModel model,
bool isExtraLarge, bool isLarge, bool isMedium) {
return GridView(
padding: const EdgeInsets.symmetric(horizontal: 50),
shrinkWrap: true,
@ -116,7 +118,8 @@ class CeilingSensorBatchControlView extends StatelessWidget with HelperResponsiv
context.read<CeilingSensorBloc>().add(
CeilingFactoryResetEvent(
devicesId: devicesIds.first,
factoryResetModel: FactoryResetModel(devicesUuid: devicesIds),
factoryResetModel:
FactoryResetModel(devicesUuid: devicesIds),
),
);
},