From f61012badedda570e14a962b5efdd6d818eacb80 Mon Sep 17 00:00:00 2001 From: merdiano Date: Wed, 19 Jun 2019 01:27:42 +0500 Subject: [PATCH 01/11] todo payed true --- app/Http/Controllers/HomeController.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 43846522..dd163f04 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -208,10 +208,9 @@ class HomeController extends Controller public function bought_list(){ $orders = Order::with('material') ->where('user_id',auth()->id()) -// ->where('payed',0) + ->where('payed',1) ->paginate(6); -// dd($orders);/ - //todo change payed true + return view('bought',compact('orders')); } From f373623c6202a7ebb00b2f0ae2657930bc34fac2 Mon Sep 17 00:00:00 2001 From: merdiano Date: Wed, 26 Jun 2019 10:45:32 +0500 Subject: [PATCH 02/11] ahlisi, payment, decimal megabayt --- .../Admin/MaterialCrudController.php | 6 ++--- app/Http/Controllers/HomeController.php | 26 +++++++++++-------- app/Http/Controllers/OrderController.php | 21 ++++++++++++++- resources/views/layouts/left_menu.blade.php | 3 +++ resources/views/main.blade.php | 8 +++--- resources/views/material.blade.php | 4 ++- resources/views/order_complete.blade.php | 8 +++--- routes/breadcrumbs.php | 5 +++- routes/web.php | 5 ++-- 9 files changed, 60 insertions(+), 26 deletions(-) diff --git a/app/Http/Controllers/Admin/MaterialCrudController.php b/app/Http/Controllers/Admin/MaterialCrudController.php index a74ff160..21d3af70 100644 --- a/app/Http/Controllers/Admin/MaterialCrudController.php +++ b/app/Http/Controllers/Admin/MaterialCrudController.php @@ -53,9 +53,9 @@ class MaterialCrudController extends CrudController 'lable'=>trans('admin.category'), 'tab' => trans('admin.material.firsttab')], ['name' => 'desc','type' => 'textarea', 'lable' => trans('admin.desc'),'tab' => trans('admin.material.firsttab')], - ['suffix' => 'manat','name' => 'price','type' => 'number', 'lable' => trans('admin.price'),'tab' => trans('admin.material.secondtab')], - ['suffix'=>'kilobyte','name' => 'size','type' => 'number', 'lable' => trans('admin.size'),'tab' => trans('admin.material.secondtab')], - ['suffix'=>'minut','name' => 'duration','type' => 'number', 'lable' => trans('admin.duration'),'tab' => trans('admin.material.secondtab')], + ['suffix' => 'man.','attributes' => ["step" => "any"],'name' => 'price','type' => 'number', 'lable' => trans('admin.price'),'tab' => trans('admin.material.secondtab')], + ['suffix'=>'Mb','attributes' => ["step" => "any"],'name' => 'size','type' => 'number', 'lable' => trans('admin.size'),'tab' => trans('admin.material.secondtab')], + ['suffix'=>'min.','name' => 'duration','type' => 'number', 'lable' => trans('admin.duration'),'tab' => trans('admin.material.secondtab')], [ // image 'tab' => trans('admin.material.thirdtab'), 'label' => "Material Image", diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index dd163f04..1e75ade8 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -27,18 +27,16 @@ class HomeController extends Controller */ public function index(){ - $cat = Category::where('depth',1) - ->orderBy('lft')->firstOrFail(); - $materials = Material::where('category_id',$cat->id)->paginate(6); +// $cat = Category::where('depth',1) +// ->orderBy('lft')->firstOrFail(); + $materials = Material::paginate(6); return view('main')->with([ - 'cat' => $cat, + 'cat' => "", 'materials' => $materials, 'sort' => 'all' ]); } - - public function category($cat_id){ //dd(\request()); $request = \request(); @@ -46,8 +44,15 @@ class HomeController extends Controller $sort = $sort ?? 'all'; //dd($request['sort']); //todo restrict sort to be only {'all','rate','date'} - $cat = Category:: findOrFail($cat_id); - $materials = Material::where('category_id',$cat_id); + if($cat_id != 0){ + $cat = Category:: findOrFail($cat_id); + $materials = Material::where('category_id',$cat_id); + + } + else{ + $cat = ''; + $materials = Material::query(); + } switch ($sort){ case 'rate': $materials->orderBy('like','DESC'); @@ -64,10 +69,10 @@ class HomeController extends Controller 'sort' => $sort ]); } + public function download($material_id){ //todo check limits $material = Material::findOrFail($material_id); - $order = Order::where('user_id',auth()->id()) ->where('material_id',$material_id) ->where('payed',1) @@ -119,11 +124,10 @@ class HomeController extends Controller // Cookie::queue('watchlist', json_encode([$material_id]), 450000); // Cookie::queue('wishlist', $material_id, 450000); -// cookie()->forever('watchlist',$material_id,450000); // dd(Cookie::get('watchlist')); +// cookie()->forever('watchlist',$material_id,450000); $like_list_cookie = Cookie::get('likelist'); - $order = Order::where('user_id',auth()->id()) ->where('material_id',$material_id) ->where('payed',1) diff --git a/app/Http/Controllers/OrderController.php b/app/Http/Controllers/OrderController.php index 36eb6e2d..db6f2f1f 100644 --- a/app/Http/Controllers/OrderController.php +++ b/app/Http/Controllers/OrderController.php @@ -116,17 +116,36 @@ class OrderController extends Controller ] ]); $data = json_decode($response->getBody(), true); + $order->errorCode = $data['ErrorCode']; + $order->orderStatus = $data['OrderStatus']; if($data['ErrorCode'] == 0){ if($data['OrderStatus'] == 2){ //payment successfull $order->payed = 1; // $this->makePayment($order); request()->session()->flash('status','success'); request()->session()->flash('status_message',trans('abonent.payment_successfull')); + //$order->errorMessage = trans('abonent.payment_successfull'); + $status_message = 'Проведена полная авторизация суммы заказа'; + } + elseif($data['OrderStatus'] == 0){//order registered but not payed yet + $status_message = 'Заказ зарегистрирован, но не оплачен'; + } + elseif ($data['OrderStatus'] == 1){//Предавторизованная сумма захолдирована (для двухстадийных платежей) + $status_message ='Предавторизованная сумма захолдирована (для двухстадийных платежей)'; + } + elseif ($data['OrderStatus'] == 4){//Предавторизованная сумма захолдирована (для двухстадийных платежей) + $status_message ='По транзакции была проведена операция возврата'; + } + elseif ($data['OrderStatus'] == 5){//Предавторизованная сумма захолдирована (для двухстадийных платежей) + $status_message ='Инициирована авторизация через ACS банка-эмитента'; + } + else{//unsuccessfull Авторизация отменена + $status_message ='Авторизация отменена'; } } else{ // $order->status = 'payment_failed'; - $order->errorCode = $data['ErrorCode']; + $order->errorMessage = $data['ErrorMessage']; } $order->save(); diff --git a/resources/views/layouts/left_menu.blade.php b/resources/views/layouts/left_menu.blade.php index 9e8d29ab..5814d118 100644 --- a/resources/views/layouts/left_menu.blade.php +++ b/resources/views/layouts/left_menu.blade.php @@ -1,5 +1,8 @@