diff --git a/app/Http/Controllers/InventoryController.php b/app/Http/Controllers/InventoryController.php index 589c79c0..6d8f348a 100644 --- a/app/Http/Controllers/InventoryController.php +++ b/app/Http/Controllers/InventoryController.php @@ -29,6 +29,11 @@ class InventoryController extends Controller { // } + + public function management() + { + return view('admin.inventory.management'); + } public function booking() { diff --git a/app/Http/Controllers/ItemCategoryController.php b/app/Http/Controllers/ItemCategoryController.php index 72cd6ae8..29d7daaa 100644 --- a/app/Http/Controllers/ItemCategoryController.php +++ b/app/Http/Controllers/ItemCategoryController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Item; use App\ItemCategory; use Illuminate\Http\Request; @@ -14,7 +15,7 @@ class ItemCategoryController extends Controller */ public function index() { - // + return view('admin.itemcategory.index',['categories' => ItemCategory::all()]); } /** @@ -24,7 +25,7 @@ class ItemCategoryController extends Controller */ public function create() { - // + return view('admin.itemcategory.add'); } /** @@ -33,9 +34,32 @@ class ItemCategoryController extends Controller * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ - public function store(Request $request) + public function store() { - // + $c = new ItemCategory(); + + $c->name = \request('name'); + $c->desc = \request('desc'); + if (\request('is_training') == 1) + { + $c->is_training = 1; + } + else + { + $c->is_training = 0; + } + if (\request('is_op_appro') == 1) + { + $c->is_op_appro = 1; + } + else + { + $c->is_op_appro = 0; + } + + $c->save(); + + return redirect('/admin/inventory/management/category/')->with('success','Catégorie ajouté avec succès'); } /** @@ -55,9 +79,9 @@ class ItemCategoryController extends Controller * @param \App\ItemCategory $itemCategory * @return \Illuminate\Http\Response */ - public function edit(ItemCategory $itemCategory) + public function edit($id) { - // + return view('admin.itemcategory.edit',['category' => ItemCategory::find($id)]); } /** @@ -67,9 +91,32 @@ class ItemCategoryController extends Controller * @param \App\ItemCategory $itemCategory * @return \Illuminate\Http\Response */ - public function update(Request $request, ItemCategory $itemCategory) + public function update($id) { - // + $c = ItemCategory::find($id); + + $c->name = \request('name'); + $c->desc = \request('desc'); + if (\request('is_training') == 1) + { + $c->is_training = 1; + } + else + { + $c->is_training = 0; + } + if (\request('is_op_appro') == 1) + { + $c->is_op_appro = 1; + } + else + { + $c->is_op_appro = 0; + } + + $c->save(); + + return redirect('/admin/inventory/management/category/')->with('success','Catégorie modifié avec succès'); } /** @@ -78,8 +125,10 @@ class ItemCategoryController extends Controller * @param \App\ItemCategory $itemCategory * @return \Illuminate\Http\Response */ - public function destroy(ItemCategory $itemCategory) + public function destroy($id) { - // + $c = ItemCategory::find($id); + + $c->delete(); } } diff --git a/app/Item.php b/app/Item.php index 8637119e..00041aa0 100644 --- a/app/Item.php +++ b/app/Item.php @@ -31,4 +31,22 @@ class Item extends Model { return \App\ItemCategory::find($this->category_id); } + + public function available() + { + + return $this->quantity - $this->booked(); + } + + public function booked() + { + $nbBooked = 0; + + foreach ($this->bookings() as $b) + { + $nbBooked = $nbBooked + $b->amount; + } + + return $nbBooked; + } } diff --git a/resources/views/admin/inventory/index.blade.php b/resources/views/admin/inventory/index.blade.php index d0a74f31..b89ec947 100644 --- a/resources/views/admin/inventory/index.blade.php +++ b/resources/views/admin/inventory/index.blade.php @@ -8,7 +8,10 @@
| # | Nom | Categorie | +Quantité Total | +Quantité Disponible | Description | Action | @@ -26,6 +31,8 @@{{$item->official_number}} | {{$item->name}} | {{$item->category()->name}} | +{{$item->quantity}} | +{{$item->available()}} | {!! $item->desc !!} |
diff --git a/resources/views/admin/inventory/management.blade.php b/resources/views/admin/inventory/management.blade.php
new file mode 100644
index 00000000..2c60fa9b
--- /dev/null
+++ b/resources/views/admin/inventory/management.blade.php
@@ -0,0 +1,42 @@
+@extends('layouts.admin.main')
+
+@section('content')
+
+
+@endsection
+
+@section('custom_scripts')
+
+@endsection
diff --git a/resources/views/admin/item/add.blade.php b/resources/views/admin/item/add.blade.php
index 95e09843..a4b045d2 100644
--- a/resources/views/admin/item/add.blade.php
+++ b/resources/views/admin/item/add.blade.php
@@ -9,52 +9,52 @@
+
+
+ Gestion de l'inventaire
+
+
+
+
+
+
+
+
+
+
+
+
+ Catégorie+Gestion des catégories de l'inventaire +
+
+
+
+
+
+ + Les catégories permettent de diviser l'inventaire et de définir les permissions d'accès aux items + +
+
+
+ |
|---|