diff --git a/app/Http/Controllers/ReportsController.php b/app/Http/Controllers/ReportsController.php index 388e0fc..b1df9a8 100644 --- a/app/Http/Controllers/ReportsController.php +++ b/app/Http/Controllers/ReportsController.php @@ -178,6 +178,10 @@ class ReportsController extends Controller ) SELECT t.*, + ttll.start_latitude, + ttll.start_longitude, + ttll.finish_latitude, + ttll.finish_longitude, tm.total_mileage, tm.total_trip, vt.name AS type_name, @@ -189,6 +193,7 @@ class ReportsController extends Controller JOIN TotalMileage tm ON t.id = tm.id LEFT JOIN t_vehicles tvt ON tvt.id = t.vhc_id LEFT JOIN t_vehicles_cats vt ON vt.id = tvt.cat_id + LEFT JOIN t_trips_latitude_longitude ttll ON t.id = ttll.tripsid WHERE t.start BETWEEN ? AND ? AND (? IS NULL OR t.id = ?) diff --git a/resources/views/menu_v1/reports/vehicle_trips.blade.php b/resources/views/menu_v1/reports/vehicle_trips.blade.php index 9f4c7d9..b5027e4 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 {{--
@@ -129,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 + + -->
@@ -207,17 +207,17 @@ --> @endsection @@ -472,30 +472,46 @@ render: (data, type, row, meta) => { // saat export, hanya tampilkan lokasi tanpa tanggal/jam if (type === 'export') { + const nearestSite = findNearestSite( + row.start_latitude, + row.start_longitude + ); + + if (nearestSite) { + return formatSiteLabel(nearestSite); + } return Helper.shortenText(decodeURIComponent(row.startLoc || 'address'), 255) || "-"; } + const nearestSite = findNearestSite( + row.start_latitude, + row.start_longitude + ); + + if (nearestSite) { + return formatSiteLabel(nearestSite); + } return ` ${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) => { - // console.log(row) - // // saat export, hanya tampilkan lokasi tanpa tanggal/jam - // if (type === 'export') { - // return Helper.shortenText(decodeURIComponent(row.finishLoc || - // 'address'), 255) || "-"; - // } - // return ` + // { + // data: 'finish', + // render: (data, type, row, meta) => { + // console.log(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) || "-"} // `; - // } - // }, + // } + // }, { data: 'finish', render: (data, type, row) => { @@ -507,14 +523,14 @@ // Saat export Excel if (type === 'export') { - // const nearestSite = findNearestSite( - // row.latitude, - // row.longitude - // ); + const nearestSite = findNearestSite( + row.finish_latitude, + row.finish_longitude + ); - // if (nearestSite) { - // return formatSiteLabel(nearestSite); - // } + if (nearestSite) { + return formatSiteLabel(nearestSite); + } return Helper.shortenText( decodeURIComponent(row.finishLoc || 'address'), @@ -522,6 +538,15 @@ ) || '-'; } + const nearestSite = findNearestSite( + row.finish_latitude, + row.finish_longitude + ); + + if (nearestSite) { + return formatSiteLabel(nearestSite); + } + // Tampilan di tabel return ` ${moment.unix(data + AppState.TIMEFIX) @@ -536,7 +561,7 @@ `; } }, - { + { className: 'text-start', render: function(data, type, row, meta) { const start = moment.unix(row.start); diff --git a/resources/views/template/navbar.blade.php b/resources/views/template/navbar.blade.php index 133e7f2..80d9298 100755 --- a/resources/views/template/navbar.blade.php +++ b/resources/views/template/navbar.blade.php @@ -69,12 +69,13 @@ @endif @if ( - auth()->user()->can('config_truck_type.view') || - auth()->user()->can('config_master_device.view') || + auth()->user()->can('config_truck_type.view') || + auth()->user()->can('config_master_device.view') || auth()->user()->can('config_logs_gps.view') || auth()->user()->can('config_distribution_category.view') || auth()->user()->can('config_pool.view') || auth()->user()->can('user_logs.view') + || auth()->user()->can('config_vehicle_maintenance_type.view') ) @endcan + @can('vehicle_maintenance_type.view') +
  • + Maintenance Type +
  • + @endcan @can('config_master_device.view')
  • Master Devices
  • @endcan - @can('config_logs_gps.view') + @can('config_logs_gps.view')
  • Logs Gps
  • diff --git a/routes/web.php b/routes/web.php index c321824..4cd369b 100755 --- a/routes/web.php +++ b/routes/web.php @@ -141,6 +141,10 @@ Route::middleware(["auth", "auth.user"])->group(function () { ->name("view_config_truck_types") ->middleware("permission:config_truck_type.view"); + Route::get("/config/maintenance_type", "VehicleMaintenanceController@view_vehicle_maintenance_type") + ->name("view_vehicle_maintenance_type") + ->middleware("permission:vehicle_maintenance_type.view"); + Route::get("/config/devices", "DevicesController@view_devices") ->name("view_config_devices") ->middleware("permission:config_master_device.view"); @@ -611,6 +615,24 @@ Route::middleware(["auth", "auth.user"])->group(function () { "api_conf_del_truck_type" ); + Route::get("/api/conf/maintenance_type/{id}", "VehicleMaintenanceController@api_show_maintenance_type")->name( + "api_show_maintenance_type" + ); + + Route::get("/api/conf/maintenance_type", "VehicleMaintenanceController@api_list_vehicle_maintenance_type")->name( + "api_list_vehicle_maintenance_type" + ); + + Route::post("/api/conf/maintenance_type", "VehicleMaintenanceController@api_add_vehicle_maintenance_type")->name( + "api_add_vehicle_maintenance_type" + ); + Route::put("/api/conf/maintenance_type/{id}", "VehicleMaintenanceController@api_edit_vehicle_maintenance_type")->name( + "api_edit_vehicle_maintenance_type" + ); + Route::delete("/api/conf/maintenance_type/{id}", "VehicleMaintenanceController@api_del_vehicle_maintenance_type")->name( + "api_del_vehicle_maintenance_type" + ); + Route::get("/api/devices", "DevicesController@api_list_devices")->name("api_list_devices"); Route::get("/api/devices/{id}", "DevicesController@api_show_device")->name("api_show_device"); Route::post("/api/devices", "DevicesController@api_add_device")->name("api_add_device");