Валидация в Laravel на основе значения другого поля
Подскажите как сделать красивую валидацию на ларе, дано: приходит следующий массив:
{
"id": 588,
"type":"get",
"storage": "id": 32,
}
если приходит type = get то можно выбрать склад по условию:
$query->where('active', 1)->where('type', '=', 'get');
если type = set то,
$query->where('active', 1)->where('type', '=', 'get')->orWhere('type', '=', 'set');
сейчас проверка выглядит следующим образом:
'storage' => [
'exists:Storage,id',
Rule::exists('App\Models\Make\Storage', 'id')->where(function ($query) {
return $query->where('active', 1)->where('type', '=', 'get')->orWhere('type', '=', 'set');;
}),
Как ее дополнить что бы выполнялась проверка по полю "type"?