- Menambahkan kolom `parent_id` pada tabel `branches` dengan migrasi baru.
- Update model `Branch`:
- Menambahkan relasi `parent()` untuk mendapatkan cabang induk.
- Menambahkan relasi `children()` untuk mendapatkan anak cabang.
- Update `BranchController`:
- Menampilkan daftar cabang induk saat membuat atau mengedit cabang.
- Cek validasi agar cabang tidak bisa menjadi induk dirinya sendiri.
- Tambahkan larangan hapus cabang jika memiliki anak cabang, baik untuk hapus tunggal maupun multiple.
- Update validation rules pada `BranchRequest` untuk memastikan validitas `parent_id`.
- Update tampilan:
- Formulir pembuatan/edit cabang: Menampilkan dropdown untuk memilih cabang induk.
- Daftar cabang: Menampilkan kolom untuk cabang induk.
- Tambahkan test unit:
- Validasi relasi parent-child pada penyimpanan dan pembaruan cabang.
- Melarang penghapusan cabang yang memiliki anak.
- Memastikan perilaku relasi parent-child sesuai ekspektasi.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
- Menambahkan helper `workingDays` untuk menghitung jumlah hari kerja antara dua tanggal.
- Menambahkan helper `holidays` untuk mendapatkan daftar tanggal libur.
- Memperbarui fungsi `format_currency` menjadi `currencyFormat` dengan menambahkan dokumentasi yang lebih jelas.
- Mengubah format desimal mata uang IDR menjadi 2 desimal di `CurrencySeeder`.
- Menambahkan file `HolidayCalendar.php` ke dalam daftar autoload di `module.json`.
- Menambahkan proses truncate sebelum insert data di seeder `CurrencySeeder`.
- Menambahkan seeder untuk mengisi tabel holiday_calendars dengan data libur nasional dan cuti bersama tahun 2025.
- Setiap entri mencakup tanggal, deskripsi, jenis libur, serta timestamp untuk created_at dan updated_at.
- Menambahkan seeder baru untuk mengisi tabel currencies dengan data mata uang.
- Memperbarui daftar mata uang dengan simbol dan detail lainnya.
- Menggunakan Carbon untuk timestamp created_at dan updated_at.
- Menambahkan kelas BranchesSeeder untuk mengisi tabel branches.
- Menggunakan Carbon untuk menetapkan waktu pembuatan dan pembaruan.
- Memasukkan data cabang dengan atribut kode, nama, status, dan timestamp.
- Menambahkan kolom simbol pada tabel mata uang di halaman index.
- Menambahkan input simbol pada form pembuatan mata uang.
- Memperbarui aturan validasi untuk simbol pada CurrencyRequest.
- Memperbarui model Currency untuk menyertakan atribut simbol.
- Memperbarui migrasi untuk menambahkan kolom simbol pada tabel currencies.
Menghapus duplikasi kode dalam fungsi `up` di file migrasi `create_holiday_calendars_table.php`. Kode yang ada sebelumnya memiliki nested `Schema::create` yang tidak diperlukan. Dengan perubahan ini, kode menjadi lebih jelas dan bersih tanpa adanya duplikasi yang membingungkan.
Menambahkan file migrasi untuk membuat tabel "holiday_calendars" yang menyimpan informasi tanggal libur beserta deskripsi dan jenisnya (libur nasional atau cuti bersama). Tabel ini juga memiliki kolom untuk pencatatan waktu pembuatan, update, soft delete, serta pencatatan pengguna yang melakukan perubahan.