accounts creation
All checks were successful
ci/woodpecker/push/billing_fees Pipeline was successful
ci/woodpecker/push/db Pipeline was successful
ci/woodpecker/push/bff Pipeline was successful
ci/woodpecker/push/discovery Pipeline was successful
ci/woodpecker/push/fx_ingestor Pipeline was successful
ci/woodpecker/push/fx_oracle Pipeline was successful
ci/woodpecker/push/frontend Pipeline was successful
ci/woodpecker/push/gateway_mntx Pipeline was successful
ci/woodpecker/push/gateway_chain Pipeline was successful
ci/woodpecker/push/gateway_tgsettle Pipeline was successful
ci/woodpecker/push/nats Pipeline was successful
ci/woodpecker/push/ledger Pipeline was successful
ci/woodpecker/push/notification Pipeline was successful
ci/woodpecker/push/payments_orchestrator Pipeline was successful

This commit is contained in:
Stephan D
2026-01-23 00:13:43 +01:00
parent b677d37b99
commit 218c4e20b3
64 changed files with 1641 additions and 338 deletions

View File

@@ -1,6 +1,8 @@
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/data/mapper/ledger/status.dart';
import 'package:pshared/data/mapper/ledger/type.dart';
import 'package:pshared/models/ledger/account.dart';
@@ -10,9 +12,9 @@ extension LedgerAccountDTOMapper on LedgerAccountDTO {
organizationRef: organizationRef,
ownerRef: ownerRef,
accountCode: accountCode,
accountType: accountType,
accountType: accountType.toDomain(),
currency: currency,
status: status,
status: status.toDomain(),
allowNegative: allowNegative,
isSettlement: isSettlement,
metadata: metadata,
@@ -29,9 +31,9 @@ extension LedgerAccountModelMapper on LedgerAccount {
organizationRef: organizationRef,
ownerRef: ownerRef,
accountCode: accountCode,
accountType: accountType,
accountType: accountType.toDTO(),
currency: currency,
status: status,
status: status.toDTO(),
allowNegative: allowNegative,
isSettlement: isSettlement,
metadata: metadata,

View File

@@ -0,0 +1,29 @@
import 'package:pshared/data/dto/ledger/status.dart';
import 'package:pshared/models/ledger/status.dart';
extension LedgerAccountStatusDTOMapper on LedgerAccountStatusDTO {
LedgerAccountStatus toDomain() {
switch (this) {
case LedgerAccountStatusDTO.unspecified:
return LedgerAccountStatus.unspecified;
case LedgerAccountStatusDTO.active:
return LedgerAccountStatus.active;
case LedgerAccountStatusDTO.frozen:
return LedgerAccountStatus.frozen;
}
}
}
extension LedgerAccountStatusMapper on LedgerAccountStatus {
LedgerAccountStatusDTO toDTO() {
switch (this) {
case LedgerAccountStatus.unspecified:
return LedgerAccountStatusDTO.unspecified;
case LedgerAccountStatus.active:
return LedgerAccountStatusDTO.active;
case LedgerAccountStatus.frozen:
return LedgerAccountStatusDTO.frozen;
}
}
}

View File

@@ -0,0 +1,37 @@
import 'package:pshared/data/dto/ledger/type.dart';
import 'package:pshared/models/ledger/type.dart';
extension LedgerAccountTypeDTOMapper on LedgerAccountTypeDTO {
LedgerAccountType toDomain() {
switch (this) {
case LedgerAccountTypeDTO.unspecified:
return LedgerAccountType.unspecified;
case LedgerAccountTypeDTO.asset:
return LedgerAccountType.asset;
case LedgerAccountTypeDTO.liability:
return LedgerAccountType.liability;
case LedgerAccountTypeDTO.revenue:
return LedgerAccountType.revenue;
case LedgerAccountTypeDTO.expense:
return LedgerAccountType.expense;
}
}
}
extension LedgerAccountTypeModelMapper on LedgerAccountType {
LedgerAccountTypeDTO toDTO() {
switch (this) {
case LedgerAccountType.unspecified:
return LedgerAccountTypeDTO.unspecified;
case LedgerAccountType.asset:
return LedgerAccountTypeDTO.asset;
case LedgerAccountType.liability:
return LedgerAccountTypeDTO.liability;
case LedgerAccountType.revenue:
return LedgerAccountTypeDTO.revenue;
case LedgerAccountType.expense:
return LedgerAccountTypeDTO.expense;
}
}
}

View File

@@ -0,0 +1,18 @@
import 'package:pshared/data/dto/wallet/chain_asset.dart';
import 'package:pshared/data/mapper/payment/enums.dart';
import 'package:pshared/models/wallet/chain_asset.dart';
extension ChainAssetDTOMapper on ChainAssetDTO {
ChainAsset toDomain() => ChainAsset(
chain: chainNetworkFromValue(chain),
tokenSymbol: tokenSymbol,
);
}
extension ChainAssetMapper on ChainAsset {
ChainAssetDTO toDTO() => ChainAssetDTO(
chain: chainNetworkToValue(chain),
tokenSymbol: tokenSymbol,
);
}