Tambahkan pengecekan null untuk `custom_field` sebelum mem-parsing JSON `detail->details` dan perbaiki konsistensi format pada pengecekan dokumen jaminan. Hal ini memastikan tidak ada kesalahan saat field tersebut tidak ada.
Menambahkan fungsi `hitungHariKerja` untuk menghitung jumlah hari kerja antara dua tanggal, dengan memperhitungkan hari libur dan akhir pekan. Fungsi ini tersedia secara global melalui `window.hitungHariKerja`.
Melakukan perbaikan pada format penulisan kode untuk meningkatkan keterbacaan dan konsistensi. Memindahkan logika terkait tanggal libur dalam fungsi `countHariKerja` ke fungsi terpisah `holidays` agar lebih modular dan mudah dikelola.
Ganti placeholder statis dengan data dinamis menggunakan variabel dari objek `$penawaran`. Hal ini memungkinkan penarikan data langsung dari objek untuk nomor proposal, tanggal proposal, dan perhitungan hari kerja untuk SLA resume dan final, sehingga lebih akurat dan mengurangi risiko kesalahan informasi.
Metode `show` sekarang mengubah status permohonan menjadi 'tender' dan memperbaiki parameter inputnya. Selain itu, tambahkan pembaruan `status_bayar` pada objek `permohonan` saat status diubah menjadi 'spk'. Juga, perbaiki kondisi pembatalan pada tampilan `index.blade.php`.
Menambahkan fitur untuk mengunggah dokumen persetujuan penawaran, surat representasi, dan bukti bayar saat menyimpan persetujuan penawaran. Sekaligus mengupdate status permohonan terkait menjadi 'spk'. Menambahkan tampilan baru untuk formulir persetujuan penawaran dan memperbarui breadcrumb untuk mendukung halaman baru ini.
Menghapus beberapa use statements yang tidak digunakan lagi di PersetujuanPenawaran.php. Menambahkan fields baru dan memperbarui tipe casting pada beberapa fields yang sudah ada. Mengoreksi relasi belongsTo pada PenawaranTender.php agar sesuai dengan parameter yang benar.
Mengubah beberapa aturan validasi, memperbarui namespace, dan menambahkan validasi serta pesan untuk file baru seperti `file_persetujuan_penawaran`, `surat_representasi`, dan `bukti_bayar`. Selain itu, memperbaiki beberapa pesan kesalahan khusus dan menambahkan pesan baru untuk status pembayaran.
Menambahkan dua kolom baru, `created_by` dan `updated_by`, pada tabel `persetujuan_penawaran` untuk menyimpan informasi pengguna yang membuat dan memperbarui data. Kolom-kolom ini bersifat nullable. Selain itu, menyediakan metode untuk menghapus kolom tersebut jika diperlukan.
Menghapus kolom attachment dan menambahkan kolom file_persetujuan_penawaran, surat_representasi, dan bukti_bayar pada tabel persetujuan_penawaran. Juga menghapus foreign key 'region_id' yang terkait dengan kolom attachment.
Menambahkan kolom baru "Dokumen Persetujuan" pada tampilan tabel persetujuan penawaran untuk dapat mengunduh dokumen terkait. Juga menambahkan fungsi JavaScript "prosesData" yang menggunakan Swal untuk konfirmasi persetujuan atau pengembalian data penawaran untuk dikaji ulang. Fungsi render untuk beberapa kolom diperbarui untuk menampilkan data dengan format yang lebih sesuai.
Menambahkan fungsi `persetujuan` untuk menghubungkan model `PenawaranTender` dengan model `PersetujuanPenawaran` menggunakan relasi `belongsTo`. Hal ini memungkinkan pengambilan data persetujuan terkait penawaran tender.
Buat berkas `index.blade.php` untuk menampilkan daftar persetujuan penawaran dengan tabel yang mendukung pencarian dan ekspor ke Excel. Halaman ini juga mencakup pengelolaan melalui kolom-kolom seperti nomor registrasi, nama debitur, nomor proposal, tanggal proposal, biaya final, SLA resume, SLA final, dan catatan. Menyertakan interaksi seperti pengeditan melalui aksi pada setiap baris tabel.
Mengganti metode `penawaranTender` dalam model `Permohonan` dari `hasMany` menjadi `belongsTo`. Perubahan ini diperlukan untuk mencocokkan struktur relasi database yang benar antara `Permohonan` dan `PenawaranTender` berdasarkan `nomor_registrasi`.
Menambahkan fungsi relasi "detail" untuk menghubungkan model PenawaranTender dengan PenawaranDetailTender berdasarkan kondisi status 1. Relasi ini menggunakan belongTo untuk mendapatkan detail penawaran yang berstatus aktif.
Merubah indentation dan formatting pada file OtorisasiPenawaranController.php untuk meningkatkan keterbacaan kode. Perubahan ini meliputi perbaikan penempatan namespace, import statements, dan penyesuaian indentasi method-method dalam controller tersebut tanpa mengubah logika bisnis.
Menu baru "Persetujuan Penawaran" dengan role "administrator" dan "pemohon-ao" telah ditambahkan ke file `module.json`. Ini memberikan kemampuan tambahan kepada pengguna untuk mengakses fungsi persetujuan penawaran yang sebelumnya tidak tersedia.
Menambahkan jalur breadcrumb baru untuk halaman persetujuan penawaran di dalam file `breadcrumbs.php`. Hal ini akan memudahkan navigasi ke halaman persetujuan penawaran melalui breadcrumb.
Mengubah urutan dan format import controller agar lebih rapi dan terstruktur. Hal ini melibatkan merapikan dan menyusun ulang urutan import serta memperbaiki format penulisan route middleware dan grouping agar lebih konsisten. Perubahan ini tidak mengubah fungsi utama dari routing namun meningkatkan keterbacaan dan pengelolaan kode.
Menambahkan `PersetujuanPenawaranController` untuk mengelola persetujuan penawaran.
Controller ini mencakup operasi CRUD dasar (Create, Read, Update, Delete) serta menyediakan fitur pencarian dan paginasi melalui metode `dataForDatatables`.
Metode-metode ini memudahkan interaksi pengguna dengan data persetujuan penawaran, memastikan data valid, dan mengelola otorisasi pengguna.
Menambahkan file request baru bernama PersetujuanPenawaranRequest untuk melakukan validasi terhadap data persetujuan penawaran. Meliputi aturan validasi, pesan kustom untuk kesalahan validasi, serta pengaturan otorisasi. File ini akan memastikan data yang diterima sesuai dengan yang diharapkan sebelum diproses lebih lanjut.
Menambahkan file model baru PersetujuanPenawaran.php dalam module LPJ. Model ini mencakup relasi dengan tabel PenawaranTender, Region, dan User, serta mendefinisikan properti yang dapat diisi dan tipe data yang sesuai dalam tabel 'persetujuan_penawaran'.
Menambahkan migrasi untuk membuat beberapa kolom dalam tabel `persetujuan_penawaran` menjadi nullable dan mengubah nama kolom `sls_resume` menjadi `sla_resume`. Perubahan-perubahan ini mencakup setting nullable untuk beberapa kolom seperti `nomor_proposal_penawaran`, `tanggal_proposal_penawaran`, `biaya_final`, `sla_resume`, `sla_final`, `catatan`, `attachment`, `region_id`, dan `status`, serta mengembalikan perubahan tersebut pada metode `down`.
Memindahkan tampilan history aktivitas dari file detail-jaminan.blade.php ke file baru bernama history-permohonan.blade.php dan menghubungkannya menggunakan include. Pendekatan ini membuat kode lebih modular dan lebih mudah di-maintain.
Mengubah pemanggilan fungsi formatTanggalIndonesia dengan penambahan parameter kedua yang bernilai true pada dua file Blade, yaitu surat_tender_download.blade.php dan surat_tender.blade.php. Ini untuk memastikan format tanggal disesuaikan dengan kebutuhan aplikasi.
Fungsi `formatTanggalIndonesia` diperbarui untuk menerima parameter opsional `$time`. Jika `$time` bernilai `false`, fungsi akan mengembalikan format tanggal tanpa waktu. Namun, jika bernilai `true`, fungsi akan menyertakan waktu dalam format hasilnya. Fungsi `formatTanggalIndonesia2` dihapus untuk menyederhanakan dan mengurangi redundansi kode.