@extends('layouts.app') @section('title', '문서 인쇄 - ' . $document->title) @section('content')
{{-- 상단 버튼 --}}

{{ $document->title }}

{{ $document->document_no }}

{{-- 성적서 본문 --}}
@php $template = $document->template; $hasComplexCol = $template->columns->contains(fn($c) => $c->column_type === 'complex' && $c->sub_labels); @endphp {{-- 섹션별 검사 테이블 --}} @if($template->sections && $template->sections->count() > 0) @foreach($template->sections as $sectionIndex => $section) {{-- 섹션 제목 --}} @if($template->sections->count() > 1)

{{ $section->title }}

@endif {{-- 검사 기준 이미지 --}} @if($section->image_path)
{{ $section->title }}
@endif {{-- 검사 데이터 테이블 --}} @if($section->items->count() > 0 && $template->columns->count() > 0) {{-- 테이블 헤더 --}} @foreach($template->columns as $col) @if($col->column_type === 'complex' && $col->sub_labels) @else @endif @endforeach {{-- 서브 라벨 행 (complex 컬럼) --}} @if($hasComplexCol) @foreach($template->columns as $col) @if($col->column_type === 'complex' && $col->sub_labels) @foreach($col->sub_labels as $subLabel) @endforeach @endif @endforeach @endif {{-- 테이블 바디 --}} @foreach($section->items as $rowIndex => $item) @foreach($template->columns as $col) @if($col->column_type === 'complex' && $col->sub_labels) {{-- complex: 서브 라벨별 측정값 --}} @foreach($col->sub_labels as $subIndex => $subLabel) @php $fieldKey = "s{$section->id}_r{$rowIndex}_c{$col->id}_sub{$subIndex}"; $savedVal = $document->data->where('field_key', $fieldKey)->first()?->field_value ?? ''; @endphp @endforeach @elseif($col->column_type === 'select') {{-- select: 판정 --}} @php $fieldKey = "s{$section->id}_r{$rowIndex}_c{$col->id}"; $savedVal = $document->data->where('field_key', $fieldKey)->first()?->field_value ?? ''; @endphp @elseif($col->column_type === 'check') {{-- check: OK 체크 --}} @php $fieldKey = "s{$section->id}_r{$rowIndex}_c{$col->id}"; $savedVal = $document->data->where('field_key', $fieldKey)->first()?->field_value ?? ''; @endphp @elseif($col->column_type === 'measurement') {{-- measurement: 수치 --}} @php $fieldKey = "s{$section->id}_r{$rowIndex}_c{$col->id}"; $savedVal = $document->data->where('field_key', $fieldKey)->first()?->field_value ?? ''; @endphp @else {{-- text: 정적 데이터 또는 입력 텍스트 --}} @php $staticValue = match(true) { str_contains(strtolower($col->label), 'no') && strlen($col->label) <= 4 => $rowIndex + 1, in_array($col->label, ['검사항목', '항목']) => $item->getFieldValue('item'), in_array($col->label, ['검사기준', '기준']) => $item->getFieldValue('standard'), in_array($col->label, ['검사방식', '방식', '검사방법']) => $item->getFieldValue('method'), in_array($col->label, ['검사주기', '주기']) => $item->getFieldValue('frequency'), in_array($col->label, ['규격', '적용규격', '관련규정']) => $item->getFieldValue('regulation'), in_array($col->label, ['분류', '카테고리']) => $item->getFieldValue('category'), default => null, }; @endphp @if($staticValue !== null) @else @php $fieldKey = "s{$section->id}_r{$rowIndex}_c{$col->id}"; $savedVal = $document->data->where('field_key', $fieldKey)->first()?->field_value ?? ''; @endphp @endif @endif @endforeach @endforeach
{{ $col->label }} {{ $col->label }}
{{ $subLabel }}
{{ $savedVal ?: '-' }} @if($savedVal) {{ $savedVal }} @else - @endif @if($savedVal === 'OK') OK @else - @endif {{ $savedVal ?: '-' }} {{ $staticValue }} {{ $savedVal ?: '-' }}
@endif @endforeach @endif {{-- 종합판정 --}} @if($template->footer_judgement_label)
@php $remarkVal = $document->data->where('field_key', 'footer_remark')->first()?->field_value ?? ''; @endphp @if($remarkVal) @endif
{{ $template->footer_judgement_label ?? '종합판정' }} @php $judgementVal = $document->data->where('field_key', 'footer_judgement')->first()?->field_value ?? ''; @endphp @if($judgementVal) {{ $judgementVal }} @else 미완료 @endif
{{ $template->footer_remark_label ?? '비고' }} {{ $remarkVal }}
@endif
@endsection