adding fucntions and values to routine bloc

This commit is contained in:
ashrafzarkanisala
2024-11-22 16:55:30 +03:00
parent 4441878bdd
commit 1d6673b5b0
10 changed files with 1094 additions and 750 deletions

View File

@ -15,3 +15,47 @@ abstract class DeviceFunction<T> {
T execute(T currentStatus, dynamic newValue);
}
class DeviceFunctionData {
final String entityId;
final String actionExecutor;
final String function;
final String operationName;
final dynamic value;
final String? condition;
final String? valueDescription;
DeviceFunctionData({
required this.entityId,
this.actionExecutor = 'function',
required this.function,
required this.operationName,
required this.value,
this.condition,
this.valueDescription,
});
Map<String, dynamic> toJson() {
return {
'entityId': entityId,
'actionExecutor': actionExecutor,
'function': function,
'operationName': operationName,
'value': value,
if (condition != null) 'condition': condition,
if (valueDescription != null) 'valueDescription': valueDescription,
};
}
factory DeviceFunctionData.fromJson(Map<String, dynamic> json) {
return DeviceFunctionData(
entityId: json['entityId'],
actionExecutor: json['actionExecutor'] ?? 'function',
function: json['function'],
operationName: json['operationName'],
value: json['value'],
condition: json['condition'],
valueDescription: json['valueDescription'],
);
}
}