$data */ public function create(array $data): PackagingItem { return PackagingItem::create($this->extractAttributes($data)); } /** * @param array $data */ public function update(PackagingItem $packagingItem, array $data): PackagingItem { $packagingItem->update($this->extractAttributes($data)); return $packagingItem->fresh(); } /** * @param array $data * @return array */ protected function extractAttributes(array $data): array { return collect($data)->only([ 'packaging_material_id', 'supplier_id', 'name', 'category', 'weight_grams', 'min_stock_alert', 'product_id', 'active', ])->all(); } }