Persist verificationId for staff certificates

Add support for verificationId throughout the certificate flow: schema, GraphQL mutations/queries, domain, repositories, service implementation, and UI.

- Backend: add verificationId to Certificate schema and include it in upsert/create mutations; add auth insecureReason notes to related connector operations.
- Data layer: add verificationId parameter to StaffConnectorRepository API and propagation in implementation (SDK call remains commented with FIXME until dataconnect SDK is regenerated).
- Domain: add verificationId field to StaffCertificate (constructor, copyWith, props).
- Certificates flow: create verification via verificationService, pass returned verificationId to upsertStaffCertificate so the verification record is persisted with the certificate.
- UI: update certificate upload page to show existing file path, disable editing of name/issuer/number, rearrange fields, move remove button, change file icon and text style.
- Misc: minor lambda formatting cleanup in benefits mapping.

Note: the generated dataconnect SDK must be refreshed to enable the new .verificationId(...) call (there is a commented FIXME in the connector implementation).
This commit is contained in:
Achintha Isuru
2026-02-27 15:27:15 -05:00
parent c534584836
commit f39f8860ea
8 changed files with 118 additions and 91 deletions

View File

@@ -19,6 +19,7 @@ class StaffCertificate extends Equatable {
this.issuer,
this.certificateNumber,
this.validationStatus,
this.verificationId,
this.createdAt,
this.updatedAt,
});
@@ -56,6 +57,9 @@ class StaffCertificate extends Equatable {
/// Document number or reference.
final String? certificateNumber;
/// The ID of the verification record.
final String? verificationId;
/// Recent validation/verification results.
final StaffCertificateValidationStatus? validationStatus;
@@ -79,6 +83,7 @@ class StaffCertificate extends Equatable {
issuer,
certificateNumber,
validationStatus,
verificationId,
createdAt,
updatedAt,
];
@@ -97,6 +102,7 @@ class StaffCertificate extends Equatable {
String? issuer,
String? certificateNumber,
StaffCertificateValidationStatus? validationStatus,
String? verificationId,
DateTime? createdAt,
DateTime? updatedAt,
}) {
@@ -113,6 +119,7 @@ class StaffCertificate extends Equatable {
issuer: issuer ?? this.issuer,
certificateNumber: certificateNumber ?? this.certificateNumber,
validationStatus: validationStatus ?? this.validationStatus,
verificationId: verificationId ?? this.verificationId,
createdAt: createdAt ?? this.createdAt,
updatedAt: updatedAt ?? this.updatedAt,
);