Biraz daha rahat yardımcı olabilmeniz adına dostlar söyle kuralın altında kodu yazabiliyorum şimdi burada çoklu seçim yapıldığı zaman ve diğer inputtan veri girildigin de o gelen veriye göre işlem yapacam da çoklu seçim de her birinin stoğu nasıl kontrol edebilirim ve create edilince stoktan düşmem gerekiyor da
Select::make('orders_id')
->label('Ürünleri Seçiniz')
->options(function (callable $get) {
$orderProducts = OrderProducts::where('order_id', $get('order_id'))->get();
if (!$orderProducts->isEmpty()) {
return $orderProducts->pluck('name', 'id')->toArray();
}
return [];
})
->multiple()
->required()
->rules([
function (Closure $get) {
return function (string $attribute, $value, Closure $fail) {
if (empty($value)) {
$fail("En az bir ürün seçmelisiniz.");
}
foreach ($value as $productId) {
$orderProduct = OrderProducts::find($productId);
if (!$orderProduct) {
$fail("Geçersiz bir ürün seçimi yapıldı.");
} elseif ($orderProduct->stock < 1) {
$fail("Seçtiğiniz ürünlerden biri stokta yok.");
}
}
};
},
]);