Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/talent.gosepakat.id/routes/
Upload File :
Current File : /home/aplikasiposinfo/www/talent.gosepakat.id/routes/web.php

<?php

use App\Helpers\NotifWa;
use App\Http\Controllers\Admin\InstrukturController;
use App\Http\Controllers\Admin\PelatihanController;
use App\Http\Controllers\Admin\PendaftaranController;
use App\Http\Controllers\Admin\PesertaController;
use App\Http\Controllers\Admin\UserController;
use App\Http\Controllers\AjaxController;
use App\Http\Controllers\Auth\RegisteredUserController;
use App\Http\Controllers\CekSertifikatController;
use App\Http\Controllers\CronjobController;
use App\Http\Controllers\Front\CourseController;
use App\Http\Controllers\DashboardCotroller;
use App\Http\Controllers\Admin\JuknisPelatihanController;
use App\Http\Controllers\FrontJuknisPelatihanController;
use App\Http\Controllers\ProfileController;
use App\Http\Controllers\StorageController;
use App\Http\Controllers\WelcomeController;
use App\Imports\PesertasImport;
use App\Models\PelatihanPeserta;
use App\Models\Peserta;
use App\Models\User;
use Illuminate\Foundation\Application;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Storage;
use Inertia\Inertia;
use Maatwebsite\Excel\Facades\Excel;
use Illuminate\Support\Facades\DB;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/test', function () {
    if (!request()->okoc == "1234") {
        return "okoc";
    }
    $files = Storage::allFiles("jawaban-google-form");

    foreach ($files as $file) {
        if (str_contains($file, ".xlsx") && !str_contains($file, "~$")) {
            $model = new PesertasImport();
            $model->fileName = $file;
            try {
                Excel::import($model, $file);
            } catch (\Throwable $th) {
                dd($file, $th);
            }
        }


    }
});

Route::get('/test-wa', function () {
    return NotifWa::send("081545419859", "Test Talent");
});

Route::get('/duplicate-peserta', function () {
    // $duplicateRecords = Peserta::selectRaw('pesertas.id,count(`nik`) as `my_nik`,pesertas.nik,pesertas.nama_lengkap')
    //     ->whereNotNull('nik')
    //     ->where('nik','!=','')
    //     ->groupBy('nik')
    //     ->having('my_nik', '>', 1)
    //     ->get();

    $duplicateRecords = Peserta::whereDate('created_at','2025-02-09')->count();

    return $duplicateRecords;
});

Route::get('/fix-peserta-pelatihan', function () {
    $datas = PelatihanPeserta::has('user')->where('peserta_id', null)->get();
    foreach ($datas as $data) {
        $peserta = Peserta::where('user_id', $data->user_id)->first();
        if ($peserta) {
            $data->peserta_id = $peserta->id;
            $data->save();
        }
    }
    return $datas;
});

Route::get('/migrate', function () {
    if (!request()->okoc == "1234") {
        return "okoc";
    }
    return Artisan::call('migrate');
});

Route::get('/seed', function () {
    if (!request()->okoc == "1234") {
        return "okoc";
    }
    return Artisan::call('db:seed');
});

Route::get('/optimize', function () {
    if (!request()->okoc == "1234") {
        return "okoc";
    }
    return Artisan::call('optimize:clear');
});

Route::get('/clean-user', function () {
    if (!request()->okoc == "1234") {
        return "okoc";
    }
    $users = User::where('role', 'peserta')->doesntHave('peserta')->delete();
    return $users;
});

Route::get('/', [WelcomeController::class, 'index'])->name('welcome');
Route::get('/juknis-pelatihan', [FrontJuknisPelatihanController::class, 'index'])->name('juknis-pelatihan.index');
Route::get('/juknis-pelatihan/{id}',  [FrontJuknisPelatihanController::class, 'download'])->name('juknis-pelatihan.download');

Route::get("register/ajax-data/{type}", [RegisteredUserController::class, 'ajaxData'])->name('register.ajax-data');

Route::get('/course', [CourseController::class, 'index'])->name('course.index');
Route::get('/course/{id}', [CourseController::class, 'show'])->name('course.show');
Route::get('course-thumbnail/{id}', [CourseController::class, 'courseThumbnail'])->name('course.thumbnail');

Route::get('/cek-sertifikat', [CekSertifikatController::class, 'index'])->name('cek-sertifikat.index');

Route::get("cron-job/check-status-peserta", [CronjobController::class, 'checkStatusPeserta'])->name('cron-job.check-status-peserta');


