@extends('layouts.app', ['class' => 'g-sidenav-show bg-gray-100']) @section('content') @include('layouts.navbars.auth.topnav', ['title' => ''])
ID Survey: {{ $survey->idsurvei }}
Judul Form: {{ $survey->judul_form }}
Subjudul: {{ $survey->subjudul }}
Departemen: {{ $survey->departemen_name ?? $survey->departemen }}
Jenis: {{ $survey->jenis === 'R' ? 'Repetisi' : 'Sekali' }}
Tanggal Mulai: {{ date('d-m-Y', strtotime($survey->tanggal_mulai)) }}
Tanggal Selesai: {{ date('d-m-Y', strtotime($survey->tanggal_selesai)) }}
Status: @if($survey->status === 'selesai') Selesai @elseif($survey->status === 'proses') Proses @else Entri @endif
Deskripsi:
| No | Pertanyaan | Tipe | @foreach($analysis_years as $year){{ $year }} | @endforeachRata-rata | |||
|---|---|---|---|---|---|---|---|
| Kesimpulan | Nilai | @endforeach||||||
| {{ $row['no'] }} | {!! strip_tags($row['soal']) !!} | {{ $row['jenis'] }} | @foreach($analysis_years as $year) @if(isset($row['yearly_data'][$year]['is_group']) && $row['yearly_data'][$year]['is_group']) {{-- Group Linear Scale - Data per Vendor --}}
@if(isset($row['yearly_data'][$year]['vendor_data']))
@foreach($row['yearly_data'][$year]['vendor_data'] as $index => $vData)
{{ $vData['vendor_name'] }}:
@endforeach
@else
-
@endif
|
@if(isset($row['yearly_data'][$year]['vendor_data']))
@php
// Cari nilai tertinggi dan terendah untuk tahun ini
$yearValues = array_column($row['yearly_data'][$year]['vendor_data'], 'avg');
$yearValues = array_filter($yearValues, function($v) { return is_numeric($v) && $v != '-'; });
$maxValue = !empty($yearValues) ? max($yearValues) : null;
$minValue = !empty($yearValues) ? min($yearValues) : null;
@endphp
@foreach($row['yearly_data'][$year]['vendor_data'] as $index => $vData)
@php
$currentValue = $vData['avg'];
$color = '#000'; // Default hitam
if (is_numeric($currentValue) && $currentValue != '-') {
if ($currentValue == $maxValue && $maxValue != $minValue) {
$color = '#28a745'; // tertinggi
} elseif ($currentValue == $minValue && $maxValue != $minValue) {
$color = '#dc3545'; // terendah
}
}
@endphp
{{ $currentValue }}
@endforeach
@else
-
@endif
|
@else
{{-- Regular Data --}}
@php
$nilai = $row['yearly_data'][$year]['nilai'];
$kesimpulan = $row['yearly_data'][$year]['kesimpulan'];
// Ambil kata_positif dan kata_negatif dari yearly_data atau row level
$kataPositif = $row['yearly_data'][$year]['kata_positif'] ??
$row['scale_data']->kata_positif ??
'Tinggi';
$kataNegatif = $row['yearly_data'][$year]['kata_negatif'] ??
$row['scale_data']->kata_negatif ??
'Rendah';
if ($row['jenis'] === 'Linear Scale' && is_numeric($nilai)) {
$nilaiFloat = floatval($nilai);
if ($nilaiFloat >= 4.5) {
$kesimpulan = 'Sangat ' . $kataPositif;
} elseif ($nilaiFloat >= 3.5) {
$kesimpulan = $kataPositif;
} elseif ($nilaiFloat >= 2.5) {
$kesimpulan = 'Sedang';
} elseif ($nilaiFloat >= 1.5) {
$kesimpulan = $kataNegatif;
} else {
$kesimpulan = 'Sangat ' . $kataNegatif;
}
}
@endphp
{{ $kesimpulan }} | {{ $nilai }} | @endif @endforeach {{-- Rata-rata Column --}}
@if(isset($row['vendor_averages']) && count($row['vendor_averages']) > 0)
@php
// Cari nilai tertinggi dan terendah untuk kolom rata-rata
$avgValues = array_column($row['vendor_averages'], 'avg');
$avgValues = array_filter($avgValues, function($v) { return is_numeric($v) && $v != '-'; });
$maxAvg = !empty($avgValues) ? max($avgValues) : null;
$minAvg = !empty($avgValues) ? min($avgValues) : null;
@endphp
@foreach($row['vendor_averages'] as $index => $vAvg)
@php
$currentAvg = $vAvg['avg'];
$colorAvg = '#000'; // Default hitam
if (is_numeric($currentAvg) && $currentAvg != '-') {
if ($currentAvg == $maxAvg && $maxAvg != $minAvg) {
$colorAvg = '#28a745'; // Hijau untuk tertinggi
} elseif ($currentAvg == $minAvg && $maxAvg != $minAvg) {
$colorAvg = '#dc3545'; // Merah untuk terendah
}
}
@endphp
{{ $vAvg['name'] }}:
{{ $currentAvg }}
@endforeach
@else
{{ $row['rata_rata_pertanyaan'] }}
@endif
|
| Rata-rata: | @foreach($analysis_years as $year){{ $yearly_averages[$year] ?? '-' }} | @endforeach{{ $overall_linear_average }} | |||||
| No | Pertanyaan | Tipe | @foreach($analysis_surveys as $survey){{ $survey->subjudul }} | @endforeachRata-rata | |||
|---|---|---|---|---|---|---|---|
| Kesimpulan | Nilai | @endforeach||||||
| {{ $row['no'] }} | {!! strip_tags($row['soal']) !!} | {{ $row['jenis'] }} | @foreach($analysis_surveys as $survey) @if(isset($row['survey_data'][$survey->idsurvei]['is_group']) && $row['survey_data'][$survey->idsurvei]['is_group']) {{-- Group Linear Scale - Data per Vendor --}}
@if(isset($row['survey_data'][$survey->idsurvei]['vendor_data']))
@foreach($row['survey_data'][$survey->idsurvei]['vendor_data'] as $index => $vData)
{{ $vData['vendor_name'] }}:
@endforeach
@else
-
@endif
|
@if(isset($row['survey_data'][$survey->idsurvei]['vendor_data']))
@php
// Cari nilai tertinggi dan terendah untuk survey ini
$surveyValues = array_column($row['survey_data'][$survey->idsurvei]['vendor_data'], 'avg');
$surveyValues = array_filter($surveyValues, function($v) { return is_numeric($v) && $v != '-'; });
$maxValue = !empty($surveyValues) ? max($surveyValues) : null;
$minValue = !empty($surveyValues) ? min($surveyValues) : null;
@endphp
@foreach($row['survey_data'][$survey->idsurvei]['vendor_data'] as $index => $vData)
@php
$currentValue = $vData['avg'];
$color = '#000'; // Default hitam
if (is_numeric($currentValue) && $currentValue != '-') {
if ($currentValue == $maxValue && $maxValue != $minValue) {
$color = '#28a745'; // tertinggi
} elseif ($currentValue == $minValue && $maxValue != $minValue) {
$color = '#dc3545'; // terendah
}
}
@endphp
{{ $currentValue }}
@endforeach
@else
-
@endif
|
@else
{{-- Regular Data --}}
@php
$nilai = $row['survey_data'][$survey->idsurvei]['nilai'];
$kesimpulan = $row['survey_data'][$survey->idsurvei]['kesimpulan'];
// Ambil kata_positif dan kata_negatif dari survey_data atau row level
$kataPositif = $row['survey_data'][$survey->idsurvei]['kata_positif'] ??
$row['scale_data']->kata_positif ??
'Tinggi';
$kataNegatif = $row['survey_data'][$survey->idsurvei]['kata_negatif'] ??
$row['scale_data']->kata_negatif ??
'Rendah';
if ($row['jenis'] === 'Linear Scale' && is_numeric($nilai)) {
$nilaiFloat = floatval($nilai);
if ($nilaiFloat >= 4.5) {
$kesimpulan = 'Sangat ' . $kataPositif;
} elseif ($nilaiFloat >= 3.5) {
$kesimpulan = $kataPositif;
} elseif ($nilaiFloat >= 2.5) {
$kesimpulan = 'Sedang';
} elseif ($nilaiFloat >= 1.5) {
$kesimpulan = $kataNegatif;
} else {
$kesimpulan = 'Sangat ' . $kataNegatif;
}
}
@endphp
{{ $kesimpulan }} | {{ $nilai }} | @endif @endforeach {{-- Rata-rata Column --}}
@if(isset($row['vendor_averages']) && count($row['vendor_averages']) > 0)
@php
// Cari nilai tertinggi dan terendah untuk kolom rata-rata
$avgValues = array_column($row['vendor_averages'], 'avg');
$avgValues = array_filter($avgValues, function($v) { return is_numeric($v) && $v != '-'; });
$maxAvg = !empty($avgValues) ? max($avgValues) : null;
$minAvg = !empty($avgValues) ? min($avgValues) : null;
@endphp
@foreach($row['vendor_averages'] as $index => $vAvg)
@php
$currentAvg = $vAvg['avg'];
$colorAvg = '#000'; // Default hitam
if (is_numeric($currentAvg) && $currentAvg != '-') {
if ($currentAvg == $maxAvg && $maxAvg != $minAvg) {
$colorAvg = '#28a745'; // Hijau untuk tertinggi
} elseif ($currentAvg == $minAvg && $maxAvg != $minAvg) {
$colorAvg = '#dc3545'; // Merah untuk terendah
}
}
@endphp
{{ $vAvg['name'] }}:
{{ $currentAvg }}
@endforeach
@else
{{ $row['rata_rata_pertanyaan'] }}
@endif
|
| Rata-rata: | @foreach($analysis_surveys as $survey){{ $survey_averages[$survey->idsurvei]['average'] ?? '-' }} | @endforeach{{ $overall_linear_average }} | |||||
| No | Pertanyaan | Tipe | Kesimpulan | Nilai |
|---|---|---|---|---|
| {{ $index + 1 }} | {!! strip_tags($summary['soal']) !!} | {{ $summary['jenis'] }} | {!! $summary['kesimpulan'] !!} | {!! $summary['nilai'] !!} |
| Rata-rata: | {{ $overall_linear_average }} | |||