ledger account service basis

This commit is contained in:
Stephan D
2026-01-22 01:00:55 +01:00
parent 62ff96b90e
commit 8e46bc6061
22 changed files with 118 additions and 65 deletions

View File

@@ -0,0 +1,58 @@
import 'package:pshared/models/describable.dart';
class LedgerAccount implements Describable {
final String ledgerAccountRef;
final String organizationRef;
final String? ownerRef;
final String accountCode;
final String accountType;
final String currency;
final String status;
final bool allowNegative;
final bool isSettlement;
final Map<String, String>? metadata;
final DateTime? createdAt;
final DateTime? updatedAt;
final Describable describable;
@override
String get name => describable.name;
@override
String? get description => describable.description;
const LedgerAccount({
required this.ledgerAccountRef,
required this.organizationRef,
this.ownerRef,
required this.accountCode,
required this.accountType,
required this.currency,
required this.status,
required this.allowNegative,
required this.isSettlement,
this.metadata,
this.createdAt,
this.updatedAt,
required this.describable,
});
LedgerAccount copyWith({
Describable? describable,
}) => 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 ?? this.describable,
);
}

View File

@@ -1,4 +1,4 @@
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
class FeeLine {

View File

@@ -1,4 +1,4 @@
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
class NetworkFee {

View File

@@ -1,4 +1,4 @@
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
class FxQuote {

View File

@@ -2,7 +2,7 @@ import 'package:pshared/models/payment/fx/intent.dart';
import 'package:pshared/models/payment/kind.dart';
import 'package:pshared/models/payment/customer.dart';
import 'package:pshared/models/payment/methods/data.dart';
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
import 'package:pshared/models/payment/settlement_mode.dart';

View File

@@ -1,4 +1,4 @@
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
class PaymentQuoteAggregate {

View File

@@ -1,6 +1,6 @@
import 'package:pshared/models/payment/fees/line.dart';
import 'package:pshared/models/payment/fx/quote.dart';
import 'package:pshared/models/payment/money.dart';
import 'package:pshared/models/money.dart';
import 'package:pshared/models/payment/fees/network.dart';

View File

@@ -1,10 +1,10 @@
import 'package:pshared/models/wallet/money.dart';
import 'package:pshared/models/money.dart';
class WalletBalance {
final WalletMoney? available;
final WalletMoney? pendingInbound;
final WalletMoney? pendingOutbound;
final Money? available;
final Money? pendingInbound;
final Money? pendingOutbound;
final DateTime? calculatedAt;
const WalletBalance({

View File

@@ -1,9 +0,0 @@
class WalletMoney {
final String amount;
final String currency;
const WalletMoney({
required this.amount,
required this.currency,
});
}

View File

@@ -1,7 +1,7 @@
import 'package:pshared/models/describable.dart';
import 'package:pshared/models/money.dart';
import 'package:pshared/models/wallet/asset.dart';
import 'package:pshared/models/wallet/balance.dart';
import 'package:pshared/models/wallet/money.dart';
class WalletModel implements Describable {
@@ -15,7 +15,7 @@ class WalletModel implements Describable {
final DateTime? createdAt;
final DateTime? updatedAt;
final WalletBalance? balance;
final WalletMoney? availableMoney;
final Money? availableMoney;
final Describable describable;
@override
@@ -40,8 +40,6 @@ class WalletModel implements Describable {
});
WalletModel copyWith({
WalletBalance? balance,
WalletMoney? availableMoney,
Describable? describable,
}) => WalletModel(
walletRef: walletRef,
@@ -53,8 +51,8 @@ class WalletModel implements Describable {
metadata: metadata,
createdAt: createdAt,
updatedAt: updatedAt,
balance: balance ?? this.balance,
availableMoney: availableMoney ?? this.availableMoney,
balance: balance,
availableMoney: availableMoney,
describable: describable ?? this.describable,
);
}