feat(noc): implementasi mutual exclusive selection untuk status kurang dan lebih bayar
- Menambahkan JavaScript untuk mutual exclusive selection antara status kurang bayar dan lebih bayar - Hanya satu status yang bisa dipilih pada satu waktu untuk mencegah konflik data - Implementasi fungsi resetFields() untuk membersihkan field yang tidak dipilih - Menambahkan event handler untuk toggle visibility field berdasarkan pilihan status - Menambahkan logging untuk tracking perubahan status pembayaran - Field nominal dan bukti pengembalian otomatis direset ketika status berubah - Mempertahankan UI existing dengan checkbox namun menambahkan logika mutual exclusive - Menambahkan validasi client-side untuk mencegah input data yang tidak konsisten - Support untuk readonly mode ketika memo penyelesaian sudah ada - Implementasi function-level comments untuk dokumentasi kode
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration {
|
||||
/**
|
||||
* Menjalankan migration untuk menambahkan field status pembayaran
|
||||
* Field yang ditambahkan: status_kurang_bayar, nominal_kurang_bayar,
|
||||
* status_lebih_bayar, nominal_lebih_bayar, bukti_pengembalian
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::table('noc', function (Blueprint $table) {
|
||||
// Field untuk status kurang bayar
|
||||
$table->boolean('status_kurang_bayar')->default(false)->after('status_bayar');
|
||||
$table->decimal('nominal_kurang_bayar', 15, 2)->nullable()->after('status_kurang_bayar');
|
||||
|
||||
// Field untuk status lebih bayar
|
||||
$table->boolean('status_lebih_bayar')->default(false)->after('nominal_kurang_bayar');
|
||||
$table->decimal('nominal_lebih_bayar', 15, 2)->nullable()->after('status_lebih_bayar');
|
||||
|
||||
// Field untuk bukti pengembalian jika lebih bayar
|
||||
$table->string('bukti_pengembalian')->nullable()->after('nominal_lebih_bayar');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Rollback migration
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::table('noc', function (Blueprint $table) {
|
||||
$table->dropColumn([
|
||||
'status_kurang_bayar',
|
||||
'nominal_kurang_bayar',
|
||||
'status_lebih_bayar',
|
||||
'nominal_lebih_bayar',
|
||||
'bukti_pengembalian'
|
||||
]);
|
||||
});
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user