mirror of
https://github.com/SyncrowIOT/syncrow-app.git
synced 2026-10-23 08:07:56 +00:00
curtain changes
This commit is contained in:
@@ -1,9 +1,7 @@
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:syncrow_app/features/devices/bloc/curtain_bloc/curtain_event.dart';
|
||||
import 'package:syncrow_app/features/devices/bloc/curtain_bloc/curtain_state.dart';
|
||||
import 'package:syncrow_app/features/devices/model/device_control_model.dart';
|
||||
import 'package:syncrow_app/features/devices/model/function_model.dart';
|
||||
import 'package:syncrow_app/features/devices/model/status_model.dart';
|
||||
import 'package:syncrow_app/services/api/devices_api.dart';
|
||||
import 'package:syncrow_app/utils/resource_manager/constants.dart';
|
||||
@@ -29,7 +27,7 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
Future<void> _onOpenCurtain(
|
||||
OpenCurtain event,
|
||||
Emitter<CurtainState> emit) async {
|
||||
if (state is CurtainsOpening) return;
|
||||
// if (state is CurtainsOpening) return;
|
||||
isMoving = true;
|
||||
while (openPercentage < 100.0) {
|
||||
if (state is CurtainsClosing) {
|
||||
@@ -51,7 +49,7 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
_pauseCurtain(emit);
|
||||
}
|
||||
});
|
||||
if (openPercentage == 100.0) {
|
||||
if (openPercentage >=100.0) {
|
||||
await DevicesAPI.controlDevice(
|
||||
DeviceControlModel(
|
||||
deviceId: curtainId,
|
||||
@@ -78,7 +76,6 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
|
||||
Future<void> _onCloseCurtain(
|
||||
CloseCurtain event, Emitter<CurtainState> emit) async {
|
||||
if (state is CurtainsClosing) return;
|
||||
isMoving = true;
|
||||
while (openPercentage > 0.0) {
|
||||
if (state is CurtainsOpening) {
|
||||
@@ -100,7 +97,6 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
_pauseCurtain(emit);
|
||||
}
|
||||
});
|
||||
|
||||
if (openPercentage == 0.0) {
|
||||
await DevicesAPI.controlDevice(
|
||||
DeviceControlModel(
|
||||
@@ -157,25 +153,8 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
}
|
||||
|
||||
|
||||
// void _fetchStatus(InitCurtain event, Emitter<CurtainState> emit) async {
|
||||
// try {
|
||||
// var response = await DevicesAPI.getDeviceStatus(curtainId);
|
||||
// List<StatusModel> statusModelList = [];
|
||||
// for (var status in response['status']) {
|
||||
// print(status);
|
||||
// statusModelList.add(StatusModel.fromJson(status));
|
||||
// }
|
||||
// openPercentage = double.tryParse(statusModelList[1].value.toString())!;
|
||||
// emit(CurtainsOpening(
|
||||
// curtainWidth: curtainWidth ,
|
||||
// blindHeight: blindHeight,
|
||||
// openPercentage: openPercentage,
|
||||
// ));
|
||||
// } catch (e) {
|
||||
// emit(FailedState());
|
||||
// return;
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
void _fetchStatus(InitCurtain event, Emitter<CurtainState> emit) async {
|
||||
try {
|
||||
emit(CurtainLoadingState());
|
||||
@@ -193,10 +172,6 @@ class CurtainBloc extends Bloc<CurtainEvent, CurtainState> {
|
||||
curtainWidth = 270 - (openPercentage / 100) * curtainOpeningSpace;
|
||||
blindHeight = 310 - (openPercentage / 100) * blindOpeningSpace;
|
||||
}
|
||||
print('openPercentage fetched: $openPercentage');
|
||||
print('Calculated curtainWidth: $curtainWidth');
|
||||
print('Calculated blindHeight: $blindHeight');
|
||||
// Emit the updated state with calculated values
|
||||
emit(CurtainsOpening(
|
||||
curtainWidth: curtainWidth,
|
||||
blindHeight: blindHeight,
|
||||
|
||||
Reference in New Issue
Block a user