{{-- Smart Report v2 - BTS / WTS analysis card grid. --}} {{-- Mirrors SmartReportService::GetBTSWTSPDF (lines 2574-2696). 4 cells per --}} {{-- page, BP (good-negative / bad-positive) folder, branched on Option->IS_NORMAL --}} @php /** @var array $group Group view-model from WebController v2 dispatch */ /** @var \App\Services\SmartReportV2Service $service */ $service = $service ?? app(\App\Services\SmartReportV2Service::class); $Package = $group['package'] ?? ($group['firstPackage'] ?? null); $rows = $Package ? $service->buildBtsWtsRows($Package) : []; $pages = array_chunk($rows, 4); if (empty($pages)) $pages = [[]]; $TestName = $Package->lABCATEGORYPACKAGE->REPORT_DISPLAY_NAME_AR ?? ($Package->lABCATEGORYPACKAGE->NAME_AR ?? ''); @endphp @foreach ($pages as $pageIdx => $pageRows)
@include('pdf.smart_report.components.backgrounds.bg', ['template' => 'smart-report', 'page' => 1]) @include('pdf.smart_report.components.patient_header', [ 'Order' => $Order, 'Profile' => $Profile, 'firstPackage' => $Package, 'Category' => $Package->lABCATEGORYPACKAGE->NAME_AR ?? '', 'Description' => $Package->lABCATEGORYPACKAGE->SMART_DESC_AR ?? '', ]) {{-- 4-up BTS/WTS grid --}} @foreach ($pageRows as $row) @php $x = $row['card_x']; $y = $row['card_y']; $headerText = $row['name_ar'] ?: $TestName; $titleFontSize = (mb_strlen($headerText, 'UTF-8') > 30) ? 8 : 10; @endphp
{{-- Card background --}} {{-- Title bar --}}
{{ $headerText }}
{{-- ── Meter island: BP gauge PNG + its Negative/Positive labels --}} {{-- as one unit. Island at the card origin (0,0), inner offsets --}} {{-- unchanged; move the island to reposition the whole gauge. --}}
{{-- BP image (good-negative / bad-positive) --}} @if (!empty($row['image'])) @endif {{-- Negative / Positive labels --}}
سلبي
ايجابي
{{-- /.sr-meter --}} {{-- Description --}}
{!! nl2br($service->isolateLtrRuns($row['desc_ar'] ?? '')) !!}
{{-- Result label (Negative / Positive) --}}
{{ $row['option_label'] }}
@endforeach
@endforeach