Files
sendico/frontend/pshared/lib/data/mapper/ledger/account.dart
2026-01-22 14:15:14 +01:00

44 lines
1.2 KiB
Dart

import 'package:pshared/data/dto/ledger/account.dart';
import 'package:pshared/data/mapper/describable.dart';
import 'package:pshared/data/mapper/ledger/balance.dart';
import 'package:pshared/models/ledger/account.dart';
extension LedgerAccountDtoMapper on LedgerAccountDTO {
LedgerAccount toModel() => LedgerAccount(
ledgerAccountRef: ledgerAccountRef,
organizationRef: organizationRef,
ownerRef: ownerRef,
accountCode: accountCode,
accountType: accountType,
currency: currency,
status: status,
allowNegative: allowNegative,
isSettlement: isSettlement,
metadata: metadata,
createdAt: createdAt,
updatedAt: updatedAt,
describable: describable.toDomain(),
balance: balance?.toDomain(),
);
}
extension LedgerAccountModelMapper on LedgerAccount {
LedgerAccountDTO toDTO() => LedgerAccountDTO(
ledgerAccountRef: ledgerAccountRef,
organizationRef: organizationRef,
ownerRef: ownerRef,
accountCode: accountCode,
accountType: accountType,
currency: currency,
status: status,
allowNegative: allowNegative,
isSettlement: isSettlement,
metadata: metadata,
createdAt: createdAt,
updatedAt: updatedAt,
describable: describable.toDTO(),
balance: balance?.toDTO(),
);
}