Route::group(['middleware' => ['auth']], function () {
    Route::post('/course/{id}/join', [CourseController::class, 'join'])->name('course.join');
    Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit');
    Route::post('/profile', [ProfileController::class, 'update'])->name('profile.update');

    Route::post("kirim-tugas", [DashboardCotroller::class, 'kirimTugas'])->name('kirim-tugas');
    Route::get("ajax-wilayah/{type}", [AjaxController::class, 'ajaxWilayah'])->name('ajax-wilayah');
    Route::get('/my-avatar', [ProfileController::class, 'myAvatar'])->name('my-avatar');
    Route::get('/dashboard', [DashboardCotroller::class, 'index'])->name('dashboard');
    Route::get("storage/images", [StorageController::class, 'images'])->name('storage.images');
    Route::get("storage/file", [StorageController::class, 'file'])->name('storage.file');
    Route::get('pelatihan', [\App\Http\Controllers\Peserta\PelatihanController::class, 'index'])->name('pelatihan.index');
    Route::get('pelatihan/{id}', [\App\Http\Controllers\Peserta\PelatihanController::class, 'show'])->name('pelatihan.show');
    Route::post('pelatihan-peserta/{id}/review', [\App\Http\Controllers\Peserta\PelatihanController::class, 'review'])->name('pelatihan-peserta.review');

   

    Route::get('tugas', [\App\Http\Controllers\Peserta\TugasController::class, 'index'])->name('tugas.index');
    Route::get('tugas/{id}', [\App\Http\Controllers\Peserta\TugasController::class, 'show'])->name('tugas.show');

    Route::get('jadwal', [\App\Http\Controllers\Peserta\JadwalController::class, 'index'])->name('jadwal.index');

    Route::get('sertifikat', [\App\Http\Controllers\Peserta\SertifikatController::class, 'index'])->name('sertifikat.index');
    Route::get('sertifikat/{id}/print', [\App\Http\Controllers\Peserta\SertifikatController::class, 'print'])->name('sertifikat.print');

    Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['role:admin,instruktur']], function () {
        Route::resource('pelatihan', PelatihanController::class);
        Route::get('pelatihan/absensi/{pelatihan_jadwal_id}', [PelatihanController::class, 'absensi'])->name('pelatihan.absensi');
        Route::post('pelatihan/absensi/{pelatihan_jadwal_id}', [PelatihanController::class, 'simpanAbsensi'])->name('pelatihan.simpan-absensi');
        Route::get('pelatihan/absensi/{pelatihan_jadwal_id}/print', [PelatihanController::class, 'printAbsensi'])->name('pelatihan.absensi.print');
        Route::get('pelatihan/{pelatihan_id}/print-sertifikat', [PelatihanController::class, 'printSertifikat'])->name('pelatihan.print-sertifikat');

        Route::get('pelatihan/tugas/{pelatihan_id}', [PelatihanController::class, 'tugas'])->name('pelatihan.tugas');
        Route::get('pelatihan/export-peserta/{pelatihan_id}', [PelatihanController::class, 'exportPeserta'])->name('pelatihan.export-peserta');
        Route::post('pelatihan/tugas/approve/{id}', [PelatihanController::class, 'approveTugas'])->name('pelatihan.tugas.approve');
        Route::post('pelatihan/tugas/reject/{id}', [PelatihanController::class, 'rejectTugas'])->name('pelatihan.tugas.reject');
        Route::get('pelatihan/available-peserta/{id}', [PelatihanController::class, 'availablePeserta'])->name('pelatihan.available-peserta');
        Route::post('pelatihan/add-peserta/{id}', [PelatihanController::class, 'addPeserta'])->name('pelatihan.add-peserta');

        Route::post('pelatihan/{id}/finish', [PelatihanController::class, 'finishPelatihan'])->name('pelatihan.finish');

        Route::post('pelatihan/{id}/finish-peserta', [PelatihanController::class, 'finishPelatihanPeserta'])->name('pelatihan.finish-peserta');


        Route::resource('pendaftaran', PendaftaranController::class);
        Route::get('pendaftaran/{id}/print-sertifikat', [PendaftaranController::class, 'printSertifikat'])->name('pendaftaran.print-sertifikat');
        Route::get('pendaftaran/{id}/print', [PendaftaranController::class, 'printDetail'])->name('pendaftaran.print');

        Route::group(['prefix' => 'laporan', 'as' => 'laporan.'], function () {
            Route::get('sertifikat', [\App\Http\Controllers\Admin\LaporanController::class, 'sertifikatView'])->name('sertifikat.index');
            Route::post('sertifikat', [\App\Http\Controllers\Admin\LaporanController::class, 'sertifikatAction'])->name('sertifikat.action');
            Route::get('sertifikat-download', [\App\Http\Controllers\Admin\LaporanController::class, 'download'])->name('sertifikat.download');
        });
    });

    Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['role:admin']], function () {
        Route::resource('user', UserController::class);
        Route::get("user/ajax-data/{type}", [UserController::class, 'ajaxData'])->name('user.ajax-data');

        Route::resource('instruktur', InstrukturController::class);
        
       

        Route::get('peserta/download-template-import', [PesertaController::class, 'downloadTemplateImport'])->name('peserta.download-template-import');
        Route::get('peserta/import', [PesertaController::class, 'importView'])->name('peserta.import-view');
        Route::post('peserta/import', [PesertaController::class, 'import'])->name('peserta.import');
        Route::get('peserta/{id}/print', [PesertaController::class, 'print'])->name('peserta.print');
        Route::resource('peserta', PesertaController::class);
        

        Route::post('dashboard/approve/{id}', [DashboardCotroller::class, 'approve'])->name('dashboard.approve');
        Route::post('dashboard/reject/{id}', [DashboardCotroller::class, 'reject'])->name('dashboard.reject');

        Route::post('pendaftaran/approve/{id}', [PendaftaranController::class, 'approve'])->name('pendaftaran.approve');
        Route::post('pendaftaran/reject/{id}', [PendaftaranController::class, 'reject'])->name('pendaftaran.reject');

        Route::post('pelatihan/approve/{id}', [PelatihanController::class, 'approve'])->name('pelatihan.approve');
        Route::post('pelatihan/reject/{id}', [PelatihanController::class, 'reject'])->name('pelatihan.reject');


        Route::resource('juknis-pelatihan', JuknisPelatihanController::class);

    });
    
});

// Route::middleware('auth')->group(function () {
    
//     //Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
// });

require __DIR__ . '/auth.php';

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