{{ $room ? 'Room Maintenance Details' : 'General Maintenance Details' }}
@if($room) Room {{ $room->room_number }} @else {{ $maintenance->location ?? 'General' }} @endif - Request #{{ $maintenance->id }}
@if($room){{ $room->roomType->name ?? 'No Type' }}
@endif
@if($room)
{{ ucfirst($room->status) }}
@endif
{{ ucfirst($maintenance->priority) }}
{{ ucfirst(str_replace('_', ' ', $maintenance->status)) }}
@if($room)
Floor {{ $room->floor }}
@endif
{{ $maintenance->location ?? 'General' }}
Active Maintenance Requests
This room has {{ $room->activeMaintenanceRequests->count() }} active maintenance request(s).
Room Images
@php
// Safely decode room images
$roomImages = [];
if (isset($room->images) && $room->images) {
if (is_array($room->images)) {
$roomImages = $room->images;
} elseif (is_string($room->images)) {
$decoded = json_decode($room->images, true);
if (is_array($decoded)) {
$roomImages = $decoded;
} else {
// Try comma-separated string
$roomImages = array_filter(array_map('trim', explode(',', $room->images)));
}
}
}
// Get first image or placeholder
$mainImage = !empty($roomImages) ? asset('storage/' . $roomImages[0]) : 'https://via.placeholder.com/800x400?text=No+Image';
@endphp
@if(!empty($roomImages))
@if(count($roomImages) > 1)
@endif
@foreach($roomImages as $index => $image)
@php
$imageUrl = asset('storage/' . $image);
@endphp
@endforeach
@endif
@else
No images available for this room.
{{ $room ? 'Room' : 'Location' }} Information
@if($room)
@else
@endif
| Room Number: | {{ $room->room_number }} |
| Floor: | {{ $room->floor ?? 'N/A' }} |
| Room Type: | {{ $room->roomType->name ?? 'No Type' }} |
| Status: | {{ ucfirst($room->status) }} |
{{ $maintenance->location ?? 'General Area' }}
This maintenance is for a general area, not a specific guest room.
Maintenance Request Details
| Request ID: | #{{ $maintenance->id }} |
|---|---|
| Title: | {{ $maintenance->title }} |
| Description: | {{ $maintenance->description ?? 'No description provided' }} |
| Type: | {{ ucfirst($maintenance->maintenance_type) }} |
| Priority: | {{ ucfirst($maintenance->priority) }} |
| Status: | {{ ucfirst(str_replace('_', ' ', $maintenance->status)) }} |
| Reported Date: | {{ $maintenance->reported_date->format('F j, Y') }} |
| Scheduled Date: | {{ $maintenance->scheduled_date->format('F j, Y') }} |
| Completed Date: | {{ $maintenance->completed_date->format('F j, Y') }} |
| Reported By: | {{ $maintenance->reportedBy->full_name ?? $maintenance->reportedBy->name ?? 'Unknown' }} |
| Assigned To: | {{ $maintenance->assignedTechnician->full_name ?? 'Not Assigned' }} |
Cost & Duration
| Estimated Cost: | @if($maintenance->estimated_cost) UGX {{ number_format($maintenance->estimated_cost, 2) }} @else Not estimated @endif |
|---|---|
| Actual Cost: | @if($maintenance->actual_cost) UGX {{ number_format($maintenance->actual_cost, 2) }} @else Not recorded @endif |
| Estimated Duration: | @if($maintenance->estimated_duration) {{ $maintenance->estimated_duration }} minutes @else Not estimated @endif |
| Actual Duration: | @if($maintenance->actual_duration) {{ $maintenance->actual_duration }} minutes @else Not recorded @endif |
| Materials Used: | |
@php
$materials = is_string($maintenance->materials_used) ?
json_decode($maintenance->materials_used, true) :
$maintenance->materials_used;
@endphp
@if(is_array($materials))
|
|
| Resolution Notes: | |
| {{ $maintenance->resolution_notes }} | |
Room Amenities
@php
// Safely decode amenities
$amenitiesArray = [];
if (isset($room->amenities) && $room->amenities) {
if (is_array($room->amenities)) {
$amenitiesArray = $room->amenities;
} elseif (is_string($room->amenities)) {
$decoded = json_decode($room->amenities, true);
if (is_array($decoded)) {
$amenitiesArray = $decoded;
} else {
// Try comma-separated string
$amenitiesArray = array_filter(array_map('trim', explode(',', $room->amenities)));
}
}
}
@endphp
@if(!empty($amenitiesArray))
@endif
@foreach($amenitiesArray as $amenity)
{{ $amenity }}
@endforeach
@else
No amenities listed for this room.
Room Description
@if($room->description)
@endif
{{ $room->description }}
@elseNo description available for this room.
Maintenance History Summary
View Full History{{ $room->maintenanceRequests->count() }}
Total Requests
{{ $room->activeMaintenanceRequests->count() }}
Active Requests
{{ $room->maintenanceRequests->where('status', 'completed')->count() }}
Completed
{{ $room->maintenanceRequests->where('priority', 'urgent')->count() }}
Urgent
Recent Maintenance Requests:
No maintenance history for this room.
Create First Request