Anons79 Mini Shell

Directory : /home/aplikasiposinfo/.trash/routes/
Upload File :
Current File : /home/aplikasiposinfo/.trash/routes/api.php

<?php

use App\Http\Controllers\Api\ApiAbsensiController;
use App\Http\Controllers\Api\ApiAuthController;
use App\Http\Controllers\Api\ApiIzinController;
use App\Http\Controllers\Api\ApiKunjunganController;
use App\Http\Controllers\Api\ApiListKaryawanController;
use App\Http\Controllers\Api\ApiController;
use App\Http\Controllers\Api\ApiPermintaanAbsensiController;
use App\Http\Controllers\Api\ApiReimbursementController;
use App\Http\Controllers\Api\ApiRiwayatAbsensiController;
use App\Http\Controllers\Api\ApiTimesheetController;
use App\Http\Controllers\ForgotPasswordController;
use App\Models\Karyawan;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Cache;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
// Route::get('forget-password', [ForgotPasswordController::class, 'showForgetPasswordForm'])->name('forget.password.get');
Route::post('forget-password', [ForgotPasswordController::class, 'submitForgetPasswordForm'])->name('forget.password.post'); 
Route::middleware('auth:sanctum')->get('/profil', function (Request $request) {
    $user = $request->user();

    $data = Cache::remember('user-'.$user->id, 3600, function ()use($user) {
        if($user->_type == "karyawan"){
            $data = Karyawan::with('jadwal_kerja','departemen','lokasi_absen')->find($user->id);
        } else {
            $data = $user;
        }
        return $data;
    });
    
    return response()->json(['data'=>$data]);
});

Route::middleware('auth:sanctum')->get('/unit-karyawan', function (Request $request) {
    $data = $request->user()->jabatan->unit;
    // if($user->_type == "karyawan"){
    //     $data = Karyawan::with('jadwal_kerja')->find($user->id);
    // } else {
    //     $data = $user;
    // }
    return response()->json(['data'=>$data]);
});

Route::get('/server', function (Request $request) {
    //return server info
    return response()->json(['data'=>[
        'server'=>$_SERVER,
        'time' => time(),
        'request'=>$request->all()
    ]]);
});
Route::get('/test-check-absensi/{id}',[ApiAbsensiController::class,'testCheckAbsensi']);

Route::get('/get-karyawan-log',[ApiAuthController::class,'getKaryawanLog']);

Route::post('login',[ApiAuthController::class,'login'])->middleware('guest:sanctum');
Route::get('/setting',[ApiController::class,'setting']);
Route::group(['middleware'=>'auth:sanctum'],function(){
    
    Route::get('/kalender-jadwal-kerja',[ApiController::class,'kalenderJadwalKerja']);
    Route::get('/foto-profile',[ApiAuthController::class,'fotoProfile']);
    Route::post('/update-profile',[ApiAuthController::class,'updateProfile']);
    Route::get('/absen-hari-ini',[ApiAbsensiController::class,'absenHariIni']);
    Route::get('/cek-absensi',[ApiAbsensiController::class,'cekAbsensi']);

    
    
    Route::get('/riwayat-absensi',[ApiRiwayatAbsensiController::class,'riwayatAbsensi']);
    Route::get('/riwayat-absensi/{id}',[ApiRiwayatAbsensiController::class,'getRiwayatAbsensi']);
    Route::get('/riwayat-absensi/{id}/foto',[ApiRiwayatAbsensiController::class,'fotoRiwayatAbsensi']);

    Route::get('/riwayat-kunjungan',[ApiKunjunganController::class,'riwayatKunjungan']);
    Route::get('/riwayat-kunjungan/{id}',[ApiKunjunganController::class,'getRiwayatKunjungan']);
    Route::get('/riwayat-kunjungan/{id}/tanda-tangan',[ApiKunjunganController::class,'fotoTandaTangan']);
    
    Route::get('/riwayat-timesheet',[ApiTimesheetController::class,'riwayatTimesheet']);
    Route::get('/timesheet/{id}',[ApiTimesheetController::class,'getTimesheet']);
    Route::post('/tambah-timesheet',[ApiTimesheetController::class,'tambahTimesheet']);
    Route::post('/update-timesheet/{id}',[ApiTimesheetController::class,'updateTimesheet']);

    Route::get('/reimbursement-category',[ApiReimbursementController::class,'getReimbursementCategory']);
    Route::get('/riwayat-reimbursement',[ApiReimbursementController::class,'riwayatReimbursement']);
    Route::post('/tambah-reimbursement',[ApiReimbursementController::class,'tambahReimbursement']);

    Route::post('/tambah-izin',[ApiIzinController::class,'tambahIzin']);
    Route::get('/riwayat-izin',[ApiIzinController::class,'riwayatIzin']);
    Route::get('/izin/{id}',[ApiIzinController::class,'detailIzin']);

    


    Route::group(['prefix'=>'absensi'],function(){
        Route::post('/check-in',[ApiAbsensiController::class,'checkIn']);
        Route::post('/check-out',[ApiAbsensiController::class,'checkOut']);

        Route::post('/break',[ApiController::class,'break']);
        Route::post('/after-break',[ApiController::class,'aftterBreak']);

        Route::post('/overtime-in',[ApiController::class,'overtimeIn']);
        Route::post('/overtime-out',[ApiController::class,'overtimeOut']);
    });

    Route::post('/mulai-kunjungan',[ApiKunjunganController::class,'mulaiKunjungan']);
    Route::post('/selesai-kunjungan',[ApiKunjunganController::class,'selesaiKunjungan']);
    Route::post('/update-fcm-token',[ApiAuthController::class,'updateFcmToken']);


    //bagian admin
    Route::get('/permintaan-absensi',[ApiPermintaanAbsensiController::class,'index']);
    Route::get('/permintaan-absensi/{id}',[ApiPermintaanAbsensiController::class,'show']);
    Route::get('/permintaan-absensi/{id}/foto',[ApiPermintaanAbsensiController::class,'fotoRiwayatAbsensi']);
    Route::post('/permintaan-absensi/{id}',[ApiPermintaanAbsensiController::class,'updateStatus']);

    Route::get('/list-karyawan',[ApiListKaryawanController::class,'index']);
    Route::get('/karyawan/{id}',[ApiListKaryawanController::class,'show']);

    
});

Route::group(['prefix'=>'admin','as'=>'admin.'],function(){
    Route::get('/permintaan-absensi',[\App\Http\Controllers\Api\Admin\ApiPermintaanAbsensiController::class,'index'])->name('permintaan-absensi.index');
});

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]