@extends('layouts.cleaning') @section('content')
TANRAIL ONE | Cleaning Operations | {{ $branch->name }}

Today's Operations

{{ today()->format('l, F j, Y') }}
@if(session('error'))
{{ session('error') }}
@endif @if(session('success'))
{{ session('success') }}
@endif @if($errors->any())
@endif @if(!$dailyControl)

Ready to Start Today's Operations?

Start the daily control to track workforce attendance and operational activities for {{ $branch->name }}.

@csrf
@else

@if($dailyControl->workforce_check_status === 'Completed') Team — Today's Shift Completed @else Morning Workforce Check Pending @endif

@if($dailyControl->workforce_check_status === 'Completed') Manage team checkout and status. @else Record attendance for today's shift. @endif

@if($dailyControl->workforce_check_status === 'Completed' && $dailyControl->status !== 'Submitted' && $dailyControl->status !== 'Approved') @php $eligibleForBulk = $dailyControl->workerAttendances->where('status', 'Present')->count(); @endphp @if($eligibleForBulk > 0)
@csrf
@endif @endif
@if($dailyControl->workforce_check_status !== 'Completed')
@csrf
@forelse($workers as $index => $worker) @php $attendance = $dailyControl->workerAttendances->where('cleaning_worker_id', $worker->id)->first(); $isPresent = $attendance ? true : false; $arrivalTime = $attendance && $attendance->arrival_time ? \Carbon\Carbon::parse($attendance->arrival_time)->format('H:i') : ''; @endphp @empty @endforelse
Worker Present Arrival Time
{{ $worker->first_name }} {{ $worker->last_name }}
ID: {{ $worker->id_number }}
No active workers found in this Business Unit.
@else
{{ $dailyControl->workerAttendances->count() }}
Assigned
{{ $dailyControl->workerAttendances->whereIn('status', ['Present', 'CheckedOut'])->count() }}
Working
{{ $dailyControl->workerAttendances->where('status', 'CheckedOut')->count() }}
Checked Out
{{ $dailyControl->workerAttendances->where('status', 'Absent')->count() }}
Absent
@foreach($dailyControl->workerAttendances as $attendance) @endforeach
Worker Status Check In Check Out Action
{{ $attendance->cleaningWorker->first_name }} {{ $attendance->cleaningWorker->last_name }}
ID: {{ $attendance->cleaningWorker->id_number }}
@if($attendance->status === 'Present') Present @elseif($attendance->status === 'CheckedOut') Checked Out @elseif($attendance->status === 'Absent') Absent @else {{ $attendance->status }} @endif {{ $attendance->check_in_at ? $attendance->check_in_at->format('H:i') : '--:--' }} {{ $attendance->check_out_at ? $attendance->check_out_at->format('H:i') : '--:--' }} @if($attendance->status === 'Present' && !in_array($dailyControl->status, ['Submitted', 'Approved']))
@csrf
@elseif($attendance->status === 'CheckedOut') Completed @elseif($attendance->status === 'Absent') No action @endif
@endif
@if($dailyControl->workforce_check_status === 'Completed')

Work Activities

Record actual cleaning activities and assign participating workers.

@if($dailyControl->status !== 'Submitted')
@csrf
@foreach($dailyControl->workerAttendances->where('is_present', true) as $attendance) @endforeach
@endif @if($dailyControl->workActivities->count() > 0)
@foreach($dailyControl->workActivities as $activity) @endforeach
Activity Workers Status Verification
{{ $activity->activity_name }}
{{ $activity->location ? $activity->location->name : 'General' }}
@foreach($activity->workerAttendances as $wa)
• {{ $wa->cleaningWorker->first_name }} {{ $wa->cleaningWorker->last_name }}
@endforeach
@if($dailyControl->status === 'Submitted') {{ $activity->status }} @else
@csrf @method('PATCH')
@endif @if($activity->started_at)
Started: {{ $activity->started_at->format('H:i') }}
@endif @if($activity->completed_at)
Ended: {{ $activity->completed_at->format('H:i') }}
@endif
@if($dailyControl->status === 'Submitted') {{ $activity->verification_status }} @else
@csrf @method('PATCH')
@endif
@else
No work activities recorded yet.
@endif

Operational Issues

@if($dailyControl->status !== 'Submitted')
@csrf
@endif @if($dailyControl->operationalIssues->count() > 0)
@foreach($dailyControl->operationalIssues as $issue)
{{ $issue->issue_type }}
@if($issue->status == 'Resolved') Resolved at {{ $issue->resolved_at->format('H:i') }} @else Open @endif
{{ $issue->description }}
@if($issue->status == 'Open') @if($dailyControl->status !== 'Submitted')
@csrf @method('PATCH')
@endif @else
Resolution: {{ $issue->resolution_notes }}
@endif
@endforeach
@endif

SGR Train Operations

Manage and track train coach cleaning inspections.

@if($dailyControl->status !== 'Submitted')
@csrf
@endif @if($dailyControl->sgrTrainOperations->count() > 0)
@foreach($dailyControl->sgrTrainOperations as $trainOp) @php // I am keeping logic in view for simplicity as context isn't passed here unless I override index method. // To be safer I'll just count directly. $totalCoaches = $trainOp->coachInspections->count(); $passedCoaches = $trainOp->coachInspections->where('inspection_status', 'Passed')->count(); @endphp @endforeach
Train Number Status Progress Action
{{ $trainOp->train_number }}
@if($trainOp->status === 'Submitted') Submitted @else Draft @endif
{{ $passedCoaches }} / {{ $totalCoaches }} Coaches Passed
Manage
@else
No SGR train operations recorded yet.
@endif

Fumigation Operations

Record discrete fumigation activities.

@if($dailyControl->status !== 'Submitted')
@csrf
@endif @if($dailyControl->fumigationOperations->count() > 0)
@foreach($dailyControl->fumigationOperations as $fumigation) @endforeach
Target Pesticide Applied Remarks Time
{{ ucfirst($fumigation->target_type) }}: {{ $fumigation->target_reference }}
@if($fumigation->pesticide_applied) Yes @else No @endif
{{ $fumigation->remarks ?? '-' }}
{{ $fumigation->created_at->format('H:i') }}
@else
No fumigation operations recorded yet.
@endif

Finalize Today's Operations

Review all information before submitting to the coordinator. This action cannot be undone.

@if($dailyControl->status === 'Submitted')
Submitted
@else
@csrf
@endif
@endif @endif
@endsection