mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-10 07:07:19 +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