added ledger as souec of funds for payouts
This commit is contained in:
@@ -5,8 +5,10 @@ import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'package:pshared/controllers/balance_mask/wallets.dart';
|
||||
import 'package:pshared/controllers/payment/source.dart';
|
||||
import 'package:pshared/models/payment/type.dart';
|
||||
import 'package:pshared/models/recipient/recipient.dart';
|
||||
import 'package:pshared/provider/ledger.dart';
|
||||
import 'package:pshared/provider/organizations.dart';
|
||||
import 'package:pshared/provider/payment/amount.dart';
|
||||
import 'package:pshared/provider/payment/flow.dart';
|
||||
@@ -49,7 +51,6 @@ import 'package:pweb/services/payments/csv_input.dart';
|
||||
|
||||
import 'package:pweb/generated/i18n/app_localizations.dart';
|
||||
|
||||
|
||||
RouteBase payoutShellRoute() => ShellRoute(
|
||||
builder: (context, state, child) => MultiProvider(
|
||||
providers: [
|
||||
@@ -82,10 +83,19 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
provider!..update(recipients, methods),
|
||||
),
|
||||
ChangeNotifierProvider(create: (_) => PaymentAmountProvider()),
|
||||
ChangeNotifierProxyProvider2<
|
||||
WalletsController,
|
||||
LedgerAccountsProvider,
|
||||
PaymentSourceController
|
||||
>(
|
||||
create: (_) => PaymentSourceController(),
|
||||
update: (_, wallets, ledger, controller) =>
|
||||
controller!..update(wallets, ledger),
|
||||
),
|
||||
ChangeNotifierProxyProvider6<
|
||||
OrganizationsProvider,
|
||||
PaymentAmountProvider,
|
||||
WalletsController,
|
||||
PaymentSourceController,
|
||||
PaymentFlowProvider,
|
||||
RecipientsProvider,
|
||||
PaymentMethodsProvider,
|
||||
@@ -97,7 +107,7 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
_,
|
||||
organization,
|
||||
payment,
|
||||
wallet,
|
||||
source,
|
||||
flow,
|
||||
recipients,
|
||||
methods,
|
||||
@@ -106,7 +116,7 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
..update(
|
||||
organization,
|
||||
payment,
|
||||
wallet,
|
||||
source,
|
||||
flow,
|
||||
recipients,
|
||||
methods,
|
||||
@@ -212,23 +222,12 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
path: routerPage(Pages.dashboard),
|
||||
pageBuilder: (context, _) => NoTransitionPage(
|
||||
child: DashboardPage(
|
||||
onRecipientSelected: (recipient) => _startPayment(
|
||||
context,
|
||||
recipient: recipient,
|
||||
),
|
||||
onGoToPaymentWithoutRecipient: (type) => _startPayment(
|
||||
context,
|
||||
recipient: null,
|
||||
paymentType: type,
|
||||
),
|
||||
onTopUp: (wallet) => _openWalletTopUp(
|
||||
context,
|
||||
wallet,
|
||||
),
|
||||
onWalletTap: (wallet) => _openWalletEdit(
|
||||
context,
|
||||
wallet,
|
||||
),
|
||||
onRecipientSelected: (recipient) =>
|
||||
_startPayment(context, recipient: recipient),
|
||||
onGoToPaymentWithoutRecipient: (type) =>
|
||||
_startPayment(context, recipient: null, paymentType: type),
|
||||
onTopUp: (wallet) => _openWalletTopUp(context, wallet),
|
||||
onWalletTap: (wallet) => _openWalletEdit(context, wallet),
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -239,10 +238,8 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
final loc = AppLocalizations.of(context)!;
|
||||
return NoTransitionPage(
|
||||
child: RecipientAddressBookPage(
|
||||
onRecipientSelected: (recipient) => _startPayment(
|
||||
context,
|
||||
recipient: recipient,
|
||||
),
|
||||
onRecipientSelected: (recipient) =>
|
||||
_startPayment(context, recipient: recipient),
|
||||
onAddRecipient: () => _openAddRecipient(context),
|
||||
onEditRecipient: (recipient) =>
|
||||
_openEditRecipient(context, recipient: recipient),
|
||||
@@ -329,8 +326,8 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
path: PayoutRoutes.reportPaymentPath,
|
||||
pageBuilder: (_, state) => NoTransitionPage(
|
||||
child: PaymentDetailsPage(
|
||||
paymentId: state.uri.queryParameters[
|
||||
PayoutRoutes.reportPaymentIdQuery] ??
|
||||
paymentId:
|
||||
state.uri.queryParameters[PayoutRoutes.reportPaymentIdQuery] ??
|
||||
'',
|
||||
),
|
||||
),
|
||||
@@ -350,9 +347,7 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
|
||||
return NoTransitionPage(
|
||||
child: wallet != null
|
||||
? WalletEditPage(
|
||||
onBack: () => _popOrGo(context),
|
||||
)
|
||||
? WalletEditPage(onBack: () => _popOrGo(context))
|
||||
: Center(child: Text(loc.noWalletSelected)),
|
||||
);
|
||||
},
|
||||
@@ -361,11 +356,8 @@ RouteBase payoutShellRoute() => ShellRoute(
|
||||
name: PayoutRoutes.walletTopUp,
|
||||
path: PayoutRoutes.walletTopUpPath,
|
||||
pageBuilder: (context, state) {
|
||||
|
||||
return NoTransitionPage(
|
||||
child: WalletTopUpPage(
|
||||
onBack: () => _popOrGo(context),
|
||||
),
|
||||
child: WalletTopUpPage(onBack: () => _popOrGo(context)),
|
||||
);
|
||||
},
|
||||
),
|
||||
@@ -396,18 +388,12 @@ void _openEditRecipient(BuildContext context, {required Recipient recipient}) {
|
||||
context.pushNamed(PayoutRoutes.editRecipient);
|
||||
}
|
||||
|
||||
void _openWalletEdit(
|
||||
BuildContext context,
|
||||
Wallet wallet,
|
||||
) {
|
||||
void _openWalletEdit(BuildContext context, Wallet wallet) {
|
||||
context.read<WalletsController>().selectWallet(wallet);
|
||||
context.pushToEditWallet();
|
||||
}
|
||||
|
||||
void _openWalletTopUp(
|
||||
BuildContext context,
|
||||
Wallet wallet,
|
||||
) {
|
||||
void _openWalletTopUp(BuildContext context, Wallet wallet) {
|
||||
context.read<WalletsController>().selectWallet(wallet);
|
||||
context.pushToWalletTopUp();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user