|
@@ -27,6 +27,20 @@
|
|
|
$d = date_sub(date_create(), date_interval_create_from_date_string($i . " day" . ($i === 1 ? '' : 's')));
|
|
|
$dates[] = date_format($d, "Y-m-d");
|
|
|
}
|
|
|
+
|
|
|
+ function getMeasurementOfTypeForDate($patient, $category, $date) {
|
|
|
+ $allMeasurements = $patient->allMeasurements->toArray();
|
|
|
+ if(!$allMeasurements) return null;
|
|
|
+ $filtered = array_filter($allMeasurements, function($_measurement) use ($category, $date) {
|
|
|
+ $measurementDate = date('Y-m-d', strtotime($_measurement['effective_date']));
|
|
|
+ return $_measurement['label'] === $category && $measurementDate === $date;
|
|
|
+ });
|
|
|
+ if($filtered && count($filtered)) {
|
|
|
+ $filtered = array_values($filtered);
|
|
|
+ return $filtered[0];
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
?>
|
|
|
|
|
|
<div class="d-flex align-items-stretch overflow-hidden flowsheets-table">
|
|
@@ -78,19 +92,29 @@
|
|
|
$programCategories = array_filter($programCategories, function($_item) {
|
|
|
return !empty($_item);
|
|
|
});
|
|
|
- $programICDs = explode('|', $program->icds);
|
|
|
- $programICDs = array_filter($programICDs, function($_item) {
|
|
|
- return !empty($_item);
|
|
|
- });
|
|
|
- $programMonth = $program->getProgramMonth(strtoupper(date('F')), date('Y'));
|
|
|
?>
|
|
|
<tr>
|
|
|
- <td colspan="{{count($dates)}}"> </td>
|
|
|
+ @foreach($dates as $date)
|
|
|
+ <td> </td>
|
|
|
+ @endforeach
|
|
|
</tr>
|
|
|
@foreach($programCategories as $category)
|
|
|
<tr>
|
|
|
@foreach($dates as $date)
|
|
|
- <td>100 gm</td>
|
|
|
+ <?php
|
|
|
+ $measurement = getMeasurementOfTypeForDate($patient, $category, $date);
|
|
|
+ ?>
|
|
|
+ <td>
|
|
|
+ @if($measurement)
|
|
|
+ <?php $m = $measurement; ?>
|
|
|
+ <div class="text-nowrap">
|
|
|
+ {{$m['value']}}
|
|
|
+ <span class="text-secondary text-sm">({{date('H:i', strtotime($m['effective_date']))}})</span>
|
|
|
+ </div>
|
|
|
+ @else
|
|
|
+ -
|
|
|
+ @endif
|
|
|
+ </td>
|
|
|
@endforeach
|
|
|
</tr>
|
|
|
@endforeach
|