feat: improve patient flow and pricing workflow

This commit is contained in:
egecankomur
2026-06-12 00:04:53 +03:00
parent e12587398b
commit b42f68214e
26 changed files with 1283 additions and 243 deletions
+23
View File
@@ -21,6 +21,7 @@ class FinanceEntry {
required this.amount,
required this.currency,
required this.status,
this.counterpartyTenantId,
this.paidAt,
this.counterpartyName,
this.patientCode,
@@ -34,6 +35,7 @@ class FinanceEntry {
final double amount;
final String currency;
final FinanceStatus status;
final String? counterpartyTenantId;
final String? paidAt;
final String? counterpartyName;
final String? patientCode;
@@ -53,6 +55,7 @@ class FinanceEntry {
currency: j['currency'] as String? ?? 'TRY',
status: FinanceStatus.values.firstWhere((e) => e.value == j['status'],
orElse: () => FinanceStatus.pending),
counterpartyTenantId: _str(j['counterparty_tenant_id']),
paidAt: _str(j['paid_at']),
counterpartyName: _str(j['counterparty_name']),
patientCode: jobExp?['patient_code'] as String?,
@@ -60,3 +63,23 @@ class FinanceEntry {
);
}
}
class CounterpartyFinanceSummary {
const CounterpartyFinanceSummary({
required this.counterpartyName,
required this.currency,
required this.pendingAmount,
required this.paidAmount,
required this.entryCount,
this.counterpartyTenantId,
});
final String counterpartyName;
final String currency;
final double pendingAmount;
final double paidAmount;
final int entryCount;
final String? counterpartyTenantId;
double get totalAmount => pendingAmount + paidAmount;
}