mirror of
https://github.com/brunofontes/shareit.git
synced 2025-11-15 16:00:54 -03:00
Creating relationships between users/items/products
This commit is contained in:
@@ -9,19 +9,17 @@ class ItemController extends Controller
|
||||
{
|
||||
public function show($id)
|
||||
{
|
||||
$item = \DB::table('items')
|
||||
->join('products', 'items.product_id', '=', 'products.id')
|
||||
->where([['products.admin_id', \Auth::id()], ['items.id', $id]])
|
||||
->select('items.*', 'products.admin_id')
|
||||
->get();
|
||||
$otherItems = Item::where([['product_id', $item[0]->product_id], ['id', '!=', $id]])->get();
|
||||
$item = Item::find($id);
|
||||
if (!$item || $item->product->user_id != \Auth::id()) return back();
|
||||
|
||||
$otherItems = Item::where([['product_id', $item->product_id], ['id', '!=', $id]])->get();
|
||||
return view('item', compact('item', 'otherItems'));
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
//TODO: Fazer innerjoint com tabela de users por item
|
||||
$items = Item::where('admin_id', \Auth::id())->get();
|
||||
$items = Item::where('user_id', \Auth::id())->get();
|
||||
return view('item.index', compact('items'));
|
||||
}
|
||||
|
||||
@@ -40,6 +38,7 @@ class ItemController extends Controller
|
||||
'product_id' => 'required'
|
||||
]
|
||||
);
|
||||
|
||||
$id = Item::insertGetId(['name' => request('item'), 'product_id' => request('product_id')]); //Just remember to add the fillable on Model to make this work
|
||||
\DB::table('item_user')->insert([ 'user_id' => \Auth::id(), 'item_id' => $id]);
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ class ProductController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$products = Product::where('admin_id', \Auth::id())->get();
|
||||
$products = Product::where('user_id', \Auth::id())->get();
|
||||
return view('product.index', compact('products'));
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ class ProductController extends Controller
|
||||
*/
|
||||
public function store()
|
||||
{
|
||||
Product::create(['name' => request('product'), 'admin_id' => \Auth::id()]); //Just remember to add the fillable on Model to make this work
|
||||
Product::create(['name' => request('product'), 'user_id' => \Auth::id()]); //Just remember to add the fillable on Model to make this work
|
||||
return redirect('product');
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@ class ProductController extends Controller
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
$product = Product::where('admin_id', \Auth::id())->find($id);
|
||||
$product = Product::where('user_id', \Auth::id())->find($id);
|
||||
return view('product.show', compact('product'));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user