Чтобы отобразить список мотоциклов, которые недоступны, вам необходимо поработать на вашем контроллере мотоциклов . В частности, метод edit()
, если вы вносите изменения в статус вручную, метод create()
, если вы делаете новый мотоцикл, или, скорее всего, метод show()
, чтобы просто отобразить ту таблицу, которая у вас есть выше, где она показывает если они есть или нет.
Теперь ... чтобы получить часть, где он отображается, если мотоцикл недоступен ... Я предполагаю, что он недоступен, когда он остановлен для ремонта (ревизия). Поскольку я не знаю, каковы ваши отношения, мы можем выяснить это с помощью простого извлечения всех ревизий, чтобы увидеть, какие велосипеды должны быть в данный момент отключены. Итак, в одном из тех методов, которые я отметил выше (или во всех них), сначала давайте посмотрим, какие велосипеды будут недоступны для пересмотра в текущее время:
$bikeIdsDown = Revision::where('date_revision_start', "<" Carbon::now())->where('date_revision_end', ">", Carbon::now())->pluck('id')->toArray();
Не самый эффективный, но, надеюсь, самый простой способ следовать.
Теперь, когда у нас есть эти недоступные идентификаторы мотоциклов, если мы сжимаем их и отправляем их на страницу лезвия, мы можем определить, писать «доступные» или «недоступные» в области мотоциклов. Итак, пока вы просматриваете мотоциклы на странице лезвия, возможно, что-то вроде этого:
@foreach($motorbikes as $bike)
{{$bike->martriculation }} // <-- these might all be in <td> or something
{{$bike->number}}
@if(in_array($bike->id, $bikeIdsDown))
UNAVAILABLE
@else
Available
@endif
@endforeach
Надеюсь, это даст вам идею.