Dovid adalah web yang dikembangkan untuk memenuhi tugas Evaluasi Akhir Semester mata kuliah Pemrograman Integratif, menggunakan twig, php, dengan desain MVC (Model, View, Controller).
Dovid (Donasi COVID-19) merupakan website sederhana yang digunakan untuk mendata bantuan selama terjadi pandemi saat ini. Website ini memiliki beberapa fitur berikut:
- Bantuan memiliki jenis/kategori berupa uang tunai, bahan makanan, obat-obatan, dll.)
- Setiap orang dapat memberikan bantuan. Dalam satu transaksi bantuan bisa jadi ada beberapa jenis bantuan yang diberikan.
- Terdapat menu melihat rekap daftar bantuan berdasarkan kategorinya.
Controller yang digunakan yaitu DonasiController. Dalam controller tersebut terdapat beberapa method:
home(): digunakan untuk mengatur$_SESSIONyang akan digunakan dan mengarahkan view yang digunakan jika belum mengisi dan sudah mengisi informasi donatur.rekap(): digunakan untuk mengatur rekapan yang akan ditampilkan. Rekapan yang ditampilkan bisa seluruh kategori atau berdasarkan kategori yang diinginkan.tambahData(): digunakan untuk menambahkan data pada$_SESSIONkedalam database dan mengaturFlashMessageyang ditampilkan.deleteDonasi(): digunakan untuk menghilangkan entrydonasispesifik pada$_SESSION.destroy(): digunakan untuk menghilangkan data$_SESSION.
Terdapat 2 model yang digunakan untuk masing-masing tabel, yaitu Donasi dan Kategori.
Struktur dari tabel Donasi sebagai berikut:
id: menyimpan id masing-masing donasi.id_transaksi: menyimpan id untuk masing-masing transaksi.donatur: menyimpan nama donatur.email_donatur: menyimpan alamat email donatur.id_kategori: menyimpan id dari kategori yang didonasikan (foreign key ke tabelKategori).deskripsi: penjelasan mengenai barang yang didonasikan (misal uang, beras, masker, dll).kuantitas: kuantitas dari barang yang didonasikan (kalau uang dimasukkan nominal).date: menyimpan tanggal dan waktu transaksi.
Struktur dari tabel kategori sebagai berikut:
id: menyimpan id kategori.nama_kategori: menyimpan nama kategori.
Pada model Donasi terdapat beberapa method:
create(): digunakan memasukkan setiap data donasi tiap transaksi kedalam tabel sesuai dengan inputnya.getAll(): digunakan untuk mendapatkan seluruh entry pada tabelDonasidengan mengambilnama_kategoripada tabelKategori.getByCategory(): mirip dengan methodgetAll(), tetapi mengambil berdasarkanid_kategoriyang diinputkan.getLatestIdTransaksi(): digunakan untuk mendapatkanid_transaksiterakhir pada tabelDonasi.
Pada model Kategori terdapat beberapa method:
getById(): digunakan untuk mendapatkannama_kategoriberdasarkanidyang diinputkan.getAll(): digunakan untuk mendapatkan seluruh entry pada tabelKategori.
Terdapat 3 view untuk beberapa fungsionalitas. View yang di gunakan yaitu index, donasi, dan rekap.
index: digunakan untuk menambahkan informasi mengenai donatur (nama donatur dan alamat email). Berikut screenshot pada viewindexdonasi: digunakan untuk menambahkan data donasi yang dikirimkan oleh donatur. Berikut screenshot pada viewdonasirekap: digunakan untuk melihat rekapan data donasi. Berikut screenshot pada viewrekap
Pada halaman utama website Dovid, para donatur akan diberikan tampilan form field yang kemudian akan mereka isi dengan nama serta email mereka. Kemudian para donatur akan mengisi form tersebut dan meng-klik Submit untuk lanjut ke tahap berikutnya.
Pada page berikutnya, para donatur dapat mendata barang donasi mereka dengan meng-klik Tambah Donasi. Setelah itu mereka dapat mengisi form field yang telah disediakan, yaitu terdiri atas kategori donasi, keterangan, hingga banyak donasi. Para donatur dapat berdonasi lebih dari satu jenis. Jika dirasa sudah cukup, klik Kirim 🔥 untuk memproses donasi.
Setelah donasi berhasil dilakukan, maka akan muncul kotak dialog pada halaman utama Dovid. Kemudian, jika para donatur ingin melihat rekap data donasi pada website Dovid, mereka dapat meng-klik link Rekap data donasi 📝 untuk kemudian diarahkan ke page rekap donasi.


