diff --git a/src/app/Console/Commands/MollieInfo.php b/src/app/Console/Commands/MollieInfo.php index 4393f32c..098ecd3a 100644 --- a/src/app/Console/Commands/MollieInfo.php +++ b/src/app/Console/Commands/MollieInfo.php @@ -1,78 +1,89 @@ argument('user')) { $user = User::where('email', $this->argument('user'))->first(); if (!$user) { return 1; } $this->info("Found user: {$user->id}"); $wallet = $user->wallets->first(); $provider = new \App\Providers\Payment\Mollie(); if ($mandate = $provider->getMandate($wallet)) { $amount = $wallet->getSetting('mandate_amount'); $balance = $wallet->getSetting('mandate_balance') ?: 0; + $status = 'invalid'; + + if ($mandate['isPending']) { + $status = 'pending'; + } elseif ($mandate['isValid']) { + $status = 'valid'; + } + + if ($wallet->getSetting('mandate_disabled')) { + $status .= ' (disabled)'; + } $this->info("Auto-payment: {$mandate['method']}"); $this->info(" id: {$mandate['id']}"); - $this->info(" status: " . ($mandate['isPending'] ? 'pending' : 'valid')); + $this->info(" status: {$status}"); $this->info(" amount: {$amount} {$wallet->currency}"); $this->info(" min-balance: {$balance} {$wallet->currency}"); } else { $this->info("Auto-payment: none"); } // TODO: List user payments history } else { $this->info("Available payment methods:"); foreach (mollie()->methods()->all() as $method) { $this->info("- {$method->description} ({$method->id}):"); $this->info(" status: {$method->status}"); $this->info(sprintf( " min: %s %s", $method->minimumAmount->value, $method->minimumAmount->currency )); if (!empty($method->maximumAmount)) { $this->info(sprintf( " max: %s %s", $method->maximumAmount->value, $method->maximumAmount->currency )); } } } } } diff --git a/src/app/Console/Commands/StripeInfo.php b/src/app/Console/Commands/StripeInfo.php index 46bc0525..de67c474 100644 --- a/src/app/Console/Commands/StripeInfo.php +++ b/src/app/Console/Commands/StripeInfo.php @@ -1,63 +1,74 @@ argument('user')) { $user = User::where('email', $this->argument('user'))->first(); if (!$user) { return 1; } $this->info("Found user: {$user->id}"); $wallet = $user->wallets->first(); $provider = PaymentProvider::factory('stripe'); if ($mandate = $provider->getMandate($wallet)) { $amount = $wallet->getSetting('mandate_amount'); $balance = $wallet->getSetting('mandate_balance') ?: 0; + $status = 'invalid'; + + if ($mandate['isPending']) { + $status = 'pending'; + } elseif ($mandate['isValid']) { + $status = 'valid'; + } + + if ($wallet->getSetting('mandate_disabled')) { + $status .= ' (disabled)'; + } $this->info("Auto-payment: {$mandate['method']}"); $this->info(" id: {$mandate['id']}"); - $this->info(" status: " . ($mandate['isPending'] ? 'pending' : 'valid')); + $this->info(" status: {$status}"); $this->info(" amount: {$amount} {$wallet->currency}"); $this->info(" min-balance: {$balance} {$wallet->currency}"); } else { $this->info("Auto-payment: none"); } // TODO: List user payments history } else { // TODO: Fetch some info/stats from Stripe } } }