feat: Introduce AttireVerificationStatus enum and add verificationId to staff attire items.

This commit is contained in:
Achintha Isuru
2026-02-24 17:31:41 -05:00
parent 616f23fec9
commit fd0208efa0
10 changed files with 64 additions and 14 deletions

View File

@@ -1,6 +1,7 @@
// ignore_for_file: always_specify_types, depend_on_referenced_packages, dead_code, dead_null_aware_expression, unused_local_variable, unused_import, sort_constructors_first, prefer_final_fields, prefer_const_constructors, deprecated_member_use, implicit_call_tearoffs, implementation_imports
import 'package:firebase_data_connect/firebase_data_connect.dart';
import 'package:krow_data_connect/krow_data_connect.dart';
import 'package:krow_data_connect/krow_data_connect.dart'
hide AttireVerificationStatus;
import 'package:krow_domain/krow_domain.dart';
/// Implementation of [StaffConnectorRepository].
@@ -233,17 +234,28 @@ class StaffConnectorRepositoryImpl implements StaffConnectorRepository {
description: e.description,
imageUrl: e.imageUrl,
isMandatory: e.isMandatory ?? false,
verificationStatus: userAttire?.verificationStatus?.stringValue,
verificationStatus: _mapAttireStatus(
userAttire?.verificationStatus?.stringValue,
),
photoUrl: userAttire?.verificationPhotoUrl,
);
}).toList();
});
}
AttireVerificationStatus? _mapAttireStatus(String? status) {
if (status == null) return null;
return AttireVerificationStatus.values.firstWhere(
(e) => e.name.toUpperCase() == status.toUpperCase(),
orElse: () => AttireVerificationStatus.pending,
);
}
@override
Future<void> upsertStaffAttire({
required String attireOptionId,
required String photoUrl,
String? verificationId,
}) async {
await _service.run(() async {
final String staffId = await _service.getStaffId();
@@ -251,6 +263,7 @@ class StaffConnectorRepositoryImpl implements StaffConnectorRepository {
await _service.connector
.upsertStaffAttire(staffId: staffId, attireOptionId: attireOptionId)
.verificationPhotoUrl(photoUrl)
// .verificationId(verificationId) // Uncomment after SDK regeneration
.execute();
});
}

View File

@@ -54,6 +54,7 @@ abstract interface class StaffConnectorRepository {
Future<void> upsertStaffAttire({
required String attireOptionId,
required String photoUrl,
String? verificationId,
});
/// Signs out the current user.