mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-10 15:17:31 +00:00
add events and states and models
This commit is contained in:
@ -0,0 +1,19 @@
|
|||||||
|
part of 'curtain_module_batch_bloc.dart';
|
||||||
|
|
||||||
|
sealed class CurtainModuleBatchEvent extends Equatable {
|
||||||
|
const CurtainModuleBatchEvent();
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [];
|
||||||
|
}
|
||||||
|
|
||||||
|
class CutrainModuleFetchBatchStatusEvent extends CurtainModuleBatchEvent {
|
||||||
|
final List<String> devicesIds;
|
||||||
|
|
||||||
|
const CutrainModuleFetchBatchStatusEvent({
|
||||||
|
required this.devicesIds,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [devicesIds];
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
part of 'curtain_module_batch_bloc.dart';
|
||||||
|
|
||||||
|
sealed class CurtainModuleBatchState extends Equatable {
|
||||||
|
const CurtainModuleBatchState();
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [];
|
||||||
|
}
|
||||||
|
|
||||||
|
final class CurtainModuleBatchInitial extends CurtainModuleBatchState {}
|
||||||
|
|
||||||
|
final class CurtainModuleBatchLoadingState extends CurtainModuleBatchState {}
|
||||||
|
|
||||||
|
final class CurtainModuleBatchLoadedState extends CurtainModuleBatchState {
|
||||||
|
final CurtainModuleStatusModel curtainModuleStatusModel;
|
||||||
|
const CurtainModuleBatchLoadedState({
|
||||||
|
required this.curtainModuleStatusModel,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
final class CurtainModuleBatchFailedState extends CurtainModuleBatchState {
|
||||||
|
final String error;
|
||||||
|
|
||||||
|
const CurtainModuleBatchFailedState({required this.error});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [error];
|
||||||
|
}
|
@ -0,0 +1,132 @@
|
|||||||
|
part of 'curtain_module_bloc.dart';
|
||||||
|
|
||||||
|
sealed class CurtainModuleEvent extends Equatable {
|
||||||
|
const CurtainModuleEvent();
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [];
|
||||||
|
}
|
||||||
|
|
||||||
|
class FetchCurtainModuleStatusEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
const FetchCurtainModuleStatusEvent({required this.deviceId});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId];
|
||||||
|
}
|
||||||
|
|
||||||
|
class SendCurtainPercentToApiEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final Status status;
|
||||||
|
|
||||||
|
const SendCurtainPercentToApiEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.status,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, status];
|
||||||
|
}
|
||||||
|
|
||||||
|
class OpenCurtainEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
|
||||||
|
const OpenCurtainEvent({required this.deviceId});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId];
|
||||||
|
}
|
||||||
|
|
||||||
|
class CloseCurtainEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
|
||||||
|
const CloseCurtainEvent({required this.deviceId});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId];
|
||||||
|
}
|
||||||
|
|
||||||
|
class StopCurtainEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
|
||||||
|
const StopCurtainEvent({required this.deviceId});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId];
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangeTimerControlEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final int timControl;
|
||||||
|
|
||||||
|
const ChangeTimerControlEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.timControl,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, timControl];
|
||||||
|
}
|
||||||
|
|
||||||
|
class CurCalibrationEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
|
||||||
|
const CurCalibrationEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId];
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangeElecMachineryModeEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final String elecMachineryMode;
|
||||||
|
|
||||||
|
const ChangeElecMachineryModeEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.elecMachineryMode,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, elecMachineryMode];
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangeControlBackEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final String controlBack;
|
||||||
|
|
||||||
|
const ChangeControlBackEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.controlBack,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, controlBack];
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangeControlBackModeEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final String controlBackMode;
|
||||||
|
|
||||||
|
const ChangeControlBackModeEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.controlBackMode,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, controlBackMode];
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangeCurtainModuleStatusEvent extends CurtainModuleEvent {
|
||||||
|
final String deviceId;
|
||||||
|
final CurtainModuleStatusModel status;
|
||||||
|
|
||||||
|
const ChangeCurtainModuleStatusEvent({
|
||||||
|
required this.deviceId,
|
||||||
|
required this.status,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [deviceId, status];
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
part of 'curtain_module_bloc.dart';
|
||||||
|
|
||||||
|
sealed class CurtainModuleState extends Equatable {
|
||||||
|
const CurtainModuleState();
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [];
|
||||||
|
}
|
||||||
|
|
||||||
|
class CurtainModuleInitial extends CurtainModuleState {}
|
||||||
|
|
||||||
|
class CurtainModuleLoading extends CurtainModuleState {}
|
||||||
|
|
||||||
|
class CurtainModuleError extends CurtainModuleState {
|
||||||
|
final String message;
|
||||||
|
const CurtainModuleError({required this.message});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [message];
|
||||||
|
}
|
||||||
|
|
||||||
|
class CurtainModuleStatusLoaded extends CurtainModuleState {
|
||||||
|
final CurtainModuleStatusModel curtainModuleStatus;
|
||||||
|
|
||||||
|
const CurtainModuleStatusLoaded({required this.curtainModuleStatus});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [curtainModuleStatus];
|
||||||
|
}
|
||||||
|
class CurtainModuleStatusUpdated extends CurtainModuleState {
|
||||||
|
final CurtainModuleStatusModel curtainModuleStatus;
|
||||||
|
|
||||||
|
const CurtainModuleStatusUpdated({required this.curtainModuleStatus});
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [curtainModuleStatus];
|
||||||
|
}
|
@ -0,0 +1,53 @@
|
|||||||
|
|
||||||
|
enum CurtainModuleControl {
|
||||||
|
open,
|
||||||
|
close,
|
||||||
|
stop,
|
||||||
|
}
|
||||||
|
|
||||||
|
// enum CurtainControlBackMode {
|
||||||
|
// foward,
|
||||||
|
// backward,
|
||||||
|
// }
|
||||||
|
|
||||||
|
class CurtainModuleStatusModel {
|
||||||
|
CurtainModuleControl control;
|
||||||
|
int percentControl;
|
||||||
|
String curCalibration;
|
||||||
|
// CurtainControlBackMode controlBackmode;
|
||||||
|
int trTimeControl;
|
||||||
|
String elecMachineryMode;
|
||||||
|
String controlBack;
|
||||||
|
CurtainModuleStatusModel({
|
||||||
|
required this.control,
|
||||||
|
required this.percentControl,
|
||||||
|
required this.curCalibration,
|
||||||
|
// required this.controlBackmode,
|
||||||
|
required this.trTimeControl,
|
||||||
|
required this.controlBack,
|
||||||
|
required this.elecMachineryMode,
|
||||||
|
});
|
||||||
|
factory CurtainModuleStatusModel.zero() => CurtainModuleStatusModel(
|
||||||
|
control: CurtainModuleControl.stop,
|
||||||
|
percentControl: 0,
|
||||||
|
// controlBackmode: CurtainControlBackMode.foward,
|
||||||
|
curCalibration: '',
|
||||||
|
trTimeControl: 0,
|
||||||
|
controlBack: '',
|
||||||
|
elecMachineryMode: '',
|
||||||
|
);
|
||||||
|
|
||||||
|
factory CurtainModuleStatusModel.fromJson(Map<String, dynamic> json) {
|
||||||
|
return CurtainModuleStatusModel(
|
||||||
|
control: CurtainModuleControl.values.firstWhere(
|
||||||
|
(e) => e.toString() == json['control'] as String,
|
||||||
|
orElse: () => CurtainModuleControl.stop,
|
||||||
|
),
|
||||||
|
percentControl: json['percent_control'] as int? ?? 0,
|
||||||
|
curCalibration: json['cur_calibration'] as String? ?? '',
|
||||||
|
trTimeControl: json['tr_timecon'] as int? ?? 0,
|
||||||
|
elecMachineryMode: json['elec_machinery_mode'] as String? ?? '',
|
||||||
|
controlBack: json['control_back'] as String? ?? '',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user