Kantin
Titip jajan
tanpa antre.
Jastip Kantin Sekolah adalah aplikasi mobile sederhana untuk membantu siswa memesan makanan dari kantin dengan lebih cepat, rapi, dan praktis melalui fitur keranjang serta pengiriman pesanan otomatis ke WhatsApp kurir.
Halo, Siswa 👋
SMKN 1 Banjar
Titip jajan tanpa antre.
Pilih kantin, masukkan pesanan, lalu kirim otomatis ke WhatsApp kurir.
Biaya jastip Rp2.000
Cocok untuk transaksi cepat saat jam istirahat.
Menu Populer
Yang sering dipesan pas jam istirahat
Pilih Kantin
Daftar kantin yang tersedia
Minuman Teh Rina
Aneka minuman dingin dan segar.
Aplikasi kecil yang menyelesaikan masalah besar saat jam istirahat.
Project ini dibuat dari masalah sederhana di sekolah: antrean kantin yang panjang dan waktu istirahat yang terasa terlalu singkat.
Latar Belakang
Kantin sekolah adalah salah satu tempat paling ramai saat jam istirahat. Banyak siswa ingin membeli makanan dalam waktu yang bersamaan, sehingga antrean menjadi panjang dan proses membeli makanan menjadi kurang efektif.
Dari masalah tersebut, dibuatlah aplikasi Jastip Kantin Sekolah. Aplikasi ini membantu siswa memilih menu dari beberapa kantin, memasukkan pesanan ke keranjang, lalu mengirim detail pesanan langsung ke WhatsApp kurir.
Konsep Aplikasi
Konsep aplikasi ini sangat sederhana. Siswa tidak perlu login terlebih dahulu. Mereka cukup membuka aplikasi, melihat daftar kantin, memilih menu, mengatur jumlah pesanan, mengisi identitas, lalu mengirim pesanan.
Sistem ini cocok untuk lingkungan sekolah karena mudah dipahami, tidak terlalu rumit, dan bisa langsung digunakan untuk kebutuhan sehari-hari saat jam istirahat.
Keunggulan Project
Aplikasi ini memiliki tampilan modern dengan warna hijau yang segar. Selain itu, fitur seperti menu populer, pencarian, favorit, keranjang, metode pembayaran, status kantin, dan total pembayaran membuat aplikasi terasa lebih lengkap.
Potensi Pengembangan
Ke depannya, aplikasi ini bisa dikembangkan menjadi sistem yang lebih besar. Contohnya seperti akun kantin, dashboard admin, CRUD menu, laporan transaksi, pembayaran QRIS, dan riwayat pesanan siswa.
Dirancang simpel, tapi tetap terasa lengkap.
Setiap fitur dibuat agar proses pemesanan makanan menjadi cepat dan mudah dipahami.
Pilih Kantin
Siswa dapat melihat daftar kantin yang tersedia beserta status buka atau tutup.
Menu Populer
Menu yang sering dipesan ditampilkan di halaman utama agar cepat dipilih.
Pencarian Menu
Siswa dapat mencari makanan, minuman, snack, atau nama kantin dengan mudah.
Favorit
Menu yang disukai bisa disimpan agar lebih mudah dipesan kembali.
Keranjang
Pesanan dikumpulkan dalam keranjang lengkap dengan jumlah dan total harga.
Kirim WhatsApp
Detail pesanan otomatis dibuat dan dikirim langsung ke WhatsApp kurir.
Dari pilih menu sampai pesanan dikirim.
Pilih Kantin
Siswa membuka aplikasi dan memilih kantin yang tersedia.
Pilih Menu
Menu dimasukkan ke keranjang sesuai jumlah yang diinginkan.
Isi Data
Siswa mengisi nama, kelas, lokasi antar, dan catatan pesanan.
Kirim Pesanan
Pesanan dikirim otomatis ke WhatsApp kurir untuk diproses.
Cuplikan kode utama dari aplikasi Flutter.
Berikut bagian penting dari kode aplikasi Jastip Kantin Sekolah: data kantin, data menu, format rupiah, dan pengiriman pesanan ke WhatsApp.
class Kantin {
final String id;
final String nama;
final String penjual;
final String deskripsi;
final String emoji;
final Color warna;
final bool buka;
const Kantin({
required this.id,
required this.nama,
required this.penjual,
required this.deskripsi,
required this.emoji,
required this.warna,
required this.buka,
});
}
const List<Kantin> daftarKantin = [
Kantin(
id: 'bu-ani',
nama: 'Kantin Bu Ani',
penjual: 'Bu Ani',
deskripsi: 'Makanan berat favorit siswa.',
emoji: '🍛',
warna: Color(0xFFFFB703),
buka: true,
),
];
class MenuItem {
final String id;
final String kantinId;
final String nama;
final String kategori;
final String deskripsi;
final String emoji;
final int harga;
final bool populer;
const MenuItem({
required this.id,
required this.kantinId,
required this.nama,
required this.kategori,
required this.deskripsi,
required this.emoji,
required this.harga,
this.populer = false,
});
}
const List<MenuItem> daftarMenu = [
MenuItem(
id: 'nasgor',
kantinId: 'bu-ani',
nama: 'Nasi Goreng Telur',
kategori: 'Makanan',
deskripsi: 'Nasi goreng hangat dengan telur.',
emoji: '🍛',
harga: 12000,
populer: true,
),
];
String rupiah(int angka) {
final text = angka.toString();
final buffer = StringBuffer();
int count = 0;
for (int i = text.length - 1; i >= 0; i--) {
buffer.write(text[i]);
count++;
if (count == 3 && i != 0) {
buffer.write('.');
count = 0;
}
}
return 'Rp ${buffer.toString().split('').reversed.join()}';
}
Future<void> kirimWhatsapp() async {
final nama = namaController.text.trim();
final kelas = kelasController.text.trim();
final lokasi = lokasiController.text.trim();
if (cart.isEmpty) {
showMessage('Keranjang masih kosong.');
return;
}
if (nama.isEmpty || kelas.isEmpty || lokasi.isEmpty) {
showMessage('Nama, kelas, dan lokasi wajib diisi.');
return;
}
final message = buildMessage(
nama: nama,
kelas: kelas,
lokasi: lokasi,
catatan: catatanController.text.trim(),
);
final url = Uri.parse(
'https://wa.me/$nomorKurir?text=${Uri.encodeComponent(message)}'
);
await launchUrl(url, mode: LaunchMode.externalApplication);
}
Project sederhana, tapi punya potensi besar.
Jastip Kantin Sekolah bisa menjadi awal dari sistem kantin digital yang lebih modern untuk lingkungan sekolah.
Komentar
Posting Komentar