@extends('layouts.app') @section('title', 'Detail Laporan Rekomendasi') @section('content') @php $hasil = json_decode($laporan->hasil_json, true) ?? []; $pasien = $laporan->pasien ?? null; $aktivitas_laporan = $laporan->aktivitas_harian ?? optional($pasien)->aktivitas_harian ?? '-'; $bb = $laporan->berat_badan ?? optional($pasien)->berat_badan ?? 0; $tb = $laporan->tinggi_badan ?? optional($pasien)->tinggi_badan ?? 0; $umur = $laporan->umur ?? optional($pasien)->umur ?? 0; $jenis_kelamin = $laporan->jenis_kelamin ?? optional($pasien)->jenis_kelamin ?? '-'; $kebutuhan_kalori = $laporan->kebutuhan_kalori ?? 0; if ($kebutuhan_kalori <= 0 && $bb > 0 && $tb > 0 && $umur > 0) { if ($jenis_kelamin == 'Laki-laki') { $bmr = 66.5 + (13.7 * $bb) + (5 * $tb) - (6.8 * $umur); } else { $bmr = 655 + (9.6 * $bb) + (1.8 * $tb) - (4.7 * $umur); } $faktor = match(strtolower($aktivitas_laporan)) { 'ringan' => 1.2, 'sedang' => 1.55, 'berat' => 1.9, default => 1.2 }; $kebutuhan_kalori = round($bmr * $faktor); } $ukuran_porsi = $laporan->ukuran_porsi; $jumlah_porsi = $laporan->jumlah_porsi ?? 1; $frekuensi_makan = $laporan->frekuensi_makan ?? '3x makan utama + 2x snack'; if (empty($jumlah_porsi) || $jumlah_porsi < 1) { $jumlah_porsi = 1; } if (empty($ukuran_porsi)) { if ($bb >= 90) { $ukuran_porsi = 'Mangkuk Besar'; } elseif ($bb >= 70) { $ukuran_porsi = 'Mangkuk Sedang'; } else { $ukuran_porsi = 'Mangkuk Kecil'; } } @endphp
Analisis rekomendasi makanan menggunakan metode Simple Additive Weighting (SAW)
Nama Pasien
{{ $laporan->nama_pasien }}
Waktu
{{ $laporan->created_at->format('d M Y') }}
Gejala
{{ ucwords(str_replace(',', ', ', $laporan->gejala)) }}
Aktivitas
{{ ucwords($laporan->aktivitas_harian ?? '-') }}
Berat
{{ $laporan->berat_badan ?? 0 }} kg
Tinggi
{{ $laporan->tinggi_badan ?? 0 }} cm
Jumlah Porsi
{{ $jumlah_porsi }} Porsi
Ukuran Porsi
{{ $ukuran_porsi }}
Frekuensi Makan
{{ $frekuensi_makan }}
Menu makanan ini memiliki nilai tertinggi berdasarkan perhitungan metode Simple Additive Weighting (SAW) dengan mempertimbangkan kondisi gejala gastritis, kandungan nutrisi, tekstur makanan, dan kebutuhan energi pasien.
Skor SAW
{!! $penjelasan !!}
@if(!empty($jumlah_porsi) && !empty($ukuran_porsi)) @if(str_contains($gejala, 'mual'))Pasien dianjurkan mengonsumsi {{ $jumlah_porsi }} porsi dengan ukuran {{ $ukuran_porsi }} pada setiap makan utama agar makanan lebih nyaman diterima oleh lambung dan tidak memperberat rasa mual. Konsumsi makanan tetap dianjurkan secara bertahap agar pasien tetap nyaman saat makan.
@elseif(str_contains($gejala, 'nyeri lambung'))Pasien dianjurkan mengonsumsi makanan dengan ukuran {{ $ukuran_porsi }} pada setiap makan utama. Jumlah porsi disesuaikan dengan kebutuhan energi dan aktivitas pasien, namun konsumsi makanan tetap dianjurkan secara bertahap agar lambung tidak bekerja terlalu berat.
@endifSelain itu, pasien dianjurkan makan secara teratur sebanyak {{ $frekuensi_makan }} agar lambung tidak kosong terlalu lama dan kebutuhan energi harian tetap terpenuhi. Snack yang dimaksud adalah makanan ringan yang aman untuk lambung, seperti makanan yang tidak pedas, tidak asam, tidak berminyak, dan mudah dicerna.
@endifHasil perangkingan makanan berdasarkan metode SAW
| Rank | Menu Makanan | Protein | Lemak | Karbo | Serat | Kalori | Skor SAW | Detail |
|---|---|---|---|---|---|---|---|---|
|
@if($rank == 1)
1
@elseif($rank == 2)
2
@elseif($rank == 3)
3
@else
{{ $rank }}
@endif
|
{{ $item['nama_makanan'] ?? '-' }}
{{ ucfirst($item['tekstur'] ?? '-') }}
{{ $item['cara_pengolahan'] ?? '-' }}
|
{{ number_format($item['protein'] ?? 0,1) }}g
|
{{ number_format($item['lemak'] ?? 0,1) }}g
|
{{ number_format($item['karbohidrat'] ?? 0,1) }}g
|
{{ number_format($item['serat'] ?? 0,1) }}g
|
{{ number_format($item['kalori'] ?? 0,0) }} kkal
|
{{ number_format($item['skor'] ?? 0,4) }}
|
|
Informasi Makanan
Tekstur:
{{ ucfirst($item['tekstur'] ?? '-') }}
Porsi Saji Awal:
{{ $item['porsi_saji'] ?? '-' }}
Rekomendasi Jumlah Porsi:
{{ $jumlah_porsi }} Porsi
Ukuran Porsi:
{{ $ukuran_porsi }}
Cara Pengolahan:
{{ $item['cara_pengolahan'] ?? '-' }}
@if(!empty($item['alternatif_serupa']))
Alternatif:
{{ $item['alternatif_serupa'] }}
@endif
Komposisi Makanan@if(!empty($item['komposisi_makanan']))
@foreach(explode(',', $item['komposisi_makanan']) as $komposisi)
{{ trim($komposisi) }}
@endforeach
@else
Tidak ada data komposisi. @endif |
||||||||