diff --git a/resources/views/menu_v1/reports/vehicle_trips.blade.php b/resources/views/menu_v1/reports/vehicle_trips.blade.php index 0264270..37f9d52 100644 --- a/resources/views/menu_v1/reports/vehicle_trips.blade.php +++ b/resources/views/menu_v1/reports/vehicle_trips.blade.php @@ -25,8 +25,8 @@ @if ($user_role == \App\Models\Users::ROLE_VENDOR || $user_role == \App\Models\Users::ROLE_ADMIN) @can('vehicle.create') + + --> @endcan {{--
@@ -114,6 +114,9 @@ Number of Trip Total Mileage (km) Trip # + Date + Hour Start + Hour Finish Start Finish Duration @@ -126,73 +129,73 @@ + + 24-679 + 24-679 + 26 + 442.3 + + + 24-682 + 24-682 + 28 + 312.7 + + + 24-877 + 24-877 + 15 + 276.4 + + + A.16-347 + A.16-347 + 37 + 543.2 + + + AL2025-B21 + AL2025-B21 + 18 + 295.4 + + + B.16-542 + B.16-542 + 32 + 478.2 + + + B.24-264 + B.24-264 + 24 + 188.4 + + + B.24-274 + B.24-274 + 33 + 440.1 + + + Ford Ranger + 26-199 + 30 + 631.4 + + + Nissan AD + B.10-517 + 27 + 375.9 + + + Triton + A.29-127 + 26 + 508.2 + + -->
@@ -204,17 +207,17 @@ --> @endsection @@ -377,24 +380,55 @@ data: "trip_id", className: 'text-end' }, + // ==== KOLOM BARU: hanya untuk export, tidak tampil di layar ==== + { + data: 'start', + visible: false, + render: (data, type, row, meta) => { + return moment.unix(data + AppState.TIMEFIX).format('DD MMM YYYY'); + } + }, + { + data: 'start', + visible: false, + render: (data, type, row, meta) => { + return moment.unix(data + AppState.TIMEFIX).format('HH:mm:ss'); + } + }, + { + data: 'finish', + visible: false, + render: (data, type, row, meta) => { + return moment.unix(data + AppState.TIMEFIX).format('HH:mm:ss'); + } + }, + // ==== END KOLOM BARU ==== { data: 'start', render: (data, type, row, meta) => { - // let addr = row + // saat export, hanya tampilkan lokasi tanpa tanggal/jam + if (type === 'export') { + return Helper.shortenText(decodeURIComponent(row.startLoc || + 'address'), 255) || "-"; + } return ` - ${moment.unix(data + AppState.TIMEFIX).format('DD MMM YYYY HH:mm:ss')}
- ${Helper.shortenText(decodeURIComponent(row.startLoc || 'address'), 255) || "-"} - `; + ${moment.unix(data + AppState.TIMEFIX).format('DD MMM YYYY HH:mm:ss')}
+ ${Helper.shortenText(decodeURIComponent(row.startLoc || 'address'), 255) || "-"} + `; } }, { data: 'finish', render: (data, type, row, meta) => { - // let addr = row + // saat export, hanya tampilkan lokasi tanpa tanggal/jam + if (type === 'export') { + return Helper.shortenText(decodeURIComponent(row.finishLoc || + 'address'), 255) || "-"; + } return ` - ${moment.unix(data + AppState.TIMEFIX).format('DD MMM YYYY HH:mm:ss')}
- ${Helper.shortenText(decodeURIComponent(row.finishLoc || 'address'), 255) || "-"} - `; + ${moment.unix(data + AppState.TIMEFIX).format('DD MMM YYYY HH:mm:ss')}
+ ${Helper.shortenText(decodeURIComponent(row.finishLoc || 'address'), 255) || "-"} + `; } }, { @@ -403,7 +437,6 @@ const start = moment.unix(row.start); const finish = moment.unix(row.finish); - // calculate duration const diff = moment.duration(finish.diff(start)); const hours = Math.floor(diff.asHours()); const minutes = diff.minutes(); @@ -429,7 +462,6 @@ data: 'mileage', className: 'text-end', render: function(data, type, row, meta) { - // const mileage = (row.finishMileage !== null && row.startMileage !== null) ? (row.finishMileage - row.startMileage) : row.mileage; return (parseFloat(data).toFixed(2)); } }, @@ -437,7 +469,6 @@ data: 'fuel_consume', className: 'text-end', render: function(data, type, row, meta) { - // const mileage = (row.finishMileage !== null && row.startMileage !== null) ? (row.finishMileage - row.startMileage) : row.mileage; return (parseFloat(data / 10).toFixed(1)); } }, @@ -446,16 +477,15 @@ className: 'text-start' }, { - // visible: false, data: 'vhc_id', className: 'text-center', render: function(data, type, row, meta) { let action = ` - - - - `; + + + + `; return action; } }, @@ -474,7 +504,6 @@ .data() .each(function(group, i) { if (last !== group) { - // count how many rows this vhc_id spans const rowspanCount = api .column(0, { page: 'current' @@ -484,24 +513,19 @@ return d === group; }).length; - // merge vhc_id $(rows).eq(i).find('td:eq(0)').attr('rowspan', rowspanCount); $(rows).eq(i).find('td:eq(1)').attr('rowspan', rowspanCount); $(rows).eq(i).find('td:eq(2)').attr('rowspan', rowspanCount); $(rows).eq(i).find('td:eq(3)').attr('rowspan', rowspanCount); $(rows).eq(i).find('td:eq(4)').attr('rowspan', rowspanCount); - // $(rows).eq(i).find('td:eq(3)').attr('rowspan', rowspanCount); - last = group; } else { - // remove duplicate cells $(rows).eq(i).find('td:eq(0)').remove(); $(rows).eq(i).find('td:eq(0)').remove(); $(rows).eq(i).find('td:eq(0)').remove(); $(rows).eq(i).find('td:eq(0)').remove(); $(rows).eq(i).find('td:eq(0)').remove(); - // $(rows).eq(i).find('td:eq(0)').remove(); } }); }, @@ -509,14 +533,17 @@ extend: 'excelHtml5', title: () => { return ` - Vehicle Trip Report - - ${moment($('#tgl0').val(), "DD-MM-YYYY HH:mm").format('DD MMM YYYY HH:mm')} - to - ${moment($('#tgl1').val(), "DD-MM-YYYY HH:mm").format('DD MMM YYYY HH:mm')}` + Vehicle Trip Report - + ${moment($('#tgl0').val(), "DD-MM-YYYY HH:mm").format('DD MMM YYYY HH:mm')} + to + ${moment($('#tgl1').val(), "DD-MM-YYYY HH:mm").format('DD MMM YYYY HH:mm')}` }, className: 'd-none', // hide default button exportOptions: { - columns: ':visible:not(:last-child)' // + // index kolom baru (7,8,9 = Date, Hour Start, Hour Finish) sudah dimasukkan manual + // karena kolom tsb visible:false sehingga tidak tercover selector ':visible' + columns: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], + orthogonal: 'export' } }] });