belongsToMany(Item::class) ->using(ItemWarehouse::class) ->withPivot('initial_stock'); } public function scopeWhereHasItem($q, $itemId) { return $q->whereHas('items', function ($q) use ($itemId) { return $q->where('id', $itemId); }); } public function scopeWhereDoesntHaveItem($q, $itemId) { return $q->whereDoesntHave('items', function ($q) use ($itemId) { return $q->where('id', $itemId); }); } }