diff --git a/app/Http/Requests/NocRequest.php b/app/Http/Requests/NocRequest.php index c99a7b9..db11c4e 100644 --- a/app/Http/Requests/NocRequest.php +++ b/app/Http/Requests/NocRequest.php @@ -95,12 +95,16 @@ $fileRule = 'nullable|file|mimes:' . self::ALLOWED_FILE_TYPES . '|max:' . self::MAX_FILE_SIZE; return [ - 'nominal_penyelesaian' => 'nullable|numeric|min:0', - 'status_penyelesaian' => 'nullable|boolean', - 'tanggal_penyelesaian' => 'nullable|date', - 'bukti_penyelesaian' => $fileRule, - 'memo_penyelesaian' => $fileRule, - 'catatan_noc' => 'nullable|string', + 'nominal_penyelesaian' => 'nullable|numeric|min:0', + 'status_penyelesaian' => 'nullable|boolean', + 'tanggal_penyelesaian' => 'nullable|date', + 'bukti_penyelesaian' => $fileRule, + 'memo_penyelesaian' => $fileRule, + 'catatan_noc' => 'nullable|string', + 'nomor_tiket' => 'nullable|string', + 'nomor_rekening_lebih_bayar' => 'nullable|string', + 'bukti_ksl_lebih_bayar' => 'nullable|string', + 'bukti_ksl_kurang_bayar' => 'nullable|string' ]; } diff --git a/app/Http/Requests/PersetujuanPenawaranRequest.php b/app/Http/Requests/PersetujuanPenawaranRequest.php index e6bdf73..5e41f8b 100644 --- a/app/Http/Requests/PersetujuanPenawaranRequest.php +++ b/app/Http/Requests/PersetujuanPenawaranRequest.php @@ -18,6 +18,8 @@ 'penawaran_id' => 'nullable|exists:penawaran,id', 'nomor_proposal_penawaran' => 'nullable|string|max:255', 'nomor_tiket' => 'nullable|string|max:100', + 'nominal_kurang_bayar' => 'nullable|string|max:100', + 'bukti_ksl_kurang_bayar' => 'nullable|string|max:100', 'tanggal_proposal_penawaran' => 'nullable|date', 'biaya_final' => 'nullable|numeric|min:0', 'sla_resume' => 'nullable|numeric|min:0', diff --git a/app/Models/Noc.php b/app/Models/Noc.php index 0eb4a91..2cb8dbc 100644 --- a/app/Models/Noc.php +++ b/app/Models/Noc.php @@ -11,6 +11,7 @@ class Noc extends Base protected $fillable = [ 'permohonan_id', 'persetujuan_penawaran_id', + 'nomor_tiket', 'bukti_bayar', 'nominal_bayar', 'total_pembukuan', @@ -36,6 +37,9 @@ class Noc extends Base 'authorized_status', 'authorized_at', 'authorized_by', + 'nomor_rekening_lebih_bayar', + 'bukti_ksl_lebih_bayar', + 'bukti_ksl_kurang_bayar' ]; protected $casts = [ diff --git a/app/Models/PersetujuanPenawaran.php b/app/Models/PersetujuanPenawaran.php index feec460..e42e343 100644 --- a/app/Models/PersetujuanPenawaran.php +++ b/app/Models/PersetujuanPenawaran.php @@ -14,6 +14,8 @@ 'penawaran_id', 'nomor_proposal_penawaran', 'nomor_tiket', + 'nominal_kurang_bayar', + 'bukti_ksl_kurang_bayar', 'tanggal_proposal_penawaran', 'biaya_final', 'sla_resume', diff --git a/database/migrations/2025_09_11_145857_add_nomor_tiket_to_persetujuan_penawaran_table.php b/database/migrations/2025_09_11_145857_add_nomor_tiket_to_persetujuan_penawaran_table.php index de8706d..e7115b6 100644 --- a/database/migrations/2025_09_11_145857_add_nomor_tiket_to_persetujuan_penawaran_table.php +++ b/database/migrations/2025_09_11_145857_add_nomor_tiket_to_persetujuan_penawaran_table.php @@ -16,6 +16,19 @@ return new class extends Migration // Menambahkan kolom nomor_tiket setelah nomor_proposal_penawaran $table->string('nomor_tiket', 100)->nullable()->after('nomor_proposal_penawaran') ->comment('Nomor tiket untuk tracking persetujuan penawaran'); + $table->string('nominal_kurang_bayar')->nullable()->after('nomor_proposal_penawaran'); + $table->string('bukti_ksl_kurang_bayar')->nullable()->after('nominal_kurang_bayar'); + + }); + + Schema::table('noc', function (Blueprint $table) { + // Menambahkan kolom nomor_tiket setelah nomor_proposal_penawaran + $table->string('nomor_tiket', 100)->nullable()->after('persetujuan_penawaran_id') + ->comment('Nomor tiket untuk tracking persetujuan penawaran'); + $table->string('nomor_rekening_lebih_bayar',20)->nullable()->after('nominal_lebih_bayar'); + $table->string('bukti_ksl_lebih_bayar')->nullable()->after('nomor_rekening_lebih_bayar'); + $table->string('bukti_ksl_kurang_bayar')->nullable()->after('bukti_ksl_lebih_bayar'); + }); } @@ -29,5 +42,10 @@ return new class extends Migration // Menghapus kolom nomor_tiket $table->dropColumn('nomor_tiket'); }); + + Schema::table('noc', function (Blueprint $table) { + // Menghapus kolom nomor_tiket + $table->dropColumn('nomor_tiket'); + }); } }; diff --git a/module.json b/module.json index 00cde6b..98a93fe 100644 --- a/module.json +++ b/module.json @@ -378,6 +378,53 @@ "pemohon-ao" ] }, + { + "title": "Pembayaran", + "path": "pembayaran", + "icon": "ki-filled ki-credit-cart text-lg text-primary", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator", + "pemohon-ao" + ], + "sub": [ + { + "title": "Pembayaran", + "path": "pembayaran", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator", + "admin" + ] + }, + { + "title": "Kurang Bayar", + "path": "pembayaran.kurang", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator", + "admin" + ] + }, + { + "title": "Lebih Bayar", + "path": "pembayaran.lebih", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator", + "admin" + ] + } + ] + }, { "title": "NOC", "path": "noc", @@ -513,18 +560,6 @@ "admin" ] }, - { - "title": "Pembayaran", - "path": "pembayaran", - "icon": "ki-filled ki-credit-cart text-lg text-primary", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "administrator", - "pemohon-ao" - ] - }, { "title": "Data Debitur", "path": "debitur", diff --git a/resources/views/pembayaran/index.blade.php b/resources/views/pembayaran/index.blade.php index 6aba159..36f8e0e 100644 --- a/resources/views/pembayaran/index.blade.php +++ b/resources/views/pembayaran/index.blade.php @@ -6,9 +6,9 @@ @section('content')
| - - | -- Nomor Registrasi - - | -- Tanggal Permohonan - - | -- User Pemohon - - | -- Cabang Pemohon - - | -- Debitur - - | -- Status Bayar - - | +||
|---|---|---|---|---|---|---|---|---|
| + + | ++ Nomor Registrasi + + | ++ Nomor Tiket + + | ++ Tanggal Permohonan + + | ++ User Pemohon + + | ++ Cabang Pemohon + + | ++ Debitur + + | ++ Status Bayar + + | -Action | -Action | +