feat: introduce TaxForm entity and adapter, refactor tax forms repository and use cases for improved data handling

This commit is contained in:
Achintha Isuru
2026-01-27 16:25:47 -05:00
parent 35c0b19d6b
commit 078f828aad
12 changed files with 253 additions and 166 deletions

View File

@@ -0,0 +1,45 @@
import 'package:equatable/equatable.dart';
enum TaxFormType { i9, w4 }
enum TaxFormStatus { notStarted, inProgress, submitted, approved, rejected }
class TaxForm extends Equatable {
final String id;
final TaxFormType type;
final String title;
final String? subtitle;
final String? description;
final TaxFormStatus status;
final String? staffId;
final Map<String, dynamic>? formData;
final DateTime? createdAt;
final DateTime? updatedAt;
const TaxForm({
required this.id,
required this.type,
required this.title,
this.subtitle,
this.description,
this.status = TaxFormStatus.notStarted,
this.staffId,
this.formData,
this.createdAt,
this.updatedAt,
});
@override
List<Object?> get props => [
id,
type,
title,
subtitle,
description,
status,
staffId,
formData,
createdAt,
updatedAt,
];
}