feat: enhance experience management by introducing ExperienceSkill and Industry enums, refactoring related components

This commit is contained in:
Achintha Isuru
2026-01-27 14:34:09 -05:00
parent 16bac72a4e
commit 93779c21bb
14 changed files with 161 additions and 165 deletions

View File

@@ -53,6 +53,7 @@ export 'src/entities/financial/staff_payment.dart';
export 'src/entities/profile/staff_document.dart';
export 'src/entities/profile/attire_item.dart';
export 'src/entities/profile/relationship_type.dart';
export 'src/entities/profile/industry.dart';
// Ratings & Penalties
export 'src/entities/ratings/staff_rating.dart';
@@ -82,3 +83,4 @@ export 'src/entities/availability/day_availability.dart';
// Adapters
export 'src/adapters/profile/emergency_contact_adapter.dart';
export 'src/adapters/profile/experience_adapter.dart';
export 'src/entities/profile/experience_skill.dart';

View File

@@ -0,0 +1,30 @@
enum ExperienceSkill {
foodService('food_service'),
bartending('bartending'),
eventSetup('event_setup'),
hospitality('hospitality'),
warehouse('warehouse'),
customerService('customer_service'),
cleaning('cleaning'),
security('security'),
retail('retail'),
cooking('cooking'),
cashier('cashier'),
server('server'),
barista('barista'),
hostHostess('host_hostess'),
busser('busser'),
driving('driving');
final String value;
const ExperienceSkill(this.value);
static ExperienceSkill? fromString(String value) {
try {
return ExperienceSkill.values.firstWhere((e) => e.value == value);
} catch (_) {
return null;
}
}
}

View File

@@ -0,0 +1,21 @@
enum Industry {
hospitality('hospitality'),
foodService('food_service'),
warehouse('warehouse'),
events('events'),
retail('retail'),
healthcare('healthcare'),
other('other');
final String value;
const Industry(this.value);
static Industry? fromString(String value) {
try {
return Industry.values.firstWhere((e) => e.value == value);
} catch (_) {
return null;
}
}
}