Perbarui model dan tampilan untuk mendukung fungsionalitas QR code dalam proses verifikasi penerima. Tambahkan properti qrCodeHash pada PenerimaPenyaluranModel dan implementasikan metode verifikasi QR code di DetailPenyaluranController. Modifikasi tampilan di WargaDetailPenerimaanView dan DetailPenyaluranPage untuk menampilkan QR code dan menambahkan fungsionalitas pemindaian QR code. Perbarui rute aplikasi untuk mendukung navigasi ke halaman pemindaian QR code dan konfirmasi penerima.

This commit is contained in:
Khafidh Fuadi
2025-03-19 13:11:24 +07:00
parent 984b8336f0
commit 0597f0aea0
19 changed files with 839 additions and 263 deletions

View File

@ -85,8 +85,11 @@ class WargaDashboardController extends GetxController {
}
// Fungsi untuk mengambil data penerima penyaluran
Future<void> fetchPenerimaPenyaluran() async {
Future<List<PenerimaPenyaluranModel>> fetchPenerimaPenyaluran() async {
try {
// Reset data terlebih dahulu untuk memastikan tidak ada data lama yang tersimpan
penerimaPenyaluran.clear();
// Pertama, cari warga_id berdasarkan user_id
final wargaResponse = await _supabaseService.client
.from('warga')
@ -175,13 +178,21 @@ class WargaDashboardController extends GetxController {
penerima.add(model);
}
// Update nilai observable
penerimaPenyaluran.assignAll(penerima);
var diterima =
penerima.where((p) => p.statusPenerimaan == 'DITERIMA').length;
totalPenyaluranDiterima.value = diterima;
// Log untuk debugging
print(
'Berhasil memuat ${penerima.length} data penerimaan untuk warga ID: $wargaId');
return penerima;
} catch (e) {
print('Error fetchPenerimaPenyaluran: $e');
return [];
}
}