Справочная информация:
У меня есть сводная таблица с лекарственными препаратами, пациент с днем элемента, время, данные, данные и блокировка.Пример:
id medication_id patient_id Day time given
1 1 (MED X) 1 (Patient X) Yesterday 0900 1
2 1 (MED X) 1 (Patient X) Yesterday 1200 1
3 1 (MED X) 1 (Patient X) Today 0900 0
4 2 (MED Y) 1 (Patient X) Tomorrow 1200 0
5 2 (MED Y) 1 (Patient X) Yesterday 0900 1
6 1 (MED X) 2 (Patient Y) Yesterday 1200 1
7 1 (MED X) 2 (Patient Y) Yesterday 0900 1
8 3 (MED Z) 2 (Patient Y) Yesterday 1200 0
Пациент может принимать одно и то же лекарство, но несколько раз в течение одного дня.Допустим, у пациента X был Med X вчера в 09:00 и 1200 г., сегодня в 09:00, но не завтра.
Чтобы увидеть все лекарства, назначенные пациенту X
$assignedMeds = $patient->medication()->get();
И передал его в поле зрения.
Сейчас у меня есть
@if(isset($assignedMeds))
<div class="card-body">
<table class="table table-hover">
<tbody>
<tr>
<th>Name</th>
<th>Yesterday</th>
<th>Today</th>
<th>Tomorrow</th>
</tr>
@foreach($assignedMeds as $assignedMed)
<tr>
<td>{{$assignedMed->name}}</td>
<td>
@if(($assignedMed->pivot->day) == 'yesterday')
@if($assignedMed->pivot->given)
<i class="fas fa-check green"></i>
<strike>{{$assignedMed->pivot->time}}</strike>
<em>{{$assignedMed->pivot->givenby}}</em>
@else
{{$assignedMed->pivot->time}}
@endif
@endif
</td>
<td>
@if(($assignedMed->pivot->day) == 'today')
@if($assignedMed->pivot->given)
<i class="fas fa-check green"></i>
<strike>{{$assignedMed->pivot->time}}</strike>
<em>{{$assignedMed->pivot->givenby}}</em>
@else
<form method="post" action="/mar/{{$assignedMed->id}}">
@csrf
@method('PATCH')
<input hidden name="givenby" id="givenby" value="1">
<button>{{$assignedMed->pivot->time}}</button>
</form>
@endif
@endif
</td>
<td>
@if(($assignedMed->pivot->day) == 'tomorrow')
{{$assignedMed->pivot->time}}
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@endif
И это дает мне
Medication Name Yesterday Today Tomorrow
Med X 0900 Given
Med X 0900
Med X 1200 Given
Med Y 0900 Given
Med Y 0900
Что я ищу
То, что я пытаюсь получить, - это отобразить название лекарства один раз и показатьвремя в нем.
Пример для пациента X
Medication Name Yesterday Today Tomorrow
Med X 0900 Given 0900
1200 Given
Med Y 0900 Given 0900