feat: Implement bank account management feature with UI, BLoC integration, and repository setup

This commit is contained in:
Achintha Isuru
2026-01-24 22:36:29 -05:00
parent f035ab8b6c
commit e6e2783a5a
25 changed files with 766 additions and 9 deletions

View File

@@ -1,5 +1,12 @@
import 'package:equatable/equatable.dart';
/// Account type (Checking, Savings, etc).
enum BankAccountType {
checking,
savings,
other,
}
/// Represents bank account details for payroll.
class BankAccount extends Equatable {
@@ -10,6 +17,9 @@ class BankAccount extends Equatable {
required this.accountNumber,
required this.accountName,
this.sortCode,
this.type = BankAccountType.checking,
this.isPrimary = false,
this.last4,
});
/// Unique identifier.
final String id;
@@ -29,6 +39,15 @@ class BankAccount extends Equatable {
/// Sort code (if applicable).
final String? sortCode;
/// Type of account.
final BankAccountType type;
/// Whether this is the primary account.
final bool isPrimary;
/// Last 4 digits.
final String? last4;
@override
List<Object?> get props => <Object?>[id, userId, bankName, accountNumber, accountName, sortCode];
List<Object?> get props => <Object?>[id, userId, bankName, accountNumber, accountName, sortCode, type, isPrimary, last4];
}