refactor of money utils with new money2 package

This commit is contained in:
Arseni
2026-03-13 03:17:29 +03:00
parent b4eb1437f6
commit 0091191d97
72 changed files with 453 additions and 982 deletions

View File

@@ -43,7 +43,7 @@ class LedgerService {
required String organizationRef,
required Describable describable,
required String? ownerRef,
required Currency currency,
required CurrencyCode currency,
}) async => AuthorizationService.getPOSTResponse(
_objectType,
'/$organizationRef',

View File

@@ -1,9 +1,9 @@
import 'package:pshared/data/mapper/wallet/ui.dart';
import 'package:pshared/models/currency.dart';
import 'package:pshared/models/describable.dart';
import 'package:pshared/models/payment/chain_network.dart';
import 'package:pshared/models/payment/wallet.dart';
import 'package:pshared/models/wallet/chain_asset.dart';
import 'package:pshared/service/wallet.dart' as shared_wallet_service;
import 'package:pshared/utils/money.dart';
abstract class WalletsService {
@@ -12,7 +12,8 @@ abstract class WalletsService {
Future<void> create({
required String organizationRef,
required Describable describable,
required ChainAsset asset,
required ChainNetwork chain,
required CurrencyCode currency,
required String? ownerRef,
});
}
@@ -30,19 +31,21 @@ class ApiWalletsService implements WalletsService {
organizationRef: organizationRef,
walletRef: walletRef,
);
return parseMoneyAmount(balance.available?.amount);
return balance.available?.toDouble() ?? 0;
}
@override
Future<void> create({
required String organizationRef,
required Describable describable,
required ChainAsset asset,
required ChainNetwork chain,
required CurrencyCode currency,
required String? ownerRef,
}) => shared_wallet_service.WalletService.create(
organizationRef: organizationRef,
describable: describable,
asset: asset,
chain: chain,
currency: currency,
ownerRef: ownerRef,
);
}

View File

@@ -1,15 +1,18 @@
import 'package:pshared/api/requests/wallet/create.dart';
import 'package:pshared/api/responses/wallet_balance.dart';
import 'package:pshared/api/responses/wallets.dart';
import 'package:pshared/data/dto/wallet/chain_asset.dart';
import 'package:pshared/data/mapper/describable.dart';
import 'package:pshared/data/mapper/wallet/chain_asset.dart';
import 'package:pshared/data/mapper/payment/enums.dart';
import 'package:pshared/data/mapper/wallet/response.dart';
import 'package:pshared/models/currency.dart';
import 'package:pshared/models/describable.dart';
import 'package:pshared/models/payment/chain_network.dart';
import 'package:pshared/models/wallet/balance.dart';
import 'package:pshared/models/wallet/chain_asset.dart';
import 'package:pshared/models/wallet/wallet.dart';
import 'package:pshared/service/authorization/service.dart';
import 'package:pshared/service/services.dart';
import 'package:pshared/utils/currency.dart';
class WalletService {
@@ -37,13 +40,19 @@ class WalletService {
static Future<void> create({
required String organizationRef,
required Describable describable,
required ChainAsset asset,
required ChainNetwork chain,
required CurrencyCode currency,
required String? ownerRef,
}) async => AuthorizationService.getPOSTResponse(
_objectType,
'/$organizationRef',
CreateWalletRequest(
asset: asset.toDTO(),
asset: ChainAssetDTO(
chain: chainNetworkToValue(chain),
tokenSymbol:
money2CurrencyFromCode(currencyCodeToString(currency))?.isoCode ??
currencyCodeToString(currency),
),
describable: describable.toDTO(),
ownerRef: ownerRef,
).toJson(),