flutter-freaccess-hub/lib/shared/components/molecules/modules/domain/entities/module.dart

59 lines
1.1 KiB
Dart

import 'package:hub/shared/components/molecules/modules/data/models/module_model.dart';
enum ModuleStatus { active, inactive, disabled }
extension ModuleStatusExtension on ModuleStatus {
String get key {
switch (this) {
case ModuleStatus.active:
return 'VISIVEL';
case ModuleStatus.inactive:
return 'INVISIVEL';
case ModuleStatus.disabled:
return 'DESABILITADO';
}
}
}
class Module {
final String key;
final String display;
final String expirationDate;
final String startDate;
final int quantity;
Module({
required this.key,
required this.display,
required this.expirationDate,
required this.startDate,
required this.quantity,
});
factory Module.fromModel(ModuleModel model) {
return Module(
key: model.key,
display: model.display,
expirationDate: model.expirationDate,
startDate: model.startDate,
quantity: model.quantity,
);
}
ModuleModel toModel() {
return ModuleModel(
key: key,
display: display,
expirationDate: expirationDate,
startDate: startDate,
quantity: quantity,
);
}
}