diff --git a/beike/Shop/Http/Controllers/Account/OrderController.php b/beike/Shop/Http/Controllers/Account/OrderController.php
index 5f845c76..18305451 100644
--- a/beike/Shop/Http/Controllers/Account/OrderController.php
+++ b/beike/Shop/Http/Controllers/Account/OrderController.php
@@ -16,7 +16,6 @@ use Beike\Services\StateMachineService;
use Beike\Shop\Http\Controllers\Controller;
use Beike\Shop\Http\Resources\Account\OrderList;
use Beike\Shop\Services\PaymentService;
-use Illuminate\Contracts\View\Factory;
use Illuminate\Contracts\View\View;
use Illuminate\Http\Request;
@@ -78,15 +77,19 @@ class OrderController extends Controller
*
* @param Request $request
* @param $number
- * @return Factory|View
+ * @return mixed
* @throws \Exception
*/
public function pay(Request $request, $number)
{
- $customer = current_customer();
- $order = OrderRepo::getOrderByNumber($number, $customer);
+ try {
+ $customer = current_customer();
+ $order = OrderRepo::getOrderByNumber($number, $customer);
- return (new PaymentService($order))->pay();
+ return (new PaymentService($order))->pay();
+ } catch (\Exception $e) {
+ return redirect(shop_route('account.order.show', $number))->withErrors($e->getMessage());
+ }
}
/**
diff --git a/resources/lang/en/shop/order.php b/resources/lang/en/shop/order.php
index a36f8f9b..8eca5962 100644
--- a/resources/lang/en/shop/order.php
+++ b/resources/lang/en/shop/order.php
@@ -14,5 +14,5 @@ return [
'invalid_order' => 'Invalid order',
'confirm_order' => 'Customer confirm received package',
'cancel_order' => 'Customer cancel the order',
- 'order_already_paid' => 'The order is paid already',
+ 'order_already_paid' => 'The order already has been paid',
];
diff --git a/themes/default/account/order_info.blade.php b/themes/default/account/order_info.blade.php
index e0ddcbbc..96935bf6 100644
--- a/themes/default/account/order_info.blade.php
+++ b/themes/default/account/order_info.blade.php
@@ -11,6 +11,13 @@