push put api

This commit is contained in:
ashrafzarkanisala
2024-07-01 01:57:13 +03:00
parent cc6b754845
commit c01d9034fd
16 changed files with 883 additions and 176 deletions
@@ -31,10 +31,12 @@ class CreateSceneBloc extends Bloc<CreateSceneEvent, CreateSceneState>
FutureOr<void> _onAddSceneTask(
AddTaskEvent event, Emitter<CreateSceneState> emit) {
tasksList = List<SceneStaticFunction>.from(tempTasksList);
emit(AddSceneTask(tasksList: tasksList));
final copyList = List<SceneStaticFunction>.from(tempTasksList);
tasksList.addAll(copyList);
tempTasksList.clear();
selectedValues.clear();
emit(TempHoldSceneTask(tempTasksList: tempTasksList));
emit(AddSceneTask(tasksList: tasksList));
}
FutureOr<void> _onTempHoldSceneTask(
@@ -122,7 +124,9 @@ class CreateSceneBloc extends Bloc<CreateSceneEvent, CreateSceneState>
CreateSceneWithTasksEvent event, Emitter<CreateSceneState> emit) async {
emit(CreateSceneLoading());
try {
final response = await SceneApi.createScene(event.createSceneModel);
final response = event.updateScene
? await SceneApi.updateScene(event.createSceneModel, event.sceneId)
: await SceneApi.createScene(event.createSceneModel);
if (response['success'] == true) {
tasksList.clear();
tempTasksList.clear();
@@ -131,7 +135,7 @@ class CreateSceneBloc extends Bloc<CreateSceneEvent, CreateSceneState>
emit(const CreateSceneError(message: 'Something went wrong'));
}
} catch (e) {
emit(CreateSceneError(message: e.toString()));
emit(const CreateSceneError(message: 'Something went wrong'));
emit(AddSceneTask(tasksList: tasksList));
}
}
@@ -149,14 +153,16 @@ class CreateSceneBloc extends Bloc<CreateSceneEvent, CreateSceneState>
try {
final response = await SceneApi.getSceneDetails(event.sceneId);
if (response.id.isNotEmpty) {
tasksList = List.from(getTaskListFunctionsFromApi(
tasksList = List<SceneStaticFunction>.from(getTaskListFunctionsFromApi(
actions: response.actions, deviceId: response.id));
emit(AddSceneTask(tasksList: tasksList));
emit(AddSceneTask(
tasksList: tasksList,
));
} else {
emit(const CreateSceneError(message: 'Something went wrong'));
}
} catch (e) {
emit(CreateSceneError(message: e.toString()));
emit(const CreateSceneError(message: 'Something went wrong'));
}
}
@@ -8,6 +8,8 @@ sealed class CreateSceneEvent extends Equatable {
}
class AddTaskEvent extends CreateSceneEvent {
final bool updateTaskListFromTemp;
const AddTaskEvent({required this.updateTaskListFromTemp});
@override
List<Object> get props => [];
}
@@ -80,7 +82,13 @@ class RemoveFromSelectedValueById extends CreateSceneEvent {
class CreateSceneWithTasksEvent extends CreateSceneEvent {
final CreateSceneModel createSceneModel;
const CreateSceneWithTasksEvent({required this.createSceneModel});
final bool updateScene;
final String sceneId;
const CreateSceneWithTasksEvent({
required this.createSceneModel,
required this.updateScene,
required this.sceneId,
});
@override
List<Object> get props => [createSceneModel];
@@ -21,7 +21,7 @@ class SceneBloc extends Bloc<SceneEvent, SceneState> {
final scenes = await SceneApi.getScenesByUnitId(event.unitId);
emit(SceneLoaded(scenes));
} catch (e) {
emit(SceneError(message: e.toString()));
emit(const SceneError(message: 'Something went wrong'));
}
}
@@ -40,7 +40,7 @@ class SceneBloc extends Bloc<SceneEvent, SceneState> {
emit(const SceneError(message: 'Something went wrong'));
}
} catch (e) {
emit(SceneError(message: e.toString()));
emit(const SceneError(message: 'Something went wrong'));
}
}
}