Day 25 โ Integrasi, Review Kode & Mini Test Bulan 2 โ
Fase: 3 โ Fitur Lanjutan | Minggu: 5 | Hari: Jumat
๐ฏ Tujuan Hari Ini โ
- Memastikan semua fitur minggu ini (Upload File, Export Excel, Export PDF) terintegrasi sempurna ke SIMAS.
- Melakukan Code Review berpasangan untuk menemukan bug dan meningkatkan kualitas kode.
- Memverifikasi seluruh alur kerja (workflow) end-to-end dari tambah aset hingga export laporan.
- Mini Test: setiap peserta menambahkan satu fitur export mandiri.
๐ Checklist Integrasi Penuh โ
Sebelum melanjutkan ke minggu depan, pastikan semua poin ini terpenuhi:
โ Fitur Upload File โ
- [ ] Kolom
photoada di tabelassets(sudah di-migrate) - [ ] Form Create Asset memiliki input file dengan validasi
- [ ] Form Edit Asset menampilkan foto saat ini dan bisa diganti
- [ ] Halaman daftar aset menampilkan thumbnail foto
- [ ] Halaman detail aset menampilkan foto ukuran besar
- [ ] Foto lama terhapus ketika aset di-update atau di-delete
- [ ]
storage:linksudah dijalankan dan foto bisa diakses di browser - [ ] Ada fallback tampilan jika aset tidak punya foto
โ Fitur Export Excel (Aset) โ
- [ ] Package
maatwebsite/excelterinstall - [ ]
AssetsExportclass sudah dibuat dan berfungsi - [ ] Tombol "Export Excel" ada di halaman
/assets - [ ] File Excel yang diunduh berisi data lengkap dengan header yang benar
- [ ] Nama file mengandung tanggal (
daftar-aset-YYYYMMDD.xlsx)
โ Fitur Export Excel (Peminjaman) โ
- [ ]
LoansExportclass sudah dibuat dan berfungsi - [ ] Tombol "Export Excel" ada di halaman
/loans - [ ] File Excel berisi semua data peminjaman
โ Fitur Export PDF (Peminjaman) โ
- [ ] Package
barryvdh/laravel-dompdfterinstall - [ ] View
loans/pdf.blade.phpsudah dibuat dengan layout rapi - [ ] Tombol "Export PDF" ada di halaman
/loans - [ ] PDF yang diunduh menampilkan tabel dan ringkasan statistik
๐ Sesi Code Review Berpasangan โ
Bagi peserta menjadi pasangan (A + B). Setiap pasangan saling review kode masing-masing.
Panduan Code Review โ
Reviewer (yang mereview) menilai aspek berikut:
1. Keamanan (Security)
โ Apakah ada validasi tipe file di controller (bukan hanya di HTML)?
โ Apakah nama file dari user TIDAK digunakan langsung?
โ Apakah ada proteksi CSRF pada semua form?2. Kualitas Kode (Code Quality)
โ Apakah ada kode duplikat yang bisa direfactor?
โ Apakah logika hapus file sudah ada di semua tempat yang relevan (update & delete)?
โ Apakah ada komentar yang membantu memahami kode?3. User Experience (UX)
โ Apakah ada flash message setelah upload berhasil/gagal?
โ Apakah ada fallback tampilan jika foto tidak ada?
โ Apakah tombol export mudah ditemukan oleh user?Template Feedback Code Review โ
Reviewer : [Nama]
Reviewee : [Nama]
Tanggal : [Tanggal]
โ
Yang sudah baik:
1. ...
2. ...
โ ๏ธ Yang perlu diperbaiki:
1. ...
2. ...
๐ก Saran tambahan:
1. ...๐งช Mini Test Mandiri (60 Menit) โ
Setiap peserta harus menyelesaikan salah satu tantangan berikut secara mandiri:
Tantangan A โ Export Aset ke PDF โ
Buat fitur export PDF untuk data Aset (bukan peminjaman). PDF harus menampilkan foto thumbnail jika aset memiliki foto (gunakan Base64).
Tantangan B โ Export Peminjaman Berdasarkan Filter Tanggal โ
Tambahkan form filter tanggal di halaman peminjaman. Export Excel dan PDF hanya mengambil data peminjaman dalam rentang tanggal yang dipilih user.
Tantangan C โ Export Laporan Aset per Kategori โ
Buat sheet Excel terpisah untuk setiap kategori. Gunakan
WithMultipleSheetsdari Laravel Excel agar setiap kategori berada di tab sheet yang berbeda.
๐ Review Progress Minggu 5 โ
| Fitur | Status | Catatan |
|---|---|---|
| Upload Foto Aset | โฌ Belum / โ Selesai | |
| Tampil & Kelola Foto | โฌ Belum / โ Selesai | |
| Export Excel Aset | โฌ Belum / โ Selesai | |
| Export Excel Peminjaman | โฌ Belum / โ Selesai | |
| Export PDF Peminjaman | โฌ Belum / โ Selesai | |
| Mini Test Mandiri | โฌ Belum / โ Selesai |
๐ Preview Minggu Depan โ
Minggu depan adalah Minggu 6: Deployment โ tahap paling menarik sekaligus paling menantang.
Kamu akan belajar:
- Apa itu production environment dan mengapa berbeda dari development.
- Cara mendeploy aplikasi Laravel ke cloud platform (Railway/Render) secara gratis.
- Cara mengkonfigurasi database, storage, dan environment variables di server.
- Dasar-dasar keamanan aplikasi sebelum go-live.
IMPORTANT
Persiapan untuk Minggu Depan: Pastikan repository GitHub kamu sudah up-to-date dengan semua fitur terbaru. Semua perubahan hari ini harus sudah di-push ke branch main atau develop sebelum hari Senin.
๐ Standup Akhir Hari โ
Sebelum pulang, setiap peserta wajib menjawab:
- Fitur mana yang paling kamu banggakan dari minggu ini?
- Bug apa yang paling sulit kamu selesaikan? Bagaimana kamu mengatasinya?
- Apa yang belum kamu pahami dan ingin kamu tanyakan minggu depan?