@extends('layouts.app', ['class' => 'g-sidenav-show bg-gray-100']) @section('content') @include('layouts.navbars.auth.topnav', ['title' => ''])
@csrf @method('POST')

EDIT DRIVER


@php $username = session('username'); $user = DB::table('users')->where('username', $username)->first(); $isHRD = in_array(optional($user)->idroles, ['admhrd', 'admins']); $isComplete = isset($trs_pengiriman) && $trs_pengiriman->status == 'Complete'; $isPlanning = strtolower(trim($trs_pengiriman->status ?? '')) === 'planning'; $canEdit = ($isHRD && $isComplete) || ($isPlanning && blank($trs_pengiriman->keluar_pukul) && blank($trs_pengiriman->spidometer_out)); @endphp
@php // Cek apakah ada data kendaraan $hasKendaraan = isset($trs_pengiriman->idkendaraan); // Ambil nomor kendaraan, bisa dari field manual atau field normal $manualNomor = ''; if ($hasKendaraan) { // Coba cari nama kendaraan dari list (bukan manual) $kendaraanMatch = $kendaraan->firstWhere( 'idkendaraan', $trs_pengiriman->idkendaraan, ); $namaKendaraan = optional($kendaraanMatch)->namakendaraan; // Cek apakah pengisian nomor dilakukan manual (tanpa cocok kendaraan di master) $isManual = $trs_pengiriman->no_plat === null && !empty($trs_pengiriman->nomor_kendaraan_manual); if ($isManual) { $manualNomor = $trs_pengiriman->nomor_kendaraan_manual; } else { $manualNomor = $trs_pengiriman->no_plat; } // Tambahkan nama kendaraan jika ada if ($namaKendaraan) { $manualNomor .= ' - ' . $namaKendaraan; } } @endphp
@if ($canEdit) @else @endif
keluar_pukul ?: '' }}>
spidometer_out ?: '' }}>
spidometer_out || !$trs_pengiriman->keluar_pukul) disabled title="Isi data KELUAR dan selesaikan semua tugas terlebih dahulu" @endif>
spidometer_out || !$trs_pengiriman->keluar_pukul) disabled title="Isi data KELUAR dan selesaikan semua tugas terlebih dahulu" @endif>
@if ($trs_pengiriman->status != 'Complete')
@endif

Detail Penjadwalan DRIVER

@php $sorted_trs_detail_pengiriman = $trs_detail_pengiriman->sortByDesc('isactive'); $urut = 1; @endphp @foreach ($sorted_trs_detail_pengiriman as $detail) @php $isFilled = $detail->narahubung && $detail->masuk && $detail->keluar && $detail->dt_tugas && $detail->tujuan && $detail->pic && $detail->keterangan; if ($detail->isactive == '0') { $status = 'tugas-batal'; } elseif ($detail->isactive == '1' && $isFilled) { $status = 'tugas-selesai'; } else { $status = 'tugas-belum'; } @endphp {{-- --}} @endforeach
No Tujuan Jenis Tugas Detail Tugas PIC Masuk Keluar Yang Ditemui Keterangan
@if ($detail->isactive === '0' || $detail->keterangan === 'selesai') @else @endif {{ $urut++ }} {{ $detail->tujuan }}isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> {{ $detail->jenis_tugas }} isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" id="masuk-{{ $detail->id_dt_trs_pengiriman }}" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" id="keluar-{{ $detail->id_dt_trs_pengiriman }}" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> isactive === '0' ? 'disabled' : '' }} onchange="checkInputs('{{ $detail->id_dt_trs_pengiriman }}')" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}> isactive === '0' ? 'disabled' : '' }} {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
{{-- Tampilan mobile (< 576px) --}}
@php $putih = []; $hijau = []; $kuning = []; $merah = []; foreach ($sorted_trs_detail_pengiriman as $detail) { $isFilled = $detail->narahubung && $detail->masuk && $detail->keluar && $detail->dt_tugas && $detail->pic && $detail->keterangan; $isTertunda = Str::startsWith($detail->keterangan, 'tertunda'); if ($detail->isactive === '0') { $merah[] = $detail; } elseif ($isTertunda) { $kuning[] = $detail; } elseif ($detail->isactive === '1' && $isFilled) { $hijau[] = $detail; } else { $putih[] = $detail; } } $orderedDetails = array_merge($putih, $hijau, $kuning, $merah); @endphp @foreach ($orderedDetails as $detail) @php $isTertunda = Str::startsWith($detail->keterangan, 'tertunda'); $alasan = $isTertunda ? trim(Str::after($detail->keterangan, 'tertunda -')) : ''; $isFilled = $detail->narahubung && $detail->masuk && $detail->keluar && $detail->dt_tugas && $detail->pic && $detail->keterangan; $bgColor = 'white'; // default putih if ($detail->isactive === '0') { $bgColor = '#f8d7da'; // merah } elseif ($isTertunda) { $bgColor = 'rgba(255, 255, 0, 0.3)'; // kuning } elseif ($isFilled && $detail->isactive === '1') { $bgColor = '#d4edda'; // hijau } @endphp
{{-- Header dengan "Lihat Detail" dan ikon --}} {{-- Tujuan dan Jenis Tugas tetap tampil --}}

: {{ $detail->tujuan }}

: {{ $detail->jenis_tugas }}

{{-- Collapse Content (yang disembunyikan) --}}
{{-- Hidden Inputs --}} {{-- Tugas, jenis tugas, dan checkbox --}}
isactive === '0' ? 'disabled' : '' }} {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
isactive === '0' ? 'disabled' : '' }} {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
isactive === '0' ? 'disabled' : '' }} id="masuk-{{ $detail->id_dt_trs_pengiriman }}" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
isactive === '0' ? 'disabled' : '' }} id="keluar-{{ $detail->id_dt_trs_pengiriman }}" {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
isactive === '0' ? 'disabled' : '' }} {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
@php $isTertunda = Str::startsWith($detail->keterangan, 'tertunda'); $isDibatalkan = Str::startsWith($detail->keterangan, 'dibatalkan'); $isSelesai = $detail->keterangan === 'selesai'; $alasan = $isTertunda ? trim(Str::after($detail->keterangan, 'tertunda -')) : ($isDibatalkan ? trim(Str::after($detail->keterangan, 'dibatalkan -')) : ($isSelesai ? 'selesai' : '')); @endphp
isactive === '0' ? 'disabled' : '' }} {{ $detail->keterangan === 'selesai' ? 'disabled' : '' }}>
@if (!($detail->isactive === '0' || $detail->keterangan === 'selesai'))

Pilih untuk membatalkan tugas

@endif
@endforeach
Dibatalkan
Tertunda
Selesai
Belum selesai

Dokumentasi Penjadwalan

@forelse($dokumentasi as $img) @empty @endforelse
No. Gambar Aksi
{{ $loop->iteration }} Gambar {{ $loop->iteration }}
-- Belum ada gambar --

* Maksimal ukuran file upload adalah 2MB.

@forelse($dokumentasi as $img)

Gambar {{ $loop->iteration }}

Gambar {{ $loop->iteration }}
@empty

-- Belum ada gambar --

@endforelse
@endsection