feat: update student import and graduation workflows

This commit is contained in:
2026-04-30 00:04:52 +07:00
parent 189b076ab0
commit ac22f8b7c8
51 changed files with 4547 additions and 1287 deletions
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->string('transcript_file_name')->nullable()->after('ijazah_file_size');
$table->string('transcript_file_path')->nullable()->after('transcript_file_name');
$table->string('transcript_mime_type')->nullable()->after('transcript_file_path');
$table->unsignedBigInteger('transcript_file_size')->nullable()->after('transcript_mime_type');
$table->string('skhun_file_name')->nullable()->after('transcript_file_size');
$table->string('skhun_file_path')->nullable()->after('skhun_file_name');
$table->string('skhun_mime_type')->nullable()->after('skhun_file_path');
$table->unsignedBigInteger('skhun_file_size')->nullable()->after('skhun_mime_type');
});
}
public function down(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->dropColumn([
'transcript_file_name',
'transcript_file_path',
'transcript_mime_type',
'transcript_file_size',
'skhun_file_name',
'skhun_file_path',
'skhun_mime_type',
'skhun_file_size',
]);
});
}
};
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->string('ukk_certificate_file_name')->nullable()->after('skhun_file_size');
$table->string('ukk_certificate_file_path')->nullable()->after('ukk_certificate_file_name');
$table->string('ukk_certificate_mime_type')->nullable()->after('ukk_certificate_file_path');
$table->unsignedBigInteger('ukk_certificate_file_size')->nullable()->after('ukk_certificate_mime_type');
$table->string('lsp_certificate_file_name')->nullable()->after('ukk_certificate_file_size');
$table->string('lsp_certificate_file_path')->nullable()->after('lsp_certificate_file_name');
$table->string('lsp_certificate_mime_type')->nullable()->after('lsp_certificate_file_path');
$table->unsignedBigInteger('lsp_certificate_file_size')->nullable()->after('lsp_certificate_mime_type');
});
}
public function down(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->dropColumn([
'ukk_certificate_file_name',
'ukk_certificate_file_path',
'ukk_certificate_mime_type',
'ukk_certificate_file_size',
'lsp_certificate_file_name',
'lsp_certificate_file_path',
'lsp_certificate_mime_type',
'lsp_certificate_file_size',
]);
});
}
};
@@ -0,0 +1,30 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->dropColumn([
'skhun_file_name',
'skhun_file_path',
'skhun_mime_type',
'skhun_file_size',
]);
});
}
public function down(): void
{
Schema::table('student_graduations', function (Blueprint $table) {
$table->string('skhun_file_name')->nullable()->after('transcript_file_size');
$table->string('skhun_file_path')->nullable()->after('skhun_file_name');
$table->string('skhun_mime_type')->nullable()->after('skhun_file_path');
$table->unsignedBigInteger('skhun_file_size')->nullable()->after('skhun_mime_type');
});
}
};
@@ -0,0 +1,22 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('students', function (Blueprint $table) {
$table->string('nik', 30)->nullable()->after('nisn');
});
}
public function down(): void
{
Schema::table('students', function (Blueprint $table) {
$table->dropColumn('nik');
});
}
};